Dlink dir-615-e1 can use dir-600-a1's image, but the factory
firmware's partition of dir-615-e1 is not equal to dir-600-a1's
openwrt image, and also dir-600-a1's image can't be uploaded through
dlink's normal firmware update web page(by changing the last bytes of
dir-600-a1's image, it can be uploaded through dlink's failsafe mode
uboot web page, but it's not compatible with modern browsers, see
[1]).

Add profile to dir-615-e1 so the generated image's partition is equal
to factory firmware's(by calling CameoAP99 in SingleProfile), and so
the image can be uploaded through the normal firmware update web
page(surely it also can be uploaded through dlink's failsafe mode
uboot web page :-) ).

This address ticket #8680.

[1]: http://wiki.openwrt.org/toh/d-link/dir-615#browser.issues

Signed-off-by: Zhao, Gang <gamer...@gmail.com>
---
 target/linux/ar71xx/base-files/etc/diag.sh                     |  1 +
 target/linux/ar71xx/base-files/etc/uci-defaults/01_leds        |  1 +
 target/linux/ar71xx/base-files/etc/uci-defaults/02_network     |  1 +
 .../base-files/etc/uci-defaults/03_network-switchX-migration   |  1 +
 target/linux/ar71xx/base-files/lib/ar71xx.sh                   |  3 +++
 target/linux/ar71xx/base-files/lib/upgrade/platform.sh         |  1 +
 target/linux/ar71xx/files/arch/mips/ath79/mach-dir-600-a1.c    |  8 ++++++++
 target/linux/ar71xx/generic/profiles/d-link.mk                 | 10 ++++++++++
 target/linux/ar71xx/image/Makefile                             |  1 +
 .../ar71xx/patches-3.10/610-MIPS-ath79-openwrt-machines.patch  |  3 ++-
 10 files changed, 29 insertions(+), 1 deletion(-)

diff --git a/target/linux/ar71xx/base-files/etc/diag.sh 
b/target/linux/ar71xx/base-files/etc/diag.sh
index 7647039..5c7ab6c 100755
--- a/target/linux/ar71xx/base-files/etc/diag.sh
+++ b/target/linux/ar71xx/base-files/etc/diag.sh
@@ -48,6 +48,7 @@ get_status_led() {
                ;;
        dir-505-a1 |\
        dir-600-a1 |\
+       dir-615-e1 |\
        dir-615-e4)
                status_led="d-link:green:power"
                ;;
diff --git a/target/linux/ar71xx/base-files/etc/uci-defaults/01_leds 
b/target/linux/ar71xx/base-files/etc/uci-defaults/01_leds
index db60cee..36e5c2c 100755
--- a/target/linux/ar71xx/base-files/etc/uci-defaults/01_leds
+++ b/target/linux/ar71xx/base-files/etc/uci-defaults/01_leds
@@ -85,6 +85,7 @@ dir-505-a1)
        ;;
 
 dir-600-a1|\
+dir-615-e1|\
 dir-615-e4)
        ucidef_set_led_netdev "wan" "WAN" "d-link:green:wan" "eth1"
        ucidef_set_led_switch "lan1" "LAN1" "d-link:green:lan1" "switch0" "0x02"
diff --git a/target/linux/ar71xx/base-files/etc/uci-defaults/02_network 
b/target/linux/ar71xx/base-files/etc/uci-defaults/02_network
index 62373e4..e8268ca 100755
--- a/target/linux/ar71xx/base-files/etc/uci-defaults/02_network
+++ b/target/linux/ar71xx/base-files/etc/uci-defaults/02_network
@@ -287,6 +287,7 @@ ap96 |\
 airrouter |\
 dir-600-a1 |\
 dir-615-c1 |\
+dir-615-e1 |\
 dir-615-e4 |\
 ja76pf |\
 mynet-n600 |\
diff --git 
a/target/linux/ar71xx/base-files/etc/uci-defaults/03_network-switchX-migration 
b/target/linux/ar71xx/base-files/etc/uci-defaults/03_network-switchX-migration
index 718a924..093fbc1 100755
--- 
a/target/linux/ar71xx/base-files/etc/uci-defaults/03_network-switchX-migration
+++ 
b/target/linux/ar71xx/base-files/etc/uci-defaults/03_network-switchX-migration
@@ -58,6 +58,7 @@ ap96|\
 airrouter|\
 dir-600-a1|\
 dir-615-c1|\
+dir-615-e1|\
 dir-615-e4|\
 ja76pf|\
 rb-750|\
diff --git a/target/linux/ar71xx/base-files/lib/ar71xx.sh 
b/target/linux/ar71xx/base-files/lib/ar71xx.sh
index 02c46f9..f8e6234 100755
--- a/target/linux/ar71xx/base-files/lib/ar71xx.sh
+++ b/target/linux/ar71xx/base-files/lib/ar71xx.sh
@@ -280,6 +280,9 @@ ar71xx_board_detect() {
        *"DIR-600 rev. A1")
                name="dir-600-a1"
                ;;
+       *"DIR-615 rev. E1")
+               name="dir-615-e1"
+               ;;
        *"DIR-615 rev. E4")
                name="dir-615-e4"
                ;;
