2014-02-26 22:59:21 +00:00
|
|
|
/dts-v1/;
|
|
|
|
|
2020-01-13 10:35:13 +00:00
|
|
|
#include <dt-bindings/gpio/gpio.h>
|
|
|
|
#include <dt-bindings/gpio/sandbox-gpio.h>
|
|
|
|
|
2014-02-26 22:59:21 +00:00
|
|
|
/ {
|
|
|
|
model = "sandbox";
|
|
|
|
compatible = "sandbox";
|
|
|
|
#address-cells = <1>;
|
2015-07-06 18:54:36 +00:00
|
|
|
#size-cells = <1>;
|
2014-02-26 22:59:21 +00:00
|
|
|
|
2014-07-23 12:55:03 +00:00
|
|
|
aliases {
|
|
|
|
console = &uart0;
|
2015-05-22 21:42:15 +00:00
|
|
|
eth0 = "/eth@10002000";
|
2015-08-28 05:25:53 +00:00
|
|
|
eth3 = ð_3;
|
2015-05-22 21:42:15 +00:00
|
|
|
eth5 = ð_5;
|
2018-10-01 18:22:40 +00:00
|
|
|
gpio1 = &gpio_a;
|
|
|
|
gpio2 = &gpio_b;
|
2020-01-13 10:35:14 +00:00
|
|
|
gpio3 = &gpio_c;
|
2015-01-25 15:27:05 +00:00
|
|
|
i2c0 = "/i2c@0";
|
2017-04-24 02:02:07 +00:00
|
|
|
mmc0 = "/mmc0";
|
|
|
|
mmc1 = "/mmc1";
|
2018-08-03 08:14:41 +00:00
|
|
|
pci0 = &pci0;
|
|
|
|
pci1 = &pci1;
|
2018-08-03 08:14:50 +00:00
|
|
|
pci2 = &pci2;
|
2015-09-17 20:42:41 +00:00
|
|
|
remoteproc1 = &rproc_1;
|
|
|
|
remoteproc2 = &rproc_2;
|
2015-05-22 21:42:17 +00:00
|
|
|
rtc0 = &rtc_0;
|
|
|
|
rtc1 = &rtc_1;
|
2015-05-22 21:42:15 +00:00
|
|
|
spi0 = "/spi@0";
|
2015-05-13 11:38:34 +00:00
|
|
|
testfdt6 = "/e-test";
|
2015-01-25 15:27:05 +00:00
|
|
|
testbus3 = "/some-bus";
|
|
|
|
testfdt0 = "/some-bus/c-test@0";
|
|
|
|
testfdt1 = "/some-bus/c-test@1";
|
|
|
|
testfdt3 = "/b-test";
|
|
|
|
testfdt5 = "/some-bus/c-test@5";
|
|
|
|
testfdt8 = "/a-test";
|
test: dm: Fix wrong aliases property names
After importing v4.17-rc1 Linux commit 9130ba884640 ("scripts/dtc:
Update to upstream version v1.4.6-9-gaadd0b65c987"), sandbox build
reports below warnings:
arch/sandbox/dts/test.dtb: Warning (alias_paths): /aliases: aliases property name must include only lowercase and '-'
arch/sandbox/dts/test.dtb: Warning (alias_paths): /aliases: aliases property name must include only lowercase and '-'
arch/sandbox/dts/test.dtb: Warning (alias_paths): /aliases: aliases property name must include only lowercase and '-'
arch/sandbox/dts/test.dtb: Warning (alias_paths): /aliases: aliases property name must include only lowercase and '-'
Silent them by applying the 's/_/-/' substitution in the names of the
'fdt_dummy0', 'fdt_dummy1', 'fdt_dummy2', 'fdt_dummy3' properties.
Similar DTC warnings have been recently fixed in Linux kernel, e.g. via
v4.17-rc1 commit d366c30d19f4 ("ARM: dts: STi: Fix aliases property name
for STi boards").
If done alone, the DTS update generates a failure of the
`ut dm fdt_translation` unit test in sandbox environment as seen below:
$ ./u-boot -d arch/sandbox/dts/test.dtb
---<-snip->---
=> ut dm fdt_translation
Test: dm_test_fdt_translation: test-fdt.c
test/dm/test-fdt.c:444, dm_test_fdt_translation(): 0 == uclass_find_device_by_seq(UCLASS_TEST_DUMMY, 0, 1, &dev): Expected 0, got -19
Test: dm_test_fdt_translation: test-fdt.c (flat tree)
test/dm/test-fdt.c:444, dm_test_fdt_translation(): 0 == uclass_find_device_by_seq(UCLASS_TEST_DUMMY, 0, 1, &dev): Expected 0, got -19
Failures: 2
---<-snip->---
Fix this issue in place, by updating the "name" string in the
UCLASS_DRIVER(fdt_dummy) definition, so that it matches the newly
updated aliases properties. After that, the test passes:
$ ./u-boot -d arch/sandbox/dts/test.dtb
---<-snip->---
=> ut dm fdt_translation
Test: dm_test_fdt_translation: test-fdt.c
Test: dm_test_fdt_translation: test-fdt.c (flat tree)
Failures: 0
---<-snip->---
Fixes: e8d5291824e2 ("core: ofnode: Fix translation for #size-cells == 0")
Reported-by: Petr Vorel <pvorel@suse.cz>
Signed-off-by: Eugeniu Rosca <erosca@de.adit-jv.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
2018-05-19 12:13:55 +00:00
|
|
|
fdt-dummy0 = "/translation-test@8000/dev@0,0";
|
|
|
|
fdt-dummy1 = "/translation-test@8000/dev@1,100";
|
|
|
|
fdt-dummy2 = "/translation-test@8000/dev@2,200";
|
|
|
|
fdt-dummy3 = "/translation-test@8000/noxlatebus@3,300/dev@42";
|
2015-03-25 18:23:05 +00:00
|
|
|
usb0 = &usb_0;
|
|
|
|
usb1 = &usb_1;
|
|
|
|
usb2 = &usb_2;
|
2018-08-09 12:51:19 +00:00
|
|
|
axi0 = &axi;
|
2018-09-27 07:19:31 +00:00
|
|
|
osd0 = "/osd";
|
2014-07-23 12:55:03 +00:00
|
|
|
};
|
|
|
|
|
2018-12-10 17:37:33 +00:00
|
|
|
audio: audio-codec {
|
|
|
|
compatible = "sandbox,audio-codec";
|
|
|
|
#sound-dai-cells = <1>;
|
|
|
|
};
|
|
|
|
|
2018-12-10 17:37:34 +00:00
|
|
|
cros_ec: cros-ec {
|
2018-10-01 18:22:08 +00:00
|
|
|
reg = <0 0>;
|
|
|
|
compatible = "google,cros-ec-sandbox";
|
|
|
|
|
|
|
|
/*
|
|
|
|
* This describes the flash memory within the EC. Note
|
|
|
|
* that the STM32L flash erases to 0, not 0xff.
|
|
|
|
*/
|
|
|
|
flash {
|
|
|
|
image-pos = <0x08000000>;
|
|
|
|
size = <0x20000>;
|
|
|
|
erase-value = <0>;
|
|
|
|
|
|
|
|
/* Information for sandbox */
|
|
|
|
ro {
|
|
|
|
image-pos = <0>;
|
|
|
|
size = <0xf000>;
|
|
|
|
};
|
|
|
|
wp-ro {
|
|
|
|
image-pos = <0xf000>;
|
|
|
|
size = <0x1000>;
|
|
|
|
};
|
|
|
|
rw {
|
|
|
|
image-pos = <0x10000>;
|
|
|
|
size = <0x10000>;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
2019-10-07 13:29:05 +00:00
|
|
|
dsi_host: dsi_host {
|
|
|
|
compatible = "sandbox,dsi-host";
|
|
|
|
};
|
|
|
|
|
2014-02-26 22:59:21 +00:00
|
|
|
a-test {
|
2015-07-06 18:54:36 +00:00
|
|
|
reg = <0 1>;
|
2014-02-26 22:59:21 +00:00
|
|
|
compatible = "denx,u-boot-fdt-test";
|
2014-07-23 12:54:57 +00:00
|
|
|
ping-expect = <0>;
|
2014-02-26 22:59:21 +00:00
|
|
|
ping-add = <0>;
|
2014-07-23 12:55:03 +00:00
|
|
|
u-boot,dm-pre-reloc;
|
2020-01-13 10:35:13 +00:00
|
|
|
test-gpios = <&gpio_a 1>, <&gpio_a 4>,
|
|
|
|
<&gpio_b 5 GPIO_ACTIVE_HIGH 3 2 1>,
|
dm: gpio: Add better functions to request GPIOs
At present U-Boot sort-of supports the standard way of reading GPIOs from
device tree nodes, but the support is incomplete, a bit clunky and only
works for GPIO bindings where #gpio-cells is 2.
Add new functions to request GPIOs, taking full account of the device
tree binding. These permit requesting a GPIO with a simple call like:
gpio_request_by_name(dev, "cd-gpios", 0, &desc, GPIOD_IS_IN);
This will request the GPIO, looking at the device's node which might be
this, for example:
cd-gpios = <&gpio TEGRA_GPIO(B, 3) GPIO_ACTIVE_LOW>;
The GPIO will be set to input mode in this case and polarity will be
honoured by the GPIO calls.
It is also possible to request and free a list of GPIOs.
Signed-off-by: Simon Glass <sjg@chromium.org>
2015-01-06 03:05:29 +00:00
|
|
|
<0>, <&gpio_a 12>;
|
2020-01-13 10:35:13 +00:00
|
|
|
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>;
|
2020-01-13 10:35:14 +00:00
|
|
|
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>;
|
2018-12-10 17:37:37 +00:00
|
|
|
int-value = <1234>;
|
|
|
|
uint-value = <(-1234)>;
|
2020-03-29 16:04:40 +00:00
|
|
|
int64-value = /bits/ 64 <0x1111222233334444>;
|
2020-03-29 16:04:41 +00:00
|
|
|
int-array = <5678 9123 4567>;
|
2020-02-06 16:55:00 +00:00
|
|
|
interrupts-extended = <&irq 3 0>;
|
2014-02-26 22:59:21 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
junk {
|
2015-07-06 18:54:36 +00:00
|
|
|
reg = <1 1>;
|
2014-02-26 22:59:21 +00:00
|
|
|
compatible = "not,compatible";
|
|
|
|
};
|
|
|
|
|
|
|
|
no-compatible {
|
2015-07-06 18:54:36 +00:00
|
|
|
reg = <2 1>;
|
2014-02-26 22:59:21 +00:00
|
|
|
};
|
|
|
|
|
2018-10-01 18:22:40 +00:00
|
|
|
backlight: backlight {
|
|
|
|
compatible = "pwm-backlight";
|
|
|
|
enable-gpios = <&gpio_a 1>;
|
|
|
|
power-supply = <&ldo_1>;
|
|
|
|
pwms = <&pwm 0 1000>;
|
|
|
|
default-brightness-level = <5>;
|
|
|
|
brightness-levels = <0 16 32 64 128 170 202 234 255>;
|
|
|
|
};
|
|
|
|
|
2018-08-09 14:17:46 +00:00
|
|
|
bind-test {
|
|
|
|
bind-test-child1 {
|
|
|
|
compatible = "sandbox,phy";
|
|
|
|
#phy-cells = <1>;
|
|
|
|
};
|
|
|
|
|
|
|
|
bind-test-child2 {
|
|
|
|
compatible = "simple-bus";
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
2014-02-26 22:59:21 +00:00
|
|
|
b-test {
|
2015-07-06 18:54:36 +00:00
|
|
|
reg = <3 1>;
|
2014-02-26 22:59:21 +00:00
|
|
|
compatible = "denx,u-boot-fdt-test";
|
2014-07-23 12:54:57 +00:00
|
|
|
ping-expect = <3>;
|
2014-02-26 22:59:21 +00:00
|
|
|
ping-add = <3>;
|
|
|
|
};
|
|
|
|
|
2017-04-24 09:51:28 +00:00
|
|
|
phy_provider0: gen_phy@0 {
|
|
|
|
compatible = "sandbox,phy";
|
|
|
|
#phy-cells = <1>;
|
|
|
|
};
|
|
|
|
|
|
|
|
phy_provider1: gen_phy@1 {
|
|
|
|
compatible = "sandbox,phy";
|
|
|
|
#phy-cells = <0>;
|
|
|
|
broken;
|
|
|
|
};
|
|
|
|
|
|
|
|
gen_phy_user: gen_phy_user {
|
|
|
|
compatible = "simple-bus";
|
|
|
|
phys = <&phy_provider0 0>, <&phy_provider0 1>, <&phy_provider1>;
|
|
|
|
phy-names = "phy1", "phy2", "phy3";
|
|
|
|
};
|
|
|
|
|
2014-02-26 22:59:21 +00:00
|
|
|
some-bus {
|
|
|
|
#address-cells = <1>;
|
|
|
|
#size-cells = <0>;
|
2014-07-23 12:55:18 +00:00
|
|
|
compatible = "denx,u-boot-test-bus";
|
2015-07-06 18:54:36 +00:00
|
|
|
reg = <3 1>;
|
2014-07-23 12:54:57 +00:00
|
|
|
ping-expect = <4>;
|
2014-02-26 22:59:21 +00:00
|
|
|
ping-add = <4>;
|
2014-07-23 12:55:18 +00:00
|
|
|
c-test@5 {
|
2014-02-26 22:59:21 +00:00
|
|
|
compatible = "denx,u-boot-fdt-test";
|
|
|
|
reg = <5>;
|
2014-07-23 12:55:18 +00:00
|
|
|
ping-expect = <5>;
|
2014-02-26 22:59:21 +00:00
|
|
|
ping-add = <5>;
|
|
|
|
};
|
2014-07-23 12:55:18 +00:00
|
|
|
c-test@0 {
|
|
|
|
compatible = "denx,u-boot-fdt-test";
|
|
|
|
reg = <0>;
|
|
|
|
ping-expect = <6>;
|
|
|
|
ping-add = <6>;
|
|
|
|
};
|
|
|
|
c-test@1 {
|
|
|
|
compatible = "denx,u-boot-fdt-test";
|
|
|
|
reg = <1>;
|
|
|
|
ping-expect = <7>;
|
|
|
|
ping-add = <7>;
|
|
|
|
};
|
2014-02-26 22:59:21 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
d-test {
|
2015-07-06 18:54:36 +00:00
|
|
|
reg = <3 1>;
|
2014-07-23 12:55:12 +00:00
|
|
|
ping-expect = <6>;
|
|
|
|
ping-add = <6>;
|
|
|
|
compatible = "google,another-fdt-test";
|
|
|
|
};
|
|
|
|
|
|
|
|
e-test {
|
2015-07-06 18:54:36 +00:00
|
|
|
reg = <3 1>;
|
2014-07-23 12:54:57 +00:00
|
|
|
ping-expect = <6>;
|
2014-02-26 22:59:21 +00:00
|
|
|
ping-add = <6>;
|
|
|
|
compatible = "google,another-fdt-test";
|
|
|
|
};
|
|
|
|
|
2015-01-25 15:27:05 +00:00
|
|
|
f-test {
|
|
|
|
compatible = "denx,u-boot-fdt-test";
|
|
|
|
};
|
|
|
|
|
|
|
|
g-test {
|
|
|
|
compatible = "denx,u-boot-fdt-test";
|
|
|
|
};
|
|
|
|
|
2018-10-11 05:07:01 +00:00
|
|
|
h-test {
|
|
|
|
compatible = "denx,u-boot-fdt-test1";
|
|
|
|
};
|
|
|
|
|
2019-12-30 04:19:25 +00:00
|
|
|
devres-test {
|
|
|
|
compatible = "denx,u-boot-devres-test";
|
|
|
|
};
|
|
|
|
|
2020-04-08 22:57:34 +00:00
|
|
|
acpi-test {
|
|
|
|
compatible = "denx,u-boot-acpi-test";
|
|
|
|
};
|
|
|
|
|
2017-09-04 12:55:57 +00:00
|
|
|
clocks {
|
|
|
|
clk_fixed: clk-fixed {
|
|
|
|
compatible = "fixed-clock";
|
|
|
|
#clock-cells = <0>;
|
|
|
|
clock-frequency = <1234>;
|
|
|
|
};
|
2019-02-25 08:14:55 +00:00
|
|
|
|
|
|
|
clk_fixed_factor: clk-fixed-factor {
|
|
|
|
compatible = "fixed-factor-clock";
|
|
|
|
#clock-cells = <0>;
|
|
|
|
clock-div = <3>;
|
|
|
|
clock-mult = <2>;
|
|
|
|
clocks = <&clk_fixed>;
|
|
|
|
};
|
2019-06-24 13:50:47 +00:00
|
|
|
|
|
|
|
osc {
|
|
|
|
compatible = "fixed-clock";
|
|
|
|
#clock-cells = <0>;
|
|
|
|
clock-frequency = <20000000>;
|
|
|
|
};
|
2016-06-17 15:44:00 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
clk_sandbox: clk-sbox {
|
2015-07-06 18:54:24 +00:00
|
|
|
compatible = "sandbox,clk";
|
2016-06-17 15:44:00 +00:00
|
|
|
#clock-cells = <1>;
|
2019-10-22 12:00:07 +00:00
|
|
|
assigned-clocks = <&clk_sandbox 3>;
|
|
|
|
assigned-clock-rates = <321>;
|
2016-06-17 15:44:00 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
clk-test {
|
|
|
|
compatible = "sandbox,clk-test";
|
|
|
|
clocks = <&clk_fixed>,
|
|
|
|
<&clk_sandbox 1>,
|
2019-10-22 12:00:05 +00:00
|
|
|
<&clk_sandbox 0>,
|
|
|
|
<&clk_sandbox 3>,
|
|
|
|
<&clk_sandbox 2>;
|
|
|
|
clock-names = "fixed", "i2c", "spi", "uart2", "uart1";
|
2015-07-06 18:54:24 +00:00
|
|
|
};
|
|
|
|
|
2019-06-24 13:50:50 +00:00
|
|
|
ccf: clk-ccf {
|
|
|
|
compatible = "sandbox,clk-ccf";
|
|
|
|
};
|
|
|
|
|
2015-05-22 21:42:15 +00:00
|
|
|
eth@10002000 {
|
|
|
|
compatible = "sandbox,eth";
|
|
|
|
reg = <0x10002000 0x1000>;
|
2018-07-02 19:47:45 +00:00
|
|
|
fake-host-hwaddr = [00 00 66 44 22 00];
|
2015-05-22 21:42:15 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
eth_5: eth@10003000 {
|
|
|
|
compatible = "sandbox,eth";
|
|
|
|
reg = <0x10003000 0x1000>;
|
2018-07-02 19:47:45 +00:00
|
|
|
fake-host-hwaddr = [00 00 66 44 22 11];
|
2015-05-22 21:42:15 +00:00
|
|
|
};
|
|
|
|
|
2015-08-28 05:25:53 +00:00
|
|
|
eth_3: sbe5 {
|
|
|
|
compatible = "sandbox,eth";
|
|
|
|
reg = <0x10005000 0x1000>;
|
2018-07-02 19:47:45 +00:00
|
|
|
fake-host-hwaddr = [00 00 66 44 22 33];
|
2015-08-28 05:25:53 +00:00
|
|
|
};
|
|
|
|
|
2015-05-22 21:42:15 +00:00
|
|
|
eth@10004000 {
|
|
|
|
compatible = "sandbox,eth";
|
|
|
|
reg = <0x10004000 0x1000>;
|
2018-07-02 19:47:45 +00:00
|
|
|
fake-host-hwaddr = [00 00 66 44 22 22];
|
2015-05-22 21:42:15 +00:00
|
|
|
};
|
|
|
|
|
2018-09-19 10:43:46 +00:00
|
|
|
firmware {
|
|
|
|
sandbox_firmware: sandbox-firmware {
|
|
|
|
compatible = "sandbox,firmware";
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
2020-01-13 10:35:15 +00:00
|
|
|
pinctrl-gpio {
|
|
|
|
compatible = "sandbox,pinctrl-gpio";
|
|
|
|
|
|
|
|
gpio_a: base-gpios {
|
|
|
|
compatible = "sandbox,gpio";
|
|
|
|
gpio-controller;
|
|
|
|
#gpio-cells = <1>;
|
|
|
|
gpio-bank-name = "a";
|
|
|
|
sandbox,gpio-count = <20>;
|
|
|
|
};
|
2014-02-26 22:59:21 +00:00
|
|
|
|
2020-01-13 10:35:15 +00:00
|
|
|
gpio_b: extra-gpios {
|
|
|
|
compatible = "sandbox,gpio";
|
|
|
|
gpio-controller;
|
|
|
|
#gpio-cells = <5>;
|
|
|
|
gpio-bank-name = "b";
|
|
|
|
sandbox,gpio-count = <10>;
|
|
|
|
};
|
2014-10-14 05:42:11 +00:00
|
|
|
|
2020-01-13 10:35:15 +00:00
|
|
|
gpio_c: pinmux-gpios {
|
|
|
|
compatible = "sandbox,gpio";
|
|
|
|
gpio-controller;
|
|
|
|
#gpio-cells = <2>;
|
|
|
|
gpio-bank-name = "c";
|
|
|
|
sandbox,gpio-count = <10>;
|
|
|
|
};
|
2020-01-13 10:35:14 +00:00
|
|
|
};
|
|
|
|
|
2014-12-10 15:55:55 +00:00
|
|
|
i2c@0 {
|
|
|
|
#address-cells = <1>;
|
|
|
|
#size-cells = <0>;
|
2015-07-06 18:54:36 +00:00
|
|
|
reg = <0 1>;
|
2014-12-10 15:55:55 +00:00
|
|
|
compatible = "sandbox,i2c";
|
|
|
|
clock-frequency = <100000>;
|
|
|
|
eeprom@2c {
|
|
|
|
reg = <0x2c>;
|
|
|
|
compatible = "i2c-eeprom";
|
2018-11-18 15:14:34 +00:00
|
|
|
sandbox,emul = <&emul_eeprom>;
|
2014-12-10 15:55:55 +00:00
|
|
|
};
|
2015-05-13 11:38:35 +00:00
|
|
|
|
2015-05-22 21:42:17 +00:00
|
|
|
rtc_0: rtc@43 {
|
|
|
|
reg = <0x43>;
|
|
|
|
compatible = "sandbox-rtc";
|
2018-11-18 15:14:34 +00:00
|
|
|
sandbox,emul = <&emul0>;
|
2015-05-22 21:42:17 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
rtc_1: rtc@61 {
|
|
|
|
reg = <0x61>;
|
|
|
|
compatible = "sandbox-rtc";
|
2018-11-18 15:14:34 +00:00
|
|
|
sandbox,emul = <&emul1>;
|
|
|
|
};
|
|
|
|
|
|
|
|
i2c_emul: emul {
|
|
|
|
reg = <0xff>;
|
|
|
|
compatible = "sandbox,i2c-emul-parent";
|
|
|
|
emul_eeprom: emul-eeprom {
|
|
|
|
compatible = "sandbox,i2c-eeprom";
|
|
|
|
sandbox,filename = "i2c.bin";
|
|
|
|
sandbox,size = <256>;
|
|
|
|
};
|
|
|
|
emul0: emul0 {
|
|
|
|
compatible = "sandbox,i2c-rtc";
|
|
|
|
};
|
|
|
|
emul1: emull {
|
2015-05-22 21:42:17 +00:00
|
|
|
compatible = "sandbox,i2c-rtc";
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
2015-05-13 11:38:35 +00:00
|
|
|
sandbox_pmic: sandbox_pmic {
|
|
|
|
reg = <0x40>;
|
2018-11-18 15:14:34 +00:00
|
|
|
sandbox,emul = <&emul_pmic0>;
|
2015-05-13 11:38:35 +00:00
|
|
|
};
|
2018-05-15 14:26:40 +00:00
|
|
|
|
|
|
|
mc34708: pmic@41 {
|
|
|
|
reg = <0x41>;
|
2018-11-18 15:14:34 +00:00
|
|
|
sandbox,emul = <&emul_pmic1>;
|
2018-05-15 14:26:40 +00:00
|
|
|
};
|
2014-12-10 15:55:55 +00:00
|
|
|
};
|
|
|
|
|
2018-12-14 20:14:29 +00:00
|
|
|
bootcount@0 {
|
|
|
|
compatible = "u-boot,bootcount-rtc";
|
|
|
|
rtc = <&rtc_1>;
|
|
|
|
offset = <0x13>;
|
|
|
|
};
|
|
|
|
|
2015-10-27 12:08:06 +00:00
|
|
|
adc@0 {
|
|
|
|
compatible = "sandbox,adc";
|
|
|
|
vdd-supply = <&buck2>;
|
|
|
|
vss-microvolts = <0>;
|
|
|
|
};
|
|
|
|
|
2020-02-06 16:55:00 +00:00
|
|
|
irq: irq {
|
2019-12-07 04:41:59 +00:00
|
|
|
compatible = "sandbox,irq";
|
2020-02-06 16:55:00 +00:00
|
|
|
interrupt-controller;
|
|
|
|
#interrupt-cells = <2>;
|
2019-12-07 04:41:59 +00:00
|
|
|
};
|
|
|
|
|
2016-01-19 02:52:26 +00:00
|
|
|
lcd {
|
|
|
|
u-boot,dm-pre-reloc;
|
|
|
|
compatible = "sandbox,lcd-sdl";
|
|
|
|
xres = <1366>;
|
|
|
|
yres = <768>;
|
|
|
|
};
|
|
|
|
|
2015-07-06 18:54:34 +00:00
|
|
|
leds {
|
|
|
|
compatible = "gpio-leds";
|
|
|
|
|
|
|
|
iracibble {
|
|
|
|
gpios = <&gpio_a 1 0>;
|
|
|
|
label = "sandbox:red";
|
|
|
|
};
|
|
|
|
|
|
|
|
martinet {
|
|
|
|
gpios = <&gpio_a 2 0>;
|
|
|
|
label = "sandbox:green";
|
|
|
|
};
|
2018-04-11 09:16:29 +00:00
|
|
|
|
|
|
|
default_on {
|
|
|
|
gpios = <&gpio_a 5 0>;
|
|
|
|
label = "sandbox:default_on";
|
|
|
|
default-state = "on";
|
|
|
|
};
|
|
|
|
|
|
|
|
default_off {
|
|
|
|
gpios = <&gpio_a 6 0>;
|
|
|
|
label = "sandbox:default_off";
|
|
|
|
default-state = "off";
|
|
|
|
};
|
2015-07-06 18:54:34 +00:00
|
|
|
};
|
|
|
|
|
2016-05-16 23:41:37 +00:00
|
|
|
mbox: mbox {
|
|
|
|
compatible = "sandbox,mbox";
|
|
|
|
#mbox-cells = <1>;
|
|
|
|
};
|
|
|
|
|
|
|
|
mbox-test {
|
|
|
|
compatible = "sandbox,mbox-test";
|
|
|
|
mboxes = <&mbox 100>, <&mbox 1>;
|
|
|
|
mbox-names = "other", "test";
|
|
|
|
};
|
|
|
|
|
2019-08-27 08:17:03 +00:00
|
|
|
cpus {
|
|
|
|
cpu-test1 {
|
|
|
|
compatible = "sandbox,cpu_sandbox";
|
|
|
|
u-boot,dm-pre-reloc;
|
|
|
|
};
|
2018-08-06 08:23:44 +00:00
|
|
|
|
2019-08-27 08:17:03 +00:00
|
|
|
cpu-test2 {
|
|
|
|
compatible = "sandbox,cpu_sandbox";
|
|
|
|
u-boot,dm-pre-reloc;
|
|
|
|
};
|
2018-08-06 08:23:44 +00:00
|
|
|
|
2019-08-27 08:17:03 +00:00
|
|
|
cpu-test3 {
|
|
|
|
compatible = "sandbox,cpu_sandbox";
|
|
|
|
u-boot,dm-pre-reloc;
|
|
|
|
};
|
2018-08-06 08:23:44 +00:00
|
|
|
};
|
|
|
|
|
2018-12-10 17:37:34 +00:00
|
|
|
i2s: i2s {
|
|
|
|
compatible = "sandbox,i2s";
|
|
|
|
#sound-dai-cells = <1>;
|
2019-02-17 03:24:56 +00:00
|
|
|
sandbox,silent; /* Don't emit sounds while testing */
|
2018-12-10 17:37:34 +00:00
|
|
|
};
|
|
|
|
|
2019-07-05 07:33:57 +00:00
|
|
|
nop-test_0 {
|
|
|
|
compatible = "sandbox,nop_sandbox1";
|
|
|
|
nop-test_1 {
|
|
|
|
compatible = "sandbox,nop_sandbox2";
|
|
|
|
bind = "True";
|
|
|
|
};
|
|
|
|
nop-test_2 {
|
|
|
|
compatible = "sandbox,nop_sandbox2";
|
|
|
|
bind = "False";
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
2018-07-31 12:24:14 +00:00
|
|
|
misc-test {
|
|
|
|
compatible = "sandbox,misc_sandbox";
|
|
|
|
};
|
|
|
|
|
2017-04-24 02:02:07 +00:00
|
|
|
mmc2 {
|
|
|
|
compatible = "sandbox,mmc";
|
|
|
|
};
|
|
|
|
|
|
|
|
mmc1 {
|
|
|
|
compatible = "sandbox,mmc";
|
|
|
|
};
|
|
|
|
|
|
|
|
mmc0 {
|
2015-07-06 18:54:32 +00:00
|
|
|
compatible = "sandbox,mmc";
|
|
|
|
};
|
|
|
|
|
2019-02-17 03:24:50 +00:00
|
|
|
pch {
|
|
|
|
compatible = "sandbox,pch";
|
|
|
|
};
|
|
|
|
|
2020-02-11 17:41:23 +00:00
|
|
|
pci0: pci@0 {
|
2015-03-05 19:25:34 +00:00
|
|
|
compatible = "sandbox,pci";
|
|
|
|
device_type = "pci";
|
2020-02-11 17:41:23 +00:00
|
|
|
bus-range = <0x00 0xff>;
|
2015-03-05 19:25:34 +00:00
|
|
|
#address-cells = <3>;
|
|
|
|
#size-cells = <2>;
|
2019-09-25 14:56:08 +00:00
|
|
|
ranges = <0x02000000 0 0x10000000 0x10000000 0 0x2000000
|
2015-03-05 19:25:34 +00:00
|
|
|
0x01000000 0 0x20000000 0x20000000 0 0x2000>;
|
2018-08-03 08:14:39 +00:00
|
|
|
pci@0,0 {
|
|
|
|
compatible = "pci-generic";
|
|
|
|
reg = <0x0000 0 0 0 0>;
|
pci: sandbox: Move the emulators into their own node
Sandbox pci works using emulation drivers which are currently children of
the pci device:
pci-controller {
pci@1f,0 {
compatible = "pci-generic";
reg = <0xf800 0 0 0 0>;
emul@1f,0 {
compatible = "sandbox,swap-case";
};
};
};
In this case the emulation device is attached to pci device on address
f800 (device 1f, function 0) and provides the swap-case functionality.
However this is not ideal, since every device on a PCI bus has a child
device. This is only really the case for sandbox, but we want to avoid
special-case code for sandbox.
Worse, child devices cannot be probed before their parents. This forces
us to use 'find' rather than 'get' to obtain the emulator device. In fact
the emulator devices are never probed. There is code in
sandbox_pci_emul_post_probe() which tries to track when emulators are
active, but at present this does not work.
A better approach seems to be to add a separate node elsewhere in the
device tree, an 'emulation parent'. This could be given a bogus address
(such as -1) to hide the emulators away from the 'pci' command, but it
seems better to keep it at the root node to avoid such hacks.
Then we can use a phandle to point from the device to the correct
emulator, and only on sandbox. The code to find an emulator does not
interfere with normal pci operation.
Add a new UCLASS_PCI_EMUL_PARENT uclass which allows finding an emulator
given a bus, and finding a bus given an emulator. Update the existing
device trees and the code for finding an emulator.
This brings PCI emulators more into line with I2C.
Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Tested-by: Bin Meng <bmeng.cn@gmail.com>
[bmeng: fix 3 typos in the commit message;
encode bus number in the labels of swap_case_emul nodes;
mention commit 4345998ae9df in sandbox_pci_get_emul()]
Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
2019-09-25 14:56:10 +00:00
|
|
|
sandbox,emul = <&swap_case_emul0_0>;
|
2018-08-03 08:14:39 +00:00
|
|
|
};
|
2019-06-07 08:24:24 +00:00
|
|
|
pci@1,0 {
|
|
|
|
compatible = "pci-generic";
|
2019-09-15 18:08:58 +00:00
|
|
|
/* reg 0 is at 0x14, using FDT_PCI_SPACE_MEM32 */
|
|
|
|
reg = <0x02000814 0 0 0 0
|
|
|
|
0x01000810 0 0 0 0>;
|
pci: sandbox: Move the emulators into their own node
Sandbox pci works using emulation drivers which are currently children of
the pci device:
pci-controller {
pci@1f,0 {
compatible = "pci-generic";
reg = <0xf800 0 0 0 0>;
emul@1f,0 {
compatible = "sandbox,swap-case";
};
};
};
In this case the emulation device is attached to pci device on address
f800 (device 1f, function 0) and provides the swap-case functionality.
However this is not ideal, since every device on a PCI bus has a child
device. This is only really the case for sandbox, but we want to avoid
special-case code for sandbox.
Worse, child devices cannot be probed before their parents. This forces
us to use 'find' rather than 'get' to obtain the emulator device. In fact
the emulator devices are never probed. There is code in
sandbox_pci_emul_post_probe() which tries to track when emulators are
active, but at present this does not work.
A better approach seems to be to add a separate node elsewhere in the
device tree, an 'emulation parent'. This could be given a bogus address
(such as -1) to hide the emulators away from the 'pci' command, but it
seems better to keep it at the root node to avoid such hacks.
Then we can use a phandle to point from the device to the correct
emulator, and only on sandbox. The code to find an emulator does not
interfere with normal pci operation.
Add a new UCLASS_PCI_EMUL_PARENT uclass which allows finding an emulator
given a bus, and finding a bus given an emulator. Update the existing
device trees and the code for finding an emulator.
This brings PCI emulators more into line with I2C.
Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Tested-by: Bin Meng <bmeng.cn@gmail.com>
[bmeng: fix 3 typos in the commit message;
encode bus number in the labels of swap_case_emul nodes;
mention commit 4345998ae9df in sandbox_pci_get_emul()]
Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
2019-09-25 14:56:10 +00:00
|
|
|
sandbox,emul = <&swap_case_emul0_1>;
|
2019-06-07 08:24:24 +00:00
|
|
|
};
|
2019-12-07 04:41:57 +00:00
|
|
|
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";
|
|
|
|
};
|
|
|
|
};
|
2019-12-07 04:41:54 +00:00
|
|
|
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>;
|
|
|
|
};
|
2015-03-05 19:25:34 +00:00
|
|
|
pci@1f,0 {
|
|
|
|
compatible = "pci-generic";
|
2019-09-15 18:08:58 +00:00
|
|
|
/* reg 0 is at 0x10, using FDT_PCI_SPACE_IO */
|
|
|
|
reg = <0x0100f810 0 0 0 0>;
|
pci: sandbox: Move the emulators into their own node
Sandbox pci works using emulation drivers which are currently children of
the pci device:
pci-controller {
pci@1f,0 {
compatible = "pci-generic";
reg = <0xf800 0 0 0 0>;
emul@1f,0 {
compatible = "sandbox,swap-case";
};
};
};
In this case the emulation device is attached to pci device on address
f800 (device 1f, function 0) and provides the swap-case functionality.
However this is not ideal, since every device on a PCI bus has a child
device. This is only really the case for sandbox, but we want to avoid
special-case code for sandbox.
Worse, child devices cannot be probed before their parents. This forces
us to use 'find' rather than 'get' to obtain the emulator device. In fact
the emulator devices are never probed. There is code in
sandbox_pci_emul_post_probe() which tries to track when emulators are
active, but at present this does not work.
A better approach seems to be to add a separate node elsewhere in the
device tree, an 'emulation parent'. This could be given a bogus address
(such as -1) to hide the emulators away from the 'pci' command, but it
seems better to keep it at the root node to avoid such hacks.
Then we can use a phandle to point from the device to the correct
emulator, and only on sandbox. The code to find an emulator does not
interfere with normal pci operation.
Add a new UCLASS_PCI_EMUL_PARENT uclass which allows finding an emulator
given a bus, and finding a bus given an emulator. Update the existing
device trees and the code for finding an emulator.
This brings PCI emulators more into line with I2C.
Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Tested-by: Bin Meng <bmeng.cn@gmail.com>
[bmeng: fix 3 typos in the commit message;
encode bus number in the labels of swap_case_emul nodes;
mention commit 4345998ae9df in sandbox_pci_get_emul()]
Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
2019-09-25 14:56:10 +00:00
|
|
|
sandbox,emul = <&swap_case_emul0_1f>;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
pci-emul0 {
|
|
|
|
compatible = "sandbox,pci-emul-parent";
|
|
|
|
swap_case_emul0_0: emul0@0,0 {
|
|
|
|
compatible = "sandbox,swap-case";
|
|
|
|
};
|
|
|
|
swap_case_emul0_1: emul0@1,0 {
|
|
|
|
compatible = "sandbox,swap-case";
|
|
|
|
use-ea;
|
|
|
|
};
|
|
|
|
swap_case_emul0_1f: emul0@1f,0 {
|
|
|
|
compatible = "sandbox,swap-case";
|
2015-03-05 19:25:34 +00:00
|
|
|
};
|
2019-12-07 04:41:57 +00:00
|
|
|
p2sb_emul: emul@2,0 {
|
|
|
|
compatible = "sandbox,p2sb-emul";
|
|
|
|
};
|
2019-12-07 04:41:54 +00:00
|
|
|
pmc_emul1e: emul@1e,0 {
|
|
|
|
compatible = "sandbox,pmc-emul";
|
|
|
|
};
|
2015-03-05 19:25:34 +00:00
|
|
|
};
|
|
|
|
|
2020-02-11 17:41:23 +00:00
|
|
|
pci1: pci@1 {
|
2018-08-03 08:14:41 +00:00
|
|
|
compatible = "sandbox,pci";
|
|
|
|
device_type = "pci";
|
2020-02-11 17:41:23 +00:00
|
|
|
bus-range = <0x00 0xff>;
|
2018-08-03 08:14:41 +00:00
|
|
|
#address-cells = <3>;
|
|
|
|
#size-cells = <2>;
|
|
|
|
ranges = <0x02000000 0 0x30000000 0x30000000 0 0x2000
|
|
|
|
0x01000000 0 0x40000000 0x40000000 0 0x2000>;
|
2018-08-03 08:14:47 +00:00
|
|
|
sandbox,dev-info = <0x08 0x00 0x1234 0x5678
|
2018-10-10 19:27:08 +00:00
|
|
|
0x0c 0x00 0x1234 0x5678
|
|
|
|
0x10 0x00 0x1234 0x5678>;
|
|
|
|
pci@10,0 {
|
|
|
|
reg = <0x8000 0 0 0 0>;
|
|
|
|
};
|
2018-08-03 08:14:41 +00:00
|
|
|
};
|
|
|
|
|
2020-02-11 17:41:23 +00:00
|
|
|
pci2: pci@2 {
|
2018-08-03 08:14:50 +00:00
|
|
|
compatible = "sandbox,pci";
|
|
|
|
device_type = "pci";
|
2020-02-11 17:41:23 +00:00
|
|
|
bus-range = <0x00 0xff>;
|
2018-08-03 08:14:50 +00:00
|
|
|
#address-cells = <3>;
|
|
|
|
#size-cells = <2>;
|
|
|
|
ranges = <0x02000000 0 0x50000000 0x50000000 0 0x2000
|
|
|
|
0x01000000 0 0x60000000 0x60000000 0 0x2000>;
|
|
|
|
sandbox,dev-info = <0x08 0x00 0x1234 0x5678>;
|
|
|
|
pci@1f,0 {
|
|
|
|
compatible = "pci-generic";
|
|
|
|
reg = <0xf800 0 0 0 0>;
|
pci: sandbox: Move the emulators into their own node
Sandbox pci works using emulation drivers which are currently children of
the pci device:
pci-controller {
pci@1f,0 {
compatible = "pci-generic";
reg = <0xf800 0 0 0 0>;
emul@1f,0 {
compatible = "sandbox,swap-case";
};
};
};
In this case the emulation device is attached to pci device on address
f800 (device 1f, function 0) and provides the swap-case functionality.
However this is not ideal, since every device on a PCI bus has a child
device. This is only really the case for sandbox, but we want to avoid
special-case code for sandbox.
Worse, child devices cannot be probed before their parents. This forces
us to use 'find' rather than 'get' to obtain the emulator device. In fact
the emulator devices are never probed. There is code in
sandbox_pci_emul_post_probe() which tries to track when emulators are
active, but at present this does not work.
A better approach seems to be to add a separate node elsewhere in the
device tree, an 'emulation parent'. This could be given a bogus address
(such as -1) to hide the emulators away from the 'pci' command, but it
seems better to keep it at the root node to avoid such hacks.
Then we can use a phandle to point from the device to the correct
emulator, and only on sandbox. The code to find an emulator does not
interfere with normal pci operation.
Add a new UCLASS_PCI_EMUL_PARENT uclass which allows finding an emulator
given a bus, and finding a bus given an emulator. Update the existing
device trees and the code for finding an emulator.
This brings PCI emulators more into line with I2C.
Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Tested-by: Bin Meng <bmeng.cn@gmail.com>
[bmeng: fix 3 typos in the commit message;
encode bus number in the labels of swap_case_emul nodes;
mention commit 4345998ae9df in sandbox_pci_get_emul()]
Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
2019-09-25 14:56:10 +00:00
|
|
|
sandbox,emul = <&swap_case_emul2_1f>;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
pci-emul2 {
|
|
|
|
compatible = "sandbox,pci-emul-parent";
|
|
|
|
swap_case_emul2_1f: emul2@1f,0 {
|
|
|
|
compatible = "sandbox,swap-case";
|
2018-08-03 08:14:50 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
|
2019-04-27 08:15:23 +00:00
|
|
|
pci_ep: pci_ep {
|
|
|
|
compatible = "sandbox,pci_ep";
|
|
|
|
};
|
|
|
|
|
2017-04-24 02:10:44 +00:00
|
|
|
probing {
|
|
|
|
compatible = "simple-bus";
|
|
|
|
test1 {
|
|
|
|
compatible = "denx,u-boot-probe-test";
|
|
|
|
};
|
|
|
|
|
|
|
|
test2 {
|
|
|
|
compatible = "denx,u-boot-probe-test";
|
|
|
|
};
|
|
|
|
|
|
|
|
test3 {
|
|
|
|
compatible = "denx,u-boot-probe-test";
|
|
|
|
};
|
|
|
|
|
|
|
|
test4 {
|
|
|
|
compatible = "denx,u-boot-probe-test";
|
2018-11-29 09:57:37 +00:00
|
|
|
first-syscon = <&syscon0>;
|
|
|
|
second-sys-ctrl = <&another_system_controller>;
|
2019-03-07 08:57:13 +00:00
|
|
|
third-syscon = <&syscon2>;
|
2017-04-24 02:10:44 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
|
2016-07-13 19:45:31 +00:00
|
|
|
pwrdom: power-domain {
|
|
|
|
compatible = "sandbox,power-domain";
|
|
|
|
#power-domain-cells = <1>;
|
|
|
|
};
|
|
|
|
|
|
|
|
power-domain-test {
|
|
|
|
compatible = "sandbox,power-domain-test";
|
|
|
|
power-domains = <&pwrdom 2>;
|
|
|
|
};
|
|
|
|
|
2018-10-01 18:22:40 +00:00
|
|
|
pwm: pwm {
|
2017-04-17 03:01:11 +00:00
|
|
|
compatible = "sandbox,pwm";
|
2018-10-01 18:22:40 +00:00
|
|
|
#pwm-cells = <2>;
|
2017-04-17 03:01:11 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
pwm2 {
|
|
|
|
compatible = "sandbox,pwm";
|
2018-10-01 18:22:40 +00:00
|
|
|
#pwm-cells = <2>;
|
2017-04-17 03:01:11 +00:00
|
|
|
};
|
|
|
|
|
2015-07-06 18:54:31 +00:00
|
|
|
ram {
|
|
|
|
compatible = "sandbox,ram";
|
|
|
|
};
|
|
|
|
|
2015-07-06 18:54:29 +00:00
|
|
|
reset@0 {
|
|
|
|
compatible = "sandbox,warm-reset";
|
|
|
|
};
|
|
|
|
|
|
|
|
reset@1 {
|
|
|
|
compatible = "sandbox,reset";
|
|
|
|
};
|
|
|
|
|
2016-06-17 15:43:59 +00:00
|
|
|
resetc: reset-ctl {
|
|
|
|
compatible = "sandbox,reset-ctl";
|
|
|
|
#reset-cells = <1>;
|
|
|
|
};
|
|
|
|
|
|
|
|
reset-ctl-test {
|
|
|
|
compatible = "sandbox,reset-ctl-test";
|
|
|
|
resets = <&resetc 100>, <&resetc 2>;
|
|
|
|
reset-names = "other", "test";
|
|
|
|
};
|
|
|
|
|
2019-12-28 18:28:31 +00:00
|
|
|
rng {
|
|
|
|
compatible = "sandbox,sandbox-rng";
|
|
|
|
};
|
|
|
|
|
2015-09-17 20:42:41 +00:00
|
|
|
rproc_1: rproc@1 {
|
|
|
|
compatible = "sandbox,test-processor";
|
|
|
|
remoteproc-name = "remoteproc-test-dev1";
|
|
|
|
};
|
|
|
|
|
|
|
|
rproc_2: rproc@2 {
|
|
|
|
compatible = "sandbox,test-processor";
|
|
|
|
internal-memory-mapped;
|
|
|
|
remoteproc-name = "remoteproc-test-dev2";
|
|
|
|
};
|
|
|
|
|
2018-10-01 18:22:40 +00:00
|
|
|
panel {
|
|
|
|
compatible = "simple-panel";
|
|
|
|
backlight = <&backlight 0 100>;
|
|
|
|
};
|
|
|
|
|
2018-07-01 23:57:59 +00:00
|
|
|
smem@0 {
|
|
|
|
compatible = "sandbox,smem";
|
|
|
|
};
|
|
|
|
|
2018-12-10 17:37:36 +00:00
|
|
|
sound {
|
|
|
|
compatible = "sandbox,sound";
|
|
|
|
cpu {
|
|
|
|
sound-dai = <&i2s 0>;
|
|
|
|
};
|
|
|
|
|
|
|
|
codec {
|
|
|
|
sound-dai = <&audio 0>;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
2014-10-14 05:42:11 +00:00
|
|
|
spi@0 {
|
|
|
|
#address-cells = <1>;
|
|
|
|
#size-cells = <0>;
|
2015-07-06 18:54:36 +00:00
|
|
|
reg = <0 1>;
|
2014-10-14 05:42:11 +00:00
|
|
|
compatible = "sandbox,spi";
|
|
|
|
cs-gpios = <0>, <&gpio_a 0>;
|
|
|
|
spi.bin@0 {
|
|
|
|
reg = <0>;
|
2019-02-10 10:16:20 +00:00
|
|
|
compatible = "spansion,m25p16", "jedec,spi-nor";
|
2014-10-14 05:42:11 +00:00
|
|
|
spi-max-frequency = <40000000>;
|
|
|
|
sandbox,filename = "spi.bin";
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
2018-11-29 09:57:37 +00:00
|
|
|
syscon0: syscon@0 {
|
2015-07-06 18:54:35 +00:00
|
|
|
compatible = "sandbox,syscon0";
|
2018-10-04 07:00:40 +00:00
|
|
|
reg = <0x10 16>;
|
2015-07-06 18:54:35 +00:00
|
|
|
};
|
|
|
|
|
2018-11-29 09:57:37 +00:00
|
|
|
another_system_controller: syscon@1 {
|
2015-07-06 18:54:35 +00:00
|
|
|
compatible = "sandbox,syscon1";
|
2015-07-06 18:54:36 +00:00
|
|
|
reg = <0x20 5
|
|
|
|
0x28 6
|
|
|
|
0x30 7
|
|
|
|
0x38 8>;
|
2015-07-06 18:54:35 +00:00
|
|
|
};
|
|
|
|
|
2019-03-07 08:57:13 +00:00
|
|
|
syscon2: syscon@2 {
|
2018-04-23 04:26:53 +00:00
|
|
|
compatible = "simple-mfd", "syscon";
|
|
|
|
reg = <0x40 5
|
|
|
|
0x48 6
|
|
|
|
0x50 7
|
|
|
|
0x58 8>;
|
|
|
|
};
|
|
|
|
|
2015-12-11 08:27:34 +00:00
|
|
|
timer {
|
|
|
|
compatible = "sandbox,timer";
|
|
|
|
clock-frequency = <1000000>;
|
|
|
|
};
|
|
|
|
|
2018-05-15 09:57:27 +00:00
|
|
|
tpm2 {
|
|
|
|
compatible = "sandbox,tpm2";
|
|
|
|
};
|
|
|
|
|
2015-05-22 21:42:15 +00:00
|
|
|
uart0: serial {
|
|
|
|
compatible = "sandbox,serial";
|
|
|
|
u-boot,dm-pre-reloc;
|
2015-03-22 22:09:15 +00:00
|
|
|
};
|
|
|
|
|
2015-03-25 18:23:05 +00:00
|
|
|
usb_0: usb@0 {
|
|
|
|
compatible = "sandbox,usb";
|
|
|
|
status = "disabled";
|
|
|
|
hub {
|
|
|
|
compatible = "sandbox,usb-hub";
|
|
|
|
#address-cells = <1>;
|
|
|
|
#size-cells = <0>;
|
|
|
|
flash-stick {
|
|
|
|
reg = <0>;
|
|
|
|
compatible = "sandbox,usb-flash";
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
usb_1: usb@1 {
|
|
|
|
compatible = "sandbox,usb";
|
|
|
|
hub {
|
|
|
|
compatible = "usb-hub";
|
|
|
|
usb,device-class = <9>;
|
|
|
|
hub-emul {
|
|
|
|
compatible = "sandbox,usb-hub";
|
|
|
|
#address-cells = <1>;
|
|
|
|
#size-cells = <0>;
|
2015-11-09 06:48:01 +00:00
|
|
|
flash-stick@0 {
|
2015-03-25 18:23:05 +00:00
|
|
|
reg = <0>;
|
|
|
|
compatible = "sandbox,usb-flash";
|
|
|
|
sandbox,filepath = "testflash.bin";
|
|
|
|
};
|
|
|
|
|
2015-11-09 06:48:01 +00:00
|
|
|
flash-stick@1 {
|
|
|
|
reg = <1>;
|
|
|
|
compatible = "sandbox,usb-flash";
|
|
|
|
sandbox,filepath = "testflash1.bin";
|
|
|
|
};
|
|
|
|
|
|
|
|
flash-stick@2 {
|
|
|
|
reg = <2>;
|
|
|
|
compatible = "sandbox,usb-flash";
|
|
|
|
sandbox,filepath = "testflash2.bin";
|
|
|
|
};
|
|
|
|
|
2015-11-09 06:48:08 +00:00
|
|
|
keyb@3 {
|
|
|
|
reg = <3>;
|
|
|
|
compatible = "sandbox,usb-keyb";
|
|
|
|
};
|
|
|
|
|
2015-03-25 18:23:05 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
usb_2: usb@2 {
|
|
|
|
compatible = "sandbox,usb";
|
|
|
|
status = "disabled";
|
|
|
|
};
|
|
|
|
|
2016-03-31 21:12:28 +00:00
|
|
|
spmi: spmi@0 {
|
|
|
|
compatible = "sandbox,spmi";
|
|
|
|
#address-cells = <0x1>;
|
|
|
|
#size-cells = <0x1>;
|
2019-09-25 14:55:59 +00:00
|
|
|
ranges;
|
2016-03-31 21:12:28 +00:00
|
|
|
pm8916@0 {
|
|
|
|
compatible = "qcom,spmi-pmic";
|
|
|
|
reg = <0x0 0x1>;
|
|
|
|
#address-cells = <0x1>;
|
|
|
|
#size-cells = <0x1>;
|
2019-09-25 14:55:59 +00:00
|
|
|
ranges;
|
2016-03-31 21:12:28 +00:00
|
|
|
|
|
|
|
spmi_gpios: gpios@c000 {
|
|
|
|
compatible = "qcom,pm8916-gpio";
|
|
|
|
reg = <0xc000 0x400>;
|
|
|
|
gpio-controller;
|
|
|
|
gpio-count = <4>;
|
|
|
|
#gpio-cells = <2>;
|
|
|
|
gpio-bank-name="spmi";
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
2017-04-17 19:00:21 +00:00
|
|
|
|
|
|
|
wdt0: wdt@0 {
|
|
|
|
compatible = "sandbox,wdt";
|
|
|
|
};
|
2018-01-10 10:33:30 +00:00
|
|
|
|
2018-08-09 12:51:19 +00:00
|
|
|
axi: axi@0 {
|
|
|
|
compatible = "sandbox,axi";
|
|
|
|
#address-cells = <0x1>;
|
|
|
|
#size-cells = <0x1>;
|
|
|
|
store@0 {
|
|
|
|
compatible = "sandbox,sandbox_store";
|
|
|
|
reg = <0x0 0x400>;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
2018-01-10 10:33:30 +00:00
|
|
|
chosen {
|
2018-02-03 17:36:58 +00:00
|
|
|
#address-cells = <1>;
|
|
|
|
#size-cells = <1>;
|
2020-01-27 15:49:43 +00:00
|
|
|
setting = "sunrise ohoka";
|
|
|
|
other-node = "/some-bus/c-test@5";
|
2020-01-27 15:49:46 +00:00
|
|
|
int-values = <0x1937 72993>;
|
2018-01-10 10:33:30 +00:00
|
|
|
chosen-test {
|
|
|
|
compatible = "denx,u-boot-fdt-test";
|
|
|
|
reg = <9 1>;
|
|
|
|
};
|
|
|
|
};
|
2018-03-12 13:53:33 +00:00
|
|
|
|
|
|
|
translation-test@8000 {
|
|
|
|
compatible = "simple-bus";
|
|
|
|
reg = <0x8000 0x4000>;
|
|
|
|
|
|
|
|
#address-cells = <0x2>;
|
|
|
|
#size-cells = <0x1>;
|
|
|
|
|
|
|
|
ranges = <0 0x0 0x8000 0x1000
|
|
|
|
1 0x100 0x9000 0x1000
|
|
|
|
2 0x200 0xA000 0x1000
|
|
|
|
3 0x300 0xB000 0x1000
|
|
|
|
>;
|
|
|
|
|
2019-05-31 13:11:30 +00:00
|
|
|
dma-ranges = <0 0x000 0x10000000 0x1000
|
|
|
|
1 0x100 0x20000000 0x1000
|
|
|
|
>;
|
|
|
|
|
2018-03-12 13:53:33 +00:00
|
|
|
dev@0,0 {
|
|
|
|
compatible = "denx,u-boot-fdt-dummy";
|
|
|
|
reg = <0 0x0 0x1000>;
|
2018-12-03 18:37:09 +00:00
|
|
|
reg-names = "sandbox-dummy-0";
|
2018-03-12 13:53:33 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
dev@1,100 {
|
|
|
|
compatible = "denx,u-boot-fdt-dummy";
|
|
|
|
reg = <1 0x100 0x1000>;
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
dev@2,200 {
|
|
|
|
compatible = "denx,u-boot-fdt-dummy";
|
|
|
|
reg = <2 0x200 0x1000>;
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
noxlatebus@3,300 {
|
|
|
|
compatible = "simple-bus";
|
|
|
|
reg = <3 0x300 0x1000>;
|
|
|
|
|
|
|
|
#address-cells = <0x1>;
|
|
|
|
#size-cells = <0x0>;
|
|
|
|
|
|
|
|
dev@42 {
|
|
|
|
compatible = "denx,u-boot-fdt-dummy";
|
|
|
|
reg = <0x42>;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
2018-09-27 07:19:31 +00:00
|
|
|
|
|
|
|
osd {
|
|
|
|
compatible = "sandbox,sandbox_osd";
|
|
|
|
};
|
2018-09-30 22:16:51 +00:00
|
|
|
|
2018-07-31 09:44:13 +00:00
|
|
|
board {
|
|
|
|
compatible = "sandbox,board_sandbox";
|
|
|
|
};
|
2018-09-25 14:40:16 +00:00
|
|
|
|
|
|
|
sandbox_tee {
|
|
|
|
compatible = "sandbox,tee";
|
|
|
|
};
|
2018-10-15 09:21:26 +00:00
|
|
|
|
|
|
|
sandbox_virtio1 {
|
|
|
|
compatible = "sandbox,virtio1";
|
|
|
|
};
|
|
|
|
|
|
|
|
sandbox_virtio2 {
|
|
|
|
compatible = "sandbox,virtio2";
|
|
|
|
};
|
2018-10-24 12:10:23 +00:00
|
|
|
|
|
|
|
pinctrl {
|
|
|
|
compatible = "sandbox,pinctrl";
|
2020-01-13 10:35:12 +00:00
|
|
|
|
|
|
|
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;
|
|
|
|
};
|
|
|
|
};
|
2018-10-24 12:10:23 +00:00
|
|
|
};
|
2018-11-27 12:49:50 +00:00
|
|
|
|
|
|
|
hwspinlock@0 {
|
|
|
|
compatible = "sandbox,hwspinlock";
|
|
|
|
};
|
2018-11-28 18:17:51 +00:00
|
|
|
|
|
|
|
dma: dma {
|
|
|
|
compatible = "sandbox,dma";
|
|
|
|
#dma-cells = <1>;
|
|
|
|
|
|
|
|
dmas = <&dma 0>, <&dma 1>, <&dma 2>;
|
|
|
|
dma-names = "m2m", "tx0", "rx0";
|
|
|
|
};
|
2019-06-03 16:12:28 +00:00
|
|
|
|
2019-07-12 07:13:53 +00:00
|
|
|
/*
|
|
|
|
* keep mdio-mux ahead of mdio so that the mux is removed first at the
|
|
|
|
* end of the test. If parent mdio is removed first, clean-up of the
|
|
|
|
* mux will trigger a 2nd probe of parent-mdio, leaving parent-mdio
|
|
|
|
* active at the end of the test. That it turn doesn't allow the mdio
|
|
|
|
* class to be destroyed, triggering an error.
|
|
|
|
*/
|
|
|
|
mdio-mux-test {
|
|
|
|
compatible = "sandbox,mdio-mux";
|
|
|
|
#address-cells = <1>;
|
|
|
|
#size-cells = <0>;
|
|
|
|
mdio-parent-bus = <&mdio>;
|
|
|
|
|
|
|
|
mdio-ch-test@0 {
|
|
|
|
reg = <0>;
|
|
|
|
};
|
|
|
|
mdio-ch-test@1 {
|
|
|
|
reg = <1>;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
mdio: mdio-test {
|
2019-06-03 16:12:28 +00:00
|
|
|
compatible = "sandbox,mdio";
|
|
|
|
};
|
2014-02-26 22:59:21 +00:00
|
|
|
};
|
2015-05-13 11:38:35 +00:00
|
|
|
|
|
|
|
#include "sandbox_pmic.dtsi"
|