18945e37eSKevin Cernekee/ { 28945e37eSKevin Cernekee #address-cells = <1>; 38945e37eSKevin Cernekee #size-cells = <1>; 48945e37eSKevin Cernekee compatible = "brcm,bcm7358"; 58945e37eSKevin Cernekee 68945e37eSKevin Cernekee cpus { 78945e37eSKevin Cernekee #address-cells = <1>; 88945e37eSKevin Cernekee #size-cells = <0>; 98945e37eSKevin Cernekee 108945e37eSKevin Cernekee mips-hpt-frequency = <375000000>; 118945e37eSKevin Cernekee 128945e37eSKevin Cernekee cpu@0 { 138945e37eSKevin Cernekee compatible = "brcm,bmips3300"; 148945e37eSKevin Cernekee device_type = "cpu"; 158945e37eSKevin Cernekee reg = <0>; 168945e37eSKevin Cernekee }; 178945e37eSKevin Cernekee }; 188945e37eSKevin Cernekee 198945e37eSKevin Cernekee aliases { 208945e37eSKevin Cernekee uart0 = &uart0; 218bac078cSJaedon Shin uart1 = &uart1; 228bac078cSJaedon Shin uart2 = &uart2; 238945e37eSKevin Cernekee }; 248945e37eSKevin Cernekee 258945e37eSKevin Cernekee cpu_intc: cpu_intc { 268945e37eSKevin Cernekee #address-cells = <0>; 278945e37eSKevin Cernekee compatible = "mti,cpu-interrupt-controller"; 288945e37eSKevin Cernekee 298945e37eSKevin Cernekee interrupt-controller; 308945e37eSKevin Cernekee #interrupt-cells = <1>; 318945e37eSKevin Cernekee }; 328945e37eSKevin Cernekee 338945e37eSKevin Cernekee clocks { 348945e37eSKevin Cernekee uart_clk: uart_clk { 358945e37eSKevin Cernekee compatible = "fixed-clock"; 368945e37eSKevin Cernekee #clock-cells = <0>; 378945e37eSKevin Cernekee clock-frequency = <81000000>; 388945e37eSKevin Cernekee }; 398945e37eSKevin Cernekee }; 408945e37eSKevin Cernekee 418945e37eSKevin Cernekee rdb { 428945e37eSKevin Cernekee #address-cells = <1>; 438945e37eSKevin Cernekee #size-cells = <1>; 448945e37eSKevin Cernekee 458945e37eSKevin Cernekee compatible = "simple-bus"; 468945e37eSKevin Cernekee ranges = <0 0x10000000 0x01000000>; 478945e37eSKevin Cernekee 488945e37eSKevin Cernekee periph_intc: periph_intc@411400 { 498945e37eSKevin Cernekee compatible = "brcm,bcm7038-l1-intc"; 508945e37eSKevin Cernekee reg = <0x411400 0x30>; 518945e37eSKevin Cernekee 528945e37eSKevin Cernekee interrupt-controller; 538945e37eSKevin Cernekee #interrupt-cells = <1>; 548945e37eSKevin Cernekee 558945e37eSKevin Cernekee interrupt-parent = <&cpu_intc>; 568945e37eSKevin Cernekee interrupts = <2>; 578945e37eSKevin Cernekee }; 588945e37eSKevin Cernekee 598945e37eSKevin Cernekee sun_l2_intc: sun_l2_intc@403000 { 608945e37eSKevin Cernekee compatible = "brcm,l2-intc"; 618945e37eSKevin Cernekee reg = <0x403000 0x30>; 628945e37eSKevin Cernekee interrupt-controller; 638945e37eSKevin Cernekee #interrupt-cells = <1>; 648945e37eSKevin Cernekee interrupt-parent = <&periph_intc>; 658945e37eSKevin Cernekee interrupts = <48>; 668945e37eSKevin Cernekee }; 678945e37eSKevin Cernekee 688945e37eSKevin Cernekee gisb-arb@400000 { 698945e37eSKevin Cernekee compatible = "brcm,bcm7400-gisb-arb"; 708945e37eSKevin Cernekee reg = <0x400000 0xdc>; 718945e37eSKevin Cernekee native-endian; 728945e37eSKevin Cernekee interrupt-parent = <&sun_l2_intc>; 738945e37eSKevin Cernekee interrupts = <0>, <2>; 748945e37eSKevin Cernekee brcm,gisb-arb-master-mask = <0x2f3>; 758945e37eSKevin Cernekee brcm,gisb-arb-master-names = "ssp_0", "cpu_0", "bsp_0", 768945e37eSKevin Cernekee "rdc_0", "raaga_0", 778945e37eSKevin Cernekee "avd_0", "jtag_0"; 788945e37eSKevin Cernekee }; 798945e37eSKevin Cernekee 808945e37eSKevin Cernekee upg_irq0_intc: upg_irq0_intc@406600 { 818945e37eSKevin Cernekee compatible = "brcm,bcm7120-l2-intc"; 828945e37eSKevin Cernekee reg = <0x406600 0x8>; 838945e37eSKevin Cernekee 84*ad837838SJaedon Shin brcm,int-map-mask = <0x44>, <0x7000000>; 858945e37eSKevin Cernekee brcm,int-fwd-mask = <0x70000>; 868945e37eSKevin Cernekee 878945e37eSKevin Cernekee interrupt-controller; 888945e37eSKevin Cernekee #interrupt-cells = <1>; 898945e37eSKevin Cernekee 908945e37eSKevin Cernekee interrupt-parent = <&periph_intc>; 91*ad837838SJaedon Shin interrupts = <56>, <54>; 92*ad837838SJaedon Shin interrupt-names = "upg_main", "upg_bsc"; 93*ad837838SJaedon Shin }; 94*ad837838SJaedon Shin 95*ad837838SJaedon Shin upg_aon_irq0_intc: upg_aon_irq0_intc@408b80 { 96*ad837838SJaedon Shin compatible = "brcm,bcm7120-l2-intc"; 97*ad837838SJaedon Shin reg = <0x408b80 0x8>; 98*ad837838SJaedon Shin 99*ad837838SJaedon Shin brcm,int-map-mask = <0x40>, <0x8000000>, <0x100000>; 100*ad837838SJaedon Shin brcm,int-fwd-mask = <0>; 101*ad837838SJaedon Shin brcm,irq-can-wake; 102*ad837838SJaedon Shin 103*ad837838SJaedon Shin interrupt-controller; 104*ad837838SJaedon Shin #interrupt-cells = <1>; 105*ad837838SJaedon Shin 106*ad837838SJaedon Shin interrupt-parent = <&periph_intc>; 107*ad837838SJaedon Shin interrupts = <57>, <55>, <59>; 108*ad837838SJaedon Shin interrupt-names = "upg_main_aon", "upg_bsc_aon", 109*ad837838SJaedon Shin "upg_spi"; 1108945e37eSKevin Cernekee }; 1118945e37eSKevin Cernekee 1128945e37eSKevin Cernekee sun_top_ctrl: syscon@404000 { 1138945e37eSKevin Cernekee compatible = "brcm,bcm7358-sun-top-ctrl", "syscon"; 1148945e37eSKevin Cernekee reg = <0x404000 0x51c>; 1158945e37eSKevin Cernekee little-endian; 1168945e37eSKevin Cernekee }; 1178945e37eSKevin Cernekee 1188945e37eSKevin Cernekee reboot { 1198945e37eSKevin Cernekee compatible = "brcm,brcmstb-reboot"; 1208945e37eSKevin Cernekee syscon = <&sun_top_ctrl 0x304 0x308>; 1218945e37eSKevin Cernekee }; 1228945e37eSKevin Cernekee 1238945e37eSKevin Cernekee uart0: serial@406800 { 1248945e37eSKevin Cernekee compatible = "ns16550a"; 1258945e37eSKevin Cernekee reg = <0x406800 0x20>; 1268945e37eSKevin Cernekee reg-io-width = <0x4>; 1278945e37eSKevin Cernekee reg-shift = <0x2>; 1288945e37eSKevin Cernekee native-endian; 1298945e37eSKevin Cernekee interrupt-parent = <&periph_intc>; 1308945e37eSKevin Cernekee interrupts = <61>; 1318945e37eSKevin Cernekee clocks = <&uart_clk>; 1328945e37eSKevin Cernekee status = "disabled"; 1338945e37eSKevin Cernekee }; 1348945e37eSKevin Cernekee 1358bac078cSJaedon Shin uart1: serial@406840 { 1368bac078cSJaedon Shin compatible = "ns16550a"; 1378bac078cSJaedon Shin reg = <0x406840 0x20>; 1388bac078cSJaedon Shin reg-io-width = <0x4>; 1398bac078cSJaedon Shin reg-shift = <0x2>; 1408bac078cSJaedon Shin native-endian; 1418bac078cSJaedon Shin interrupt-parent = <&periph_intc>; 1428bac078cSJaedon Shin interrupts = <62>; 1438bac078cSJaedon Shin clocks = <&uart_clk>; 1448bac078cSJaedon Shin status = "disabled"; 1458bac078cSJaedon Shin }; 1468bac078cSJaedon Shin 1478bac078cSJaedon Shin uart2: serial@406880 { 1488bac078cSJaedon Shin compatible = "ns16550a"; 1498bac078cSJaedon Shin reg = <0x406880 0x20>; 1508bac078cSJaedon Shin reg-io-width = <0x4>; 1518bac078cSJaedon Shin reg-shift = <0x2>; 1528bac078cSJaedon Shin native-endian; 1538bac078cSJaedon Shin interrupt-parent = <&periph_intc>; 1548bac078cSJaedon Shin interrupts = <63>; 1558bac078cSJaedon Shin clocks = <&uart_clk>; 1568bac078cSJaedon Shin status = "disabled"; 1578bac078cSJaedon Shin }; 1588bac078cSJaedon Shin 159*ad837838SJaedon Shin bsca: i2c@406200 { 160*ad837838SJaedon Shin clock-frequency = <390000>; 161*ad837838SJaedon Shin compatible = "brcm,brcmstb-i2c"; 162*ad837838SJaedon Shin interrupt-parent = <&upg_irq0_intc>; 163*ad837838SJaedon Shin reg = <0x406200 0x58>; 164*ad837838SJaedon Shin interrupts = <24>; 165*ad837838SJaedon Shin interrupt-names = "upg_bsca"; 166*ad837838SJaedon Shin status = "disabled"; 167*ad837838SJaedon Shin }; 168*ad837838SJaedon Shin 169*ad837838SJaedon Shin bscb: i2c@406280 { 170*ad837838SJaedon Shin clock-frequency = <390000>; 171*ad837838SJaedon Shin compatible = "brcm,brcmstb-i2c"; 172*ad837838SJaedon Shin interrupt-parent = <&upg_irq0_intc>; 173*ad837838SJaedon Shin reg = <0x406280 0x58>; 174*ad837838SJaedon Shin interrupts = <25>; 175*ad837838SJaedon Shin interrupt-names = "upg_bscb"; 176*ad837838SJaedon Shin status = "disabled"; 177*ad837838SJaedon Shin }; 178*ad837838SJaedon Shin 179*ad837838SJaedon Shin bscc: i2c@406300 { 180*ad837838SJaedon Shin clock-frequency = <390000>; 181*ad837838SJaedon Shin compatible = "brcm,brcmstb-i2c"; 182*ad837838SJaedon Shin interrupt-parent = <&upg_irq0_intc>; 183*ad837838SJaedon Shin reg = <0x406300 0x58>; 184*ad837838SJaedon Shin interrupts = <26>; 185*ad837838SJaedon Shin interrupt-names = "upg_bscc"; 186*ad837838SJaedon Shin status = "disabled"; 187*ad837838SJaedon Shin }; 188*ad837838SJaedon Shin 189*ad837838SJaedon Shin bscd: i2c@408980 { 190*ad837838SJaedon Shin clock-frequency = <390000>; 191*ad837838SJaedon Shin compatible = "brcm,brcmstb-i2c"; 192*ad837838SJaedon Shin interrupt-parent = <&upg_aon_irq0_intc>; 193*ad837838SJaedon Shin reg = <0x408980 0x58>; 194*ad837838SJaedon Shin interrupts = <27>; 195*ad837838SJaedon Shin interrupt-names = "upg_bscd"; 196*ad837838SJaedon Shin status = "disabled"; 197*ad837838SJaedon Shin }; 198*ad837838SJaedon Shin 1998945e37eSKevin Cernekee enet0: ethernet@430000 { 2008945e37eSKevin Cernekee phy-mode = "internal"; 2018945e37eSKevin Cernekee phy-handle = <&phy1>; 2028945e37eSKevin Cernekee mac-address = [ 00 10 18 36 23 1a ]; 2038945e37eSKevin Cernekee compatible = "brcm,genet-v2"; 2048945e37eSKevin Cernekee #address-cells = <0x1>; 2058945e37eSKevin Cernekee #size-cells = <0x1>; 2068945e37eSKevin Cernekee reg = <0x430000 0x4c8c>; 2078945e37eSKevin Cernekee interrupts = <24>, <25>; 2088945e37eSKevin Cernekee interrupt-parent = <&periph_intc>; 2098945e37eSKevin Cernekee status = "disabled"; 2108945e37eSKevin Cernekee 2118945e37eSKevin Cernekee mdio@e14 { 2128945e37eSKevin Cernekee compatible = "brcm,genet-mdio-v2"; 2138945e37eSKevin Cernekee #address-cells = <0x1>; 2148945e37eSKevin Cernekee #size-cells = <0x0>; 2158945e37eSKevin Cernekee reg = <0xe14 0x8>; 2168945e37eSKevin Cernekee 2178945e37eSKevin Cernekee phy1: ethernet-phy@1 { 2188945e37eSKevin Cernekee max-speed = <100>; 2198945e37eSKevin Cernekee reg = <0x1>; 2208945e37eSKevin Cernekee compatible = "brcm,40nm-ephy", 2218945e37eSKevin Cernekee "ethernet-phy-ieee802.3-c22"; 2228945e37eSKevin Cernekee }; 2238945e37eSKevin Cernekee }; 2248945e37eSKevin Cernekee }; 2258945e37eSKevin Cernekee 2268945e37eSKevin Cernekee ehci0: usb@480300 { 2278945e37eSKevin Cernekee compatible = "brcm,bcm7358-ehci", "generic-ehci"; 2288945e37eSKevin Cernekee reg = <0x480300 0x100>; 2298945e37eSKevin Cernekee native-endian; 2308945e37eSKevin Cernekee interrupt-parent = <&periph_intc>; 2318945e37eSKevin Cernekee interrupts = <65>; 2328945e37eSKevin Cernekee status = "disabled"; 2338945e37eSKevin Cernekee }; 2348945e37eSKevin Cernekee 2358945e37eSKevin Cernekee ohci0: usb@480400 { 2368945e37eSKevin Cernekee compatible = "brcm,bcm7358-ohci", "generic-ohci"; 2378945e37eSKevin Cernekee reg = <0x480400 0x100>; 2388945e37eSKevin Cernekee native-endian; 2398945e37eSKevin Cernekee no-big-frame-no; 2408945e37eSKevin Cernekee interrupt-parent = <&periph_intc>; 2418945e37eSKevin Cernekee interrupts = <66>; 2428945e37eSKevin Cernekee status = "disabled"; 2438945e37eSKevin Cernekee }; 2448945e37eSKevin Cernekee }; 2458945e37eSKevin Cernekee}; 246