[LEDE-DEV] [PATCH] mvebu: add support for WRT32X (venom)

2018-05-13 Thread michael . gray
From: Michael Gray 

Linksys WRT32X (Venom) is identical in hardware to the WRT3200ACM
with a different flash layout and boots zImage rather than uImage.

Specification:
- Marvell Armada 385 88F6820 (2x 1.8GHz)
- 256MB of Flash
- 512MB of RAM
- 2.4GHz (bgn) and 5GHz (an+ac wave 2)
- 4x 1Gbps LAN + 1x 1Gbps WAN
- 1x USB 3.0 and 1x USB 2.0/eSATA (combo port)

Flash instruction:
Apply factory image via web-gui.

Signed-off-by: Michael Gray 
---
 target/linux/mvebu/base-files/etc/board.d/01_leds  |   6 +
 .../linux/mvebu/base-files/etc/board.d/02_network  |   1 +
 target/linux/mvebu/base-files/etc/diag.sh  |   3 +
 .../mvebu/base-files/etc/init.d/linksys_recovery   |   2 +-
 .../mvebu/base-files/etc/uci-defaults/03_wireless  |   2 +-
 target/linux/mvebu/base-files/lib/mvebu.sh |   3 +
 .../mvebu/base-files/lib/preinit/06_set_iface_mac  |   2 +-
 .../mvebu/base-files/lib/preinit/81_linksys_syscfg |   2 +-
 .../linux/mvebu/base-files/lib/upgrade/linksys.sh  |   2 +-
 .../linux/mvebu/base-files/lib/upgrade/platform.sh |   4 +-
 .../arch/arm/boot/dts/armada-385-linksys-venom.dts | 201 +
 target/linux/mvebu/image/cortex-a9.mk  |  10 +
 .../mvebu/patches-4.14/105-build_new_dtbs.patch|  10 +
 13 files changed, 241 insertions(+), 7 deletions(-)
 create mode 100644 
target/linux/mvebu/files-4.14/arch/arm/boot/dts/armada-385-linksys-venom.dts
 create mode 100644 target/linux/mvebu/patches-4.14/105-build_new_dtbs.patch

diff --git a/target/linux/mvebu/base-files/etc/board.d/01_leds 
b/target/linux/mvebu/base-files/etc/board.d/01_leds
index 84519907af..ff8d4a21c0 100755
--- a/target/linux/mvebu/base-files/etc/board.d/01_leds
+++ b/target/linux/mvebu/base-files/etc/board.d/01_leds
@@ -35,6 +35,12 @@ armada-385-linksys-shelby)
ucidef_set_led_usbport "usb2" "USB 2" "pca963x:shelby:white:usb3_1" 
"usb2-port1" "usb3-port1"
ucidef_set_led_usbport "usb2_ss" "USB 2 SS" 
"pca963x:shelby:white:usb3_2" "usb3-port1"
;;
+armada-385-linksys-venom)
+   ucidef_set_led_netdev "wan" "WAN" "pca963x:venom:blue:wan" "eth1"
+   ucidef_set_led_usbport "usb1" "USB 1" "pca963x:venom:blue:usb2" 
"usb1-port1"
+   ucidef_set_led_usbport "usb2" "USB 2" "pca963x:venom:blue:usb3_1" 
"usb2-port1" "usb3-port1"
+   ucidef_set_led_usbport "usb2_ss" "USB 2 SS" "pca963x:venom:blue:usb3_2" 
"usb3-port1"
+   ;;
 armada-xp-linksys-mamba)
ucidef_set_led_netdev "wan" "WAN" "mamba:white:wan" "eth1"
ucidef_set_led_usbport "usb1" "USB 1" "mamba:white:usb2" "usb1-port1"
diff --git a/target/linux/mvebu/base-files/etc/board.d/02_network 
b/target/linux/mvebu/base-files/etc/board.d/02_network
index 8e57e8e1ce..66d35dda70 100755
--- a/target/linux/mvebu/base-files/etc/board.d/02_network
+++ b/target/linux/mvebu/base-files/etc/board.d/02_network
@@ -18,6 +18,7 @@ armada-385-linksys-caiman|\
 armada-385-linksys-cobra|\
 armada-385-linksys-rango|\
 armada-385-linksys-shelby|\
+armada-385-linksys-venom|\
 armada-xp-linksys-mamba)
