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

MIPS: BMIPS: Add device tree example for BCM6362

This adds a device tree example for SFR NeufBox 6.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Cc: f.fainelli@gmail.com
Cc: jogo@openwrt.org
Cc: cernekee@gmail.com
Cc: robh@kernel.org
Cc: simon@fire.lp0.eu
Cc: john@phrozen.org
Cc: linux-mips@linux-mips.org
Cc: linux-kernel@vger.kernel.org
Cc: devicetree@vger.kernel.org
Patchwork: https://patchwork.linux-mips.org/patch/13844/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

authored by

Álvaro Fernández Rojas and committed by
Ralf Baechle
ef0c592a 8e385a66

+162
+4
arch/mips/bmips/Kconfig
··· 73 73 bool "SFR Neufbox 4 (Sercomm)" 74 74 select BUILTIN_DTB 75 75 76 + config DT_SFR_NEUFBOX6_SERCOMM 77 + bool "SFR Neufbox 6 (Sercomm)" 78 + select BUILTIN_DTB 79 + 76 80 endchoice 77 81 78 82 endif
+2
arch/mips/boot/dts/brcm/Makefile
··· 13 13 dtb-$(CONFIG_DT_COMTREND_VR3032U) += bcm63268-comtrend-vr-3032u.dtb 14 14 dtb-$(CONFIG_DT_NETGEAR_CVG834G) += bcm3368-netgear-cvg834g.dtb 15 15 dtb-$(CONFIG_DT_SFR_NEUFBOX4_SERCOMM) += bcm6358-neufbox4-sercomm.dtb 16 + dtb-$(CONFIG_DT_SFR_NEUFBOX6_SERCOMM) += bcm6362-neufbox6-sercomm.dtb 16 17 17 18 dtb-$(CONFIG_DT_NONE) += \ 18 19 bcm3368-netgear-cvg834g.dtb \ 19 20 bcm6358-neufbox4-sercomm.dtb \ 21 + bcm6362-neufbox6-sercomm.dtb \ 20 22 bcm63268-comtrend-vr-3032u.dtb \ 21 23 bcm93384wvg.dtb \ 22 24 bcm93384wvg_viper.dtb \
+22
arch/mips/boot/dts/brcm/bcm6362-neufbox6-sercomm.dts
··· 1 + /dts-v1/; 2 + 3 + /include/ "bcm6362.dtsi" 4 + 5 + / { 6 + compatible = "sfr,nb6-ser", "brcm,bcm6362"; 7 + model = "SFR NeufBox 6 (Sercomm)"; 8 + 9 + memory@0 { 10 + device_type = "memory"; 11 + reg = <0x00000000 0x08000000>; 12 + }; 13 + 14 + chosen { 15 + bootargs = "console=ttyS0,115200"; 16 + stdout-path = &uart0; 17 + }; 18 + }; 19 + 20 + &uart0 { 21 + status = "okay"; 22 + };
+134
arch/mips/boot/dts/brcm/bcm6362.dtsi
··· 1 + / { 2 + #address-cells = <1>; 3 + #size-cells = <1>; 4 + compatible = "brcm,bcm6362"; 5 + 6 + cpus { 7 + #address-cells = <1>; 8 + #size-cells = <0>; 9 + 10 + mips-hpt-frequency = <200000000>; 11 + 12 + cpu@0 { 13 + compatible = "brcm,bmips4350"; 14 + device_type = "cpu"; 15 + reg = <0>; 16 + }; 17 + 18 + cpu@1 { 19 + compatible = "brcm,bmips4350"; 20 + device_type = "cpu"; 21 + reg = <1>; 22 + }; 23 + }; 24 + 25 + clocks { 26 + periph_clk: periph-clk { 27 + compatible = "fixed-clock"; 28 + #clock-cells = <0>; 29 + clock-frequency = <50000000>; 30 + }; 31 + }; 32 + 33 + aliases { 34 + serial0 = &uart0; 35 + serial1 = &uart1; 36 + }; 37 + 38 + cpu_intc: interrupt-controller { 39 + #address-cells = <0>; 40 + compatible = "mti,cpu-interrupt-controller"; 41 + 42 + interrupt-controller; 43 + #interrupt-cells = <1>; 44 + }; 45 + 46 + ubus { 47 + #address-cells = <1>; 48 + #size-cells = <1>; 49 + 50 + compatible = "simple-bus"; 51 + ranges; 52 + 53 + periph_cntl: syscon@10000000 { 54 + compatible = "syscon"; 55 + reg = <0x10000000 0x14>; 56 + native-endian; 57 + }; 58 + 59 + reboot: syscon-reboot@10000008 { 60 + compatible = "syscon-reboot"; 61 + regmap = <&periph_cntl>; 62 + offset = <0x8>; 63 + mask = <0x1>; 64 + }; 65 + 66 + periph_intc: interrupt-controller@10000020 { 67 + compatible = "brcm,bcm6345-l1-intc"; 68 + reg = <0x10000020 0x10>, 69 + <0x10000030 0x10>; 70 + 71 + interrupt-controller; 72 + #interrupt-cells = <1>; 73 + 74 + interrupt-parent = <&cpu_intc>; 75 + interrupts = <2>, <3>; 76 + }; 77 + 78 + uart0: serial@10000100 { 79 + compatible = "brcm,bcm6345-uart"; 80 + reg = <0x10000100 0x18>; 81 + 82 + interrupt-parent = <&periph_intc>; 83 + interrupts = <3>; 84 + 85 + clocks = <&periph_clk>; 86 + 87 + status = "disabled"; 88 + }; 89 + 90 + uart1: serial@10000120 { 91 + compatible = "brcm,bcm6345-uart"; 92 + reg = <0x10000120 0x18>; 93 + 94 + interrupt-parent = <&periph_intc>; 95 + interrupts = <4>; 96 + 97 + clocks = <&periph_clk>; 98 + 99 + status = "disabled"; 100 + }; 101 + 102 + leds0: led-controller@10001900 { 103 + #address-cells = <1>; 104 + #size-cells = <0>; 105 + compatible = "brcm,bcm6328-leds"; 106 + reg = <0x10001900 0x24>; 107 + 108 + status = "disabled"; 109 + }; 110 + 111 + ehci: usb@10002500 { 112 + compatible = "brcm,bcm6362-ehci", "generic-ehci"; 113 + reg = <0x10002500 0x100>; 114 + big-endian; 115 + 116 + interrupt-parent = <&periph_intc>; 117 + interrupts = <10>; 118 + 119 + status = "disabled"; 120 + }; 121 + 122 + ohci: usb@10002600 { 123 + compatible = "brcm,bcm6362-ohci", "generic-ohci"; 124 + reg = <0x10002600 0x100>; 125 + big-endian; 126 + no-big-frame-no; 127 + 128 + interrupt-parent = <&periph_intc>; 129 + interrupts = <9>; 130 + 131 + status = "disabled"; 132 + }; 133 + }; 134 + };