183d290c5STom Rini// SPDX-License-Identifier: GPL-2.0+ 26a235bb8SÁlvaro Fernández Rojas/* 36a235bb8SÁlvaro Fernández Rojas * Copyright (C) 2017 Álvaro Fernández Rojas <noltari@gmail.com> 46a235bb8SÁlvaro Fernández Rojas */ 56a235bb8SÁlvaro Fernández Rojas 6969ebdb9SÁlvaro Fernández Rojas#include <dt-bindings/clock/bcm63268-clock.h> 783eae024SÁlvaro Fernández Rojas#include <dt-bindings/dma/bcm63268-dma.h> 86a235bb8SÁlvaro Fernández Rojas#include <dt-bindings/gpio/gpio.h> 9a1b5e5e7SÁlvaro Fernández Rojas#include <dt-bindings/power-domain/bcm63268-power-domain.h> 1002bb1fa0SÁlvaro Fernández Rojas#include <dt-bindings/reset/bcm63268-reset.h> 116a235bb8SÁlvaro Fernández Rojas#include "skeleton.dtsi" 126a235bb8SÁlvaro Fernández Rojas 136a235bb8SÁlvaro Fernández Rojas/ { 146a235bb8SÁlvaro Fernández Rojas compatible = "brcm,bcm63268"; 156a235bb8SÁlvaro Fernández Rojas 1626cee0ecSÁlvaro Fernández Rojas aliases { 1726cee0ecSÁlvaro Fernández Rojas spi0 = &lsspi; 18727839b4SÁlvaro Fernández Rojas spi1 = &hsspi; 1926cee0ecSÁlvaro Fernández Rojas }; 2026cee0ecSÁlvaro Fernández Rojas 216a235bb8SÁlvaro Fernández Rojas cpus { 226a235bb8SÁlvaro Fernández Rojas reg = <0x10000000 0x4>; 236a235bb8SÁlvaro Fernández Rojas #address-cells = <1>; 246a235bb8SÁlvaro Fernández Rojas #size-cells = <0>; 256a235bb8SÁlvaro Fernández Rojas u-boot,dm-pre-reloc; 266a235bb8SÁlvaro Fernández Rojas 276a235bb8SÁlvaro Fernández Rojas cpu@0 { 286a235bb8SÁlvaro Fernández Rojas compatible = "brcm,bcm63268-cpu", "mips,mips4Kc"; 296a235bb8SÁlvaro Fernández Rojas device_type = "cpu"; 306a235bb8SÁlvaro Fernández Rojas reg = <0>; 316a235bb8SÁlvaro Fernández Rojas u-boot,dm-pre-reloc; 326a235bb8SÁlvaro Fernández Rojas }; 336a235bb8SÁlvaro Fernández Rojas 346a235bb8SÁlvaro Fernández Rojas cpu@1 { 356a235bb8SÁlvaro Fernández Rojas compatible = "brcm,bcm63268-cpu", "mips,mips4Kc"; 366a235bb8SÁlvaro Fernández Rojas device_type = "cpu"; 376a235bb8SÁlvaro Fernández Rojas reg = <1>; 386a235bb8SÁlvaro Fernández Rojas u-boot,dm-pre-reloc; 396a235bb8SÁlvaro Fernández Rojas }; 406a235bb8SÁlvaro Fernández Rojas }; 416a235bb8SÁlvaro Fernández Rojas 426a235bb8SÁlvaro Fernández Rojas clocks { 436a235bb8SÁlvaro Fernández Rojas compatible = "simple-bus"; 446a235bb8SÁlvaro Fernández Rojas #address-cells = <1>; 456a235bb8SÁlvaro Fernández Rojas #size-cells = <1>; 466a235bb8SÁlvaro Fernández Rojas u-boot,dm-pre-reloc; 476a235bb8SÁlvaro Fernández Rojas 48727839b4SÁlvaro Fernández Rojas hsspi_pll: hsspi-pll { 49727839b4SÁlvaro Fernández Rojas compatible = "fixed-clock"; 50727839b4SÁlvaro Fernández Rojas #clock-cells = <0>; 51727839b4SÁlvaro Fernández Rojas clock-frequency = <400000000>; 52727839b4SÁlvaro Fernández Rojas }; 53727839b4SÁlvaro Fernández Rojas 546a235bb8SÁlvaro Fernández Rojas periph_osc: periph-osc { 556a235bb8SÁlvaro Fernández Rojas compatible = "fixed-clock"; 566a235bb8SÁlvaro Fernández Rojas #clock-cells = <0>; 576a235bb8SÁlvaro Fernández Rojas clock-frequency = <50000000>; 586a235bb8SÁlvaro Fernández Rojas u-boot,dm-pre-reloc; 596a235bb8SÁlvaro Fernández Rojas }; 60969ebdb9SÁlvaro Fernández Rojas 61969ebdb9SÁlvaro Fernández Rojas periph_clk: periph-clk { 62969ebdb9SÁlvaro Fernández Rojas compatible = "brcm,bcm6345-clk"; 63969ebdb9SÁlvaro Fernández Rojas reg = <0x10000004 0x4>; 64969ebdb9SÁlvaro Fernández Rojas #clock-cells = <1>; 65969ebdb9SÁlvaro Fernández Rojas }; 66969ebdb9SÁlvaro Fernández Rojas 67969ebdb9SÁlvaro Fernández Rojas timer_clk: timer-clk { 68969ebdb9SÁlvaro Fernández Rojas compatible = "brcm,bcm6345-clk"; 69969ebdb9SÁlvaro Fernández Rojas reg = <0x100000ac 0x4>; 70969ebdb9SÁlvaro Fernández Rojas #clock-cells = <1>; 71969ebdb9SÁlvaro Fernández Rojas }; 726a235bb8SÁlvaro Fernández Rojas }; 736a235bb8SÁlvaro Fernández Rojas 746a235bb8SÁlvaro Fernández Rojas ubus { 756a235bb8SÁlvaro Fernández Rojas compatible = "simple-bus"; 766a235bb8SÁlvaro Fernández Rojas #address-cells = <1>; 776a235bb8SÁlvaro Fernández Rojas #size-cells = <1>; 786a235bb8SÁlvaro Fernández Rojas u-boot,dm-pre-reloc; 796a235bb8SÁlvaro Fernández Rojas 806a235bb8SÁlvaro Fernández Rojas pll_cntl: syscon@10000008 { 816a235bb8SÁlvaro Fernández Rojas compatible = "syscon"; 826a235bb8SÁlvaro Fernández Rojas reg = <0x10000008 0x4>; 836a235bb8SÁlvaro Fernández Rojas }; 846a235bb8SÁlvaro Fernández Rojas 856a235bb8SÁlvaro Fernández Rojas syscon-reboot { 866a235bb8SÁlvaro Fernández Rojas compatible = "syscon-reboot"; 876a235bb8SÁlvaro Fernández Rojas regmap = <&pll_cntl>; 886a235bb8SÁlvaro Fernández Rojas offset = <0x0>; 896a235bb8SÁlvaro Fernández Rojas mask = <0x1>; 906a235bb8SÁlvaro Fernández Rojas }; 916a235bb8SÁlvaro Fernández Rojas 9202bb1fa0SÁlvaro Fernández Rojas periph_rst: reset-controller@10000010 { 9302bb1fa0SÁlvaro Fernández Rojas compatible = "brcm,bcm6345-reset"; 9402bb1fa0SÁlvaro Fernández Rojas reg = <0x10000010 0x4>; 9502bb1fa0SÁlvaro Fernández Rojas #reset-cells = <1>; 9602bb1fa0SÁlvaro Fernández Rojas }; 9702bb1fa0SÁlvaro Fernández Rojas 981947a44bSÁlvaro Fernández Rojas wdt: watchdog@1000009c { 991947a44bSÁlvaro Fernández Rojas compatible = "brcm,bcm6345-wdt"; 1001947a44bSÁlvaro Fernández Rojas reg = <0x1000009c 0xc>; 1011947a44bSÁlvaro Fernández Rojas clocks = <&periph_osc>; 1021947a44bSÁlvaro Fernández Rojas }; 1031947a44bSÁlvaro Fernández Rojas 104d7efa940SÁlvaro Fernández Rojas wdt-reboot { 105d7efa940SÁlvaro Fernández Rojas compatible = "wdt-reboot"; 106d7efa940SÁlvaro Fernández Rojas wdt = <&wdt>; 107d7efa940SÁlvaro Fernández Rojas }; 108d7efa940SÁlvaro Fernández Rojas 109c9c94d5dSÁlvaro Fernández Rojas gpio1: gpio-controller@100000c0 { 110c9c94d5dSÁlvaro Fernández Rojas compatible = "brcm,bcm6345-gpio"; 111c9c94d5dSÁlvaro Fernández Rojas reg = <0x100000c0 0x4>, <0x100000c8 0x4>; 112c9c94d5dSÁlvaro Fernández Rojas gpio-controller; 113c9c94d5dSÁlvaro Fernández Rojas #gpio-cells = <2>; 114c9c94d5dSÁlvaro Fernández Rojas ngpios = <20>; 115c9c94d5dSÁlvaro Fernández Rojas 116c9c94d5dSÁlvaro Fernández Rojas status = "disabled"; 117c9c94d5dSÁlvaro Fernández Rojas }; 118c9c94d5dSÁlvaro Fernández Rojas 119c9c94d5dSÁlvaro Fernández Rojas gpio0: gpio-controller@100000c4 { 120c9c94d5dSÁlvaro Fernández Rojas compatible = "brcm,bcm6345-gpio"; 121c9c94d5dSÁlvaro Fernández Rojas reg = <0x100000c4 0x4>, <0x100000cc 0x4>; 122c9c94d5dSÁlvaro Fernández Rojas gpio-controller; 123c9c94d5dSÁlvaro Fernández Rojas #gpio-cells = <2>; 124c9c94d5dSÁlvaro Fernández Rojas 125c9c94d5dSÁlvaro Fernández Rojas status = "disabled"; 126c9c94d5dSÁlvaro Fernández Rojas }; 127c9c94d5dSÁlvaro Fernández Rojas 1286a235bb8SÁlvaro Fernández Rojas uart0: serial@10000180 { 1296a235bb8SÁlvaro Fernández Rojas compatible = "brcm,bcm6345-uart"; 1306a235bb8SÁlvaro Fernández Rojas reg = <0x10000180 0x18>; 1316a235bb8SÁlvaro Fernández Rojas clocks = <&periph_osc>; 1326a235bb8SÁlvaro Fernández Rojas 1336a235bb8SÁlvaro Fernández Rojas status = "disabled"; 1346a235bb8SÁlvaro Fernández Rojas }; 1356a235bb8SÁlvaro Fernández Rojas 1366a235bb8SÁlvaro Fernández Rojas uart1: serial@100001a0 { 1376a235bb8SÁlvaro Fernández Rojas compatible = "brcm,bcm6345-uart"; 1386a235bb8SÁlvaro Fernández Rojas reg = <0x100001a0 0x18>; 1396a235bb8SÁlvaro Fernández Rojas clocks = <&periph_osc>; 1406a235bb8SÁlvaro Fernández Rojas 1416a235bb8SÁlvaro Fernández Rojas status = "disabled"; 1426a235bb8SÁlvaro Fernández Rojas }; 1436a235bb8SÁlvaro Fernández Rojas 144a1b5e5e7SÁlvaro Fernández Rojas periph_pwr: power-controller@1000184c { 145a1b5e5e7SÁlvaro Fernández Rojas compatible = "brcm,bcm6328-power-domain"; 146a1b5e5e7SÁlvaro Fernández Rojas reg = <0x1000184c 0x4>; 147a1b5e5e7SÁlvaro Fernández Rojas #power-domain-cells = <1>; 148a1b5e5e7SÁlvaro Fernández Rojas }; 149a1b5e5e7SÁlvaro Fernández Rojas 15026cee0ecSÁlvaro Fernández Rojas lsspi: spi@10000800 { 15126cee0ecSÁlvaro Fernández Rojas compatible = "brcm,bcm6358-spi"; 15226cee0ecSÁlvaro Fernández Rojas reg = <0x10000800 0x70c>; 15326cee0ecSÁlvaro Fernández Rojas #address-cells = <1>; 15426cee0ecSÁlvaro Fernández Rojas #size-cells = <0>; 15526cee0ecSÁlvaro Fernández Rojas clocks = <&periph_clk BCM63268_CLK_SPI>; 15626cee0ecSÁlvaro Fernández Rojas resets = <&periph_rst BCM63268_RST_SPI>; 15726cee0ecSÁlvaro Fernández Rojas spi-max-frequency = <20000000>; 15826cee0ecSÁlvaro Fernández Rojas num-cs = <8>; 15926cee0ecSÁlvaro Fernández Rojas 16026cee0ecSÁlvaro Fernández Rojas status = "disabled"; 16126cee0ecSÁlvaro Fernández Rojas }; 16226cee0ecSÁlvaro Fernández Rojas 163727839b4SÁlvaro Fernández Rojas hsspi: spi@10001000 { 164727839b4SÁlvaro Fernández Rojas compatible = "brcm,bcm6328-hsspi"; 165727839b4SÁlvaro Fernández Rojas #address-cells = <1>; 166727839b4SÁlvaro Fernández Rojas #size-cells = <0>; 167727839b4SÁlvaro Fernández Rojas reg = <0x10001000 0x600>; 168727839b4SÁlvaro Fernández Rojas clocks = <&periph_clk BCM63268_CLK_HSSPI>, <&hsspi_pll>; 169727839b4SÁlvaro Fernández Rojas clock-names = "hsspi", "pll"; 170727839b4SÁlvaro Fernández Rojas resets = <&periph_rst BCM63268_RST_SPI>; 171727839b4SÁlvaro Fernández Rojas spi-max-frequency = <50000000>; 172727839b4SÁlvaro Fernández Rojas num-cs = <8>; 173727839b4SÁlvaro Fernández Rojas 174727839b4SÁlvaro Fernández Rojas status = "disabled"; 175727839b4SÁlvaro Fernández Rojas }; 176727839b4SÁlvaro Fernández Rojas 17765a7c955SÁlvaro Fernández Rojas leds: led-controller@10001900 { 17865a7c955SÁlvaro Fernández Rojas compatible = "brcm,bcm6328-leds"; 17965a7c955SÁlvaro Fernández Rojas reg = <0x10001900 0x24>; 18065a7c955SÁlvaro Fernández Rojas #address-cells = <1>; 18165a7c955SÁlvaro Fernández Rojas #size-cells = <0>; 18265a7c955SÁlvaro Fernández Rojas 18365a7c955SÁlvaro Fernández Rojas status = "disabled"; 18465a7c955SÁlvaro Fernández Rojas }; 18565a7c955SÁlvaro Fernández Rojas 18635e03f00SÁlvaro Fernández Rojas ehci: usb-controller@10002500 { 18735e03f00SÁlvaro Fernández Rojas compatible = "brcm,bcm63268-ehci", "generic-ehci"; 18835e03f00SÁlvaro Fernández Rojas reg = <0x10002500 0x100>; 18935e03f00SÁlvaro Fernández Rojas phys = <&usbh>; 19035e03f00SÁlvaro Fernández Rojas big-endian; 19135e03f00SÁlvaro Fernández Rojas 19235e03f00SÁlvaro Fernández Rojas status = "disabled"; 19335e03f00SÁlvaro Fernández Rojas }; 19435e03f00SÁlvaro Fernández Rojas 19535e03f00SÁlvaro Fernández Rojas ohci: usb-controller@10002600 { 19635e03f00SÁlvaro Fernández Rojas compatible = "brcm,bcm63268-ohci", "generic-ohci"; 19735e03f00SÁlvaro Fernández Rojas reg = <0x10002600 0x100>; 19835e03f00SÁlvaro Fernández Rojas phys = <&usbh>; 19935e03f00SÁlvaro Fernández Rojas big-endian; 20035e03f00SÁlvaro Fernández Rojas 20135e03f00SÁlvaro Fernández Rojas status = "disabled"; 20235e03f00SÁlvaro Fernández Rojas }; 20335e03f00SÁlvaro Fernández Rojas 20435e03f00SÁlvaro Fernández Rojas usbh: usb-phy@10002700 { 20535e03f00SÁlvaro Fernández Rojas compatible = "brcm,bcm63268-usbh"; 20635e03f00SÁlvaro Fernández Rojas reg = <0x10002700 0x38>; 20735e03f00SÁlvaro Fernández Rojas #phy-cells = <0>; 20835e03f00SÁlvaro Fernández Rojas clocks = <&periph_clk BCM63268_CLK_USBH>, <&timer_clk BCM63268_TCLK_USB_REF>; 20935e03f00SÁlvaro Fernández Rojas clock-names = "usbh", "usb_ref"; 21035e03f00SÁlvaro Fernández Rojas power-domains = <&periph_pwr BCM63268_PWR_USBH>; 21135e03f00SÁlvaro Fernández Rojas resets = <&periph_rst BCM63268_RST_USBH>; 21235e03f00SÁlvaro Fernández Rojas 21335e03f00SÁlvaro Fernández Rojas status = "disabled"; 21435e03f00SÁlvaro Fernández Rojas }; 21535e03f00SÁlvaro Fernández Rojas 2166a235bb8SÁlvaro Fernández Rojas memory-controller@10003000 { 2176a235bb8SÁlvaro Fernández Rojas compatible = "brcm,bcm6328-mc"; 2180c9152d3SÁlvaro Fernández Rojas reg = <0x10003000 0x894>; 2196a235bb8SÁlvaro Fernández Rojas u-boot,dm-pre-reloc; 2206a235bb8SÁlvaro Fernández Rojas }; 22183eae024SÁlvaro Fernández Rojas 22283eae024SÁlvaro Fernández Rojas iudma: dma-controller@1000d800 { 22383eae024SÁlvaro Fernández Rojas compatible = "brcm,bcm6368-iudma"; 22483eae024SÁlvaro Fernández Rojas reg = <0x1000d800 0x80>, 22583eae024SÁlvaro Fernández Rojas <0x1000da00 0x80>, 22683eae024SÁlvaro Fernández Rojas <0x1000dc00 0x80>; 22783eae024SÁlvaro Fernández Rojas reg-names = "dma", 22883eae024SÁlvaro Fernández Rojas "dma-channels", 22983eae024SÁlvaro Fernández Rojas "dma-sram"; 23083eae024SÁlvaro Fernández Rojas #dma-cells = <1>; 23183eae024SÁlvaro Fernández Rojas dma-channels = <8>; 23283eae024SÁlvaro Fernández Rojas }; 233*b07f2dc6SÁlvaro Fernández Rojas 234*b07f2dc6SÁlvaro Fernández Rojas enet: ethernet@10700000 { 235*b07f2dc6SÁlvaro Fernández Rojas compatible = "brcm,bcm6368-enet"; 236*b07f2dc6SÁlvaro Fernández Rojas #address-cells = <1>; 237*b07f2dc6SÁlvaro Fernández Rojas #size-cells = <0>; 238*b07f2dc6SÁlvaro Fernández Rojas reg = <0x10700000 0x10000>; 239*b07f2dc6SÁlvaro Fernández Rojas clocks = <&periph_clk BCM63268_CLK_GMAC>, 240*b07f2dc6SÁlvaro Fernández Rojas <&periph_clk BCM63268_CLK_ROBOSW>, 241*b07f2dc6SÁlvaro Fernández Rojas <&periph_clk BCM63268_CLK_ROBOSW250>, 242*b07f2dc6SÁlvaro Fernández Rojas <&timer_clk BCM63268_TCLK_EPHY1>, 243*b07f2dc6SÁlvaro Fernández Rojas <&timer_clk BCM63268_TCLK_EPHY2>, 244*b07f2dc6SÁlvaro Fernández Rojas <&timer_clk BCM63268_TCLK_EPHY3>, 245*b07f2dc6SÁlvaro Fernández Rojas <&timer_clk BCM63268_TCLK_GPHY>; 246*b07f2dc6SÁlvaro Fernández Rojas resets = <&periph_rst BCM63268_RST_ENETSW>, 247*b07f2dc6SÁlvaro Fernández Rojas <&periph_rst BCM63268_RST_EPHY>, 248*b07f2dc6SÁlvaro Fernández Rojas <&periph_rst BCM63268_RST_GPHY>; 249*b07f2dc6SÁlvaro Fernández Rojas dmas = <&iudma BCM63268_DMA_ENETSW_RX>, 250*b07f2dc6SÁlvaro Fernández Rojas <&iudma BCM63268_DMA_ENETSW_TX>; 251*b07f2dc6SÁlvaro Fernández Rojas dma-names = "rx", 252*b07f2dc6SÁlvaro Fernández Rojas "tx"; 253*b07f2dc6SÁlvaro Fernández Rojas brcm,rgmii-override; 254*b07f2dc6SÁlvaro Fernández Rojas brcm,rgmii-timing; 255*b07f2dc6SÁlvaro Fernández Rojas 256*b07f2dc6SÁlvaro Fernández Rojas status = "disabled"; 257*b07f2dc6SÁlvaro Fernández Rojas }; 2586a235bb8SÁlvaro Fernández Rojas }; 2596a235bb8SÁlvaro Fernández Rojas}; 260