ucidef_set_interfaces_lan_wan "eth0.1" "eth1.2"
ucidef_add_switch "switch0" \
diff --git a/target/linux/mvebu/base-files/etc/diag.sh 
b/target/linux/mvebu/base-files/etc/diag.sh
index 4a3f54ed2c..327a82df93 100644
--- a/target/linux/mvebu/base-files/etc/diag.sh
+++ b/target/linux/mvebu/base-files/etc/diag.sh
@@ -19,6 +19,9 @@ get_status_led() {
armada-385-linksys-shelby)
status_led="shelby:white:power"
;;
+   armada-385-linksys-venom)
+   status_led="venom:blue:power"
+   ;;
armada-xp-linksys-mamba)
status_led="mamba:white:power"
;;
diff --git a/target/linux/mvebu/base-files/etc/init.d/linksys_recovery 
b/target/linux/mvebu/base-files/etc/init.d/linksys_recovery
index c1532ac2c1..520b8aac54 100755
--- a/target/linux/mvebu/base-files/etc/init.d/linksys_recovery
+++ b/target/linux/mvebu/base-files/etc/init.d/linksys_recovery
@@ -7,7 +7,7 @@ boot() {
 . /lib/functions.sh
 
 case $(board_name) in
-   
armada-385-linksys-caiman|armada-385-linksys-cobra|armada-385-linksys-rango|armada-385-linksys-shelby|armada-xp-linksys-mamba)
+   
armada-385-linksys-caiman|armada-385-linksys-cobra|armada-385-linksys-rango|armada-385-linksys-shelby|armada-385-linksys-venom|armada-xp-linksys-mamba)
# make sure auto_recovery in uboot is always on
AUTO_RECOVERY_ENA="`fw_printenv -n auto_recovery`"
if [ "$AUTO_RECOVERY_ENA" != "yes" ] ; then
diff --git a/target/linu

Re: [LEDE-DEV] [PATCH] mvebu: add support for WRT32X (venom)

2018-05-13 Thread Michael Gray
>> +partition@0 {
>> +label = "u-boot";
>> +reg = <0x000 0x20>;  /* 2MB */
>> +/* read-only; */
>> +};
>> +
>
>Why is the u-boot partition writable?
>
>
>Bjørn

Thanks, I will fix in V2. I will wait additional time to receive additional
feedback
and comments. I will also include missing ubootenv changes from V1.

___
Lede-dev mailing list
Lede-dev@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/lede-dev


[LEDE-DEV] [PATCH v2] mvebu: add support for WRT32X (venom)

2018-05-13 Thread michael . gray
From: Michael Gray 

Linksys WRT32X (Venom) is identical in hardware to the WRT3200ACM
with a different flash layout and boots zImage rather than uImage.

Specification:
- Marvell Armada 385 88F6820 (2x 1.8GHz)
- 256MB of Flash
- 512MB of RAM
- 2.4GHz (bgn) and 5GHz (an+ac wave 2)
- 4x 1Gbps LAN + 1x 1Gbps WAN
- 1x USB 3.0 and 1x USB 2.0/eSATA (combo port)

Flash instruction:
Apply factory image via web-gui.

Signed-off-by: Michael Gray 
---

changes since v1:
- Change uboot partition to read-only
- Add ubootenv for venom
---
 package/boot/uboot-envtools/files/mvebu|   3 +-
 target/linux/mvebu/base-files/etc/board.d/01_leds  |   6 +
 .../linux/mvebu/base-files/etc/board.d/02_network  |   1 +
 target/linux/mvebu/base-files/etc/diag.sh  |   3 +
 .../mvebu/base-files/etc/init.d/linksys_recovery   |   2 +-
 .../mvebu/base-files/etc/uci-defaults/03_wireless  |   2 +-
 target/linux/mvebu/base-files/lib/mvebu.sh |   3 +
 .../mvebu/base-files/lib/preinit/06_set_iface_mac  |   2 +-
 .../mvebu/base-files/lib/preinit/81_linksys_syscfg |   2 +-
 .../linux/mvebu/base-files/lib/upgrade/linksys.sh  |   2 +-
 .../linux/mvebu/base-files/lib/upgrade/platform.sh |   4 +-
 .../arch/arm/boot/dts/armada-385-linksys-venom.dts | 201 +
 target/linux/mvebu/image/cortex-a9.mk  |  10 +
 .../mvebu/patches-4.14/105-build_new_dtbs.patch|  10 +
 14 files changed, 243 insertions(+), 8 deletions(-)
 create mode 100644 
