Add Broadcom / Netgear changes from RAXE 1.0.0.48
[project/bcm63xx/u-boot.git] / arch / arm / dts / bcm963178.dts
diff --git a/arch/arm/dts/bcm963178.dts b/arch/arm/dts/bcm963178.dts
new file mode 100644 (file)
index 0000000..aba154c
--- /dev/null
@@ -0,0 +1,252 @@
+/dts-v1/;
+
+#include "bcmbca-sf2net.dtsi"
+#include "bcm63178-pinctrl.dtsi"
+
+/ {
+       model = "Broadcom bcm963178";
+       compatible = "broadcom,bcm963178", "brcm,brcm-v7";
+       #address-cells = <0x1>;
+       #size-cells = <0x1>;
+
+       aliases {
+               serial0 = &uart0;
+               spi1 = &hsspi;
+       };
+
+
+       chosen {
+               stdout-path = "serial0:115200n8";
+       };
+
+       memory {
+               device_type = "memory";
+               reg = <0x0 0x08000000>;
+       };
+       clocks {
+               compatible = "simple-bus";
+               #address-cells = <1>;
+               #size-cells = <1>;
+               ranges;
+               u-boot,dm-pre-reloc;
+
+               periph_osc: periph-osc {
+                       compatible = "fixed-clock";
+                       #clock-cells = <0>;
+                       clock-frequency = <200000000>;
+                       u-boot,dm-pre-reloc;
+               };
+
+               hsspi_pll: hsspi-pll {
+                       compatible = "fixed-factor-clock";
+                       #clock-cells = <0>;
+                       clocks = <&periph_osc>;
+                       clock-mult = <1>;
+                       clock-div = <1>;
+                       u-boot,dm-pre-reloc;
+               };
+
+               refclk50mhz: refclk50mhz {
+                       compatible = "fixed-clock";
+                       #clock-cells = <0>;
+                       clock-frequency = <50000000>;
+               };
+       };
+
+       ubus@ff800000 {
+               compatible = "simple-bus";
+               #address-cells = <0x1>;
+               #size-cells = <0x1>;
+               u-boot,dm-pre-reloc;
+
+               hsspi: hsspi@ff801000 {
+                       compatible = "brcm,bcm6328-hsspi";
+                       #address-cells = <0x1>;
+                       #size-cells = <0x0>;
+                       u-boot,dm-pre-reloc;
+                       
+                       reg = <0xff801000 0x1000>;
+                       clocks = <&hsspi_pll>, <&hsspi_pll>;
+                       clock-names = "hsspi", "pll";
+                       spi-max-frequency = <100000000>;
+                       num-cs = <8>;
+                       status = "okay";
+               };
+
+               uart0: serial@ff812000 {
+                       u-boot,dm-pre-reloc;
+                       compatible = "arm,pl011", "arm,primecell";
+                       reg = <0xff812000 0x1000>;
+                       clock = <50000000>;
+                       status = "okay";
+               };
+
+               wdt1: watchdog@ff800480 {
+                       compatible = "brcm,bcm6345-wdt";
+                       reg = <0xff800480 0x14>;
+                       clocks = <&refclk50mhz>;
+               };
+
+               wdt2: watchdog@ff8004c0 {
+                       compatible = "brcm,bcm6345-wdt";
+                       reg = <0xff8004c0 0x14>;
+                       clocks = <&refclk50mhz>;
+               };
+
+               wdt-reboot {
+                       compatible = "wdt-reboot";
+                       wdt = <&wdt1>;
+               };
+
+               nand: nand-controller@ff801800 {
+                       compatible = "brcm,nand-bcmbca",
+                                    "brcm,brcmnand-v7.1",
+                                    "brcm,brcmnand";
+                       reg-names = "nand", "nand-int-base", "nand-cache";
+                       reg = <0xff801800 0x400>,
+                             <0xff802000 0x10>,
+                             <0xff801c00 0x200>;
+                       parameter-page-big-endian = <0>;
+                       status = "okay";
+                       write-protect = <0>;
+                       #address-cells = <1>;
+                       #size-cells = <0>;
+
+                       nandcs@0 {
+                               compatible = "brcm,nandcs";
+                               reg = <0>;
+                       };
+               };
+
+               rng: rng@ff800b80 {
+                       compatible = "brcm,iproc-rng200";
+                       reg = <0xff800b80 0x28>;
+                       u-boot,dm-pre-reloc;
+               };
+               sysport: systemport@0x80490000 {
+               compatible = "brcm,bcmbca-systemport-v2.0";
+               qphy-avaiable=<0x01>;
+               sphy-available=<0x01>;
+               reg-names = "systemport-rbuf-base", "systemport-rdma-base",
+                               "systemport-tdma-base",
+                               "systemport-gib-base",
+                               "systemport-umac-base",
+                               "systemport-topctrl-base";
+               reg =           <0x80490400 0x14>,
+                               <0x80492000 0x1060>,
+                               <0x80494000 0x650>,
+                               <0x80498000 0x10>,
+                               <0x00000000 0x00>,  
+                               <0x80490000 0x10>;
+               ethsw = <&switchsf2>;
+               };
+
+               switchsf2: sf2@80400000 {
+               compatible = "brcm,bcmbca-sf2";
+               phy_base = <0x8>;
+               phy_wkard_timeout = <25000>;
+               reg-names = "switchcore-base",
+                                       "switchreg-base",
+                                       "switchmdio-base",
+                                       "qphy-ctrl",
+                                       "sphy-ctrl",
+                                       "phy-test-ctrl";
+
+               reg = <0x80400000 0x72724>,
+                       <0x80480000 0x458>,
+                       <0x804805c0 0x10>,
+                       <0x8048001c 0x04>,
+                       <0x80480024 0x04>,
+                       <0x80480018 0x04>;
+                       ports {
+                               port0@0 {
+                                       phy-handle = <&gphy8>;
+                               };
+                               port1@1 {
+                                       phy-handle = <&gphy9>;
+                               };
+                               port2@2 {
+                                       phy-handle = <&gphya>;
+                               };
+                               port3@3 {
+                                       phy-handle = <&gphyb>;
+                               };
+                       };
+               };
+               boot_state {
+                       u-boot,dm-pre-reloc;
+                       compatible = "brcm,bcmbca-bootstate-v2";
+                       reg-names = "reset_reason", "reset_status";
+                       reg =   <0xff802628 0x04>,
+                               <0xff85a03c 0x04>;
+               };
+
+               pinctrl: pinctrl {
+                       compatible = "brcm,bcmbca-pinctrl";
+                       reg = <0xff800554 0x14>;
+               };
+
+               usb_ctrl:usb_ctrl {
+               compatible = "brcm,bcmbca-usb-ctrl";
+               reg-names = "usb-ctrl";
+               reg = <0x8000c200 0x100>;
+               status = "okay";
+               };
+
+               usb0: usb@0x8000c300 {
+               compatible = "brcm,bcmbca-ehci";
+               reg-names = "usb-ehci";
+               reg = <0x8000c300 0x100>;
+               status = "okay";
+               pinctrl-0 = <&usb0_pwr_pins>;
+               pinctrl-names="default";
+               };
+
+               usb1: usb@0x8000c500 {
+               compatible = "brcm,bcmbca-ehci";
+               reg-names = "usb-ehci";
+               reg = <0x8000c500 0x100>;
+               status = "okay";
+               pinctrl-0 = <&usb1_pwr_pins>;
+               pinctrl-names="default";
+               };
+
+               usb_ohci0: usb_ohci@0x8000c400 {
+               compatible = "brcm,bcmbca-ohci";
+               reg-names = "usb-ohci";
+               reg = <0x8000c400 0x100>;
+               };
+
+               usb_ohci1: usb_ohci@0x8000c600 {
+               compatible = "brcm,bcmbca-ohci";
+               reg-names = "usb-ohci";
+               reg = <0x8000c600 0x100>;
+               };
+       };
+};
+
+&hsspi {
+       status = "okay";
+       spi-nand {
+               compatible = "spi-nand";
+               reg = <0>;
+               #address-cells = <1>;
+               #size-cells = <0>;
+               u-boot,dm-pre-reloc;                            
+               spi-max-frequency = <100000000>;
+       };
+};
+
+&hsspi {
+       status = "okay";
+       spi-nor@0 {
+               compatible = "jedec,spi-nor";
+               reg = <0>;
+               #address-cells = <1>;
+               #size-cells = <0>;
+               spi-max-frequency = <50000000>;
+               u-boot,dm-pre-reloc;
+       };
+};
+
+