device.txt 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. Devices
  2. =======
  3. Device bindings are described by their own individual binding files.
  4. U-Boot provides for some optional properties which are documented here. See
  5. also hid-over-i2c.txt which describes HID devices. See also
  6. Documentation/firmware-guide/acpi/enumeration.rst in the Linux kernel for
  7. the acpi,compatible property.
  8. - acpi,has-power-resource : (boolean) true if this device has a power resource.
  9. This causes an ACPI PowerResource to be written containing the properties
  10. provided by this binding, to describe how to handle powering the device up
  11. and down using GPIOs
  12. - acpi,compatible : compatible string to report
  13. - acpi,ddn : Contains the string to use as the _DDN (DOS (Disk Operating
  14. System) Device Name)
  15. - acpi,hid : Contains the string to use as the HID (Hardware ID)
  16. identifier _HID
  17. - acpi,path : Specifies the full ACPI path for a device. This overrides the
  18. normal path built from the driver-model hierarchy
  19. - acpi,name : Provides the ACPI name for a device, which is a string consisting
  20. of four alphanumeric character (upper case)
  21. - acpi,uid : _UID value for device
  22. - acpi,wake : Provides the GPE used to detect a request from a device to wake
  23. from sleep
  24. - linux,probed : Tells U-Boot to add 'linux,probed' to the ACPI tables so that
  25. Linux will only load the driver if the device can be detected (e.g. on I2C
  26. bus). Note that this is an out-of-tree Linux feature.
  27. Example
  28. -------
  29. elan_touchscreen: elan-touchscreen@10 {
  30. compatible = "i2c-chip";
  31. reg = <0x10>;
  32. acpi,hid = "ELAN0001";
  33. acpi,ddn = "ELAN Touchscreen";
  34. interrupts-extended = <&acpi_gpe GPIO_21_IRQ IRQ_TYPE_EDGE_FALLING>;
  35. linux,probed;
  36. };
  37. pcie-a0@14,0 {
  38. reg = <0x0000a000 0 0 0 0>;
  39. acpi,name = "RP01";
  40. wifi: wifi {
  41. compatible = "intel,generic-wifi";
  42. acpi,ddn = "Intel WiFi";
  43. acpi,name = "WF00";
  44. acpi,wake = <GPE0_DW3_00>;
  45. interrupts-extended = <&acpi_gpe 0x3c 0>;
  46. };
  47. };
  48. p2sb: p2sb@d,0 {
  49. u-boot,dm-pre-reloc;
  50. reg = <0x02006810 0 0 0 0>;
  51. compatible = "intel,apl-p2sb";
  52. early-regs = <IOMAP_P2SB_BAR 0x100000>;
  53. pci,no-autoconfig;
  54. n {
  55. compatible = "intel,apl-pinctrl";
  56. u-boot,dm-pre-reloc;
  57. intel,p2sb-port-id = <PID_GPIO_N>;
  58. acpi,path = "\\_SB.GPO0";
  59. gpio_n: gpio-n {
  60. compatible = "intel,gpio";
  61. u-boot,dm-pre-reloc;
  62. gpio-controller;
  63. #gpio-cells = <2>;
  64. linux-name = "INT3452:00";
  65. };
  66. };