target/linux/mvebu/files-4.14/arch/arm/boot/dts/armada-385-linksys-venom.dts
 create mode 100644 target/linux/mvebu/patches-4.14/105-build_new_dtbs.patch

diff --git a/package/boot/uboot-envtools/files/mvebu 
b/package/boot/uboot-envtools/files/mvebu
index ea9f136a43..7d16a59666 100644
--- a/package/boot/uboot-envtools/files/mvebu
+++ b/package/boot/uboot-envtools/files/mvebu
@@ -19,7 +19,8 @@ armada-385-linksys-cobra|\
 armada-385-linksys-shelby)
ubootenv_add_uci_config "/dev/mtd1" "0x0" "0x2" "0x4"
;;
-armada-385-linksys-rango)
+armada-385-linksys-rango|\
+armada-385-linksys-venom)
ubootenv_add_uci_config "/dev/mtd1" "0x0" "0x2" "0x2"
;;
 armada-385-turris-omnia)
diff --git a/target/linux/mvebu/base-files/etc/board.d/01_leds 
b/target/linux/mvebu/base-files/etc/board.d/01_leds
index 84519907af..ff8d4a21c0 100755
--- a/target/linux/mvebu/base-files/etc/board.d/01_leds
+++ b/target/linux/mvebu/base-files/etc/board.d/01_leds
@@ -35,6 +35,12 @@ armada-385-linksys-shelby)
ucidef_set_led_usbport "usb2" "USB 2" "pca963x:shelby:white:usb3_1" 
"usb2-port1" "usb3-port1"
ucidef_set_led_usbport "usb2_ss" "USB 2 SS" 
"pca963x:shelby:white:usb3_2" "usb3-port1"
;;
+armada-385-linksys-venom)
+   ucidef_set_led_netdev "wan" "WAN" "pca963x:venom:blue:wan" "eth1"
+   ucidef_set_led_usbport "usb1" "USB 1" "pca963x:venom:blue:usb2" 
"usb1-port1"
+   ucidef_set_led_usbport "usb2" "USB 2" "pca963x:venom:blue:usb3_1" 
"usb2-port1" "usb3-port1"
+   ucidef_set_led_usbport "usb2_ss" "USB 2 SS" "pca963x:venom:blue:usb3_2" 
"usb3-port1"
+   ;;
 armada-xp-linksys-mamba)
ucidef_set_led_netdev "wan" "WAN" "mamba:white:wan" "eth1"
ucidef_set_led_usbport "usb1" "USB 1" "mamba:white:usb2" "usb1-port1"
diff --git a/target/linux/mvebu/base-files/etc/board.d/02_network 
b/target/linux/mvebu/base-files/etc/board.d/02_network
index 8e57e8e1ce..66d35dda70 100755
--- a/target/linux/mvebu/base-files/etc/board.d/02_network
+++ b/target/linux/mvebu/base-files/etc/board.d/02_network
@@ -18,6 +18,7 @@ armada-385-linksys-caiman|\
 armada-385-linksys-cobra|\
 armada-385-linksys-rango|\
 armada-385-linksys-shelby|\
+armada-385-linksys-venom|\
 armada-xp-linksys-mamba)
ucidef_set_interfaces_lan_wan "eth0.1" "eth1.2"
ucidef_add_switch "switch0" \
diff --git a/target/linux/mvebu/base-files/etc/diag.sh 
b/target/linux/mvebu/base-files/etc/diag.sh
index 4a3f54ed2c..327a82df93 100644
--- a/target/linux/mvebu/base-files/etc/diag.sh
+++ b/target/linux/mvebu/base-files/etc/diag.sh
@@ -19,6 +19,9 @@ get_status_led() {
armada-385-linksys-shelby)
status_led="shelby:white:power"
;;
+   armada-385-linksys-venom)
+   status_led="venom:blue:power"
+   ;;
armada-xp-linksys-mamba)
status_led="mamba:white:power"
;;
diff --git a/target/linux/mvebu/base-files/etc/init.d/linksys_recovery 
b/target/linux/mvebu/base-files/etc/init.d