[OpenWrt-Devel] [PATCH v2 2/2] brcm63xx: add Comtrend VR-3032u support
Álvaro Fernández Rojas
noltari at gmail.com
Mon Mar 16 12:05:11 EDT 2015
- Avoid bin image generation (only initramfs)
- NAND/WiFi not working
Signed-off-by: Álvaro Fernández Rojas <noltari at gmail.com>
---
target/linux/brcm63xx/base-files/etc/diag.sh | 3 +
.../base-files/etc/uci-defaults/02_network | 3 +-
target/linux/brcm63xx/base-files/lib/brcm63xx.sh | 3 +
target/linux/brcm63xx/dts/vr-3032u.dts | 142 +++++++++++++++++++++
target/linux/brcm63xx/image/Makefile | 6 +
.../brcm63xx/patches-3.18/569-board_VR-3032u.patch | 65 ++++++++++
target/linux/brcm63xx/profiles/comtrend.mk | 9 ++
7 files changed, 230 insertions(+), 1 deletion(-)
create mode 100644 target/linux/brcm63xx/dts/vr-3032u.dts
create mode 100644 target/linux/brcm63xx/patches-3.18/569-board_VR-3032u.patch
diff --git a/target/linux/brcm63xx/base-files/etc/diag.sh b/target/linux/brcm63xx/base-files/etc/diag.sh
index 928c02b..3d6531a 100644
--- a/target/linux/brcm63xx/base-files/etc/diag.sh
+++ b/target/linux/brcm63xx/base-files/etc/diag.sh
@@ -39,6 +39,9 @@ set_state() {
vr-3025u)
status_led="VR-3025u:green:power"
;;
+ vr-3032u)
+ status_led="VR-3032u:green:power"
+ ;;
wap-5813n)
status_led="WAP-5813n:green:power"
;;
diff --git a/target/linux/brcm63xx/base-files/etc/uci-defaults/02_network b/target/linux/brcm63xx/base-files/etc/uci-defaults/02_network
index df4e293..f320d4d 100644
--- a/target/linux/brcm63xx/base-files/etc/uci-defaults/02_network
+++ b/target/linux/brcm63xx/base-files/etc/uci-defaults/02_network
@@ -93,7 +93,8 @@ fast2504n |\
fast2704v2 |\
p870hw-51a_v2 |\
vr-3025un |\
-vr-3025u)
+vr-3025u |\
+vr-3032u)
ucidef_set_interface_lan "eth0.1"
ucidef_add_switch "eth0" "1" "1"
ucidef_add_switch_vlan "eth0" "1" "0 1 2 3 8t"
diff --git a/target/linux/brcm63xx/base-files/lib/brcm63xx.sh b/target/linux/brcm63xx/base-files/lib/brcm63xx.sh
index 2c18762..b64cb9e 100755
--- a/target/linux/brcm63xx/base-files/lib/brcm63xx.sh
+++ b/target/linux/brcm63xx/base-files/lib/brcm63xx.sh
@@ -84,6 +84,9 @@ brcm63xx_dt_detect() {
"Comtrend VR-3025un")
board_name="vr-3025un"
;;
+ "Comtrend VR-3032u")
+ board_name="vr-3032u"
+ ;;
"Comtrend WAP-5813n")
board_name="wap-5813n"
;;
diff --git a/target/linux/brcm63xx/dts/vr-3032u.dts b/target/linux/brcm63xx/dts/vr-3032u.dts
new file mode 100644
index 0000000..0d56394
--- /dev/null
+++ b/target/linux/brcm63xx/dts/vr-3032u.dts
@@ -0,0 +1,142 @@
+/dts-v1/;
+
+/include/ "bcm63268.dtsi"
+
+/ {
+ model = "Comtrend VR-3032u";
+ compatible = "comtrend,vr-3032u", "brcm,bcm63268";
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ debounce-interval = <60>;
+
+ reset {
+ label = "reset";
+ gpios = <&gpio1 0 1>;
+ linux,code = <0x198>;
+ };
+ wps {
+ label = "wps";
+ gpios = <&gpio1 1 1>;
+ linux,code = <0x211>;
+ };
+ };
+};
+
+&leds0 {
+ status = "ok";
+ brcm,serial-leds;
+
+ hw_gphy_spd0 {
+ compatible = "bcm6328-hw-led";
+ reg = <0>;
+ act-low = <16>;
+ label = "gphy-spd0";
+ };
+ hw_gphy_spd1 {
+ compatible = "bcm6328-hw-led";
+ reg = <1>;
+ act-low = <20>;
+ label = "gphy-spd1";
+ };
+ hw_ephy0_act {
+ compatible = "bcm6328-hw-led";
+ reg = <9>;
+ label = "ephy0-act";
+ };
+ hw_ephy1_act {
+ compatible = "bcm6328-hw-led";
+ reg = <10>;
+ label = "ephy1-act";
+ };
+ hw_ephy2_act {
+ compatible = "bcm6328-hw-led";
+ reg = <11>;
+ label = "ephy2-act";
+ };
+ hw_gphy0_act {
+ compatible = "bcm6328-hw-led";
+ reg = <12>;
+ label = "gphy0-act";
+ };
+ hw_ephy0_spd {
+ compatible = "bcm6328-hw-led";
+ reg = <13>;
+ label = "ephy0-spd";
+ };
+ hw_ephy1_spd {
+ compatible = "bcm6328-hw-led";
+ reg = <14>;
+ label = "ephy1-spd";
+ };
+ hw_ephy2_spd {
+ compatible = "bcm6328-hw-led";
+ reg = <15>;
+ label = "ephy2-spd";
+ };
+
+ inet_red {
+ compatible = "bcm6328-led";
+ reg = <2>;
+ active-low;
+ label = "VR-3032u:red:inet";
+ };
+ dsl_green {
+ compatible = "bcm6328-led";
+ reg = <3>;
+ active-low;
+ label = "VR-3032u:green:dsl";
+ };
+ usb_green {
+ compatible = "bcm6328-led";
+ reg = <4>;
+ active-low;
+ label = "VR-3032u:green:usb";
+ };
+ wps_green {
+ compatible = "bcm6328-led";
+ reg = <7>;
+ active-low;
+ label = "VR-3032u:green:wps";
+ };
+ inet_green {
+ compatible = "bcm6328-led";
+ reg = <8>;
+ active-low;
+ label = "VR-3032u:green:inet";
+ };
+ lan2_green {
+ compatible = "bcm6328-led";
+ reg = <9>;
+ active-low;
+ label = "VR-3032u:green:lan2";
+ };
+ lan3_green {
+ compatible = "bcm6328-led";
+ reg = <10>;
+ active-low;
+ label = "VR-3032u:green:lan3";
+ };
+ lan4_green {
+ compatible = "bcm6328-led";
+ reg = <11>;
+ active-low;
+ label = "VR-3032u:green:lan4";
+ };
+ lan1_green {
+ compatible = "bcm6328-led";
+ reg = <12>;
+ active-low;
+ label = "VR-3032u:green:lan1";
+ };
+ power_green {
+ compatible = "bcm6328-led";
+ reg = <20>;
+ active-low;
+ label = "VR-3032u:green:power";
+ default-state = "on";
+ };
+};
diff --git a/target/linux/brcm63xx/image/Makefile b/target/linux/brcm63xx/image/Makefile
index 3fb9b1c..afa2ec7 100755
--- a/target/linux/brcm63xx/image/Makefile
+++ b/target/linux/brcm63xx/image/Makefile
@@ -59,6 +59,10 @@ define Image/Build/CFEDTB
--info2 $(1) $(6)
endef
+define Image/Build/NANDCFEDTB
+ # NAND images not supported, only initramfs
+endef
+
define Image/Build/OLDCFEDTB
# Generate the tagged image
$(TOPDIR)/scripts/brcmImage.pl -t -p \
@@ -274,6 +278,8 @@ $(eval $(call ImageDTB,CFEDTB,CT6373,CT-6373,ct-6373,CT6373-1,6358))
$(eval $(call ImageDTB,CFEDTB,VR3025u,VR-3025u,vr-3025u,96368M-1541N,6368,--pad 16 --image-offset 0x20000 --block-size 0x20000))
# Comtrend VR-3025un
$(eval $(call ImageDTB,CFEDTB,VR3025un,VR-3025un,vr-3025un,96368M-1341N,6368,--pad 4))
+# Comtrend VR-3032u
+$(eval $(call ImageDTB,NANDCFEDTB,VR3032u,VR-3032u,vr-3032u,963168M-1841N1,63268))
# Comtrend WAP-5813n
$(eval $(call ImageDTB,CFEDTB,WAP5813n,WAP-5813n,wap-5813n,96369R-1231N,6368,--pad 4))
# D-Link DSL-2640B, rev B2
diff --git a/target/linux/brcm63xx/patches-3.18/569-board_VR-3032u.patch b/target/linux/brcm63xx/patches-3.18/569-board_VR-3032u.patch
new file mode 100644
index 0000000..9529921
--- /dev/null
+++ b/target/linux/brcm63xx/patches-3.18/569-board_VR-3032u.patch
@@ -0,0 +1,65 @@
+--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
++++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
+@@ -2578,6 +2578,46 @@ static struct board_info __initdata boar
+ },
+ };
+
++static struct board_info __initdata board_VR3032u = {
++ .name = "963168M-1841N1",
++ .expected_cpu_id = 0x63268,
++
++ .has_uart0 = 1,
++
++ .has_ehci0 = 1,
++ .has_ohci0 = 1,
++ .num_usbh_ports = 1,
++
++ .has_enetsw = 1,
++ .enetsw = {
++ .used_ports = {
++ [0] = {
++ .used = 1,
++ .phy_id = 1,
++ .name = "LAN2",
++ },
++
++ [1] = {
++ .used = 1,
++ .phy_id = 2,
++ .name = "LAN3",
++ },
++
++ [2] = {
++ .used = 1,
++ .phy_id = 3,
++ .name = "LAN4",
++ },
++
++ [3] = {
++ .used = 1,
++ .phy_id = 4,
++ .name = "LAN1",
++ },
++ },
++ },
++};
++
+ static struct board_info __initdata board_vw6339gu = {
+ .name = "VW6339GU",
+ .expected_cpu_id = 0x63268,
+@@ -2774,6 +2814,7 @@ static const struct board_info __initcon
+ #ifdef CONFIG_BCM63XX_CPU_63268
+ &board_963268bu_p300,
+ &board_963269bhr,
++ &board_VR3032u,
+ &board_vw6339gu,
+ #endif
+ };
+@@ -2861,6 +2902,7 @@ static struct of_device_id const bcm963x
+ #endif
+ #ifdef CONFIG_BCM63XX_CPU_63268
+ { .compatible = "brcm,bcm963268bu_p300", .data = &board_963268bu_p300, },
++ { .compatible = "comtrend,vr-3032u", .data = &board_VR3032u, },
+ #endif
+ #endif /* CONFIG_OF */
+ { },
diff --git a/target/linux/brcm63xx/profiles/comtrend.mk b/target/linux/brcm63xx/profiles/comtrend.mk
index 8c1b862..4145899 100644
--- a/target/linux/brcm63xx/profiles/comtrend.mk
+++ b/target/linux/brcm63xx/profiles/comtrend.mk
@@ -73,6 +73,15 @@ define Profile/VR3025un/Description
endef
$(eval $(call Profile,VR3025un))
+define Profile/VR3032u
+ NAME:=Comtrend VR-3032u
+ PACKAGES:=kmod-usb2 kmod-usb-ohci
+endef
+define Profile/VR3032u/Description
+ Package set optimized for VR-3032u.
+endef
+$(eval $(call Profile,VR3032u))
+
define Profile/WAP5813n
NAME:=Comtrend WAP-5813n
PACKAGES:=kmod-b43 wpad-mini \
--
1.9.1
_______________________________________________
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
More information about the openwrt-devel
mailing list