disregard that, I didn’t notice that you already had references that.
Von: Thomas Endt [mailto:tm...@gmx.de] Gesendet: Dienstag, 28. November 2017 21:35 An: 'Ronaldo Afonso'; 'Zoltan HERPAI' Cc: 'OpenWrt Development List' Betreff: AW: [OpenWrt-Devel] How can I help TL-WR842N Hardware version 3 be merged into Chaos Calmer This might be of interest: https://git.lede-project.org/?p=source.git;a=commit;h=0b45bec22c59cc6e6b2fa71dc9a88386c5587132 Von: openwrt-devel [mailto:openwrt-devel-boun...@lists.openwrt.org] Im Auftrag von Ronaldo Afonso Gesendet: Dienstag, 28. November 2017 20:25 An: Zoltan HERPAI Cc: OpenWrt Development List Betreff: Re: [OpenWrt-Devel] How can I help TL-WR842N Hardware version 3 be merged into Chaos Calmer Hi Zoltan, First of all, thanks for you replay. Following is what I have tried to to: 1) I tried doing a simple "git merge d42ccc9f28aca96bdd7c83cfac43ae81d24bc5a2" ... but that resulted in a LOT of errors. 2) So, I decided to look more closely at the commit and manually ported what had being done. Following is the git status and git diff on the CC branch ... ronaldo@fox:~/Linux/OpenWrt/src/openwrt$ git status On branch chaos_calmer Your branch is up-to-date with 'origin/chaos_calmer'. Changes not staged for commit: (use "git add <file>..." to update what will be committed) (use "git checkout -- <file>..." to discard changes in working directory) modified: target/linux/ar71xx/base-files/etc/diag.sh modified: target/linux/ar71xx/base-files/etc/uci-defaults/01_leds modified: target/linux/ar71xx/base-files/etc/uci-defaults/02_network modified: target/linux/ar71xx/base-files/lib/ar71xx.sh modified: target/linux/ar71xx/base-files/lib/upgrade/platform.sh modified: target/linux/ar71xx/files/arch/mips/ath79/mach-tl-wr841n-v9.c modified: target/linux/ar71xx/image/Makefile modified: target/linux/ar71xx/patches-3.18/610-MIPS-ath79-openwrt-machines.patch no changes added to commit (use "git add" and/or "git commit -a") ronaldo@fox:~/Linux/OpenWrt/src/openwrt$ git diff diff --git a/target/linux/ar71xx/base-files/etc/diag.sh b/target/linux/ar71xx/base-files/etc/diag.sh index 623e2a43b5..85f1e3eab6 100644 --- a/target/linux/ar71xx/base-files/etc/diag.sh +++ b/target/linux/ar71xx/base-files/etc/diag.sh @@ -280,6 +280,7 @@ get_status_led() { tl-wr841n-v11 | \ tl-wa830re-v2 | \ tl-wr842n-v2 | \ + tl-wr841n-v3 | \ tl-wr941nd | \ tl-wr941nd-v5) status_led="tp-link:green:system" 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 91f5875c2f..03f01c4050 100644 --- a/target/linux/ar71xx/base-files/etc/uci-defaults/01_leds +++ b/target/linux/ar71xx/base-files/etc/uci-defaults/01_leds @@ -519,6 +519,16 @@ tl-wr842n-v2) ucidef_set_led_usbdev "usb" "USB" "tp-link:green:3g" "1-1" ;; +tl-wr842n-v3) + ucidef_set_led_netdev "wan" "WAN" "tp-link:green:wan" "eth1" + ucidef_set_led_switch "lan1" "LAN1" "tp-link:green:lan1" "switch0" "0x10" + ucidef_set_led_switch "lan2" "LAN2" "tp-link:green:lan2" "switch0" "0x08" + ucidef_set_led_switch "lan3" "LAN3" "tp-link:green:lan3" "switch0" "0x04" + ucidef_set_led_switch "lan4" "LAN4" "tp-link:green:lan4" "switch0" "0x02" + ucidef_set_led_wlan "wlan" "WLAN" "tp-link:green:wlan" "phy0tpt" + ucidef_set_led_usbdev "usb" "USB" "tp-link:green:3g" "1-1" + ;; + tl-wa801nd-v2 | \ tl-wa901nd-v3) ucidef_set_led_netdev "lan" "LAN" "tp-link:green:lan" "eth0" 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 032c671341..0558c0f33d 100755 --- a/target/linux/ar71xx/base-files/etc/uci-defaults/02_network +++ b/target/linux/ar71xx/base-files/etc/uci-defaults/02_network @@ -439,6 +439,7 @@ tl-wr741nd |\ tl-wr741nd-v4 |\ tl-wr841n-v7 |\ tl-wr841n-v9 |\ +tl-wr842n-v3 |\ tl-wr841n-v11 |\ whr-g301n |\ whr-hp-g300n |\ diff --git a/target/linux/ar71xx/base-files/lib/ar71xx.sh b/target/linux/ar71xx/base-files/lib/ar71xx.sh index 1eb6999908..904ff4b10f 100755 --- a/target/linux/ar71xx/base-files/lib/ar71xx.sh +++ b/target/linux/ar71xx/base-files/lib/ar71xx.sh @@ -821,6 +821,9 @@ ar71xx_board_detect() { *"TL-WR842N/ND v2") name="tl-wr842n-v2" ;; + *"TL-WR842N/ND v3") + name="tl-wr842n-v3" + ;; *TL-WR941ND) name="tl-wr941nd" ;; diff --git a/target/linux/ar71xx/base-files/lib/upgrade/platform.sh b/target/linux/ar71xx/base-files/lib/upgrade/platform.sh index fda7bc417c..bf1e0d295e 100755 --- a/target/linux/ar71xx/base-files/lib/upgrade/platform.sh +++ b/target/linux/ar71xx/base-files/lib/upgrade/platform.sh @@ -361,6 +361,7 @@ platform_check_image() { tl-wr841n-v9 | \ tl-wr841n-v11 | \ tl-wr842n-v2 | \ + tl-wr842n-v3 | \ tl-wr941nd | \ tl-wr941nd-v5 | \ tl-wr941nd-v6 | \ diff --git a/target/linux/ar71xx/files/arch/mips/ath79/mach-tl-wr841n-v9.c b/target/linux/ar71xx/files/arch/mips/ath79/mach-tl-wr841n-v9.c index 004f719613..f33ca2c906 100644 --- a/target/linux/ar71xx/files/arch/mips/ath79/mach-tl-wr841n-v9.c +++ b/target/linux/ar71xx/files/arch/mips/ath79/mach-tl-wr841n-v9.c @@ -1,5 +1,5 @@ /* - * TP-LINK TL-WR841N/ND v9/v11 + * TP-LINK TL-WR841N/ND v9/TL-WR842N/ND v3 * * Copyright (C) 2014 Matthias Schiffer <mschif...@universe-factory.net> * Copyright (C) 2016 Cezary Jackiewicz <cez...@eko.one.pl> @@ -36,6 +36,20 @@ #define TL_WR841NV9_GPIO_BTN_RESET 12 #define TL_WR841NV9_GPIO_BTN_WIFI 17 +#define TL_WR842NV3_GPIO_LED_SYSTEM 2 +#define TL_WR842NV3_GPIO_LED_WLAN 3 +#define TL_WR842NV3_GPIO_LED_WAN_RED 4 +#define TL_WR842NV3_GPIO_LED_WAN_GREEN 11 +#define TL_WR842NV3_GPIO_LED_LAN1 12 +#define TL_WR842NV3_GPIO_LED_LAN2 13 +#define TL_WR842NV3_GPIO_LED_LAN3 14 +#define TL_WR842NV3_GPIO_LED_LAN4 15 +#define TL_WR842NV3_GPIO_LED_3G 16 +#define TL_WR842NV3_GPIO_LED_WPS 17 + +#define TL_WR842NV3_GPIO_BTN_RESET 1 +#define TL_WR842NV3_GPIO_BTN_WIFI 0 + #define TL_WR841NV11_GPIO_LED_SYSTEM 1 #define TL_WR841NV11_GPIO_LED_QSS 3 #define TL_WR841NV11_GPIO_LED_WAN 4 @@ -111,6 +125,68 @@ static struct gpio_keys_button tl_wr841n_v9_gpio_keys[] __initdata = { } }; +static struct gpio_led tl_wr842n_v3_leds_gpio[] __initdata = { + { + .name = "tp-link:green:lan1", + .gpio = TL_WR842NV3_GPIO_LED_LAN1, + .active_low = 1, + }, { + .name = "tp-link:green:lan2", + .gpio = TL_WR842NV3_GPIO_LED_LAN2, + .active_low = 1, + }, { + .name = "tp-link:green:lan3", + .gpio = TL_WR842NV3_GPIO_LED_LAN3, + .active_low = 1, + }, { + .name = "tp-link:green:lan4", + .gpio = TL_WR842NV3_GPIO_LED_LAN4, + .active_low = 1, + }, { + .name = "tp-link:green:wan", + .gpio = TL_WR842NV3_GPIO_LED_WAN_GREEN, + .active_low = 1, + }, { + .name = "tp-link:red:wan", + .gpio = TL_WR842NV3_GPIO_LED_WAN_RED, + .active_low = 1, + }, { + .name = "tp-link:green:wlan", + .gpio = TL_WR842NV3_GPIO_LED_WLAN, + .active_low = 1, + }, { + .name = "tp-link:green:system", + .gpio = TL_WR842NV3_GPIO_LED_SYSTEM, + .active_low = 1, + }, { + .name = "tp-link:green:3g", + .gpio = TL_WR842NV3_GPIO_LED_3G, + .active_low = 1, + }, { + .name = "tp-link:green:wps", + .gpio = TL_WR842NV3_GPIO_LED_WPS, + .active_low = 1, + }, +}; + +static struct gpio_keys_button tl_wr842n_v3_gpio_keys[] __initdata = { + { + .desc = "Reset button", + .type = EV_KEY, + .code = KEY_RESTART, + .debounce_interval = TL_WR841NV9_KEYS_DEBOUNCE_INTERVAL, + .gpio = TL_WR842NV3_GPIO_BTN_RESET, + .active_low = 1, + }, { + .desc = "WIFI button", + .type = EV_KEY, + .code = KEY_RFKILL, + .debounce_interval = TL_WR841NV9_KEYS_DEBOUNCE_INTERVAL, + .gpio = TL_WR842NV3_GPIO_BTN_WIFI, + .active_low = 1, + } +}; + static struct gpio_led tl_wr841n_v11_leds_gpio[] __initdata = { { .name = "tp-link:green:lan1", @@ -183,6 +259,24 @@ static void __init tl_ap143_setup(void) ath79_register_wmac(ee, tmpmac); } + +static void __init tl_wr842n_v3_setup(void) +{ + tl_ap143_setup(); + + ath79_register_leds_gpio(-1, ARRAY_SIZE(tl_wr842n_v3_leds_gpio), + tl_wr842n_v3_leds_gpio); + + ath79_register_gpio_keys_polled(1, TL_WR841NV9_KEYS_POLL_INTERVAL, + ARRAY_SIZE(tl_wr842n_v3_gpio_keys), + tl_wr842n_v3_gpio_keys); + + ath79_register_usb(); +} + +MIPS_MACHINE(ATH79_MACH_TL_WR842N_V3, "TL-WR842N-v3", "TP-LINK TL-WR842N/ND v3", + tl_wr842n_v3_setup); + static void __init tl_wr841n_v9_setup(void) { tl_ap143_setup(); diff --git a/target/linux/ar71xx/image/Makefile b/target/linux/ar71xx/image/Makefile index 6cbaf380d9..dbe5981c12 100644 --- a/target/linux/ar71xx/image/Makefile +++ b/target/linux/ar71xx/image/Makefile @@ -590,6 +590,13 @@ define Device/tl-wr842n-v2 TPLINK_HWID := 0x8420002 endef +define Device/tl-wr842n-v3 + $(Device/tplink-16mlzma) + BOARDNAME := TL-WR842N-v3 + DEVICE_PROFILE := TLWR842 + TPLINK_HWID := 0x08420003 +endef + define Device/tl-wr843nd-v1 $(Device/tplink-4mlzma) BOARDNAME := TL-WR841N-v8 @@ -603,7 +610,7 @@ define Device/tl-wr847n-v8 DEVICE_PROFILE := TLWR841 TPLINK_HWID := 0x08470008 endef -TARGET_DEVICES += tl-wr841n-v8 tl-wr841n-v9 tl-wr841n-v10 tl-wr841n-v11 tl-wr842n-v2 tl-wr843nd-v1 tl-wr847n-v8 +TARGET_DEVICES += tl-wr841n-v8 tl-wr841n-v9 tl-wr841n-v10 tl-wr841n-v11 tl-wr842n-v2 tl-wr842n-v3 tl-wr843nd-v1 tl-wr847n-v8 define Device/tl-wr941nd-v5 $(Device/tplink-4mlzma) diff --git a/target/linux/ar71xx/patches-3.18/610-MIPS-ath79-openwrt-machines.patch b/target/linux/ar71xx/patches-3.18/610-MIPS-ath79-openwrt-machines.patch index 99e96aaf72..1a378b034d 100644 --- a/target/linux/ar71xx/patches-3.18/610-MIPS-ath79-openwrt-machines.patch +++ b/target/linux/ar71xx/patches-3.18/610-MIPS-ath79-openwrt-machines.patch @@ -1252,7 +1252,7 @@ + select ATH79_DEV_WMAC + +config ATH79_MACH_TL_WR841N_V9 -+ bool "TP-LINK TL-WR841N/ND v9 support" ++ bool "TP-LINK TL-WR841N/ND v9/TL-WR842N/ND v3 support" + select SOC_QCA953X + select ATH79_DEV_ETH + select ATH79_DEV_GPIO_BUTTONS And when trying to build the image I got the following error message: echo "# CONFIG_KALLSYMS_EXTRA_PASS is not set" >> /home/ronaldo/Linux/OpenWrt/src/openwrt/build_dir/target-mips_34kc_uClibc-0.9.33.2/linux-ar71xx_generic/linux-3.18.84/.config.target echo "# CONFIG_KALLSYMS_ALL is not set" >> /home/ronaldo/Linux/OpenWrt/src/openwrt/build_dir/target-mips_34kc_uClibc-0.9.33.2/linux-ar71xx_generic/linux-3.18.84/.config.target echo "# CONFIG_KALLSYMS_UNCOMPRESSED is not set" >> /home/ronaldo/Linux/OpenWrt/src/openwrt/build_dir/target-mips_34kc_uClibc-0.9.33.2/linux-ar71xx_generic/linux-3.18.84/.config.target /home/ronaldo/Linux/OpenWrt/src/openwrt/scripts/metadata.pl kconfig /home/ronaldo/Linux/OpenWrt/src/openwrt/tmp/.packageinfo /home/ronaldo/Linux/OpenWrt/src/openwrt/.config 3.18 > /home/ronaldo/Linux/OpenWrt/src/openwrt/build_dir/target-mips_34kc_uClibc-0.9.33.2/linux-ar71xx_generic/linux-3.18.84/.config.override /home/ronaldo/Linux/OpenWrt/src/openwrt/scripts/kconfig.pl 'm+' '+' /home/ronaldo/Linux/OpenWrt/src/openwrt/build_dir/target-mips_34kc_uClibc-0.9.33.2/linux-ar71xx_generic/linux-3.18.84/.config.target /dev/null /home/ronaldo/Linux/OpenWrt/src/openwrt/build_dir/target-mips_34kc_uClibc-0.9.33.2/linux-ar71xx_generic/linux-3.18.84/.config.override > /home/ronaldo/Linux/OpenWrt/src/openwrt/build_dir/target-mips_34kc_uClibc-0.9.33.2/linux-ar71xx_generic/linux-3.18.84/.config mv /home/ronaldo/Linux/OpenWrt/src/openwrt/build_dir/target-mips_34kc_uClibc-0.9.33.2/linux-ar71xx_generic/linux-3.18.84/.config /home/ronaldo/Linux/OpenWrt/src/openwrt/build_dir/target-mips_34kc_uClibc-0.9.33.2/linux-ar71xx_generic/linux-3.18.84/.config.old grep -v INITRAMFS /home/ronaldo/Linux/OpenWrt/src/openwrt/build_dir/target-mips_34kc_uClibc-0.9.33.2/linux-ar71xx_generic/linux-3.18.84/.config.old > /home/ronaldo/Linux/OpenWrt/src/openwrt/build_dir/target-mips_34kc_uClibc-0.9.33.2/linux-ar71xx_generic/linux-3.18.84/.config echo 'CONFIG_INITRAMFS_SOURCE=""' >> /home/ronaldo/Linux/OpenWrt/src/openwrt/build_dir/target-mips_34kc_uClibc-0.9.33.2/linux-ar71xx_generic/linux-3.18.84/.config rm -rf /home/ronaldo/Linux/OpenWrt/src/openwrt/build_dir/target-mips_34kc_uClibc-0.9.33.2/linux-ar71xx_generic/modules export MAKEFLAGS= ; [ -d /home/ronaldo/Linux/OpenWrt/src/openwrt/build_dir/target-mips_34kc_uClibc-0.9.33.2/linux-ar71xx_generic/linux-3.18.84/user_headers ] || make -C /home/ronaldo/Linux/OpenWrt/src/openwrt/build_dir/target-mips_34kc_uClibc-0.9.33.2/linux-ar71xx_generic/linux-3.18.84 HOSTCFLAGS="-O2 -I/home/ronaldo/Linux/OpenWrt/src/openwrt/staging_dir/host/include -I/home/ronaldo/Linux/OpenWrt/src/openwrt/staging_dir/host/usr/include -Wall -Wmissing-prototypes -Wstrict-prototypes" CROSS_COMPILE="mips-openwrt-linux-uclibc-" ARCH="mips" KBUILD_HAVE_NLS=no CONFIG_SHELL="bash" V='' CC="mips-openwrt-linux-uclibc-gcc" INSTALL_HDR_PATH=/home/ronaldo/Linux/OpenWrt/src/openwrt/build_dir/target-mips_34kc_uClibc-0.9.33.2/linux-ar71xx_generic/linux-3.18.84/user_headers headers_install . /home/ronaldo/Linux/OpenWrt/src/openwrt/include/shell.sh; grep '=[ym]' /home/ronaldo/Linux/OpenWrt/src/openwrt/build_dir/target-mips_34kc_uClibc-0.9.33.2/linux-ar71xx_generic/linux-3.18.84/.config | LC_ALL=C sort | md5s > /home/ronaldo/Linux/OpenWrt/src/openwrt/build_dir/target-mips_34kc_uClibc-0.9.33.2/linux-ar71xx_generic/linux-3.18.84/.vermagic touch /home/ronaldo/Linux/OpenWrt/src/openwrt/build_dir/target-mips_34kc_uClibc-0.9.33.2/linux-ar71xx_generic/linux-3.18.84/.configured rm -f /home/ronaldo/Linux/OpenWrt/src/openwrt/build_dir/target-mips_34kc_uClibc-0.9.33.2/root-ar71xx/init make -C /home/ronaldo/Linux/OpenWrt/src/openwrt/build_dir/target-mips_34kc_uClibc-0.9.33.2/linux-ar71xx_generic/linux-3.18.84 HOSTCFLAGS="-O2 -I/home/ronaldo/Linux/OpenWrt/src/openwrt/staging_dir/host/include -I/home/ronaldo/Linux/OpenWrt/src/openwrt/staging_dir/host/usr/include -Wall -Wmissing-prototypes -Wstrict-prototypes" CROSS_COMPILE="mips-openwrt-linux-uclibc-" ARCH="mips" KBUILD_HAVE_NLS=no CONFIG_SHELL="bash" V='' CC="mips-openwrt-linux-uclibc-gcc" all modules make[5]: Entering directory '/home/ronaldo/Linux/OpenWrt/src/openwrt/build_dir/target-mips_34kc_uClibc-0.9.33.2/linux-ar71xx_generic/linux-3.18.84' scripts/kconfig/conf --silentoldconfig Kconfig net/sched/Kconfig:43: warning: menuconfig statement without prompt # # configuration written to .config # CHK include/config/kernel.release CHK include/generated/uapi/linux/version.h CHK include/generated/utsrelease.h CALL scripts/checksyscalls.sh CHK include/generated/compile.h CC arch/mips/ath79/mach-tl-wr841n-v9.o In file included from arch/mips/ath79/machtypes.h:15:0, from arch/mips/ath79/mach-tl-wr841n-v9.c:26: arch/mips/ath79/mach-tl-wr841n-v9.c:277:14: error: ''' undeclared here (not in a function) MIPS_MACHINE(ATH79_MACH_TL_WR842N_V3, "TL-WR842N-v3", "TP-LINK TL-WR842N/ND v3", ^ ./arch/mips/include/asm/mips_machine.h:33:15: note: in definition of macro 'MIPS_MACHINE' .mach_type = _type, \ ^ scripts/Makefile.build:257: recipe for target 'arch/mips/ath79/mach-tl-wr841n-v9.o' failed make[7]: *** [arch/mips/ath79/mach-tl-wr841n-v9.o] Error 1 scripts/Makefile.build:402: recipe for target 'arch/mips/ath79' failed make[6]: *** [arch/mips/ath79] Error 2 Makefile:944: recipe for target 'arch/mips' failed make[5]: *** [arch/mips] Error 2 make[5]: Leaving directory '/home/ronaldo/Linux/OpenWrt/src/openwrt/build_dir/target-mips_34kc_uClibc-0.9.33.2/linux-ar71xx_generic/linux-3.18.84' Makefile:24: recipe for target '/home/ronaldo/Linux/OpenWrt/src/openwrt/build_dir/target-mips_34kc_uClibc-0.9.33.2/linux-ar71xx_generic/linux-3.18.84/.image' failed make[4]: *** [/home/ronaldo/Linux/OpenWrt/src/openwrt/build_dir/target-mips_34kc_uClibc-0.9.33.2/linux-ar71xx_generic/linux-3.18.84/.image] Error 2 make[4]: Leaving directory '/home/ronaldo/Linux/OpenWrt/src/openwrt/target/linux/ar71xx' Makefile:13: recipe for target 'install' failed make[3]: *** [install] Error 2 make[3]: Leaving directory '/home/ronaldo/Linux/OpenWrt/src/openwrt/target/linux' target/Makefile:21: recipe for target 'target/linux/install' failed make[2]: *** [target/linux/install] Error 2 make[2]: Leaving directory '/home/ronaldo/Linux/OpenWrt/src/openwrt' target/Makefile:17: recipe for target '/home/ronaldo/Linux/OpenWrt/src/openwrt/staging_dir/target-mips_34kc_uClibc-0.9.33.2/stamp/.target_install' failed make[1]: *** [/home/ronaldo/Linux/OpenWrt/src/openwrt/staging_dir/target-mips_34kc_uClibc-0.9.33.2/stamp/.target_install] Error 2 make[1]: Leaving directory '/home/ronaldo/Linux/OpenWrt/src/openwrt' /home/ronaldo/Linux/OpenWrt/src/openwrt/include/toplevel.mk:181: recipe for target 'world' failed make: *** [world] Error 2 So, it seems that I have to create a patch that incluces 'ATH79_MACH_TL_WR842N_V3' in the file 'arch/mips/ath79/machtypes.h'. Does it make any sense? Am I in the right direction? Can you please help me with that? Thanks ... 2017-11-28 12:38 GMT-02:00 Zoltan HERPAI <wigy...@uid0.hu>: On Tue, 28 Nov 2017, Ronaldo Afonso wrote: Hi all, What does it take for a commit to be merged into a stable branch? The thing is ... I really would like to have TL-WR842N Hardware version 3 running on CC. I noticed that this hardware is already working on trunk (master) since last year but not merged into CC yet. How can I help that merge being done? Thanks in advance. You can try to merge this commit [1] into CC, test it out and open a pull-request on github against the chaos_calmer branch - expect some differences that'll need to be worked out manually in image/Makefile. (If you run into problems let me know and will try to help.) Thanks, -w- [1] https://github.com/openwrt/openwrt/commit/d42ccc9f28aca96bdd7c83cfac43ae81d24bc5a2 _______________________________________________ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel -- Ronaldo Afonso 11 9 5252 0484 www.ronaldoafonso.com.br
_______________________________________________ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel