acpi: Add a method to write tables for a device
[oweals/u-boot.git] / arch / sandbox / dts / test.dts
index 25cac056bbdf2952fa383d79bf72ed88f465bb42..4bccfbe6e1b1d3fe2ac67df60fd1d167b341f795 100644 (file)
@@ -1,5 +1,8 @@
 /dts-v1/;
 
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/gpio/sandbox-gpio.h>
+
 / {
        model = "sandbox";
        compatible = "sandbox";
@@ -13,6 +16,7 @@
                eth5 = &eth_5;
                gpio1 = &gpio_a;
                gpio2 = &gpio_b;
+               gpio3 = &gpio_c;
                i2c0 = "/i2c@0";
                mmc0 = "/mmc0";
                mmc1 = "/mmc1";
                };
        };
 
+       dsi_host: dsi_host {
+               compatible = "sandbox,dsi-host";
+       };
+
        a-test {
                reg = <0 1>;
                compatible = "denx,u-boot-fdt-test";
                ping-expect = <0>;
                ping-add = <0>;
                u-boot,dm-pre-reloc;
-               test-gpios = <&gpio_a 1>, <&gpio_a 4>, <&gpio_b 5 0 3 2 1>,
+               test-gpios = <&gpio_a 1>, <&gpio_a 4>,
+                       <&gpio_b 5 GPIO_ACTIVE_HIGH 3 2 1>,
                        <0>, <&gpio_a 12>;
-               test2-gpios = <&gpio_a 1>, <&gpio_a 4>, <&gpio_b 6 1 3 2 1>,
-                       <&gpio_b 7 2 3 2 1>, <&gpio_b 8 4 3 2 1>,
-                       <&gpio_b 9 0xc 3 2 1>;
+               test2-gpios = <&gpio_a 1>, <&gpio_a 4>,
+                       <&gpio_b 6 GPIO_ACTIVE_LOW 3 2 1>,
+                       <&gpio_b 7 GPIO_IN 3 2 1>,
+                       <&gpio_b 8 GPIO_OUT 3 2 1>,
+                       <&gpio_b 9 (GPIO_OUT|GPIO_OUT_ACTIVE) 3 2 1>;
+               test3-gpios =
+                       <&gpio_c 0 (GPIO_OUT|GPIO_OPEN_DRAIN)>,
+                       <&gpio_c 1 (GPIO_OUT|GPIO_OPEN_SOURCE)>,
+                       <&gpio_c 2 GPIO_OUT>,
+                       <&gpio_c 3 (GPIO_IN|GPIO_PULL_UP)>,
+                       <&gpio_c 4 (GPIO_IN|GPIO_PULL_DOWN)>,
+                       <&gpio_c 5 GPIO_IN>;
                int-value = <1234>;
                uint-value = <(-1234)>;
+               int64-value = /bits/ 64 <0x1111222233334444>;
+               int-array = <5678 9123 4567>;
+               interrupts-extended = <&irq 3 0>;
        };
 
        junk {
                compatible = "denx,u-boot-fdt-test1";
        };
 
+       devres-test {
+               compatible = "denx,u-boot-devres-test";
+       };
+
+       acpi-test {
+               compatible = "denx,u-boot-acpi-test";
+       };
+
+       acpi-test2 {
+               compatible = "denx,u-boot-acpi-test";
+       };
+
        clocks {
                clk_fixed: clk-fixed {
                        compatible = "fixed-clock";
        clk_sandbox: clk-sbox {
                compatible = "sandbox,clk";
                #clock-cells = <1>;
+               assigned-clocks = <&clk_sandbox 3>;
+               assigned-clock-rates = <321>;
        };
 
        clk-test {
                compatible = "sandbox,clk-test";
                clocks = <&clk_fixed>,
                         <&clk_sandbox 1>,
-                        <&clk_sandbox 0>;
-               clock-names = "fixed", "i2c", "spi";
+                        <&clk_sandbox 0>,
+                        <&clk_sandbox 3>,
+                        <&clk_sandbox 2>;
+               clock-names = "fixed", "i2c", "spi", "uart2", "uart1";
        };
 
        ccf: clk-ccf {
                };
        };
 
-       gpio_a: base-gpios {
-               compatible = "sandbox,gpio";
-               gpio-controller;
-               #gpio-cells = <1>;
-               gpio-bank-name = "a";
-               sandbox,gpio-count = <20>;
-       };
+       pinctrl-gpio {
+               compatible = "sandbox,pinctrl-gpio";
 
-       gpio_b: extra-gpios {
-               compatible = "sandbox,gpio";
-               gpio-controller;
-               #gpio-cells = <5>;
-               gpio-bank-name = "b";
-               sandbox,gpio-count = <10>;
+               gpio_a: base-gpios {
+                       compatible = "sandbox,gpio";
+                       gpio-controller;
+                       #gpio-cells = <1>;
+                       gpio-bank-name = "a";
+                       sandbox,gpio-count = <20>;
+               };
+
+               gpio_b: extra-gpios {
+                       compatible = "sandbox,gpio";
+                       gpio-controller;
+                       #gpio-cells = <5>;
+                       gpio-bank-name = "b";
+                       sandbox,gpio-count = <10>;
+               };
+
+               gpio_c: pinmux-gpios {
+                       compatible = "sandbox,gpio";
+                       gpio-controller;
+                       #gpio-cells = <2>;
+                       gpio-bank-name = "c";
+                       sandbox,gpio-count = <10>;
+               };
        };
 
        i2c@0 {
                vss-microvolts = <0>;
        };
 
+       irq: irq {
+               compatible = "sandbox,irq";
+               interrupt-controller;
+               #interrupt-cells = <2>;
+       };
+
        lcd {
                u-boot,dm-pre-reloc;
                compatible = "sandbox,lcd-sdl";
                mbox-names = "other", "test";
        };
 
-       cpu-test1 {
-               compatible = "sandbox,cpu_sandbox";
-               u-boot,dm-pre-reloc;
-       };
+       cpus {
+               cpu-test1 {
+                       compatible = "sandbox,cpu_sandbox";
+                       u-boot,dm-pre-reloc;
+               };
 
-       cpu-test2 {
-               compatible = "sandbox,cpu_sandbox";
-               u-boot,dm-pre-reloc;
-       };
+               cpu-test2 {
+                       compatible = "sandbox,cpu_sandbox";
+                       u-boot,dm-pre-reloc;
+               };
 
-       cpu-test3 {
-               compatible = "sandbox,cpu_sandbox";
-               u-boot,dm-pre-reloc;
+               cpu-test3 {
+                       compatible = "sandbox,cpu_sandbox";
+                       u-boot,dm-pre-reloc;
+               };
        };
 
        i2s: i2s {
                compatible = "sandbox,pch";
        };
 
-       pci0: pci-controller0 {
+       pci0: pci@0 {
                compatible = "sandbox,pci";
                device_type = "pci";
+               bus-range = <0x00 0xff>;
                #address-cells = <3>;
                #size-cells = <2>;
                ranges = <0x02000000 0 0x10000000 0x10000000 0 0x2000000
                               0x01000810 0 0 0 0>;
                        sandbox,emul = <&swap_case_emul0_1>;
                };
+               p2sb-pci@2,0 {
+                       compatible = "sandbox,p2sb";
+                       reg = <0x02001010 0 0 0 0>;
+                       sandbox,emul = <&p2sb_emul>;
+
+                       adder {
+                               intel,p2sb-port-id = <3>;
+                               compatible = "sandbox,adder";
+                       };
+               };
+               pci@1e,0 {
+                       compatible = "sandbox,pmc";
+                       reg = <0xf000 0 0 0 0>;
+                       sandbox,emul = <&pmc_emul1e>;
+                       acpi-base = <0x400>;
+                       gpe0-dwx-mask = <0xf>;
+                       gpe0-dwx-shift-base = <4>;
+                       gpe0-dw = <6 7 9>;
+                       gpe0-sts = <0x20>;
+                       gpe0-en = <0x30>;
+               };
                pci@1f,0 {
                        compatible = "pci-generic";
                        /* reg 0 is at 0x10, using FDT_PCI_SPACE_IO */
                swap_case_emul0_1f: emul0@1f,0 {
                        compatible = "sandbox,swap-case";
                };
+               p2sb_emul: emul@2,0 {
+                       compatible = "sandbox,p2sb-emul";
+               };
+               pmc_emul1e: emul@1e,0 {
+                       compatible = "sandbox,pmc-emul";
+               };
        };
 
-       pci1: pci-controller1 {
+       pci1: pci@1 {
                compatible = "sandbox,pci";
                device_type = "pci";
+               bus-range = <0x00 0xff>;
                #address-cells = <3>;
                #size-cells = <2>;
                ranges = <0x02000000 0 0x30000000 0x30000000 0 0x2000
                };
        };
 
-       pci2: pci-controller2 {
+       pci2: pci@2 {
                compatible = "sandbox,pci";
                device_type = "pci";
+               bus-range = <0x00 0xff>;
                #address-cells = <3>;
                #size-cells = <2>;
                ranges = <0x02000000 0 0x50000000 0x50000000 0 0x2000
                reset-names = "other", "test";
        };
 
+       rng {
+               compatible = "sandbox,sandbox-rng";
+       };
+
        rproc_1: rproc@1 {
                compatible = "sandbox,test-processor";
                remoteproc-name = "remoteproc-test-dev1";
        chosen {
                #address-cells = <1>;
                #size-cells = <1>;
+               setting = "sunrise ohoka";
+               other-node = "/some-bus/c-test@5";
+               int-values = <0x1937 72993>;
                chosen-test {
                        compatible = "denx,u-boot-fdt-test";
                        reg = <9 1>;
 
        pinctrl {
                compatible = "sandbox,pinctrl";
+
+               pinctrl-names = "default";
+               pinctrl-0 = <&gpios>;
+
+               gpios: gpios {
+                       gpio0 {
+                               pins = "GPIO0";
+                               bias-pull-up;
+                               input-disable;
+                       };
+                       gpio1 {
+                               pins = "GPIO1";
+                               output-high;
+                               drive-open-drain;
+                       };
+                       gpio2 {
+                               pins = "GPIO2";
+                               bias-pull-down;
+                               input-enable;
+                       };
+                       gpio3 {
+                               pins = "GPIO3";
+                               bias-disable;
+                       };
+               };
        };
 
        hwspinlock@0 {