1c66ec88fSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0 2c66ec88fSEmmanuel Vadot/ { 3c66ec88fSEmmanuel Vadot #address-cells = <1>; 4c66ec88fSEmmanuel Vadot #size-cells = <1>; 5c66ec88fSEmmanuel Vadot compatible = "brcm,bcm7435"; 6c66ec88fSEmmanuel Vadot 7c66ec88fSEmmanuel Vadot cpus { 8c66ec88fSEmmanuel Vadot #address-cells = <1>; 9c66ec88fSEmmanuel Vadot #size-cells = <0>; 10c66ec88fSEmmanuel Vadot 11c66ec88fSEmmanuel Vadot mips-hpt-frequency = <175625000>; 12c66ec88fSEmmanuel Vadot 13c66ec88fSEmmanuel Vadot cpu@0 { 14c66ec88fSEmmanuel Vadot compatible = "brcm,bmips5200"; 15c66ec88fSEmmanuel Vadot device_type = "cpu"; 16c66ec88fSEmmanuel Vadot reg = <0>; 17c66ec88fSEmmanuel Vadot }; 18c66ec88fSEmmanuel Vadot 19c66ec88fSEmmanuel Vadot cpu@1 { 20c66ec88fSEmmanuel Vadot compatible = "brcm,bmips5200"; 21c66ec88fSEmmanuel Vadot device_type = "cpu"; 22c66ec88fSEmmanuel Vadot reg = <1>; 23c66ec88fSEmmanuel Vadot }; 24c66ec88fSEmmanuel Vadot 25c66ec88fSEmmanuel Vadot cpu@2 { 26c66ec88fSEmmanuel Vadot compatible = "brcm,bmips5200"; 27c66ec88fSEmmanuel Vadot device_type = "cpu"; 28c66ec88fSEmmanuel Vadot reg = <2>; 29c66ec88fSEmmanuel Vadot }; 30c66ec88fSEmmanuel Vadot 31c66ec88fSEmmanuel Vadot cpu@3 { 32c66ec88fSEmmanuel Vadot compatible = "brcm,bmips5200"; 33c66ec88fSEmmanuel Vadot device_type = "cpu"; 34c66ec88fSEmmanuel Vadot reg = <3>; 35c66ec88fSEmmanuel Vadot }; 36c66ec88fSEmmanuel Vadot }; 37c66ec88fSEmmanuel Vadot 38c66ec88fSEmmanuel Vadot aliases { 39c66ec88fSEmmanuel Vadot uart0 = &uart0; 40c66ec88fSEmmanuel Vadot }; 41c66ec88fSEmmanuel Vadot 42c66ec88fSEmmanuel Vadot cpu_intc: interrupt-controller { 43c66ec88fSEmmanuel Vadot #address-cells = <0>; 44c66ec88fSEmmanuel Vadot compatible = "mti,cpu-interrupt-controller"; 45c66ec88fSEmmanuel Vadot 46c66ec88fSEmmanuel Vadot interrupt-controller; 47c66ec88fSEmmanuel Vadot #interrupt-cells = <1>; 48c66ec88fSEmmanuel Vadot }; 49c66ec88fSEmmanuel Vadot 50c66ec88fSEmmanuel Vadot clocks { 51c66ec88fSEmmanuel Vadot uart_clk: uart_clk { 52c66ec88fSEmmanuel Vadot compatible = "fixed-clock"; 53c66ec88fSEmmanuel Vadot #clock-cells = <0>; 54c66ec88fSEmmanuel Vadot clock-frequency = <81000000>; 55c66ec88fSEmmanuel Vadot }; 56c66ec88fSEmmanuel Vadot 57c66ec88fSEmmanuel Vadot upg_clk: upg_clk { 58c66ec88fSEmmanuel Vadot compatible = "fixed-clock"; 59c66ec88fSEmmanuel Vadot #clock-cells = <0>; 60c66ec88fSEmmanuel Vadot clock-frequency = <27000000>; 61c66ec88fSEmmanuel Vadot }; 62c66ec88fSEmmanuel Vadot }; 63c66ec88fSEmmanuel Vadot 64c66ec88fSEmmanuel Vadot rdb { 65c66ec88fSEmmanuel Vadot #address-cells = <1>; 66c66ec88fSEmmanuel Vadot #size-cells = <1>; 67c66ec88fSEmmanuel Vadot 68c66ec88fSEmmanuel Vadot compatible = "simple-bus"; 69c66ec88fSEmmanuel Vadot ranges = <0 0x10000000 0x01000000>; 70c66ec88fSEmmanuel Vadot 71c66ec88fSEmmanuel Vadot periph_intc: interrupt-controller@41b500 { 72c66ec88fSEmmanuel Vadot compatible = "brcm,bcm7038-l1-intc"; 73c66ec88fSEmmanuel Vadot reg = <0x41b500 0x40>, <0x41b600 0x40>, 74c66ec88fSEmmanuel Vadot <0x41b700 0x40>, <0x41b800 0x40>; 75c66ec88fSEmmanuel Vadot 76c66ec88fSEmmanuel Vadot interrupt-controller; 77c66ec88fSEmmanuel Vadot #interrupt-cells = <1>; 78c66ec88fSEmmanuel Vadot 79c66ec88fSEmmanuel Vadot interrupt-parent = <&cpu_intc>; 80c66ec88fSEmmanuel Vadot interrupts = <2>, <3>, <2>, <3>; 81c66ec88fSEmmanuel Vadot }; 82c66ec88fSEmmanuel Vadot 83c66ec88fSEmmanuel Vadot sun_l2_intc: interrupt-controller@403000 { 84c66ec88fSEmmanuel Vadot compatible = "brcm,l2-intc"; 85c66ec88fSEmmanuel Vadot reg = <0x403000 0x30>; 86c66ec88fSEmmanuel Vadot interrupt-controller; 87c66ec88fSEmmanuel Vadot #interrupt-cells = <1>; 88c66ec88fSEmmanuel Vadot interrupt-parent = <&periph_intc>; 89c66ec88fSEmmanuel Vadot interrupts = <52>; 90c66ec88fSEmmanuel Vadot }; 91c66ec88fSEmmanuel Vadot 92c66ec88fSEmmanuel Vadot gisb-arb@400000 { 93c66ec88fSEmmanuel Vadot compatible = "brcm,bcm7435-gisb-arb"; 94c66ec88fSEmmanuel Vadot reg = <0x400000 0xdc>; 95c66ec88fSEmmanuel Vadot native-endian; 96c66ec88fSEmmanuel Vadot interrupt-parent = <&sun_l2_intc>; 97c66ec88fSEmmanuel Vadot interrupts = <0>, <2>; 98c66ec88fSEmmanuel Vadot brcm,gisb-arb-master-mask = <0xf77f>; 99c66ec88fSEmmanuel Vadot brcm,gisb-arb-master-names = "ssp_0", "cpu_0", "webcpu_0", 100c66ec88fSEmmanuel Vadot "pcie_0", "bsp_0", 101c66ec88fSEmmanuel Vadot "rdc_0", "raaga_0", 102c66ec88fSEmmanuel Vadot "avd_1", "jtag_0", 103c66ec88fSEmmanuel Vadot "svd_0", "vice_0", 104c66ec88fSEmmanuel Vadot "vice_1", "raaga_1", 105c66ec88fSEmmanuel Vadot "scpu"; 106c66ec88fSEmmanuel Vadot }; 107c66ec88fSEmmanuel Vadot 108c66ec88fSEmmanuel Vadot upg_irq0_intc: interrupt-controller@406780 { 109c66ec88fSEmmanuel Vadot compatible = "brcm,bcm7120-l2-intc"; 110c66ec88fSEmmanuel Vadot reg = <0x406780 0x8>; 111c66ec88fSEmmanuel Vadot 112c66ec88fSEmmanuel Vadot brcm,int-map-mask = <0x44>, <0x7000000>; 113c66ec88fSEmmanuel Vadot brcm,int-fwd-mask = <0x70000>; 114c66ec88fSEmmanuel Vadot 115c66ec88fSEmmanuel Vadot interrupt-controller; 116c66ec88fSEmmanuel Vadot #interrupt-cells = <1>; 117c66ec88fSEmmanuel Vadot 118c66ec88fSEmmanuel Vadot interrupt-parent = <&periph_intc>; 119c66ec88fSEmmanuel Vadot interrupts = <60>, <58>; 120c66ec88fSEmmanuel Vadot interrupt-names = "upg_main", "upg_bsc"; 121c66ec88fSEmmanuel Vadot }; 122c66ec88fSEmmanuel Vadot 123c66ec88fSEmmanuel Vadot upg_aon_irq0_intc: interrupt-controller@409480 { 124c66ec88fSEmmanuel Vadot compatible = "brcm,bcm7120-l2-intc"; 125c66ec88fSEmmanuel Vadot reg = <0x409480 0x8>; 126c66ec88fSEmmanuel Vadot 127c66ec88fSEmmanuel Vadot brcm,int-map-mask = <0x40>, <0x18000000>, <0x100000>; 128c66ec88fSEmmanuel Vadot brcm,int-fwd-mask = <0>; 129c66ec88fSEmmanuel Vadot brcm,irq-can-wake; 130c66ec88fSEmmanuel Vadot 131c66ec88fSEmmanuel Vadot interrupt-controller; 132c66ec88fSEmmanuel Vadot #interrupt-cells = <1>; 133c66ec88fSEmmanuel Vadot 134c66ec88fSEmmanuel Vadot interrupt-parent = <&periph_intc>; 135c66ec88fSEmmanuel Vadot interrupts = <61>, <59>, <64>; 136c66ec88fSEmmanuel Vadot interrupt-names = "upg_main_aon", "upg_bsc_aon", 137c66ec88fSEmmanuel Vadot "upg_spi"; 138c66ec88fSEmmanuel Vadot }; 139c66ec88fSEmmanuel Vadot 140c66ec88fSEmmanuel Vadot sun_top_ctrl: syscon@404000 { 141c66ec88fSEmmanuel Vadot compatible = "brcm,bcm7425-sun-top-ctrl", "syscon"; 142c66ec88fSEmmanuel Vadot reg = <0x404000 0x51c>; 143c66ec88fSEmmanuel Vadot native-endian; 144c66ec88fSEmmanuel Vadot }; 145c66ec88fSEmmanuel Vadot 146c66ec88fSEmmanuel Vadot reboot { 147c66ec88fSEmmanuel Vadot compatible = "brcm,brcmstb-reboot"; 148c66ec88fSEmmanuel Vadot syscon = <&sun_top_ctrl 0x304 0x308>; 149c66ec88fSEmmanuel Vadot }; 150c66ec88fSEmmanuel Vadot 151c66ec88fSEmmanuel Vadot uart0: serial@406b00 { 152c66ec88fSEmmanuel Vadot compatible = "ns16550a"; 153c66ec88fSEmmanuel Vadot reg = <0x406b00 0x20>; 154c66ec88fSEmmanuel Vadot reg-io-width = <0x4>; 155c66ec88fSEmmanuel Vadot reg-shift = <0x2>; 156c66ec88fSEmmanuel Vadot interrupt-parent = <&periph_intc>; 157c66ec88fSEmmanuel Vadot interrupts = <66>; 158c66ec88fSEmmanuel Vadot clocks = <&uart_clk>; 159c66ec88fSEmmanuel Vadot status = "disabled"; 160c66ec88fSEmmanuel Vadot }; 161c66ec88fSEmmanuel Vadot 162c66ec88fSEmmanuel Vadot uart1: serial@406b40 { 163c66ec88fSEmmanuel Vadot compatible = "ns16550a"; 164c66ec88fSEmmanuel Vadot reg = <0x406b40 0x20>; 165c66ec88fSEmmanuel Vadot reg-io-width = <0x4>; 166c66ec88fSEmmanuel Vadot reg-shift = <0x2>; 167c66ec88fSEmmanuel Vadot interrupt-parent = <&periph_intc>; 168c66ec88fSEmmanuel Vadot interrupts = <67>; 169c66ec88fSEmmanuel Vadot clocks = <&uart_clk>; 170c66ec88fSEmmanuel Vadot status = "disabled"; 171c66ec88fSEmmanuel Vadot }; 172c66ec88fSEmmanuel Vadot 173c66ec88fSEmmanuel Vadot uart2: serial@406b80 { 174c66ec88fSEmmanuel Vadot compatible = "ns16550a"; 175c66ec88fSEmmanuel Vadot reg = <0x406b80 0x20>; 176c66ec88fSEmmanuel Vadot reg-io-width = <0x4>; 177c66ec88fSEmmanuel Vadot reg-shift = <0x2>; 178c66ec88fSEmmanuel Vadot interrupt-parent = <&periph_intc>; 179c66ec88fSEmmanuel Vadot interrupts = <68>; 180c66ec88fSEmmanuel Vadot clocks = <&uart_clk>; 181c66ec88fSEmmanuel Vadot status = "disabled"; 182c66ec88fSEmmanuel Vadot }; 183c66ec88fSEmmanuel Vadot 184c66ec88fSEmmanuel Vadot bsca: i2c@406300 { 185c66ec88fSEmmanuel Vadot clock-frequency = <390000>; 186c66ec88fSEmmanuel Vadot compatible = "brcm,brcmstb-i2c"; 187c66ec88fSEmmanuel Vadot interrupt-parent = <&upg_irq0_intc>; 188c66ec88fSEmmanuel Vadot reg = <0x406300 0x58>; 189c66ec88fSEmmanuel Vadot interrupts = <26>; 190c66ec88fSEmmanuel Vadot interrupt-names = "upg_bsca"; 191c66ec88fSEmmanuel Vadot status = "disabled"; 192c66ec88fSEmmanuel Vadot }; 193c66ec88fSEmmanuel Vadot 194c66ec88fSEmmanuel Vadot bscb: i2c@409400 { 195c66ec88fSEmmanuel Vadot clock-frequency = <390000>; 196c66ec88fSEmmanuel Vadot compatible = "brcm,brcmstb-i2c"; 197c66ec88fSEmmanuel Vadot interrupt-parent = <&upg_aon_irq0_intc>; 198c66ec88fSEmmanuel Vadot reg = <0x409400 0x58>; 199c66ec88fSEmmanuel Vadot interrupts = <28>; 200c66ec88fSEmmanuel Vadot interrupt-names = "upg_bscb"; 201c66ec88fSEmmanuel Vadot status = "disabled"; 202c66ec88fSEmmanuel Vadot }; 203c66ec88fSEmmanuel Vadot 204c66ec88fSEmmanuel Vadot bscc: i2c@406200 { 205c66ec88fSEmmanuel Vadot clock-frequency = <390000>; 206c66ec88fSEmmanuel Vadot compatible = "brcm,brcmstb-i2c"; 207c66ec88fSEmmanuel Vadot interrupt-parent = <&upg_irq0_intc>; 208c66ec88fSEmmanuel Vadot reg = <0x406200 0x58>; 209c66ec88fSEmmanuel Vadot interrupts = <24>; 210c66ec88fSEmmanuel Vadot interrupt-names = "upg_bscc"; 211c66ec88fSEmmanuel Vadot status = "disabled"; 212c66ec88fSEmmanuel Vadot }; 213c66ec88fSEmmanuel Vadot 214c66ec88fSEmmanuel Vadot bscd: i2c@406280 { 215c66ec88fSEmmanuel Vadot clock-frequency = <390000>; 216c66ec88fSEmmanuel Vadot compatible = "brcm,brcmstb-i2c"; 217c66ec88fSEmmanuel Vadot interrupt-parent = <&upg_irq0_intc>; 218c66ec88fSEmmanuel Vadot reg = <0x406280 0x58>; 219c66ec88fSEmmanuel Vadot interrupts = <25>; 220c66ec88fSEmmanuel Vadot interrupt-names = "upg_bscd"; 221c66ec88fSEmmanuel Vadot status = "disabled"; 222c66ec88fSEmmanuel Vadot }; 223c66ec88fSEmmanuel Vadot 224c66ec88fSEmmanuel Vadot bsce: i2c@409180 { 225c66ec88fSEmmanuel Vadot clock-frequency = <390000>; 226c66ec88fSEmmanuel Vadot compatible = "brcm,brcmstb-i2c"; 227c66ec88fSEmmanuel Vadot interrupt-parent = <&upg_aon_irq0_intc>; 228c66ec88fSEmmanuel Vadot reg = <0x409180 0x58>; 229c66ec88fSEmmanuel Vadot interrupts = <27>; 230c66ec88fSEmmanuel Vadot interrupt-names = "upg_bsce"; 231c66ec88fSEmmanuel Vadot status = "disabled"; 232c66ec88fSEmmanuel Vadot }; 233c66ec88fSEmmanuel Vadot 234c66ec88fSEmmanuel Vadot pwma: pwm@406580 { 235c66ec88fSEmmanuel Vadot compatible = "brcm,bcm7038-pwm"; 236c66ec88fSEmmanuel Vadot reg = <0x406580 0x28>; 237c66ec88fSEmmanuel Vadot #pwm-cells = <2>; 238c66ec88fSEmmanuel Vadot clocks = <&upg_clk>; 239c66ec88fSEmmanuel Vadot status = "disabled"; 240c66ec88fSEmmanuel Vadot }; 241c66ec88fSEmmanuel Vadot 242c66ec88fSEmmanuel Vadot pwmb: pwm@406800 { 243c66ec88fSEmmanuel Vadot compatible = "brcm,bcm7038-pwm"; 244c66ec88fSEmmanuel Vadot reg = <0x406800 0x28>; 245c66ec88fSEmmanuel Vadot #pwm-cells = <2>; 246c66ec88fSEmmanuel Vadot clocks = <&upg_clk>; 247c66ec88fSEmmanuel Vadot status = "disabled"; 248c66ec88fSEmmanuel Vadot }; 249c66ec88fSEmmanuel Vadot 250c66ec88fSEmmanuel Vadot watchdog: watchdog@4067e8 { 251c66ec88fSEmmanuel Vadot clocks = <&upg_clk>; 252c66ec88fSEmmanuel Vadot compatible = "brcm,bcm7038-wdt"; 253c66ec88fSEmmanuel Vadot reg = <0x4067e8 0x14>; 254c66ec88fSEmmanuel Vadot status = "disabled"; 255c66ec88fSEmmanuel Vadot }; 256c66ec88fSEmmanuel Vadot 257c66ec88fSEmmanuel Vadot aon_pm_l2_intc: interrupt-controller@408440 { 258c66ec88fSEmmanuel Vadot compatible = "brcm,l2-intc"; 259c66ec88fSEmmanuel Vadot reg = <0x408440 0x30>; 260c66ec88fSEmmanuel Vadot interrupt-controller; 261c66ec88fSEmmanuel Vadot #interrupt-cells = <1>; 262c66ec88fSEmmanuel Vadot interrupt-parent = <&periph_intc>; 263c66ec88fSEmmanuel Vadot interrupts = <54>; 264c66ec88fSEmmanuel Vadot brcm,irq-can-wake; 265c66ec88fSEmmanuel Vadot }; 266c66ec88fSEmmanuel Vadot 267c66ec88fSEmmanuel Vadot aon_ctrl: syscon@408000 { 268c66ec88fSEmmanuel Vadot compatible = "brcm,brcmstb-aon-ctrl"; 269c66ec88fSEmmanuel Vadot reg = <0x408000 0x100>, <0x408200 0x200>; 270c66ec88fSEmmanuel Vadot reg-names = "aon-ctrl", "aon-sram"; 271c66ec88fSEmmanuel Vadot }; 272c66ec88fSEmmanuel Vadot 273c66ec88fSEmmanuel Vadot timers: timer@4067c0 { 274c66ec88fSEmmanuel Vadot compatible = "brcm,brcmstb-timers"; 275c66ec88fSEmmanuel Vadot reg = <0x4067c0 0x40>; 276c66ec88fSEmmanuel Vadot }; 277c66ec88fSEmmanuel Vadot 278c66ec88fSEmmanuel Vadot upg_gio: gpio@406700 { 279c66ec88fSEmmanuel Vadot compatible = "brcm,brcmstb-gpio"; 280c66ec88fSEmmanuel Vadot reg = <0x406700 0x80>; 281c66ec88fSEmmanuel Vadot #gpio-cells = <2>; 282c66ec88fSEmmanuel Vadot #interrupt-cells = <2>; 283c66ec88fSEmmanuel Vadot gpio-controller; 284c66ec88fSEmmanuel Vadot interrupt-controller; 285c66ec88fSEmmanuel Vadot interrupt-parent = <&upg_irq0_intc>; 286c66ec88fSEmmanuel Vadot interrupts = <6>; 287c66ec88fSEmmanuel Vadot brcm,gpio-bank-widths = <32 32 32 21>; 288c66ec88fSEmmanuel Vadot }; 289c66ec88fSEmmanuel Vadot 290c66ec88fSEmmanuel Vadot upg_gio_aon: gpio@4094c0 { 291c66ec88fSEmmanuel Vadot compatible = "brcm,brcmstb-gpio"; 292c66ec88fSEmmanuel Vadot reg = <0x4094c0 0x40>; 293c66ec88fSEmmanuel Vadot #gpio-cells = <2>; 294c66ec88fSEmmanuel Vadot #interrupt-cells = <2>; 295c66ec88fSEmmanuel Vadot gpio-controller; 296c66ec88fSEmmanuel Vadot interrupt-controller; 297c66ec88fSEmmanuel Vadot interrupt-parent = <&upg_aon_irq0_intc>; 298c66ec88fSEmmanuel Vadot interrupts = <6>; 299c66ec88fSEmmanuel Vadot interrupts-extended = <&upg_aon_irq0_intc 6>, 300c66ec88fSEmmanuel Vadot <&aon_pm_l2_intc 5>; 301c66ec88fSEmmanuel Vadot wakeup-source; 302c66ec88fSEmmanuel Vadot brcm,gpio-bank-widths = <18 4>; 303c66ec88fSEmmanuel Vadot }; 304c66ec88fSEmmanuel Vadot 305c66ec88fSEmmanuel Vadot enet0: ethernet@b80000 { 306c66ec88fSEmmanuel Vadot phy-mode = "internal"; 307c66ec88fSEmmanuel Vadot phy-handle = <&phy1>; 308c66ec88fSEmmanuel Vadot mac-address = [ 00 10 18 36 23 1a ]; 309c66ec88fSEmmanuel Vadot compatible = "brcm,genet-v3"; 310c66ec88fSEmmanuel Vadot #address-cells = <0x1>; 311c66ec88fSEmmanuel Vadot #size-cells = <0x1>; 312c66ec88fSEmmanuel Vadot reg = <0xb80000 0x11c88>; 313c66ec88fSEmmanuel Vadot interrupts = <17>, <18>; 314c66ec88fSEmmanuel Vadot interrupt-parent = <&periph_intc>; 315c66ec88fSEmmanuel Vadot status = "disabled"; 316c66ec88fSEmmanuel Vadot 317c66ec88fSEmmanuel Vadot mdio@e14 { 318c66ec88fSEmmanuel Vadot compatible = "brcm,genet-mdio-v3"; 319c66ec88fSEmmanuel Vadot #address-cells = <0x1>; 320c66ec88fSEmmanuel Vadot #size-cells = <0x0>; 321c66ec88fSEmmanuel Vadot reg = <0xe14 0x8>; 322c66ec88fSEmmanuel Vadot 323c66ec88fSEmmanuel Vadot phy1: ethernet-phy@1 { 324c66ec88fSEmmanuel Vadot max-speed = <100>; 325c66ec88fSEmmanuel Vadot reg = <0x1>; 326c66ec88fSEmmanuel Vadot compatible = "brcm,40nm-ephy", 327c66ec88fSEmmanuel Vadot "ethernet-phy-ieee802.3-c22"; 328c66ec88fSEmmanuel Vadot }; 329c66ec88fSEmmanuel Vadot }; 330c66ec88fSEmmanuel Vadot }; 331c66ec88fSEmmanuel Vadot 332c66ec88fSEmmanuel Vadot ehci0: usb@480300 { 333c66ec88fSEmmanuel Vadot compatible = "brcm,bcm7435-ehci", "generic-ehci"; 334c66ec88fSEmmanuel Vadot reg = <0x480300 0x100>; 335c66ec88fSEmmanuel Vadot native-endian; 336c66ec88fSEmmanuel Vadot interrupt-parent = <&periph_intc>; 337c66ec88fSEmmanuel Vadot interrupts = <70>; 338c66ec88fSEmmanuel Vadot status = "disabled"; 339c66ec88fSEmmanuel Vadot }; 340c66ec88fSEmmanuel Vadot 341c66ec88fSEmmanuel Vadot ohci0: usb@480400 { 342c66ec88fSEmmanuel Vadot compatible = "brcm,bcm7435-ohci", "generic-ohci"; 343c66ec88fSEmmanuel Vadot reg = <0x480400 0x100>; 344c66ec88fSEmmanuel Vadot native-endian; 345c66ec88fSEmmanuel Vadot no-big-frame-no; 346c66ec88fSEmmanuel Vadot interrupt-parent = <&periph_intc>; 347c66ec88fSEmmanuel Vadot interrupts = <72>; 348c66ec88fSEmmanuel Vadot status = "disabled"; 349c66ec88fSEmmanuel Vadot }; 350c66ec88fSEmmanuel Vadot 351c66ec88fSEmmanuel Vadot ehci1: usb@480500 { 352c66ec88fSEmmanuel Vadot compatible = "brcm,bcm7435-ehci", "generic-ehci"; 353c66ec88fSEmmanuel Vadot reg = <0x480500 0x100>; 354c66ec88fSEmmanuel Vadot native-endian; 355c66ec88fSEmmanuel Vadot interrupt-parent = <&periph_intc>; 356c66ec88fSEmmanuel Vadot interrupts = <71>; 357c66ec88fSEmmanuel Vadot status = "disabled"; 358c66ec88fSEmmanuel Vadot }; 359c66ec88fSEmmanuel Vadot 360c66ec88fSEmmanuel Vadot ohci1: usb@480600 { 361c66ec88fSEmmanuel Vadot compatible = "brcm,bcm7435-ohci", "generic-ohci"; 362c66ec88fSEmmanuel Vadot reg = <0x480600 0x100>; 363c66ec88fSEmmanuel Vadot native-endian; 364c66ec88fSEmmanuel Vadot no-big-frame-no; 365c66ec88fSEmmanuel Vadot interrupt-parent = <&periph_intc>; 366c66ec88fSEmmanuel Vadot interrupts = <73>; 367c66ec88fSEmmanuel Vadot status = "disabled"; 368c66ec88fSEmmanuel Vadot }; 369c66ec88fSEmmanuel Vadot 370c66ec88fSEmmanuel Vadot ehci2: usb@490300 { 371c66ec88fSEmmanuel Vadot compatible = "brcm,bcm7435-ehci", "generic-ehci"; 372c66ec88fSEmmanuel Vadot reg = <0x490300 0x100>; 373c66ec88fSEmmanuel Vadot native-endian; 374c66ec88fSEmmanuel Vadot interrupt-parent = <&periph_intc>; 375c66ec88fSEmmanuel Vadot interrupts = <75>; 376c66ec88fSEmmanuel Vadot status = "disabled"; 377c66ec88fSEmmanuel Vadot }; 378c66ec88fSEmmanuel Vadot 379c66ec88fSEmmanuel Vadot ohci2: usb@490400 { 380c66ec88fSEmmanuel Vadot compatible = "brcm,bcm7435-ohci", "generic-ohci"; 381c66ec88fSEmmanuel Vadot reg = <0x490400 0x100>; 382c66ec88fSEmmanuel Vadot native-endian; 383c66ec88fSEmmanuel Vadot no-big-frame-no; 384c66ec88fSEmmanuel Vadot interrupt-parent = <&periph_intc>; 385c66ec88fSEmmanuel Vadot interrupts = <77>; 386c66ec88fSEmmanuel Vadot status = "disabled"; 387c66ec88fSEmmanuel Vadot }; 388c66ec88fSEmmanuel Vadot 389c66ec88fSEmmanuel Vadot ehci3: usb@490500 { 390c66ec88fSEmmanuel Vadot compatible = "brcm,bcm7435-ehci", "generic-ehci"; 391c66ec88fSEmmanuel Vadot reg = <0x490500 0x100>; 392c66ec88fSEmmanuel Vadot native-endian; 393c66ec88fSEmmanuel Vadot interrupt-parent = <&periph_intc>; 394c66ec88fSEmmanuel Vadot interrupts = <76>; 395c66ec88fSEmmanuel Vadot status = "disabled"; 396c66ec88fSEmmanuel Vadot }; 397c66ec88fSEmmanuel Vadot 398c66ec88fSEmmanuel Vadot ohci3: usb@490600 { 399c66ec88fSEmmanuel Vadot compatible = "brcm,bcm7435-ohci", "generic-ohci"; 400c66ec88fSEmmanuel Vadot reg = <0x490600 0x100>; 401c66ec88fSEmmanuel Vadot native-endian; 402c66ec88fSEmmanuel Vadot no-big-frame-no; 403c66ec88fSEmmanuel Vadot interrupt-parent = <&periph_intc>; 404c66ec88fSEmmanuel Vadot interrupts = <78>; 405c66ec88fSEmmanuel Vadot status = "disabled"; 406c66ec88fSEmmanuel Vadot }; 407c66ec88fSEmmanuel Vadot 408c66ec88fSEmmanuel Vadot hif_l2_intc: interrupt-controller@41b000 { 409c66ec88fSEmmanuel Vadot compatible = "brcm,l2-intc"; 410c66ec88fSEmmanuel Vadot reg = <0x41b000 0x30>; 411c66ec88fSEmmanuel Vadot interrupt-controller; 412c66ec88fSEmmanuel Vadot #interrupt-cells = <1>; 413c66ec88fSEmmanuel Vadot interrupt-parent = <&periph_intc>; 414c66ec88fSEmmanuel Vadot interrupts = <24>; 415c66ec88fSEmmanuel Vadot }; 416c66ec88fSEmmanuel Vadot 417c66ec88fSEmmanuel Vadot nand: nand@41c800 { 418c66ec88fSEmmanuel Vadot compatible = "brcm,brcmnand-v6.2", "brcm,brcmnand"; 419c66ec88fSEmmanuel Vadot #address-cells = <1>; 420c66ec88fSEmmanuel Vadot #size-cells = <0>; 421c66ec88fSEmmanuel Vadot reg-names = "nand", "flash-dma"; 422c66ec88fSEmmanuel Vadot reg = <0x41c800 0x600>, <0x41d000 0x100>; 423c66ec88fSEmmanuel Vadot interrupt-parent = <&hif_l2_intc>; 424c66ec88fSEmmanuel Vadot interrupts = <24>, <4>; 425*8bab661aSEmmanuel Vadot interrupt-names = "nand_ctlrdy", "flash_dma_done"; 426c66ec88fSEmmanuel Vadot status = "disabled"; 427c66ec88fSEmmanuel Vadot }; 428c66ec88fSEmmanuel Vadot 429c66ec88fSEmmanuel Vadot sata: sata@181000 { 430c66ec88fSEmmanuel Vadot compatible = "brcm,bcm7425-ahci", "brcm,sata3-ahci"; 431c66ec88fSEmmanuel Vadot reg-names = "ahci", "top-ctrl"; 432c66ec88fSEmmanuel Vadot reg = <0x181000 0xa9c>, <0x180020 0x1c>; 433c66ec88fSEmmanuel Vadot interrupt-parent = <&periph_intc>; 434c66ec88fSEmmanuel Vadot interrupts = <45>; 435c66ec88fSEmmanuel Vadot #address-cells = <1>; 436c66ec88fSEmmanuel Vadot #size-cells = <0>; 437c66ec88fSEmmanuel Vadot status = "disabled"; 438c66ec88fSEmmanuel Vadot 439c66ec88fSEmmanuel Vadot sata0: sata-port@0 { 440c66ec88fSEmmanuel Vadot reg = <0>; 441c66ec88fSEmmanuel Vadot phys = <&sata_phy0>; 442c66ec88fSEmmanuel Vadot }; 443c66ec88fSEmmanuel Vadot 444c66ec88fSEmmanuel Vadot sata1: sata-port@1 { 445c66ec88fSEmmanuel Vadot reg = <1>; 446c66ec88fSEmmanuel Vadot phys = <&sata_phy1>; 447c66ec88fSEmmanuel Vadot }; 448c66ec88fSEmmanuel Vadot }; 449c66ec88fSEmmanuel Vadot 450c66ec88fSEmmanuel Vadot sata_phy: sata-phy@180100 { 451c66ec88fSEmmanuel Vadot compatible = "brcm,bcm7425-sata-phy", "brcm,phy-sata3"; 452c66ec88fSEmmanuel Vadot reg = <0x180100 0x0eff>; 453c66ec88fSEmmanuel Vadot reg-names = "phy"; 454c66ec88fSEmmanuel Vadot #address-cells = <1>; 455c66ec88fSEmmanuel Vadot #size-cells = <0>; 456c66ec88fSEmmanuel Vadot status = "disabled"; 457c66ec88fSEmmanuel Vadot 458c66ec88fSEmmanuel Vadot sata_phy0: sata-phy@0 { 459c66ec88fSEmmanuel Vadot reg = <0>; 460c66ec88fSEmmanuel Vadot #phy-cells = <0>; 461c66ec88fSEmmanuel Vadot }; 462c66ec88fSEmmanuel Vadot 463c66ec88fSEmmanuel Vadot sata_phy1: sata-phy@1 { 464c66ec88fSEmmanuel Vadot reg = <1>; 465c66ec88fSEmmanuel Vadot #phy-cells = <0>; 466c66ec88fSEmmanuel Vadot }; 467c66ec88fSEmmanuel Vadot }; 468c66ec88fSEmmanuel Vadot 469c66ec88fSEmmanuel Vadot sdhci0: sdhci@41a000 { 470c66ec88fSEmmanuel Vadot compatible = "brcm,bcm7425-sdhci"; 471c66ec88fSEmmanuel Vadot reg = <0x41a000 0x100>; 472c66ec88fSEmmanuel Vadot interrupt-parent = <&periph_intc>; 473c66ec88fSEmmanuel Vadot interrupts = <47>; 474c66ec88fSEmmanuel Vadot sd-uhs-sdr50; 475c66ec88fSEmmanuel Vadot mmc-hs200-1_8v; 476c66ec88fSEmmanuel Vadot status = "disabled"; 477c66ec88fSEmmanuel Vadot }; 478c66ec88fSEmmanuel Vadot 479c66ec88fSEmmanuel Vadot sdhci1: sdhci@41a200 { 480c66ec88fSEmmanuel Vadot compatible = "brcm,bcm7425-sdhci"; 481c66ec88fSEmmanuel Vadot reg = <0x41a200 0x100>; 482c66ec88fSEmmanuel Vadot interrupt-parent = <&periph_intc>; 483c66ec88fSEmmanuel Vadot interrupts = <48>; 484c66ec88fSEmmanuel Vadot sd-uhs-sdr50; 485c66ec88fSEmmanuel Vadot mmc-hs200-1_8v; 486c66ec88fSEmmanuel Vadot status = "disabled"; 487c66ec88fSEmmanuel Vadot }; 488c66ec88fSEmmanuel Vadot 489c66ec88fSEmmanuel Vadot spi_l2_intc: interrupt-controller@41bd00 { 490c66ec88fSEmmanuel Vadot compatible = "brcm,l2-intc"; 491c66ec88fSEmmanuel Vadot reg = <0x41bd00 0x30>; 492c66ec88fSEmmanuel Vadot interrupt-controller; 493c66ec88fSEmmanuel Vadot #interrupt-cells = <1>; 494c66ec88fSEmmanuel Vadot interrupt-parent = <&periph_intc>; 495c66ec88fSEmmanuel Vadot interrupts = <25>; 496c66ec88fSEmmanuel Vadot }; 497c66ec88fSEmmanuel Vadot 498c66ec88fSEmmanuel Vadot qspi: spi@41d200 { 499c66ec88fSEmmanuel Vadot #address-cells = <0x1>; 500c66ec88fSEmmanuel Vadot #size-cells = <0x0>; 501c66ec88fSEmmanuel Vadot compatible = "brcm,spi-bcm-qspi", 502c66ec88fSEmmanuel Vadot "brcm,spi-brcmstb-qspi"; 503c66ec88fSEmmanuel Vadot clocks = <&upg_clk>; 504c66ec88fSEmmanuel Vadot reg = <0x41a920 0x4 0x41d400 0x188 0x41d200 0x50>; 505c66ec88fSEmmanuel Vadot reg-names = "cs_reg", "hif_mspi", "bspi"; 506c66ec88fSEmmanuel Vadot interrupts = <0x0 0x1 0x2 0x3 0x4 0x5 0x6>; 507c66ec88fSEmmanuel Vadot interrupt-parent = <&spi_l2_intc>; 508c66ec88fSEmmanuel Vadot interrupt-names = "spi_lr_fullness_reached", 509c66ec88fSEmmanuel Vadot "spi_lr_session_aborted", 510c66ec88fSEmmanuel Vadot "spi_lr_impatient", 511c66ec88fSEmmanuel Vadot "spi_lr_session_done", 512c66ec88fSEmmanuel Vadot "spi_lr_overread", 513c66ec88fSEmmanuel Vadot "mspi_done", 514c66ec88fSEmmanuel Vadot "mspi_halted"; 515c66ec88fSEmmanuel Vadot status = "disabled"; 516c66ec88fSEmmanuel Vadot }; 517c66ec88fSEmmanuel Vadot 518c66ec88fSEmmanuel Vadot mspi: spi@409200 { 519c66ec88fSEmmanuel Vadot #address-cells = <1>; 520c66ec88fSEmmanuel Vadot #size-cells = <0>; 521c66ec88fSEmmanuel Vadot compatible = "brcm,spi-bcm-qspi", 522c66ec88fSEmmanuel Vadot "brcm,spi-brcmstb-mspi"; 523c66ec88fSEmmanuel Vadot clocks = <&upg_clk>; 524c66ec88fSEmmanuel Vadot reg = <0x409200 0x180>; 525c66ec88fSEmmanuel Vadot reg-names = "mspi"; 526c66ec88fSEmmanuel Vadot interrupts = <0x14>; 527c66ec88fSEmmanuel Vadot interrupt-parent = <&upg_aon_irq0_intc>; 528c66ec88fSEmmanuel Vadot interrupt-names = "mspi_done"; 529c66ec88fSEmmanuel Vadot status = "disabled"; 530c66ec88fSEmmanuel Vadot }; 531c66ec88fSEmmanuel Vadot 532c66ec88fSEmmanuel Vadot waketimer: waketimer@409580 { 533c66ec88fSEmmanuel Vadot compatible = "brcm,brcmstb-waketimer"; 534c66ec88fSEmmanuel Vadot reg = <0x409580 0x14>; 535c66ec88fSEmmanuel Vadot interrupts = <0x3>; 536c66ec88fSEmmanuel Vadot interrupt-parent = <&aon_pm_l2_intc>; 537c66ec88fSEmmanuel Vadot interrupt-names = "timer"; 538c66ec88fSEmmanuel Vadot clocks = <&upg_clk>; 539c66ec88fSEmmanuel Vadot status = "disabled"; 540c66ec88fSEmmanuel Vadot }; 541c66ec88fSEmmanuel Vadot }; 542c66ec88fSEmmanuel Vadot 543c66ec88fSEmmanuel Vadot memory_controllers { 544c66ec88fSEmmanuel Vadot compatible = "simple-bus"; 545c66ec88fSEmmanuel Vadot ranges = <0x0 0x103b0000 0x1a000>; 546c66ec88fSEmmanuel Vadot #address-cells = <1>; 547c66ec88fSEmmanuel Vadot #size-cells = <1>; 548c66ec88fSEmmanuel Vadot 549c66ec88fSEmmanuel Vadot memory-controller@0 { 550c66ec88fSEmmanuel Vadot compatible = "brcm,brcmstb-memc", "simple-bus"; 551c66ec88fSEmmanuel Vadot ranges = <0x0 0x0 0xa000>; 552c66ec88fSEmmanuel Vadot #address-cells = <1>; 553c66ec88fSEmmanuel Vadot #size-cells = <1>; 554c66ec88fSEmmanuel Vadot 555c66ec88fSEmmanuel Vadot memc-arb@1000 { 556c66ec88fSEmmanuel Vadot compatible = "brcm,brcmstb-memc-arb"; 557c66ec88fSEmmanuel Vadot reg = <0x1000 0x248>; 558c66ec88fSEmmanuel Vadot }; 559c66ec88fSEmmanuel Vadot 560c66ec88fSEmmanuel Vadot memc-ddr@2000 { 561c66ec88fSEmmanuel Vadot compatible = "brcm,brcmstb-memc-ddr"; 562c66ec88fSEmmanuel Vadot reg = <0x2000 0x300>; 563c66ec88fSEmmanuel Vadot }; 564c66ec88fSEmmanuel Vadot 565c66ec88fSEmmanuel Vadot ddr-phy@6000 { 566c66ec88fSEmmanuel Vadot compatible = "brcm,brcmstb-ddr-phy"; 567c66ec88fSEmmanuel Vadot reg = <0x6000 0xc8>; 568c66ec88fSEmmanuel Vadot }; 569c66ec88fSEmmanuel Vadot 570c66ec88fSEmmanuel Vadot shimphy@8000 { 571c66ec88fSEmmanuel Vadot compatible = "brcm,brcmstb-ddr-shimphy"; 572c66ec88fSEmmanuel Vadot reg = <0x8000 0x13c>; 573c66ec88fSEmmanuel Vadot }; 574c66ec88fSEmmanuel Vadot }; 575c66ec88fSEmmanuel Vadot 576c66ec88fSEmmanuel Vadot memory-controller@1 { 577c66ec88fSEmmanuel Vadot compatible = "brcm,brcmstb-memc", "simple-bus"; 578c66ec88fSEmmanuel Vadot ranges = <0x0 0x10000 0xa000>; 579c66ec88fSEmmanuel Vadot #address-cells = <1>; 580c66ec88fSEmmanuel Vadot #size-cells = <1>; 581c66ec88fSEmmanuel Vadot 582c66ec88fSEmmanuel Vadot memc-arb@1000 { 583c66ec88fSEmmanuel Vadot compatible = "brcm,brcmstb-memc-arb"; 584c66ec88fSEmmanuel Vadot reg = <0x1000 0x248>; 585c66ec88fSEmmanuel Vadot }; 586c66ec88fSEmmanuel Vadot 587c66ec88fSEmmanuel Vadot memc-ddr@2000 { 588c66ec88fSEmmanuel Vadot compatible = "brcm,brcmstb-memc-ddr"; 589c66ec88fSEmmanuel Vadot reg = <0x2000 0x300>; 590c66ec88fSEmmanuel Vadot }; 591c66ec88fSEmmanuel Vadot 592c66ec88fSEmmanuel Vadot ddr-phy@6000 { 593c66ec88fSEmmanuel Vadot compatible = "brcm,brcmstb-ddr-phy"; 594c66ec88fSEmmanuel Vadot reg = <0x6000 0xc8>; 595c66ec88fSEmmanuel Vadot }; 596c66ec88fSEmmanuel Vadot 597c66ec88fSEmmanuel Vadot shimphy@8000 { 598c66ec88fSEmmanuel Vadot compatible = "brcm,brcmstb-ddr-shimphy"; 599c66ec88fSEmmanuel Vadot reg = <0x8000 0x13c>; 600c66ec88fSEmmanuel Vadot }; 601c66ec88fSEmmanuel Vadot }; 602c66ec88fSEmmanuel Vadot }; 603e67e8565SEmmanuel Vadot 604e67e8565SEmmanuel Vadot pcie_0: pcie@8b20000 { 605e67e8565SEmmanuel Vadot status = "disabled"; 606e67e8565SEmmanuel Vadot compatible = "brcm,bcm7435-pcie"; 607e67e8565SEmmanuel Vadot 608e67e8565SEmmanuel Vadot ranges = <0x02000000 0x0 0xd0000000 0xd0000000 0x0 0x08000000 609e67e8565SEmmanuel Vadot 0x02000000 0x0 0xd8000000 0xd8000000 0x0 0x08000000 610e67e8565SEmmanuel Vadot 0x02000000 0x0 0xe0000000 0xe0000000 0x0 0x08000000 611e67e8565SEmmanuel Vadot 0x02000000 0x0 0xe8000000 0xe8000000 0x0 0x08000000>; 612e67e8565SEmmanuel Vadot 613e67e8565SEmmanuel Vadot reg = <0x10410000 0x19310>; 614e67e8565SEmmanuel Vadot aspm-no-l0s; 615e67e8565SEmmanuel Vadot device_type = "pci"; 616e67e8565SEmmanuel Vadot msi-controller; 617e67e8565SEmmanuel Vadot msi-parent = <&pcie_0>; 618e67e8565SEmmanuel Vadot #address-cells = <0x3>; 619e67e8565SEmmanuel Vadot #size-cells = <0x2>; 620e67e8565SEmmanuel Vadot bus-range = <0x0 0xff>; 621e67e8565SEmmanuel Vadot interrupt-map-mask = <0x0 0x0 0x0 0x7>; 622e67e8565SEmmanuel Vadot linux,pci-domain = <0x0>; 623e67e8565SEmmanuel Vadot 624e67e8565SEmmanuel Vadot interrupt-parent = <&periph_intc>; 625e67e8565SEmmanuel Vadot interrupts = <39>, <39>; 626e67e8565SEmmanuel Vadot interrupt-names = "pcie", "msi"; 627e67e8565SEmmanuel Vadot #interrupt-cells = <0x1>; 628e67e8565SEmmanuel Vadot interrupt-map = <0 0 0 1 &periph_intc 0x23 629e67e8565SEmmanuel Vadot 0 0 0 1 &periph_intc 0x24 630e67e8565SEmmanuel Vadot 0 0 0 1 &periph_intc 0x25 631e67e8565SEmmanuel Vadot 0 0 0 1 &periph_intc 0x26>; 632e67e8565SEmmanuel Vadot }; 633c66ec88fSEmmanuel Vadot}; 634