Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

mips: bmips: bcm6328: populate device tree nodes

- Rename periph_clk to periph_osc.
- Rename clkctl to periph_clk.
- Move syscon-reboot to subnode.
- Add hsspi-osc clock.
- Add watchdog.
- Add HS SPI controller.
- Add NAND controller.
- Add USBH PHY.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>

authored by

Álvaro Fernández Rojas and committed by
Thomas Bogendoerfer
7ea42936 cde58b86

+105 -14
+105 -14
arch/mips/boot/dts/brcm/bcm6328.dtsi
··· 29 29 }; 30 30 31 31 clocks { 32 - periph_clk: periph-clk { 32 + periph_osc: periph-osc { 33 33 compatible = "fixed-clock"; 34 34 #clock-cells = <0>; 35 35 clock-frequency = <50000000>; 36 + clock-output-names = "periph"; 37 + }; 38 + 39 + hsspi_osc: hsspi-osc { 40 + compatible = "fixed-clock"; 41 + #clock-cells = <0>; 42 + clock-frequency = <133333333>; 43 + clock-output-names = "hsspi_osc"; 36 44 }; 37 45 }; 38 46 39 47 aliases { 48 + nflash = &nflash; 40 49 serial0 = &uart0; 41 50 serial1 = &uart1; 51 + spi1 = &hsspi; 42 52 }; 43 53 44 54 cpu_intc: interrupt-controller { ··· 66 56 compatible = "simple-bus"; 67 57 ranges; 68 58 69 - clkctl: clock-controller@10000004 { 59 + periph_clk: clock-controller@10000004 { 70 60 compatible = "brcm,bcm6328-clocks"; 71 61 reg = <0x10000004 0x4>; 72 62 #clock-cells = <1>; ··· 90 80 interrupts = <2>, <3>; 91 81 }; 92 82 83 + wdt: watchdog@1000005c { 84 + compatible = "brcm,bcm7038-wdt"; 85 + reg = <0x1000005c 0xc>; 86 + 87 + clocks = <&periph_osc>; 88 + clock-names = "refclk"; 89 + 90 + timeout-sec = <30>; 91 + }; 92 + 93 + soft_reset: syscon@10000068 { 94 + compatible = "syscon"; 95 + reg = <0x10000068 0x4>; 96 + native-endian; 97 + 98 + reboot { 99 + compatible = "syscon-reboot"; 100 + offset = <0x0>; 101 + mask = <0x1>; 102 + }; 103 + }; 104 + 93 105 uart0: serial@10000100 { 94 106 compatible = "brcm,bcm6345-uart"; 95 107 reg = <0x10000100 0x18>; 108 + 96 109 interrupt-parent = <&periph_intc>; 97 110 interrupts = <28>; 98 - clocks = <&periph_clk>; 111 + 112 + clocks = <&periph_osc>; 99 113 clock-names = "refclk"; 114 + 100 115 status = "disabled"; 101 116 }; 102 117 103 118 uart1: serial@10000120 { 104 119 compatible = "brcm,bcm6345-uart"; 105 120 reg = <0x10000120 0x18>; 121 + 106 122 interrupt-parent = <&periph_intc>; 107 123 interrupts = <39>; 108 - clocks = <&periph_clk>; 124 + 125 + clocks = <&periph_osc>; 109 126 clock-names = "refclk"; 127 + 110 128 status = "disabled"; 111 129 }; 112 130 113 - timer: syscon@10000040 { 114 - compatible = "syscon"; 115 - reg = <0x10000040 0x2c>; 116 - native-endian; 117 - }; 131 + nflash: nand@10000200 { 132 + #address-cells = <1>; 133 + #size-cells = <0>; 134 + compatible = "brcm,nand-bcm6368", 135 + "brcm,brcmnand-v2.2", 136 + "brcm,brcmnand"; 137 + reg = <0x10000200 0x180>, 138 + <0x10000400 0x200>, 139 + <0x10000070 0x10>; 140 + reg-names = "nand", 141 + "nand-cache", 142 + "nand-int-base"; 118 143 119 - reboot: syscon-reboot@10000068 { 120 - compatible = "syscon-reboot"; 121 - regmap = <&timer>; 122 - offset = <0x28>; 123 - mask = <0x1>; 144 + interrupt-parent = <&periph_intc>; 145 + interrupts = <0>; 146 + 147 + status = "disabled"; 124 148 }; 125 149 126 150 leds0: led-controller@10000800 { ··· 162 118 #size-cells = <0>; 163 119 compatible = "brcm,bcm6328-leds"; 164 120 reg = <0x10000800 0x24>; 121 + 122 + status = "disabled"; 123 + }; 124 + 125 + hsspi: spi@10001000 { 126 + #address-cells = <1>; 127 + #size-cells = <0>; 128 + compatible = "brcm,bcm6328-hsspi"; 129 + reg = <0x10001000 0x600>; 130 + 131 + interrupt-parent = <&periph_intc>; 132 + interrupts = <29>; 133 + 134 + clocks = <&periph_clk BCM6328_CLK_HSSPI>, 135 + <&hsspi_osc>; 136 + clock-names = "hsspi", 137 + "pll"; 138 + 139 + resets = <&periph_rst BCM6328_RST_SPI>; 140 + reset-names = "hsspi"; 141 + 165 142 status = "disabled"; 166 143 }; 167 144 ··· 196 131 compatible = "brcm,bcm6328-ehci", "generic-ehci"; 197 132 reg = <0x10002500 0x100>; 198 133 big-endian; 134 + 199 135 interrupt-parent = <&periph_intc>; 200 136 interrupts = <42>; 137 + 138 + phys = <&usbh 0>; 139 + phy-names = "usb"; 140 + 201 141 status = "disabled"; 202 142 }; 203 143 ··· 211 141 reg = <0x10002600 0x100>; 212 142 big-endian; 213 143 no-big-frame-no; 144 + 214 145 interrupt-parent = <&periph_intc>; 215 146 interrupts = <41>; 147 + 148 + phys = <&usbh 0>; 149 + phy-names = "usb"; 150 + 151 + status = "disabled"; 152 + }; 153 + 154 + usbh: usb-phy@10002700 { 155 + compatible = "brcm,bcm6328-usbh-phy"; 156 + reg = <0x10002700 0x38>; 157 + #phy-cells = <1>; 158 + 159 + clocks = <&periph_clk BCM6328_CLK_USBH>; 160 + clock-names = "usbh"; 161 + 162 + power-domains = <&periph_pwr BCM6328_POWER_DOMAIN_USBH>; 163 + 164 + resets = <&periph_rst BCM6328_RST_USBH>; 165 + reset-names = "usbh"; 166 + 216 167 status = "disabled"; 217 168 }; 218 169 };