From b8da1c65c65aedc8401e968a6e2224bd3222d196 Mon Sep 17 00:00:00 2001 From: Piotr Dymacz Date: Wed, 31 Aug 2016 02:09:47 +0200 Subject: [PATCH] Add support for Comfast CF-E320N v2 (QCA9531 based) --- Makefile | 3 ++ README.md | 2 ++ READMEPL.md | 2 ++ u-boot/Makefile | 7 ++++ u-boot/include/configs/ap143.h | 63 ++++++++++++++++++++++++---------- 5 files changed, 58 insertions(+), 19 deletions(-) diff --git a/Makefile b/Makefile index 139c878..17755ec 100644 --- a/Makefile +++ b/Makefile @@ -217,6 +217,9 @@ $(COMMON_ETHS27_TARGETS): 8devices_carambola2: @$(call build,256,1) +comfast_cf-e320n_v2: + @$(call build,64,1,ETH_CONFIG=_s27) + comfast_cf-e520n: @$(call build,64,1,ETH_CONFIG=_s27) diff --git a/README.md b/README.md index 5c44c5e..3f4d098 100644 --- a/README.md +++ b/README.md @@ -95,6 +95,7 @@ Currently supported devices: - Wallys DR531 - Zbtlink ZBT-WE1526 - Comfast CF-E520N + - Comfast CF-E320N v2 I tested this modification on most of these devices, with OpenWrt and OFW firmware. If you are not sure about the version of your device, please contact with me **before** you try to make an upgrade. Changing bootloader to a wrong version will probably damage your router and you will need special hardware to fix it, so please, **be very careful**. @@ -131,6 +132,7 @@ More information about supported devices: | Wallys DR531 | QCA9531 | 8 MiB | 64 MiB DDR2 | 192 KiB | R/W | | Zbtlink ZBT-WE1526 | QCA9531 | 16 MiB | 128 MiB DDR2 | 256 KiB | R/W | | Comfast CF-E520N | QCA9531 | 8 MiB | 32 MiB DDR2 | 64 KiB, LZMA | RO | +| Comfast CF-E320N v2 | QCA9531 | 16 MiB | 64 MiB DDR2 | 64 KiB, LZMA | RO | *(LZMA) - U-Boot binary image is compressed with LZMA.* *(R/W) - environment exists in separate FLASH block which allows you to save it and keep after power down.* diff --git a/READMEPL.md b/READMEPL.md index 81a205a..c8d1d4f 100644 --- a/READMEPL.md +++ b/READMEPL.md @@ -92,6 +92,7 @@ Lista obecnie wspieranych urządzeń: - Wallys DR531 - Zbtlink ZBT-WE1526 - Comfast CF-E520N + - Comfast CF-E320N v2 Przetestowałem swoją modyfikację na większości z wymienionych powyżej urządzeń, z obrazami OpenWrt i oficjalnym firmware producenta. Jeżeli nie jesteś pewien wersji sprzętowej swojego urządzenia, proszę skontaktuj się ze mną **zanim** dokonasz wymiany obrazu bootloadera. Zmiana na niewłaściwą wersję najprawdopodobniej doprowadzi do uszkodzenia Twojego urządzenia i jedyną możliwością jego ponownego uruchomienia będzie przeprogramowanie kości FLASH w zewnętrznym programatorze. @@ -128,6 +129,7 @@ Dodatkowe informacje o wspieranych urządzeniach: | Wallys DR531 | QCA9531 | 8 MiB | 64 MiB DDR2 | 192 KiB | R/W | | Zbtlink ZBT-WE1526 | QCA9531 | 16 MiB | 128 MiB DDR2 | 256 KiB | R/W | | Comfast CF-E520N | QCA9531 | 8 MiB | 32 MiB DDR2 | 64 KiB, LZMA | RO | +| Comfast CF-E320N v2 | QCA9531 | 16 MiB | 64 MiB DDR2 | 64 KiB, LZMA | RO | *(LZMA) - obraz binarny U-Boot został dodatkowo skompresowany przy pomocy LZMA.* *(R/W) - zmienne środowiskowe przechowywane są w osobnym bloku FLASH, co pozwala na ich zachowanie po odłączeniu zasilaniu.* diff --git a/u-boot/Makefile b/u-boot/Makefile index 404a55d..869a146 100644 --- a/u-boot/Makefile +++ b/u-boot/Makefile @@ -388,6 +388,13 @@ qca953x_common: unconfig config_common @$(call define_add,CONFIG_FOR_8DEVICES_CARAMBOLA2,1) @$(MKCONFIG) -a ap121 mips mips ap121 ar7240 ar7240 +comfast_cf-e320n_v2: qca953x_common + @$(call config_init,Comfast CF-E320N v2,16,17,1,QCA_QCA953X_SOC) + @$(call define_add,CONFIG_FOR_COMFAST_CF_E320N_V2,1) + @$(call define_add,CFG_ATHRS27_PHY,1) + @$(call define_add,CFG_ATH_GMAC_NMACS,2) + @$(MKCONFIG) -a ap143 mips mips ap143 ar7240 ar7240 + comfast_cf-e520n: qca953x_common @$(call config_init,Comfast CF-E520N,8,17,1,QCA_QCA953X_SOC) @$(call define_add,CONFIG_FOR_COMFAST_CF_E520N,1) diff --git a/u-boot/include/configs/ap143.h b/u-boot/include/configs/ap143.h index 91f6ebb..926c8f4 100644 --- a/u-boot/include/configs/ap143.h +++ b/u-boot/include/configs/ap143.h @@ -21,7 +21,14 @@ * GPIO configuration * ================== */ -#if defined(CONFIG_FOR_COMFAST_CF_E520N) +#if defined(CONFIG_FOR_COMFAST_CF_E320N_V2) + + #define CONFIG_QCA_GPIO_MASK_LED_ACT_H GPIO0 | GPIO2 | GPIO3 + #define CONFIG_QCA_GPIO_MASK_OUT CONFIG_QCA_GPIO_MASK_LED_ACT_H + #define CONFIG_QCA_GPIO_MASK_IN GPIO17 + #define CONFIG_QCA_GPIO_MASK_OUT_INIT_L CONFIG_QCA_GPIO_MASK_LED_ACT_H + +#elif defined(CONFIG_FOR_COMFAST_CF_E520N) #define CONFIG_QCA_GPIO_MASK_LED_ACT_L GPIO11 #define CONFIG_QCA_GPIO_MASK_OUT CONFIG_QCA_GPIO_MASK_LED_ACT_L @@ -69,7 +76,13 @@ * Default bootargs * ================ */ -#if defined(CONFIG_FOR_COMFAST_CF_E520N) +#if defined(CONFIG_FOR_COMFAST_CF_E320N_V2) + + #define CONFIG_BOOTARGS "console=ttyS0,115200 root=31:03 "\ + "rootfstype=jffs2 init=/sbin/init "\ + "mtdparts=ath-nor0:64k(u-boot),64k(art),1536k(uImage),14656k(rootfs),64k(mib0)" + +#elif defined(CONFIG_FOR_COMFAST_CF_E520N) #define CONFIG_BOOTARGS "console=ttyS0,115200 root=31:03 "\ "rootfstype=jffs2 init=/sbin/init "\ @@ -107,9 +120,10 @@ * Load address and boot command * ============================= */ -#if defined(CONFIG_FOR_COMFAST_CF_E520N) ||\ - defined(CONFIG_FOR_TPLINK_WR820N_CN) ||\ - defined(CONFIG_FOR_TPLINK_WR802N) ||\ +#if defined(CONFIG_FOR_COMFAST_CF_E320N_V2) ||\ + defined(CONFIG_FOR_COMFAST_CF_E520N) ||\ + defined(CONFIG_FOR_TPLINK_WR820N_CN) ||\ + defined(CONFIG_FOR_TPLINK_WR802N) ||\ defined(CONFIG_FOR_TPLINK_WR841N_V9) #define CFG_LOAD_ADDR 0x9F020000 #elif defined(CONFIG_FOR_WALLYS_DR531) @@ -125,7 +139,8 @@ * Environment configuration * ========================= */ -#if defined(CONFIG_FOR_COMFAST_CF_E520N) +#if defined(CONFIG_FOR_COMFAST_CF_E320N_V2) ||\ + defined(CONFIG_FOR_COMFAST_CF_E520N) #define CFG_ENV_ADDR 0x9F018000 #define CFG_ENV_SIZE 0x7C00 #define CFG_ENV_SECT_SIZE 0x10000 @@ -159,7 +174,8 @@ * MAC address/es, model and WPS pin offsets in FLASH * ================================================== */ -#if defined(CONFIG_FOR_COMFAST_CF_E520N) +#if defined(CONFIG_FOR_COMFAST_CF_E320N_V2) ||\ + defined(CONFIG_FOR_COMFAST_CF_E520N) #define OFFSET_MAC_DATA_BLOCK 0x10000 #define OFFSET_MAC_DATA_BLOCK_LENGTH 0x10000 #define OFFSET_MAC_ADDRESS 0x00000 @@ -187,10 +203,15 @@ * ========================= */ -/* Comfast CF-E520N is limited to 64 KB only, disable some commands */ -#if defined(CONFIG_FOR_COMFAST_CF_E520N) +/* + * Comfast CF-E520N and E320Nv2 are limited to 64 KB only, + * disable some commands + */ +#if defined(CONFIG_FOR_COMFAST_CF_E320N_V2) ||\ + defined(CONFIG_FOR_COMFAST_CF_E520N) #undef CONFIG_CMD_DHCP #undef CONFIG_CMD_LOADB + #undef CONFIG_CMD_SNTP #endif /* @@ -205,9 +226,10 @@ #endif /* Firmware size limit */ -#if defined(CONFIG_FOR_COMFAST_CF_E520N) ||\ - defined(CONFIG_FOR_TPLINK_WR820N_CN) ||\ - defined(CONFIG_FOR_TPLINK_WR802N) ||\ +#if defined(CONFIG_FOR_COMFAST_CF_E320N_V2) ||\ + defined(CONFIG_FOR_COMFAST_CF_E520N) ||\ + defined(CONFIG_FOR_TPLINK_WR820N_CN) ||\ + defined(CONFIG_FOR_TPLINK_WR802N) ||\ defined(CONFIG_FOR_TPLINK_WR841N_V9) #define WEBFAILSAFE_UPLOAD_LIMITED_AREA_IN_BYTES (192 * 1024) #elif defined(CONFIG_FOR_WALLYS_DR531) ||\ @@ -224,15 +246,17 @@ defined(CONFIG_FOR_TPLINK_WR802N) ||\ defined(CONFIG_FOR_TPLINK_WR841N_V9) #define CONFIG_QCA_PLL QCA_PLL_PRESET_550_400_200 -#elif defined(CONFIG_FOR_COMFAST_CF_E520N) ||\ - defined(CONFIG_FOR_WALLYS_DR531) ||\ +#elif defined(CONFIG_FOR_COMFAST_CF_E320N_V2) ||\ + defined(CONFIG_FOR_COMFAST_CF_E520N) ||\ + defined(CONFIG_FOR_WALLYS_DR531) ||\ defined(CONFIG_FOR_ZBTLINK_ZBT_WE1526) #define CONFIG_QCA_PLL QCA_PLL_PRESET_650_400_200 #endif -#if defined(CONFIG_FOR_COMFAST_CF_E520N) ||\ - defined(CONFIG_FOR_TPLINK_WR820N_CN) ||\ - defined(CONFIG_FOR_TPLINK_WR802N) ||\ +#if defined(CONFIG_FOR_COMFAST_CF_E320N_V2) ||\ + defined(CONFIG_FOR_COMFAST_CF_E520N) ||\ + defined(CONFIG_FOR_TPLINK_WR820N_CN) ||\ + defined(CONFIG_FOR_TPLINK_WR802N) ||\ defined(CONFIG_FOR_TPLINK_WR841N_V9) #define CONFIG_QCA_PLL_IN_FLASH_BLOCK_OFFSET 0x10000 @@ -255,8 +279,9 @@ * For upgrade scripts in environment * ================================== */ -#if !defined(CONFIG_FOR_COMFAST_CF_E520N) &&\ - !defined(CONFIG_FOR_WALLYS_DR531) &&\ +#if !defined(CONFIG_FOR_COMFAST_CF_E320N_V2) &&\ + !defined(CONFIG_FOR_COMFAST_CF_E520N) &&\ + !defined(CONFIG_FOR_WALLYS_DR531) &&\ !defined(CONFIG_FOR_ZBTLINK_ZBT_WE1526) #define CONFIG_UPG_UBOOT_SIZE_BACKUP_HEX 0x20000 #endif -- 2.25.1