How do device trees work in Linux, and how would you modify one to support a new peripheral on an embedded board?