Difference between dts and ACPI

后端 未结 3 543
醉梦人生
醉梦人生 2021-02-08 00:14

We can declare platform device information in dts file, rather than hard coding every data into operating system. Taking \"arm\" architecture as example. it supports dts an

3条回答
  •  梦毁少年i
    2021-02-08 00:55

    Not completely correct:

    • ACPI started as an interface between firmware (formerly BIOS) and OS for things like power management, but also things like platform device probing
    • DT was always (even long before ACPI existed) about declarative platform device descriptions (probing and configuration), so the OS can properly initialize all drivers, configure operation points, etc, etc.

    ACPI was always very limited in scope and depends on firmware, while DT stands on its own (just requires the bootloader to pass the right dtb to the kernel).

    ACPI is the unprofessional, hackish attempt of bios and board vendors to solve a small subset of the problems that DT already solved long ago. A major pro argument for those gallows-wearing folks probably is that ACPI/BIOS hides lots of low level configuration stuff (up to runtime device programming, eg. for power management) in the firmware blob, thus preventing the OS kernel to have full control over the machine. (which finally leads to things like broken machines by broken BIOS, etc). We, the kernel developers, often have to work around crappy BIOSes.

    My strong advice: get of ACPI when you can.

提交回复
热议问题