From 58d733f9a0b42242e754431cd58a7ae7bd9897e2 Mon Sep 17 00:00:00 2001 From: Matthias Schiffer Date: Fri, 13 Mar 2015 12:02:35 +0100 Subject: [PATCH] Add support for GL.iNet 6416A and 6408A --- ...file-for-the-gl-inet-6416A-and-6408A.patch | 35 +++++++++++++++++ .../0024-ar71xx-detect-GL.iNet-model.patch | 39 +++++++++++++++++++ targets/ar71xx-generic/profiles.mk | 9 +++++ 3 files changed, 83 insertions(+) create mode 100644 patches/openwrt/0023-ar71xx-Add-build-profile-for-the-gl-inet-6416A-and-6408A.patch create mode 100644 patches/openwrt/0024-ar71xx-detect-GL.iNet-model.patch diff --git a/patches/openwrt/0023-ar71xx-Add-build-profile-for-the-gl-inet-6416A-and-6408A.patch b/patches/openwrt/0023-ar71xx-Add-build-profile-for-the-gl-inet-6416A-and-6408A.patch new file mode 100644 index 00000000..ce78a490 --- /dev/null +++ b/patches/openwrt/0023-ar71xx-Add-build-profile-for-the-gl-inet-6416A-and-6408A.patch @@ -0,0 +1,35 @@ +From: Matthias Schiffer +Date: Thu, 12 Mar 2015 16:57:32 +0100 +Subject: ar71xx: Add build profile for the gl-inet 6416A and 6408A + +Patch to add the buildprofile for the GL-Init-6408A-v1 and the GL-Inet-6416A-v1 +Both devices are identical, only difference is one comes with 8MB flash and +the other with 16MB flash + +Official website: http://www.gl-inet.com/w/?page_id=241&lang=en +Comprehensive list of specs: https://revspace.nl/GL-Inet + +Signed-off-by: Martijn Zilverschoon + +diff --git a/target/linux/ar71xx/image/Makefile b/target/linux/ar71xx/image/Makefile +index 8505ac4..fc59c33 100644 +--- a/target/linux/ar71xx/image/Makefile ++++ b/target/linux/ar71xx/image/Makefile +@@ -1216,7 +1216,8 @@ $(eval $(call SingleProfile,TPLINK-LZMA,64kraw,ARCHERC7V1,archer-c7-v1,ARCHER-C7 + $(eval $(call SingleProfile,TPLINK-LZMA,64kraw,ARCHERC7V2,archer-c7-v2,ARCHER-C7,ttyS0,115200,0xc7000002,1,16Mlzma)) + $(eval $(call SingleProfile,TPLINK-LZMA,64kraw,ELM150,el-m150,EL-M150,ttyATH0,115200,0x01500101,1,8Mlzma)) + $(eval $(call SingleProfile,TPLINK-LZMA,64kraw,ELMINI,el-mini,EL-MINI,ttyATH0,115200,0x01530001,1,8Mlzma)) +-$(eval $(call SingleProfile,TPLINK-LZMA,64kraw,GLINET,gl-inet-v1,GL-INET,ttyATH0,115200,0x08000001,1,8Mlzma)) ++$(eval $(call SingleProfile,TPLINK-LZMA,64kraw,GLINET6408A,gl-inet-6408A-v1,GL-INET,ttyATH0,115200,0x08000001,1,8Mlzma)) ++$(eval $(call SingleProfile,TPLINK-LZMA,64kraw,GLINET6416A,gl-inet-6416A-v1,GL-INET,ttyATH0,115200,0x08000001,1,16Mlzma)) + $(eval $(call SingleProfile,TPLINK-LZMA,64kraw,TLMR10U,tl-mr10u-v1,TL-MR10U,ttyATH0,115200,0x00100101,1,4Mlzma)) + $(eval $(call SingleProfile,TPLINK-LZMA,64kraw,TLMR11UV1,tl-mr11u-v1,TL-MR11U,ttyATH0,115200,0x00110101,1,4Mlzma)) + $(eval $(call SingleProfile,TPLINK-LZMA,64kraw,TLMR11UV2,tl-mr11u-v2,TL-MR11U,ttyATH0,115200,0x00110102,1,4Mlzma)) +@@ -1304,6 +1305,7 @@ $(eval $(call MultiProfile,AP136,AP136_010 AP136_020)) + $(eval $(call MultiProfile,ARCHERC7, ARCHERC5 ARCHERC7V1 ARCHERC7V2)) + $(eval $(call MultiProfile,EWDORIN, EWDORINAP EWDORINRT EWDORIN16M)) + $(eval $(call MultiProfile,OPENMESH,OM2P OM5P MR600)) ++$(eval $(call MultiProfile,GLINET,GLINET6408A GLINET6416A)) + $(eval $(call MultiProfile,TEW652BRP,TEW652BRP_FW TEW652BRP_RECOVERY)) + $(eval $(call MultiProfile,TLMR11U,TLMR11UV1 TLMR11UV2)) + $(eval $(call MultiProfile,TLMR3040,TLMR3040V1 TLMR3040V2)) diff --git a/patches/openwrt/0024-ar71xx-detect-GL.iNet-model.patch b/patches/openwrt/0024-ar71xx-detect-GL.iNet-model.patch new file mode 100644 index 00000000..5b3b7687 --- /dev/null +++ b/patches/openwrt/0024-ar71xx-detect-GL.iNet-model.patch @@ -0,0 +1,39 @@ +From: Matthias Schiffer +Date: Fri, 13 Mar 2015 11:59:58 +0100 +Subject: ar71xx: detect GL.iNet model + +There are two versions of the GL.iNet, the 6408A and the 6416A. The only +difference is the flash size. + +diff --git a/target/linux/ar71xx/base-files/lib/ar71xx.sh b/target/linux/ar71xx/base-files/lib/ar71xx.sh +index 9e70397..ac7f787 100755 +--- a/target/linux/ar71xx/base-files/lib/ar71xx.sh ++++ b/target/linux/ar71xx/base-files/lib/ar71xx.sh +@@ -262,6 +262,19 @@ tplink_pharos_board_detect() { + [ -n "$model" ] && AR71XX_MODEL="$model v$2" + } + ++gl_inet_board_detect() { ++ local size="$(mtd_get_part_size 'firmware')" ++ ++ case "$size" in ++ 8192000) ++ AR71XX_MODEL='GL-iNet 6408A v1' ++ ;; ++ 16580608) ++ AR71XX_MODEL='GL-iNet 6416A v1' ++ ;; ++ esac ++} ++ + ar71xx_board_detect() { + local machine + local name +@@ -380,6 +393,7 @@ ar71xx_board_detect() { + ;; + *"GL-CONNECT INET v1") + name="gl-inet" ++ gl_inet_board_detect + ;; + *"EnGenius ESR1750") + name="esr1750" diff --git a/targets/ar71xx-generic/profiles.mk b/targets/ar71xx-generic/profiles.mk index e3faa3f5..02e8e38c 100644 --- a/targets/ar71xx-generic/profiles.mk +++ b/targets/ar71xx-generic/profiles.mk @@ -192,3 +192,12 @@ endif $(eval $(call GluonProfile,ALL0315N,uboot-envtools rssileds)) $(eval $(call GluonProfileFactorySuffix,ALL0315N,)) $(eval $(call GluonModel,ALL0315N,all0315n-squashfs,allnet-all0315n)) + +## GL-iNet + +ifeq ($(BROKEN),1) +# GL-iNet 1.0 +$(eval $(call GluonProfile,GLINET)) +$(eval $(call GluonModel,GLINET,gl-inet-6408A-v1-squashfs,gl-inet-6408a-v1)) # BROKEN: untested +$(eval $(call GluonModel,GLINET,gl-inet-6416A-v1-squashfs,gl-inet-6416a-v1)) # BROKEN: untested +endif