1b2441318SGreg Kroah-Hartman// SPDX-License-Identifier: GPL-2.0 228898eebSÁlvaro Fernández Rojas 328898eebSÁlvaro Fernández Rojas#include "dt-bindings/clock/bcm6368-clock.h" 428898eebSÁlvaro Fernández Rojas#include "dt-bindings/reset/bcm6368-reset.h" 528898eebSÁlvaro Fernández Rojas 68945e37eSKevin Cernekee/ { 78945e37eSKevin Cernekee #address-cells = <1>; 88945e37eSKevin Cernekee #size-cells = <1>; 98945e37eSKevin Cernekee compatible = "brcm,bcm6368"; 108945e37eSKevin Cernekee 118945e37eSKevin Cernekee cpus { 128945e37eSKevin Cernekee #address-cells = <1>; 138945e37eSKevin Cernekee #size-cells = <0>; 148945e37eSKevin Cernekee 158945e37eSKevin Cernekee mips-hpt-frequency = <200000000>; 168945e37eSKevin Cernekee 178945e37eSKevin Cernekee cpu@0 { 188945e37eSKevin Cernekee compatible = "brcm,bmips4350"; 198945e37eSKevin Cernekee device_type = "cpu"; 208945e37eSKevin Cernekee reg = <0>; 218945e37eSKevin Cernekee }; 228945e37eSKevin Cernekee 238945e37eSKevin Cernekee cpu@1 { 248945e37eSKevin Cernekee compatible = "brcm,bmips4350"; 258945e37eSKevin Cernekee device_type = "cpu"; 268945e37eSKevin Cernekee reg = <1>; 278945e37eSKevin Cernekee }; 288945e37eSKevin Cernekee }; 298945e37eSKevin Cernekee 308945e37eSKevin Cernekee clocks { 31*7d9ade0fSÁlvaro Fernández Rojas periph_osc: periph-osc { 328945e37eSKevin Cernekee compatible = "fixed-clock"; 338945e37eSKevin Cernekee #clock-cells = <0>; 348945e37eSKevin Cernekee clock-frequency = <50000000>; 35*7d9ade0fSÁlvaro Fernández Rojas clock-output-names = "periph"; 368945e37eSKevin Cernekee }; 378945e37eSKevin Cernekee }; 388945e37eSKevin Cernekee 398945e37eSKevin Cernekee aliases { 40*7d9ade0fSÁlvaro Fernández Rojas nflash = &nflash; 41*7d9ade0fSÁlvaro Fernández Rojas pflash = &pflash; 422d52ee82SÁlvaro Fernández Rojas serial0 = &uart0; 432d52ee82SÁlvaro Fernández Rojas serial1 = &uart1; 44*7d9ade0fSÁlvaro Fernández Rojas spi0 = &lsspi; 458945e37eSKevin Cernekee }; 468945e37eSKevin Cernekee 472d52ee82SÁlvaro Fernández Rojas cpu_intc: interrupt-controller { 488945e37eSKevin Cernekee #address-cells = <0>; 498945e37eSKevin Cernekee compatible = "mti,cpu-interrupt-controller"; 508945e37eSKevin Cernekee 518945e37eSKevin Cernekee interrupt-controller; 528945e37eSKevin Cernekee #interrupt-cells = <1>; 538945e37eSKevin Cernekee }; 548945e37eSKevin Cernekee 558945e37eSKevin Cernekee ubus { 568945e37eSKevin Cernekee #address-cells = <1>; 578945e37eSKevin Cernekee #size-cells = <1>; 588945e37eSKevin Cernekee 598945e37eSKevin Cernekee compatible = "simple-bus"; 608945e37eSKevin Cernekee ranges; 618945e37eSKevin Cernekee 62*7d9ade0fSÁlvaro Fernández Rojas periph_clk: clock-controller@10000004 { 63a23c4134SJonas Gorski compatible = "brcm,bcm6368-clocks"; 64a23c4134SJonas Gorski reg = <0x10000004 0x4>; 65a23c4134SJonas Gorski #clock-cells = <1>; 66a23c4134SJonas Gorski }; 67a23c4134SJonas Gorski 68*7d9ade0fSÁlvaro Fernández Rojas pll_cntl: syscon@100000008 { 6970ce14bfSÁlvaro Fernández Rojas compatible = "syscon"; 70cde58b86SÁlvaro Fernández Rojas reg = <0x10000008 0x4>; 7125d6463eSMark Brown native-endian; 7270ce14bfSÁlvaro Fernández Rojas 73*7d9ade0fSÁlvaro Fernández Rojas reboot { 7470ce14bfSÁlvaro Fernández Rojas compatible = "syscon-reboot"; 75a23c4134SJonas Gorski offset = <0x0>; 7670ce14bfSÁlvaro Fernández Rojas mask = <0x1>; 7770ce14bfSÁlvaro Fernández Rojas }; 78*7d9ade0fSÁlvaro Fernández Rojas }; 7970ce14bfSÁlvaro Fernández Rojas 807acf84e8SÁlvaro Fernández Rojas periph_rst: reset-controller@10000010 { 817acf84e8SÁlvaro Fernández Rojas compatible = "brcm,bcm6345-reset"; 827acf84e8SÁlvaro Fernández Rojas reg = <0x10000010 0x4>; 837acf84e8SÁlvaro Fernández Rojas #reset-cells = <1>; 847acf84e8SÁlvaro Fernández Rojas }; 857acf84e8SÁlvaro Fernández Rojas 862d52ee82SÁlvaro Fernández Rojas periph_intc: interrupt-controller@10000020 { 872d52ee82SÁlvaro Fernández Rojas compatible = "brcm,bcm6345-l1-intc"; 882d52ee82SÁlvaro Fernández Rojas reg = <0x10000020 0x10>, 892d52ee82SÁlvaro Fernández Rojas <0x10000030 0x10>; 908945e37eSKevin Cernekee 918945e37eSKevin Cernekee interrupt-controller; 928945e37eSKevin Cernekee #interrupt-cells = <1>; 938945e37eSKevin Cernekee 948945e37eSKevin Cernekee interrupt-parent = <&cpu_intc>; 952d52ee82SÁlvaro Fernández Rojas interrupts = <2>, <3>; 968945e37eSKevin Cernekee }; 978945e37eSKevin Cernekee 98*7d9ade0fSÁlvaro Fernández Rojas wdt: watchdog@1000005c { 99*7d9ade0fSÁlvaro Fernández Rojas compatible = "brcm,bcm7038-wdt"; 100*7d9ade0fSÁlvaro Fernández Rojas reg = <0x1000005c 0xc>; 101*7d9ade0fSÁlvaro Fernández Rojas 102*7d9ade0fSÁlvaro Fernández Rojas clocks = <&periph_osc>; 103*7d9ade0fSÁlvaro Fernández Rojas clock-names = "refclk"; 104*7d9ade0fSÁlvaro Fernández Rojas 105*7d9ade0fSÁlvaro Fernández Rojas timeout-sec = <30>; 106*7d9ade0fSÁlvaro Fernández Rojas }; 107*7d9ade0fSÁlvaro Fernández Rojas 10870ce14bfSÁlvaro Fernández Rojas leds0: led-controller@100000d0 { 10970ce14bfSÁlvaro Fernández Rojas #address-cells = <1>; 11070ce14bfSÁlvaro Fernández Rojas #size-cells = <0>; 11170ce14bfSÁlvaro Fernández Rojas compatible = "brcm,bcm6358-leds"; 11270ce14bfSÁlvaro Fernández Rojas reg = <0x100000d0 0x8>; 113*7d9ade0fSÁlvaro Fernández Rojas 11470ce14bfSÁlvaro Fernández Rojas status = "disabled"; 11570ce14bfSÁlvaro Fernández Rojas }; 11670ce14bfSÁlvaro Fernández Rojas 1178945e37eSKevin Cernekee uart0: serial@10000100 { 1188945e37eSKevin Cernekee compatible = "brcm,bcm6345-uart"; 1198945e37eSKevin Cernekee reg = <0x10000100 0x18>; 120*7d9ade0fSÁlvaro Fernández Rojas 1218945e37eSKevin Cernekee interrupt-parent = <&periph_intc>; 1228945e37eSKevin Cernekee interrupts = <2>; 123*7d9ade0fSÁlvaro Fernández Rojas 124*7d9ade0fSÁlvaro Fernández Rojas clocks = <&periph_osc>; 125bed8d2a2SJonas Gorski clock-names = "refclk"; 126*7d9ade0fSÁlvaro Fernández Rojas 1278945e37eSKevin Cernekee status = "disabled"; 1288945e37eSKevin Cernekee }; 1298945e37eSKevin Cernekee 1302d52ee82SÁlvaro Fernández Rojas uart1: serial@10000120 { 1312d52ee82SÁlvaro Fernández Rojas compatible = "brcm,bcm6345-uart"; 1322d52ee82SÁlvaro Fernández Rojas reg = <0x10000120 0x18>; 133*7d9ade0fSÁlvaro Fernández Rojas 1342d52ee82SÁlvaro Fernández Rojas interrupt-parent = <&periph_intc>; 1352d52ee82SÁlvaro Fernández Rojas interrupts = <3>; 136*7d9ade0fSÁlvaro Fernández Rojas 137*7d9ade0fSÁlvaro Fernández Rojas clocks = <&periph_osc>; 138bed8d2a2SJonas Gorski clock-names = "refclk"; 139*7d9ade0fSÁlvaro Fernández Rojas 140*7d9ade0fSÁlvaro Fernández Rojas status = "disabled"; 141*7d9ade0fSÁlvaro Fernández Rojas }; 142*7d9ade0fSÁlvaro Fernández Rojas 143*7d9ade0fSÁlvaro Fernández Rojas nflash: nand@10000200 { 144*7d9ade0fSÁlvaro Fernández Rojas #address-cells = <1>; 145*7d9ade0fSÁlvaro Fernández Rojas #size-cells = <0>; 146*7d9ade0fSÁlvaro Fernández Rojas compatible = "brcm,nand-bcm6368", 147*7d9ade0fSÁlvaro Fernández Rojas "brcm,brcmnand-v2.1", 148*7d9ade0fSÁlvaro Fernández Rojas "brcm,brcmnand"; 149*7d9ade0fSÁlvaro Fernández Rojas reg = <0x10000200 0x180>, 150*7d9ade0fSÁlvaro Fernández Rojas <0x10000600 0x200>, 151*7d9ade0fSÁlvaro Fernández Rojas <0x10000070 0x10>; 152*7d9ade0fSÁlvaro Fernández Rojas reg-names = "nand", 153*7d9ade0fSÁlvaro Fernández Rojas "nand-cache", 154*7d9ade0fSÁlvaro Fernández Rojas "nand-int-base"; 155*7d9ade0fSÁlvaro Fernández Rojas 156*7d9ade0fSÁlvaro Fernández Rojas interrupt-parent = <&periph_intc>; 157*7d9ade0fSÁlvaro Fernández Rojas interrupts = <10>; 158*7d9ade0fSÁlvaro Fernández Rojas 159*7d9ade0fSÁlvaro Fernández Rojas clocks = <&periph_clk BCM6368_CLK_NAND>; 160*7d9ade0fSÁlvaro Fernández Rojas clock-names = "nand"; 161*7d9ade0fSÁlvaro Fernández Rojas 162*7d9ade0fSÁlvaro Fernández Rojas status = "disabled"; 163*7d9ade0fSÁlvaro Fernández Rojas }; 164*7d9ade0fSÁlvaro Fernández Rojas 165*7d9ade0fSÁlvaro Fernández Rojas lsspi: spi@10000800 { 166*7d9ade0fSÁlvaro Fernández Rojas #address-cells = <1>; 167*7d9ade0fSÁlvaro Fernández Rojas #size-cells = <0>; 168*7d9ade0fSÁlvaro Fernández Rojas compatible = "brcm,bcm6358-spi"; 169*7d9ade0fSÁlvaro Fernández Rojas reg = <0x10000800 0x70c>; 170*7d9ade0fSÁlvaro Fernández Rojas 171*7d9ade0fSÁlvaro Fernández Rojas interrupt-parent = <&periph_intc>; 172*7d9ade0fSÁlvaro Fernández Rojas interrupts = <1>; 173*7d9ade0fSÁlvaro Fernández Rojas 174*7d9ade0fSÁlvaro Fernández Rojas clocks = <&periph_clk BCM6368_CLK_SPI>; 175*7d9ade0fSÁlvaro Fernández Rojas clock-names = "spi"; 176*7d9ade0fSÁlvaro Fernández Rojas 177*7d9ade0fSÁlvaro Fernández Rojas resets = <&periph_rst BCM6368_RST_SPI>; 178*7d9ade0fSÁlvaro Fernández Rojas reset-names = "spi"; 179*7d9ade0fSÁlvaro Fernández Rojas 1802d52ee82SÁlvaro Fernández Rojas status = "disabled"; 1812d52ee82SÁlvaro Fernández Rojas }; 1822d52ee82SÁlvaro Fernández Rojas 1832d52ee82SÁlvaro Fernández Rojas ehci: usb@10001500 { 1848945e37eSKevin Cernekee compatible = "brcm,bcm6368-ehci", "generic-ehci"; 1858945e37eSKevin Cernekee reg = <0x10001500 0x100>; 1868945e37eSKevin Cernekee big-endian; 187*7d9ade0fSÁlvaro Fernández Rojas 1888945e37eSKevin Cernekee interrupt-parent = <&periph_intc>; 1898945e37eSKevin Cernekee interrupts = <7>; 190*7d9ade0fSÁlvaro Fernández Rojas 191*7d9ade0fSÁlvaro Fernández Rojas phys = <&usbh 0>; 192*7d9ade0fSÁlvaro Fernández Rojas phy-names = "usb"; 193*7d9ade0fSÁlvaro Fernández Rojas 1948945e37eSKevin Cernekee status = "disabled"; 1958945e37eSKevin Cernekee }; 1968945e37eSKevin Cernekee 1972d52ee82SÁlvaro Fernández Rojas ohci: usb@10001600 { 1988945e37eSKevin Cernekee compatible = "brcm,bcm6368-ohci", "generic-ohci"; 1998945e37eSKevin Cernekee reg = <0x10001600 0x100>; 2008945e37eSKevin Cernekee big-endian; 2018945e37eSKevin Cernekee no-big-frame-no; 202*7d9ade0fSÁlvaro Fernández Rojas 2038945e37eSKevin Cernekee interrupt-parent = <&periph_intc>; 2048945e37eSKevin Cernekee interrupts = <5>; 205*7d9ade0fSÁlvaro Fernández Rojas 206*7d9ade0fSÁlvaro Fernández Rojas phys = <&usbh 0>; 207*7d9ade0fSÁlvaro Fernández Rojas phy-names = "usb"; 208*7d9ade0fSÁlvaro Fernández Rojas 2098945e37eSKevin Cernekee status = "disabled"; 2108945e37eSKevin Cernekee }; 211*7d9ade0fSÁlvaro Fernández Rojas 212*7d9ade0fSÁlvaro Fernández Rojas usbh: usb-phy@10001700 { 213*7d9ade0fSÁlvaro Fernández Rojas compatible = "brcm,bcm6368-usbh-phy"; 214*7d9ade0fSÁlvaro Fernández Rojas reg = <0x10001700 0x38>; 215*7d9ade0fSÁlvaro Fernández Rojas #phy-cells = <1>; 216*7d9ade0fSÁlvaro Fernández Rojas 217*7d9ade0fSÁlvaro Fernández Rojas clocks = <&periph_clk BCM6368_CLK_USBH>; 218*7d9ade0fSÁlvaro Fernández Rojas clock-names = "usbh"; 219*7d9ade0fSÁlvaro Fernández Rojas 220*7d9ade0fSÁlvaro Fernández Rojas resets = <&periph_rst BCM6368_RST_USBH>; 221*7d9ade0fSÁlvaro Fernández Rojas reset-names = "usbh"; 222*7d9ade0fSÁlvaro Fernández Rojas 223*7d9ade0fSÁlvaro Fernández Rojas status = "disabled"; 224*7d9ade0fSÁlvaro Fernández Rojas }; 225*7d9ade0fSÁlvaro Fernández Rojas 226*7d9ade0fSÁlvaro Fernández Rojas random: rng@10004180 { 227*7d9ade0fSÁlvaro Fernández Rojas compatible = "brcm,bcm6368-rng"; 228*7d9ade0fSÁlvaro Fernández Rojas reg = <0x10004180 0x14>; 229*7d9ade0fSÁlvaro Fernández Rojas 230*7d9ade0fSÁlvaro Fernández Rojas clocks = <&periph_clk BCM6368_CLK_IPSEC>; 231*7d9ade0fSÁlvaro Fernández Rojas clock-names = "ipsec"; 232*7d9ade0fSÁlvaro Fernández Rojas 233*7d9ade0fSÁlvaro Fernández Rojas resets = <&periph_rst BCM6368_RST_IPSEC>; 234*7d9ade0fSÁlvaro Fernández Rojas reset-names = "ipsec"; 235*7d9ade0fSÁlvaro Fernández Rojas }; 236*7d9ade0fSÁlvaro Fernández Rojas }; 237*7d9ade0fSÁlvaro Fernández Rojas 238*7d9ade0fSÁlvaro Fernández Rojas pflash: nor@18000000 { 239*7d9ade0fSÁlvaro Fernández Rojas #address-cells = <1>; 240*7d9ade0fSÁlvaro Fernández Rojas #size-cells = <1>; 241*7d9ade0fSÁlvaro Fernández Rojas compatible = "cfi-flash"; 242*7d9ade0fSÁlvaro Fernández Rojas reg = <0x18000000 0x2000000>; 243*7d9ade0fSÁlvaro Fernández Rojas bank-width = <2>; 244*7d9ade0fSÁlvaro Fernández Rojas 245*7d9ade0fSÁlvaro Fernández Rojas status = "disabled"; 2468945e37eSKevin Cernekee }; 2478945e37eSKevin Cernekee}; 248