diff --git a/target/linux/ar71xx/base-files/lib/upgrade/platform.sh 
b/target/linux/ar71xx/base-files/lib/upgrade/platform.sh
index 37ceea6..2240e9c 100755
--- a/target/linux/ar71xx/base-files/lib/upgrade/platform.sh
+++ b/target/linux/ar71xx/base-files/lib/upgrade/platform.sh
@@ -146,6 +146,7 @@ platform_check_image() {
        dir-505-a1 | \
        dir-600-a1 | \
        dir-615-c1 | \
+       dir-615-e1 | \
        dir-615-e4 | \
        dir-825-c1 | \
        dir-835-a1 | \
diff --git a/target/linux/ar71xx/files/arch/mips/ath79/mach-dir-600-a1.c 
b/target/linux/ar71xx/files/arch/mips/ath79/mach-dir-600-a1.c
index c0fa900..321fdce 100644
--- a/target/linux/ar71xx/files/arch/mips/ath79/mach-dir-600-a1.c
+++ b/target/linux/ar71xx/files/arch/mips/ath79/mach-dir-600-a1.c
@@ -141,6 +141,14 @@ static void __init dir_600_a1_setup(void)
 MIPS_MACHINE(ATH79_MACH_DIR_600_A1, "DIR-600-A1", "D-Link DIR-600 rev. A1",
             dir_600_a1_setup);
 
+static void __init dir_615_e1_setup(void)
+{
+       dir_600_a1_setup();
+}
+
+MIPS_MACHINE(ATH79_MACH_DIR_615_E1, "DIR-615-E1", "D-Link DIR-615 rev. E1",
+            dir_615_e1_setup);
+
 static void __init dir_615_e4_setup(void)
 {
        dir_600_a1_setup();
diff --git a/target/linux/ar71xx/generic/profiles/d-link.mk 
b/target/linux/ar71xx/generic/profiles/d-link.mk
index c9724c2..eb721c3 100644
--- a/target/linux/ar71xx/generic/profiles/d-link.mk
+++ b/target/linux/ar71xx/generic/profiles/d-link.mk
@@ -60,6 +60,16 @@ endef
 
 $(eval $(call Profile,DIR615C1))
 
+define Profile/DIR615E1
+       NAME:=D-Link DIR-615 rev. E1
+       PACKAGES:=
+endef
+
+define Profile/DIR615E1/Description
+       Package set optimized for the D-Link DIR-615 rev. E1.
+endef
+
+$(eval $(call Profile,DIR615E1))
 
 define Profile/DIR615E4
        NAME:=D-Link DIR-615 rev. E4
diff --git a/target/linux/ar71xx/image/Makefile 
b/target/linux/ar71xx/image/Makefile
index 8234f88..8da2095 100644
--- a/target/linux/ar71xx/image/Makefile
+++ b/target/linux/ar71xx/image/Makefile
@@ -1025,6 +1025,7 @@ $(eval $(call 
SingleProfile,CameoAP91,64kraw,DIR600A1,dir-600-a1,DIR-600-A1,ttyS
 $(eval $(call 
SingleProfile,CameoAP91,64kraw,DIR601A1,dir-601-a1,DIR-600-A1,ttyS0,115200,"AP91-AR7240-RT-090223-02"))
 $(eval $(call 
SingleProfile,CameoAP91,64kraw,FR54RTR,fr-54rtr,DIR-600-A1,ttyS0,115200,"AP91-AR7240-RT-090223-01"))
 
+$(eval $(call 
SingleProfile,CameoAP99,64kraw,DIR615E1,dir-615-e1,DIR-615-E1,ttyS0,115200,"AP93-AR7240-RT-081028-00"))
 $(eval $(call 
SingleProfile,CameoAP99,64kraw,DIR615E4,dir-615-e4,DIR-615-E4,ttyS0,115200,"AP99-AR7240-RT-091105-05"))
 
 $(eval $(call 
SingleProfile,CameoAP81,64kraw-nojffs,A02RBW300N,a02-rb-w300n,TEW-632BRP,ttyS0,115200,"AP81-AR9130-RT-070614-03"))
diff --git 
a/target/linux/ar71xx/patches-3.10/610-MIPS-ath79-openwrt-machines.patch 
b/target/linux/ar71xx/patches-3.10/610-MIPS-ath79-openwrt-machines.patch
index 11b49ac..57e1817 100644
--- a/target/linux/ar71xx/patches-3.10/610-MIPS-ath79-openwrt-machines.patch
+++ b/target/linux/ar71xx/patches-3.10/610-MIPS-ath79-openwrt-machines.patch
@@ -29,6 +29,7 @@
 +      ATH79_MACH_DIR_505_A1,          /* D-Link DIR-505 rev. A1 */
 +      ATH79_MACH_DIR_600_A1,          /* D-Link DIR-600 rev. A1 */
 +      ATH79_MACH_DIR_615_C1,          /* D-Link DIR-615 rev. C1 */
++      ATH79_MACH_DIR_615_E1,          /* D-Link DIR-615 rev. E1 */
 +      ATH79_MACH_DIR_615_E4,          /* D-Link DIR-615 rev. E4 */
 +      ATH79_MACH_DIR_825_B1,          /* D-Link DIR-825 rev. B1 */
 +      ATH79_MACH_DIR_825_C1,          /* D-Link DIR-825 rev. C1 */
@@ -423,7 +424,7 @@
 +      select ATH79_NVRAM
 +
 +config ATH79_MACH_DIR_600_A1
-+      bool "D-Link DIR-600 A1/DIR-615 E4 support"
++      bool "D-Link DIR-600 A1/DIR-615 E1/DIR-615 E4 support"
 +      select SOC_AR724X
 +      select ATH79_DEV_AP9X_PCI if PCI
 +      select ATH79_DEV_ETH
-- 
1.9.0
_______________________________________________
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel

Reply via email to