| // SPDX-License-Identifier: GPL-2.0 |
| |
| #include "dt-bindings/clock/bcm63268-clock.h" |
| #include "dt-bindings/reset/bcm63268-reset.h" |
| #include "dt-bindings/soc/bcm63268-pm.h" |
| |
| / { |
| #address-cells = <1>; |
| #size-cells = <1>; |
| compatible = "brcm,bcm63268"; |
| |
| cpus { |
| #address-cells = <1>; |
| #size-cells = <0>; |
| |
| mips-hpt-frequency = <200000000>; |
| |
| cpu@0 { |
| compatible = "brcm,bmips4350"; |
| device_type = "cpu"; |
| reg = <0>; |
| }; |
| |
| cpu@1 { |
| compatible = "brcm,bmips4350"; |
| device_type = "cpu"; |
| reg = <1>; |
| }; |
| }; |
| |
| clocks { |
| periph_osc: periph-osc { |
| compatible = "fixed-clock"; |
| #clock-cells = <0>; |
| clock-frequency = <50000000>; |
| clock-output-names = "periph"; |
| }; |
| |
| hsspi_osc: hsspi-osc { |
| compatible = "fixed-clock"; |
| |
| #clock-cells = <0>; |
| |
| clock-frequency = <400000000>; |
| clock-output-names = "hsspi_osc"; |
| }; |
| }; |
| |
| aliases { |
| nflash = &nflash; |
| serial0 = &uart0; |
| serial1 = &uart1; |
| spi0 = &lsspi; |
| spi1 = &hsspi; |
| }; |
| |
| cpu_intc: interrupt-controller { |
| #address-cells = <0>; |
| compatible = "mti,cpu-interrupt-controller"; |
| |
| interrupt-controller; |
| #interrupt-cells = <1>; |
| }; |
| |
| ubus { |
| #address-cells = <1>; |
| #size-cells = <1>; |
| |
| compatible = "simple-bus"; |
| ranges; |
| |
| periph_clk: clock-controller@10000004 { |
| compatible = "brcm,bcm63268-clocks"; |
| reg = <0x10000004 0x4>; |
| #clock-cells = <1>; |
| }; |
| |
| pll_cntl: syscon@10000008 { |
| compatible = "syscon"; |
| reg = <0x10000008 0x4>; |
| native-endian; |
| |
| reboot { |
| compatible = "syscon-reboot"; |
| offset = <0x0>; |
| mask = <0x1>; |
| }; |
| }; |
| |
| periph_rst: reset-controller@10000010 { |
| compatible = "brcm,bcm6345-reset"; |
| reg = <0x10000010 0x4>; |
| #reset-cells = <1>; |
| }; |
| |
| periph_intc: interrupt-controller@10000020 { |
| compatible = "brcm,bcm6345-l1-intc"; |
| reg = <0x10000020 0x20>, |
| <0x10000040 0x20>; |
| |
| interrupt-controller; |
| #interrupt-cells = <1>; |
| |
| interrupt-parent = <&cpu_intc>; |
| interrupts = <2>, <3>; |
| }; |
| |
| timer-mfd@10000080 { |
| compatible = "brcm,bcm7038-twd", "simple-mfd", "syscon"; |
| reg = <0x10000080 0x30>; |
| ranges = <0x0 0x10000080 0x30>; |
| #address-cells = <1>; |
| #size-cells = <1>; |
| |
| timer@0 { |
| compatible = "brcm,bcm6345-timer"; |
| reg = <0x0 0x1c>; |
| }; |
| |
| wdt: watchdog@1c { |
| compatible = "brcm,bcm7038-wdt"; |
| reg = <0x1c 0xc>; |
| |
| clocks = <&periph_osc>; |
| clock-names = "refclk"; |
| |
| timeout-sec = <30>; |
| }; |
| }; |
| |
| uart0: serial@10000180 { |
| compatible = "brcm,bcm6345-uart"; |
| reg = <0x10000180 0x18>; |
| |
| interrupt-parent = <&periph_intc>; |
| interrupts = <5>; |
| |
| clocks = <&periph_osc>; |
| clock-names = "refclk"; |
| |
| status = "disabled"; |
| }; |
| |
| nflash: nand@10000200 { |
| #address-cells = <1>; |
| #size-cells = <0>; |
| compatible = "brcm,nand-bcm6368", |
| "brcm,brcmnand-v4.0", |
| "brcm,brcmnand"; |
| reg = <0x10000200 0x180>, |
| <0x10000600 0x200>, |
| <0x100000b0 0x10>; |
| reg-names = "nand", |
| "nand-cache", |
| "nand-int-base"; |
| |
| interrupt-parent = <&periph_intc>; |
| interrupts = <50>; |
| |
| clocks = <&periph_clk BCM63268_CLK_NAND>; |
| clock-names = "nand"; |
| |
| status = "disabled"; |
| }; |
| |
| uart1: serial@100001a0 { |
| compatible = "brcm,bcm6345-uart"; |
| reg = <0x100001a0 0x18>; |
| |
| interrupt-parent = <&periph_intc>; |
| interrupts = <34>; |
| |
| clocks = <&periph_osc>; |
| clock-names = "refclk"; |
| |
| status = "disabled"; |
| }; |
| |
| lsspi: spi@10000800 { |
| #address-cells = <1>; |
| #size-cells = <0>; |
| compatible = "brcm,bcm6358-spi"; |
| reg = <0x10000800 0x70c>; |
| |
| interrupt-parent = <&periph_intc>; |
| interrupts = <80>; |
| |
| clocks = <&periph_clk BCM63268_CLK_SPI>; |
| clock-names = "spi"; |
| |
| resets = <&periph_rst BCM63268_RST_SPI>; |
| |
| status = "disabled"; |
| }; |
| |
| hsspi: spi@10001000 { |
| #address-cells = <1>; |
| #size-cells = <0>; |
| compatible = "brcm,bcm6328-hsspi"; |
| reg = <0x10001000 0x600>; |
| |
| interrupt-parent = <&periph_intc>; |
| interrupts = <6>; |
| |
| clocks = <&periph_clk BCM63268_CLK_HSSPI>, |
| <&hsspi_osc>; |
| clock-names = "hsspi", |
| "pll"; |
| |
| resets = <&periph_rst BCM63268_RST_SPI>; |
| |
| status = "disabled"; |
| }; |
| |
| periph_pwr: power-controller@1000184c { |
| compatible = "brcm,bcm6328-power-controller"; |
| reg = <0x1000184c 0x4>; |
| #power-domain-cells = <1>; |
| }; |
| |
| leds0: led-controller@10001900 { |
| #address-cells = <1>; |
| #size-cells = <0>; |
| compatible = "brcm,bcm6328-leds"; |
| reg = <0x10001900 0x24>; |
| |
| status = "disabled"; |
| }; |
| |
| ehci: usb@10002500 { |
| compatible = "brcm,bcm63268-ehci", "generic-ehci"; |
| reg = <0x10002500 0x100>; |
| big-endian; |
| |
| interrupt-parent = <&periph_intc>; |
| interrupts = <10>; |
| |
| phys = <&usbh 0>; |
| phy-names = "usb"; |
| |
| status = "disabled"; |
| }; |
| |
| ohci: usb@10002600 { |
| compatible = "brcm,bcm63268-ohci", "generic-ohci"; |
| reg = <0x10002600 0x100>; |
| big-endian; |
| no-big-frame-no; |
| |
| interrupt-parent = <&periph_intc>; |
| interrupts = <9>; |
| |
| phys = <&usbh 0>; |
| phy-names = "usb"; |
| |
| status = "disabled"; |
| }; |
| |
| usbh: usb-phy@10002700 { |
| compatible = "brcm,bcm63268-usbh-phy"; |
| reg = <0x10002700 0x38>; |
| #phy-cells = <1>; |
| |
| clocks = <&periph_clk BCM63268_CLK_USBH>; |
| clock-names = "usbh"; |
| |
| power-domains = <&periph_pwr BCM63268_POWER_DOMAIN_USBH>; |
| |
| resets = <&periph_rst BCM63268_RST_USBH>; |
| reset-names = "usbh"; |
| |
| status = "disabled"; |
| }; |
| }; |
| }; |