Embedded Linux development practice (1): DeviceTree device tree analysis

Research has found that embedded Linux programming requires understanding uboot and kermal, but the first priority is this dts file, which runs through the underlying hardware and firmware code.

To Init and Boot an embedded system, various software modules interact with each other, and the firmware can perform low-level initialization of the system hardware before passing control to software such as the operating system, boot loader, or system hypervisor. Boot loaders and hypervisors load and transfer control to the operating system. Standard, consistent interfaces and conventions facilitate interaction between these software components.

Boot will include: firmware, bootloaders, etc. Embedded systems usually consist of system hardware, operating systems and application software. These software are custom-designed to perform a fixed, specific set of tasks. Embedded systems generally include a fixed set of IO devices, development boards optimized for size and cost, limited user interfaces, limited storage resources, real-time requirements and restrictions, etc. The DTB format is a binary encoding of device data. It is used to exchange device data between software programs. For example, when the operating system is started, the firmware passes the DTB to the OS kernel.

 DeviceTree device tree is a description file of system hardware and a hardware hub. It exists in the form of dts file. The boot program needs to load it. It is obviously a standard thing, not a custom one. It is a tree structure used to describe the system hardware. There are many nodes. Each node has a parent node. The node is property/value pairs property + value. The node may be an actual hardware device such as a UART, or it may

Guess you like

Origin blog.csdn.net/weixin_49369227/article/details/131552615