1/dts-v1/; 2 3#define USB_CLASS_HUB 9 4 5/ { 6 #address-cells = <1>; 7 #size-cells = <1>; 8 model = "sandbox"; 9 10 aliases { 11 i2c0 = &i2c_0; 12 pci0 = &pci; 13 rtc0 = &rtc_0; 14 axi0 = &axi; 15 }; 16 17 chosen { 18 stdout-path = "/serial"; 19 }; 20 21 cros_ec: cros-ec { 22 reg = <0 0>; 23 u-boot,dm-pre-reloc; 24 compatible = "google,cros-ec-sandbox"; 25 26 /* 27 * This describes the flash memory within the EC. Note 28 * that the STM32L flash erases to 0, not 0xff. 29 */ 30 flash { 31 u-boot,dm-pre-reloc; 32 image-pos = <0x08000000>; 33 size = <0x20000>; 34 erase-value = <0>; 35 36 /* Information for sandbox */ 37 ro { 38 image-pos = <0>; 39 size = <0xf000>; 40 }; 41 wp-ro { 42 image-pos = <0xf000>; 43 size = <0x1000>; 44 }; 45 rw { 46 image-pos = <0x10000>; 47 size = <0x10000>; 48 }; 49 }; 50 }; 51 52 ethrawbus { 53 compatible = "sandbox,eth-raw-bus"; 54 skip-localhost = <0>; 55 }; 56 57 eth@10002000 { 58 compatible = "sandbox,eth"; 59 reg = <0x10002000 0x1000>; 60 fake-host-hwaddr = [00 00 66 44 22 00]; 61 }; 62 63 gpio_a: gpios@0 { 64 u-boot,dm-pre-reloc; 65 gpio-controller; 66 compatible = "sandbox,gpio"; 67 #gpio-cells = <1>; 68 gpio-bank-name = "a"; 69 sandbox,gpio-count = <20>; 70 }; 71 72 gpio_b: gpios@1 { 73 u-boot,dm-pre-reloc; 74 gpio-controller; 75 compatible = "sandbox,gpio"; 76 #gpio-cells = <2>; 77 gpio-bank-name = "b"; 78 sandbox,gpio-count = <10>; 79 }; 80 81 hexagon { 82 compatible = "demo-simple"; 83 colour = "white"; 84 sides = <6>; 85 }; 86 87 i2c_0: i2c@0 { 88 #address-cells = <1>; 89 #size-cells = <0>; 90 reg = <0 0>; 91 compatible = "sandbox,i2c"; 92 clock-frequency = <400000>; 93 pinctrl-names = "default"; 94 pinctrl-0 = <&pinctrl_i2c0>; 95 eeprom@2c { 96 reg = <0x2c>; 97 compatible = "i2c-eeprom"; 98 emul { 99 compatible = "sandbox,i2c-eeprom"; 100 sandbox,filename = "i2c.bin"; 101 sandbox,size = <128>; 102 }; 103 }; 104 105 rtc_0: rtc@43 { 106 reg = <0x43>; 107 compatible = "sandbox-rtc"; 108 emul { 109 compatible = "sandbox,i2c-rtc"; 110 }; 111 }; 112 sandbox_pmic: sandbox_pmic { 113 reg = <0x40>; 114 }; 115 116 mc34708: pmic@41 { 117 reg = <0x41>; 118 }; 119 }; 120 121 lcd { 122 u-boot,dm-pre-reloc; 123 compatible = "sandbox,lcd-sdl"; 124 xres = <1366>; 125 yres = <768>; 126 }; 127 128 leds { 129 compatible = "gpio-leds"; 130 131 iracibble { 132 gpios = <&gpio_a 1 0>; 133 label = "sandbox:red"; 134 }; 135 136 martinet { 137 gpios = <&gpio_a 2 0>; 138 label = "sandbox:green"; 139 }; 140 }; 141 142 pci: pci-controller { 143 compatible = "sandbox,pci"; 144 device_type = "pci"; 145 #address-cells = <3>; 146 #size-cells = <2>; 147 ranges = <0x02000000 0 0x10000000 0x10000000 0 0x2000 148 0x01000000 0 0x20000000 0x20000000 0 0x2000>; 149 pci@1f,0 { 150 compatible = "pci-generic"; 151 reg = <0xf800 0 0 0 0>; 152 emul@1f,0 { 153 compatible = "sandbox,swap-case"; 154 }; 155 }; 156 }; 157 158 pinctrl { 159 compatible = "sandbox,pinctrl"; 160 status = "okay"; 161 162 pinctrl_i2c0: i2c0 { 163 groups = "i2c"; 164 function = "i2c"; 165 bias-pull-up; 166 }; 167 168 pinctrl_serial0: uart0 { 169 groups = "serial_a"; 170 function = "serial"; 171 }; 172 173 pinctrl_onewire0: onewire0 { 174 groups = "w1"; 175 function = "w1"; 176 bias-pull-up; 177 }; 178 }; 179 180 reset@1 { 181 compatible = "sandbox,reset"; 182 }; 183 184 spi@0 { 185 u-boot,dm-pre-reloc; 186 #address-cells = <1>; 187 #size-cells = <0>; 188 reg = <0 0>; 189 compatible = "sandbox,spi"; 190 cs-gpios = <0>, <&gpio_a 0>; 191 firmware_storage_spi: flash@0 { 192 u-boot,dm-pre-reloc; 193 reg = <0>; 194 compatible = "spansion,m25p16", "sandbox,spi-flash"; 195 spi-max-frequency = <40000000>; 196 sandbox,filename = "spi.bin"; 197 }; 198 }; 199 200 spl-test { 201 u-boot,dm-pre-reloc; 202 compatible = "sandbox,spl-test"; 203 boolval; 204 intval = <1>; 205 intarray = <2 3 4>; 206 byteval = [05]; 207 bytearray = [06]; 208 longbytearray = [09 0a 0b 0c 0d 0e 0f 10 11]; 209 stringval = "message"; 210 stringarray = "multi-word", "message"; 211 }; 212 213 spl-test2 { 214 u-boot,dm-pre-reloc; 215 compatible = "sandbox,spl-test"; 216 intval = <3>; 217 intarray = <5>; 218 byteval = [08]; 219 bytearray = [01 23 34]; 220 longbytearray = [09 0a 0b 0c]; 221 stringval = "message2"; 222 stringarray = "another", "multi-word", "message"; 223 }; 224 225 spl-test3 { 226 u-boot,dm-pre-reloc; 227 compatible = "sandbox,spl-test"; 228 stringarray = "one"; 229 }; 230 231 spl-test4 { 232 u-boot,dm-pre-reloc; 233 compatible = "sandbox,spl-test.2"; 234 }; 235 236 square { 237 compatible = "demo-shape"; 238 colour = "blue"; 239 sides = <4>; 240 }; 241 242 timer { 243 compatible = "sandbox,timer"; 244 clock-frequency = <1000000>; 245 }; 246 247 tpm { 248 u-boot,dm-pre-reloc; 249 compatible = "google,sandbox-tpm"; 250 }; 251 252 tpm2 { 253 compatible = "sandbox,tpm2"; 254 }; 255 256 triangle { 257 compatible = "demo-shape"; 258 colour = "cyan"; 259 sides = <3>; 260 character = <83>; 261 light-gpios = <&gpio_a 2>, <&gpio_b 6 0>; 262 }; 263 264 /* Needs to be available prior to relocation */ 265 uart0: serial { 266 u-boot,dm-spl; 267 compatible = "sandbox,serial"; 268 sandbox,text-colour = "cyan"; 269 pinctrl-names = "default"; 270 pinctrl-0 = <&pinctrl_serial0>; 271 }; 272 273 usb@0 { 274 compatible = "sandbox,usb"; 275 status = "disabled"; 276 hub { 277 compatible = "sandbox,usb-hub"; 278 #address-cells = <1>; 279 #size-cells = <0>; 280 flash-stick { 281 reg = <0>; 282 compatible = "sandbox,usb-flash"; 283 }; 284 }; 285 }; 286 287 usb@1 { 288 compatible = "sandbox,usb"; 289 hub { 290 compatible = "usb-hub"; 291 usb,device-class = <USB_CLASS_HUB>; 292 hub-emul { 293 compatible = "sandbox,usb-hub"; 294 #address-cells = <1>; 295 #size-cells = <0>; 296 flash-stick { 297 reg = <0>; 298 compatible = "sandbox,usb-flash"; 299 sandbox,filepath = "flash.bin"; 300 }; 301 }; 302 }; 303 }; 304 305 usb@2 { 306 compatible = "sandbox,usb"; 307 status = "disabled"; 308 }; 309 310 spmi: spmi@0 { 311 compatible = "sandbox,spmi"; 312 #address-cells = <0x1>; 313 #size-cells = <0x1>; 314 pm8916@0 { 315 compatible = "qcom,spmi-pmic"; 316 reg = <0x0 0x1>; 317 #address-cells = <0x1>; 318 #size-cells = <0x1>; 319 320 spmi_gpios: gpios@c000 { 321 compatible = "qcom,pm8916-gpio"; 322 reg = <0xc000 0x400>; 323 gpio-controller; 324 gpio-count = <4>; 325 #gpio-cells = <2>; 326 gpio-bank-name="spmi"; 327 }; 328 }; 329 }; 330 331 axi: axi@0 { 332 compatible = "sandbox,axi"; 333 #address-cells = <0x1>; 334 #size-cells = <0x1>; 335 store@0 { 336 compatible = "sandbox,sandbox_store"; 337 reg = <0x0 0x400>; 338 }; 339 }; 340 341 onewire0: onewire { 342 compatible = "w1-gpio"; 343 gpios = <&gpio_a 8>; 344 pinctrl-names = "default"; 345 pinctrl-0 = <&pinctrl_onewire0>; 346 status = "okay"; 347 348 sandbox_eeprom0: sandbox_eeprom@0 { 349 compatible = "sandbox,w1-eeprom"; 350 status = "okay"; 351 }; 352 }; 353 354 sandbox_tee { 355 compatible = "sandbox,tee"; 356 }; 357}; 358 359#include "cros-ec-keyboard.dtsi" 360#include "sandbox_pmic.dtsi" 361 362&cros_ec { 363 u-boot,dm-pre-reloc; 364 keyboard-controller { 365 u-boot,dm-pre-reloc; 366 }; 367}; 368