diff --git a/Makefile b/Makefile index 1cb3b71110..3b253598c4 100644 --- a/Makefile +++ b/Makefile @@ -10,13 +10,13 @@ REVISION=git describe --always # set dir and file names FW_DIR=$(shell pwd) -OPENWRT_DIR=$(FW_DIR)/openwrt +LEDE_DIR=$(FW_DIR)/lede TARGET_CONFIG=$(FW_DIR)/configs/common.config $(FW_DIR)/configs/$(TARGET).config IB_BUILD_DIR=$(FW_DIR)/imgbldr_tmp FW_TARGET_DIR=$(FW_DIR)/firmwares/$(TARGET) UMASK=umask 022 -# if any of the following files have been changed: clean up openwrt dir +# if any of the following files have been changed: clean up lede dir DEPS=$(TARGET_CONFIG) feeds.conf patches $(wildcard patches/*) # profiles to be built (router models) @@ -26,40 +26,40 @@ FW_REVISION=$(shell $(REVISION)) default: firmwares -# clone openwrt -$(OPENWRT_DIR): - git clone $(OPENWRT_SRC) $(OPENWRT_DIR) +# clone lede +$(LEDE_DIR): + git clone $(LEDE_SRC) $(LEDE_DIR) -# clean up openwrt working copy -openwrt-clean: stamp-clean-openwrt-cleaned .stamp-openwrt-cleaned -.stamp-openwrt-cleaned: config.mk | $(OPENWRT_DIR) openwrt-clean-bin - cd $(OPENWRT_DIR); \ +# clean up lede working copy +lede-clean: stamp-clean-lede-cleaned .stamp-lede-cleaned +.stamp-lede-cleaned: config.mk | $(LEDE_DIR) lede-clean-bin + cd $(LEDE_DIR); \ ./scripts/feeds clean && \ git clean -dff && git fetch && git reset --hard HEAD && \ rm -rf .config feeds.conf build_dir/target-* logs/ touch $@ -openwrt-clean-bin: - rm -rf $(OPENWRT_DIR)/bin +lede-clean-bin: + rm -rf $(LEDE_DIR)/bin -# update openwrt and checkout specified commit -openwrt-update: stamp-clean-openwrt-updated .stamp-openwrt-updated -.stamp-openwrt-updated: .stamp-openwrt-cleaned - cd $(OPENWRT_DIR); git checkout --detach $(OPENWRT_COMMIT) +# update lede and checkout specified commit +lede-update: stamp-clean-lede-updated .stamp-lede-updated +.stamp-lede-updated: .stamp-lede-cleaned + cd $(LEDE_DIR); git checkout --detach $(LEDE_COMMIT) touch $@ -# patches require updated openwrt working copy -$(OPENWRT_DIR)/patches: | .stamp-openwrt-updated +# patches require updated lede working copy +$(LEDE_DIR)/patches: | .stamp-lede-updated ln -s $(FW_DIR)/patches $@ # feeds -$(OPENWRT_DIR)/feeds.conf: .stamp-openwrt-updated feeds.conf +$(LEDE_DIR)/feeds.conf: .stamp-lede-updated feeds.conf cp $(FW_DIR)/feeds.conf $@ # update feeds feeds-update: stamp-clean-feeds-updated .stamp-feeds-updated -.stamp-feeds-updated: $(OPENWRT_DIR)/feeds.conf unpatch - +cd $(OPENWRT_DIR); \ +.stamp-feeds-updated: $(LEDE_DIR)/feeds.conf unpatch + +cd $(LEDE_DIR); \ ./scripts/feeds uninstall -a && \ ./scripts/feeds update && \ ./scripts/feeds install -a @@ -67,13 +67,13 @@ feeds-update: stamp-clean-feeds-updated .stamp-feeds-updated # prepare patch pre-patch: stamp-clean-pre-patch .stamp-pre-patch -.stamp-pre-patch: .stamp-feeds-updated $(wildcard $(FW_DIR)/patches/*) | $(OPENWRT_DIR)/patches +.stamp-pre-patch: .stamp-feeds-updated $(wildcard $(FW_DIR)/patches/*) | $(LEDE_DIR)/patches touch $@ -# patch openwrt working copy +# patch lede working copy patch: stamp-clean-patched .stamp-patched .stamp-patched: .stamp-pre-patch - cd $(OPENWRT_DIR); quilt push -a + cd $(LEDE_DIR); quilt push -a touch $@ .stamp-build_rev: .FORCE @@ -88,31 +88,31 @@ endif # share download dir $(FW_DIR)/dl: mkdir $(FW_DIR)/dl -$(OPENWRT_DIR)/dl: $(FW_DIR)/dl - ln -s $(FW_DIR)/dl $(OPENWRT_DIR)/dl +$(LEDE_DIR)/dl: $(FW_DIR)/dl + ln -s $(FW_DIR)/dl $(LEDE_DIR)/dl -# make embedded-files avail to openwrt -$(OPENWRT_DIR)/files: $(FW_DIR)/embedded-files - ln -s $(FW_DIR)/embedded-files $(OPENWRT_DIR)/files +# make embedded-files avail to lede +$(LEDE_DIR)/files: $(FW_DIR)/embedded-files + ln -s $(FW_DIR)/embedded-files $(LEDE_DIR)/files -# openwrt config -$(OPENWRT_DIR)/.config: .stamp-patched $(TARGET_CONFIG) .stamp-build_rev $(OPENWRT_DIR)/dl - cat $(TARGET_CONFIG) >$(OPENWRT_DIR)/.config - sed -i "/^CONFIG_VERSION_NUMBER=/ s/\"$$/\+$(FW_REVISION)\"/" $(OPENWRT_DIR)/.config +# lede config +$(LEDE_DIR)/.config: .stamp-patched $(TARGET_CONFIG) .stamp-build_rev $(LEDE_DIR)/dl + cat $(TARGET_CONFIG) >$(LEDE_DIR)/.config + sed -i "/^CONFIG_VERSION_NUMBER=/ s/\"$$/\+$(FW_REVISION)\"/" $(LEDE_DIR)/.config $(UMASK); \ - $(MAKE) -C $(OPENWRT_DIR) defconfig + $(MAKE) -C $(LEDE_DIR) defconfig -# prepare openwrt working copy +# prepare lede working copy prepare: stamp-clean-prepared .stamp-prepared $(OPENWRT_DIR)/files -.stamp-prepared: .stamp-patched $(OPENWRT_DIR)/.config - sed -i 's,^# REVISION:=.*,REVISION:=$(FW_REVISION),g' $(OPENWRT_DIR)/include/version.mk +.stamp-prepared: .stamp-patched $(LEDE_DIR)/.config + sed -i 's,^# REVISION:=.*,REVISION:=$(FW_REVISION),g' $(LEDE_DIR)/include/version.mk touch $@ # compile compile: stamp-clean-compiled .stamp-compiled -.stamp-compiled: .stamp-prepared openwrt-clean-bin +.stamp-compiled: .stamp-prepared lede-clean-bin $(UMASK); \ - $(MAKE) -C $(OPENWRT_DIR) $(MAKE_ARGS) + $(MAKE) -C $(LEDE_DIR) $(MAKE_ARGS) touch $@ # fill firmwares-directory with: @@ -123,8 +123,8 @@ firmwares: stamp-clean-firmwares .stamp-firmwares .stamp-firmwares: .stamp-compiled rm -rf $(IB_BUILD_DIR) mkdir -p $(IB_BUILD_DIR) - $(eval TOOLCHAIN_PATH := $(shell printf "%s:" $(OPENWRT_DIR)/staging_dir/toolchain-*/bin)) - $(eval IB_FILE := $(shell ls -tr $(OPENWRT_DIR)/bin/$(MAINTARGET)/OpenWrt-ImageBuilder-*.tar.bz2 | tail -n1)) + $(eval TOOLCHAIN_PATH := $(shell printf "%s:" $(LEDE_DIR)/staging_dir/toolchain-*/bin)) + $(eval IB_FILE := $(shell ls $(LEDE_DIR)/bin/targets/$(MAINTARGET)/$(SUBTARGET)/*-imagebuilder-*.tar.bz2)) mkdir -p $(FW_TARGET_DIR) # Create version info file GIT_BRANCH_ESC=$(shell $(GIT_BRANCH) | tr '/' '_'); \ @@ -132,12 +132,12 @@ firmwares: stamp-clean-firmwares .stamp-firmwares echo "https://github.com/freifunk-berlin/firmware" > $$VERSION_FILE; \ echo "https://wiki.freifunk.net/Berlin:Firmware" >> $$VERSION_FILE; \ echo "Firmware: git branch \"$$GIT_BRANCH_ESC\", revision $(FW_REVISION)" >> $$VERSION_FILE; \ - # add openwrt revision with data from config.mk \ - OPENWRT_REVISION=`cd $(OPENWRT_DIR); $(REVISION)`; \ - echo "OpenWRT: repository from $(OPENWRT_SRC), git branch \"$(OPENWRT_COMMIT)\", revision $$OPENWRT_REVISION" >> $$VERSION_FILE; \ + # add lede revision with data from config.mk \ + LEDE_REVISION=`cd $(LEDE_DIR); $(REVISION)`; \ + echo "OpenWRT: repository from $(LEDE_SRC), git branch \"$(LEDE_COMMIT)\", revision $$LEDE_REVISION" >> $$VERSION_FILE; \ # add feed revisions \ - for FEED in `cd $(OPENWRT_DIR); ./scripts/feeds list -n`; do \ - FEED_DIR=$(addprefix $(OPENWRT_DIR)/feeds/,$$FEED); \ + for FEED in `cd $(LEDE_DIR); ./scripts/feeds list -n`; do \ + FEED_DIR=$(addprefix $(LEDE_DIR)/feeds/,$$FEED); \ FEED_GIT_REPO=`cd $$FEED_DIR; $(GIT_REPO)`; \ FEED_GIT_BRANCH_ESC=`cd $$FEED_DIR; $(GIT_BRANCH) | tr '/' '_'`; \ FEED_REVISION=`cd $$FEED_DIR; $(REVISION)`; \ @@ -156,12 +156,12 @@ firmwares: stamp-clean-firmwares .stamp-firmwares for file in `find $(RELPATH) -name "openwrt-*"` ; do mv $$file $${file/openwrt-/kathleen-}; done # copy imagebuilder, sdk and toolchain (if existing) # remove old versions - rm -f $(FW_TARGET_DIR)/OpenWrt-*.tar.bz2 - cp -a $(OPENWRT_DIR)/bin/$(MAINTARGET)/OpenWrt-*.tar.bz2 $(FW_TARGET_DIR)/ + rm -f $(FW_TARGET_DIR)/*.tar.bz2 + cp -a $(LEDE_DIR)/bin/targets/$(MAINTARGET)/$(SUBTARGET)/*{imagebuilder,sdk,toolchain}*.tar.bz2 $(FW_TARGET_DIR)/ # copy packages PACKAGES_DIR="$(FW_TARGET_DIR)/packages"; \ rm -rf $$PACKAGES_DIR; \ - cp -a $(OPENWRT_DIR)/bin/$(MAINTARGET)/packages $$PACKAGES_DIR + cp -a $(LEDE_DIR)/bin/$(MAINTARGET)/$(SUBTARGET)/packages $$PACKAGES_DIR rm -rf $(IB_BUILD_DIR) touch $@ @@ -171,14 +171,14 @@ stamp-clean-%: stamp-clean: rm -f .stamp-* -# unpatch needs "patches/" in openwrt -unpatch: $(OPENWRT_DIR)/patches +# unpatch needs "patches/" in lede +unpatch: $(LEDE_DIR)/patches # RC = 2 of quilt --> nothing to be done - cd $(OPENWRT_DIR); quilt pop -a -f || [ $$? = 2 ] && true + cd $(LEDE_DIR); quilt pop -a -f || [ $$? = 2 ] && true rm -f .stamp-patched -clean: stamp-clean .stamp-openwrt-cleaned +clean: stamp-clean .stamp-lede-cleaned -.PHONY: openwrt-clean openwrt-clean-bin openwrt-update patch feeds-update prepare compile firmwares stamp-clean clean +.PHONY: lede-clean lede-clean-bin lede-update patch feeds-update prepare compile firmwares stamp-clean clean .NOTPARALLEL: .FORCE: diff --git a/config.mk b/config.mk index d44350ac0f..b4da536a4f 100644 --- a/config.mk +++ b/config.mk @@ -2,6 +2,6 @@ SHELL:=$(shell which bash) TARGET=ar71xx-generic PACKAGES_LIST_DEFAULT=default backbone -OPENWRT_SRC=git://github.com/openwrt/openwrt.git -OPENWRT_COMMIT=1b6dc2e48ce654a004a7d0b98d7070a515424595 +LEDE_SRC=https://git.lede-project.org/source.git +LEDE_COMMIT=5c4b2eb3dd9261d9e604dcdff2c93860a6313582 MAKE_ARGS= diff --git a/configs/common.config b/configs/common.config index 78bb02704b..4a1b3f0374 100644 --- a/configs/common.config +++ b/configs/common.config @@ -172,8 +172,9 @@ CONFIG_VERSIONOPT=y CONFIG_VERSION_DIST="Freifunk Berlin" CONFIG_VERSION_HWREV="" CONFIG_VERSION_MANUFACTURER="" -CONFIG_VERSION_NICK="Kathleen" -CONFIG_VERSION_NUMBER="experimental" +CONFIG_VERSION_NICK="Hedy" +CONFIG_VERSION_NUMBER="0.3.0-alpha" +CONFIG_VERSION_CODE="" CONFIG_VERSION_PRODUCT="" CONFIG_VERSION_REPO="http://buildbot.berlin.freifunk.net/buildbot/stable/%V/%T/packages" # CONFIG_OPENVPN_polarssl_ENABLE_DEF_AUTH is not set diff --git a/feeds.conf b/feeds.conf index 5a9cee991f..77d73904f6 100644 --- a/feeds.conf +++ b/feeds.conf @@ -1,11 +1,11 @@ -src-git packages git://github.com/openwrt/packages.git^e3e9f341e605a06d3c79b8530341a30df57d9d3f -src-git luci git://github.com/openwrt/luci.git^90474569d218cefb789f0c9cd804ccde44b532da -src-git routing git://github.com/openwrt-routing/packages.git^d580d71309f0867022ab7f47badb8c2a1860fc83 -src-git packages_berlin git://github.com/freifunk-berlin/firmware-packages.git^34d859b8eb5e7e56738a3de6bcc74e8f31072f18 +src-git packages https://github.com/openwrt/packages.git^5c749ad53ed466c0fb1b981a0f662bd0f4dec5c4 +src-git luci https://github.com/openwrt/luci.git^e306ee6c93c1ef600012f47e40dd75020d4ab555 +src-git routing https://github.com/openwrt-routing/packages.git^dd36dd47bbd75defcb3c517cafe7a19ee425f0af +src-git packages_berlin https://github.com/freifunk-berlin/firmware-packages.git^3186386056cf52ebea3c7298b0a57fa8eafc851e ## # just for reference (syntax of different feed-sources) # see https://wiki.openwrt.org/doc/devel/feeds for more info ## -#src-git packages_berlin git://github.com/freifunk-berlin/firmware-packages.git;master +#src-git packages_berlin https://github.com/freifunk-berlin/firmware-packages.git;master #src-link packages_berlin ../../../firmware-packages diff --git a/patches/000-fix-mt7620-failsafe.patch b/patches/000-fix-mt7620-failsafe.patch deleted file mode 100644 index 6c5bc398b2..0000000000 --- a/patches/000-fix-mt7620-failsafe.patch +++ /dev/null @@ -1,17 +0,0 @@ -Index: openwrt/target/linux/ramips/base-files/lib/preinit/07_set_preinit_iface_ramips -=================================================================== ---- openwrt.orig/target/linux/ramips/base-files/lib/preinit/07_set_preinit_iface_ramips -+++ openwrt/target/linux/ramips/base-files/lib/preinit/07_set_preinit_iface_ramips -@@ -26,6 +26,12 @@ ramips_set_preinit_iface() { - vconfig add eth0 1 - ifconfig eth0 up - ifname=eth0.1 -+ elif grep MT7620 /proc/cpuinfo; then -+ # from https://dev.openwrt.org/ticket/18768#comment:5 -+ swconfig dev mt7620 set reset 1 -+ swconfig dev mt7620 set enable_vlan 0 -+ swconfig dev mt7620 set apply -+ ifname=eth0 - else - ifname=eth0 - fi diff --git a/patches/003-add_tpl-wr842v3.patch b/patches/003-add_tpl-wr842v3.patch deleted file mode 100644 index e18b79fc6c..0000000000 --- a/patches/003-add_tpl-wr842v3.patch +++ /dev/null @@ -1,275 +0,0 @@ -commit 4f495c236f7a288810d1b51663b0b53081587cb9 -Author: Sven Roederer -Date: Fri May 20 23:29:08 2016 +0200 - - ar71xx: add support for TP-LINK TL-WR842N/ND v3 - - - CPU QCA9531-BL3A - - RAM: 64MB - - flash: 16MB - - USB - - AP143 platform, similar to tl-wr841n v10/v11, but with USB - - modified for OpenWRT-CC from LEDE-Project 0b45bec22c59cc6e6b2fa71dc9a88386c5587132 - -Index: openwrt/target/linux/ar71xx/base-files/etc/diag.sh -=================================================================== ---- openwrt.orig/target/linux/ar71xx/base-files/etc/diag.sh -+++ openwrt/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-wr842n-v3 | \ - tl-wr941nd | \ - tl-wr941nd-v5) - status_led="tp-link:green:system" -Index: openwrt/target/linux/ar71xx/base-files/etc/uci-defaults/01_leds -=================================================================== ---- openwrt.orig/target/linux/ar71xx/base-files/etc/uci-defaults/01_leds -+++ openwrt/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" -Index: openwrt/target/linux/ar71xx/base-files/etc/uci-defaults/02_network -=================================================================== ---- openwrt.orig/target/linux/ar71xx/base-files/etc/uci-defaults/02_network -+++ openwrt/target/linux/ar71xx/base-files/etc/uci-defaults/02_network -@@ -440,6 +440,7 @@ tl-wr741nd-v4 |\ - tl-wr841n-v7 |\ - tl-wr841n-v9 |\ - tl-wr841n-v11 |\ -+tl-wr842n-v3 |\ - whr-g301n |\ - whr-hp-g300n |\ - whr-hp-gn |\ -Index: openwrt/target/linux/ar71xx/base-files/lib/ar71xx.sh -=================================================================== ---- openwrt.orig/target/linux/ar71xx/base-files/lib/ar71xx.sh -+++ openwrt/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" - ;; -Index: openwrt/target/linux/ar71xx/base-files/lib/upgrade/platform.sh -=================================================================== ---- openwrt.orig/target/linux/ar71xx/base-files/lib/upgrade/platform.sh -+++ openwrt/target/linux/ar71xx/base-files/lib/upgrade/platform.sh -@@ -360,6 +360,7 @@ platform_check_image() { - tl-wr841n-v9 | \ - tl-wr841n-v11 | \ - tl-wr842n-v2 | \ -+ tl-wr842n-v3 | \ - tl-wr941nd | \ - tl-wr941nd-v5 | \ - tl-wr941nd-v6 | \ -Index: openwrt/target/linux/ar71xx/files/arch/mips/ath79/mach-tl-wr841n-v9.c -=================================================================== ---- openwrt.orig/target/linux/ar71xx/files/arch/mips/ath79/mach-tl-wr841n-v9.c -+++ openwrt/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/v11/TL-WR842N/ND v3 - * - * Copyright (C) 2014 Matthias Schiffer - * Copyright (C) 2016 Cezary Jackiewicz -@@ -49,6 +49,20 @@ - #define TL_WR841NV11_GPIO_BTN_RESET 12 - #define TL_WR841NV11_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_WR841NV9_KEYS_POLL_INTERVAL 20 /* msecs */ - #define TL_WR841NV9_KEYS_DEBOUNCE_INTERVAL (3 * TL_WR841NV9_KEYS_POLL_INTERVAL) - -@@ -151,6 +165,68 @@ static struct gpio_led tl_wr841n_v11_led - }, - }; - -+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 void __init tl_ap143_setup(void) - { - u8 *mac = (u8 *) KSEG1ADDR(0x1f01fc00); -@@ -212,3 +288,21 @@ static void __init tl_wr841n_v11_setup(v - - MIPS_MACHINE(ATH79_MACH_TL_WR841N_V11, "TL-WR841N-v11", "TP-LINK TL-WR841N/ND v11", - tl_wr841n_v11_setup); -+ -+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); -+ -Index: openwrt/target/linux/ar71xx/image/Makefile -=================================================================== ---- openwrt.orig/target/linux/ar71xx/image/Makefile -+++ openwrt/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) -Index: openwrt/target/linux/ar71xx/patches-3.18/912-MIPS-ath79-add-tl_wr842v3.patch -=================================================================== ---- /dev/null -+++ openwrt/target/linux/ar71xx/patches-3.18/912-MIPS-ath79-add-tl_wr842v3.patch -@@ -0,0 +1,34 @@ -+--- a/arch/mips/ath79/Kconfig -++++ b/arch/mips/ath79/Kconfig -+@@ -1314,13 +1314,14 @@ config ATH79_MACH_TL_WR841N_V8 -+ select ATH79_DEV_WMAC -+ -+ config ATH79_MACH_TL_WR841N_V9 -+- bool "TP-LINK TL-WR841N/ND v9 support" -+- select SOC_QCA953X -+- select ATH79_DEV_ETH -+- select ATH79_DEV_GPIO_BUTTONS -+- select ATH79_DEV_LEDS_GPIO -+- select ATH79_DEV_M25P80 -+- select ATH79_DEV_WMAC -++ bool "TP-LINK TL-WR841N/ND v9/TL-WR842N/ND v3 support" -++ select SOC_QCA953X -++ select ATH79_DEV_ETH -++ select ATH79_DEV_GPIO_BUTTONS -++ select ATH79_DEV_LEDS_GPIO -++ select ATH79_DEV_M25P80 -++ select ATH79_DEV_USB -++ select ATH79_DEV_WMAC -+ -+ config ATH79_MACH_TL_WR941ND -+ bool "TP-LINK TL-WR941ND support"--- a/arch/mips/ath79/machtypes.h -+--- a/arch/mips/ath79/machtypes.h -++++ b/arch/mips/ath79/machtypes.h -+@@ -171,6 +171,7 @@ -+ ATH79_MACH_TL_WR841N_V8, /* TP-LINK TL-WR841N/ND v8 */ -+ ATH79_MACH_TL_WR841N_V9, /* TP-LINK TL-WR841N/ND v9 */ -+ ATH79_MACH_TL_WR842N_V2, /* TP-LINK TL-WR842N/ND v2 */ -++ ATH79_MACH_TL_WR842N_V3, /* TP-LINK TL-WR842N/ND v3 */ -+ ATH79_MACH_TL_WR941ND, /* TP-LINK TL-WR941ND */ -+ ATH79_MACH_TL_WR941ND_V5, /* TP-LINK TL-WR941ND v5 */ -+ ATH79_MACH_TL_WR941ND_V6, /* TP-LINK TL-WR941ND v6 */ diff --git a/patches/004-add_GL-AR150.patch b/patches/004-add_GL-AR150.patch deleted file mode 100644 index 5f9719960a..0000000000 --- a/patches/004-add_GL-AR150.patch +++ /dev/null @@ -1,322 +0,0 @@ -commit e466da52e3ac0fca93cfb3bd10da7582c7e3e28d -Author: alzhao@gmail.com -Date: Thu May 5 11:02:05 2016 +0800 - - ar71xx: add GL-AR150 support - - Backport of changeset 47620, add support of GL-AR150 to cc - - Signed-off-by: Alfie Zhao - -Index: openwrt/target/linux/ar71xx/base-files/etc/uci-defaults/01_leds -=================================================================== ---- openwrt.orig/target/linux/ar71xx/base-files/etc/uci-defaults/01_leds -+++ openwrt/target/linux/ar71xx/base-files/etc/uci-defaults/01_leds -@@ -188,6 +188,10 @@ dlan-pro-1200-ac) - ucidef_set_led_trigger_gpio "plcr" "dLAN" "devolo:error:dlan" "16" "0" - ;; - -+gl-ar150) -+ ucidef_set_led_wlan "wlan" "WLAN" "gl_ar150:wlan" "phy0tpt" -+ ;; -+ - gl-inet) - ucidef_set_led_netdev "lan" "LAN" "gl-connect:green:lan" "eth1" - ucidef_set_led_wlan "wlan" "WLAN" "gl-connect:red:wlan" "phy0tpt" -Index: openwrt/target/linux/ar71xx/base-files/etc/uci-defaults/02_network -=================================================================== ---- openwrt.orig/target/linux/ar71xx/base-files/etc/uci-defaults/02_network -+++ openwrt/target/linux/ar71xx/base-files/etc/uci-defaults/02_network -@@ -382,6 +382,7 @@ dir-505-a1) - alfa-ap96 |\ - alfa-nx |\ - ap83 |\ -+gl-ar150 |\ - gl-inet |\ - jwap003 |\ - pb42 |\ -Index: openwrt/target/linux/ar71xx/base-files/lib/ar71xx.sh -=================================================================== ---- openwrt.orig/target/linux/ar71xx/base-files/lib/ar71xx.sh -+++ openwrt/target/linux/ar71xx/base-files/lib/ar71xx.sh -@@ -461,6 +461,9 @@ ar71xx_board_detect() { - name="gl-inet" - gl_inet_board_detect - ;; -+ *"GL-AR150") -+ name="gl-ar150" -+ ;; - *"EnGenius EPG5000") - name="epg5000" - ;; -Index: openwrt/target/linux/ar71xx/base-files/lib/upgrade/platform.sh -=================================================================== ---- openwrt.orig/target/linux/ar71xx/base-files/lib/upgrade/platform.sh -+++ openwrt/target/linux/ar71xx/base-files/lib/upgrade/platform.sh -@@ -212,6 +212,7 @@ platform_check_image() { - dlan-pro-500-wp | \ - dlan-pro-1200-ac | \ - dragino2 | \ -+ gl-ar150 | \ - epg5000 | \ - esr1750 | \ - esr900 | \ -Index: openwrt/target/linux/ar71xx/config-3.18 -=================================================================== ---- openwrt.orig/target/linux/ar71xx/config-3.18 -+++ openwrt/target/linux/ar71xx/config-3.18 -@@ -70,6 +70,7 @@ CONFIG_ATH79_MACH_ESR1750=y - CONFIG_ATH79_MACH_ESR900=y - CONFIG_ATH79_MACH_EW_DORIN=y - CONFIG_ATH79_MACH_F9K1115V2=y -+CONFIG_ATH79_MACH_GL_AR150=y - CONFIG_ATH79_MACH_GL_INET=y - CONFIG_ATH79_MACH_GS_MINIBOX_V1=y - CONFIG_ATH79_MACH_GS_OOLITE=y -Index: openwrt/target/linux/ar71xx/files/arch/mips/ath79/mach-gl-ar150.c -=================================================================== ---- /dev/null -+++ openwrt/target/linux/ar71xx/files/arch/mips/ath79/mach-gl-ar150.c -@@ -0,0 +1,125 @@ -+/* -+ * GL_ar150 board support -+ * -+ * Copyright (C) 2011 dongyuqi <729650915@qq.com> -+ * Copyright (C) 2011-2012 Gabor Juhos -+ * Copyright (C) 2013 alzhao -+ * Copyright (C) 2014 Michel Stempin -+ * -+ * This program is free software; you can redistribute it and/or modify it -+ * under the terms of the GNU General Public License version 2 as published -+ * by the Free Software Foundation. -+*/ -+ -+#include -+ -+#include -+ -+#include "dev-eth.h" -+#include "dev-gpio-buttons.h" -+#include "dev-leds-gpio.h" -+#include "dev-m25p80.h" -+#include "dev-usb.h" -+#include "dev-wmac.h" -+#include "machtypes.h" -+ -+#define GL_AR150_GPIO_LED_WLAN 0 -+#define GL_AR150_GPIO_LED_LAN 13 -+#define GL_AR150_GPIO_LED_WAN 15 -+ -+#define GL_AR150_GPIO_BIN_USB 6 -+#define GL_AR150_GPIO_BTN_MANUAL 7 -+#define GL_AR150_GPIO_BTN_AUTO 8 -+#define GL_AR150_GPIO_BTN_RESET 11 -+ -+#define GL_AR150_KEYS_POLL_INTERVAL 20 /* msecs */ -+#define GL_AR150_KEYS_DEBOUNCE_INTERVAL (3 * GL_AR150_KEYS_POLL_INTERVAL) -+ -+#define GL_AR150_MAC0_OFFSET 0x0000 -+#define GL_AR150_MAC1_OFFSET 0x0000 -+#define GL_AR150_CALDATA_OFFSET 0x1000 -+#define GL_AR150_WMAC_MAC_OFFSET 0x0000 -+ -+static struct gpio_led gl_ar150_leds_gpio[] __initdata = { -+ { -+ .name = "gl_ar150:wlan", -+ .gpio = GL_AR150_GPIO_LED_WLAN, -+ .active_low = 0, -+ }, -+ { -+ .name = "gl_ar150:lan", -+ .gpio = GL_AR150_GPIO_LED_LAN, -+ .active_low = 0, -+ }, -+ { -+ .name = "gl_ar150:wan", -+ .gpio = GL_AR150_GPIO_LED_WAN, -+ .active_low = 0, -+ .default_state = 1, -+ }, -+}; -+ -+static struct gpio_keys_button gl_ar150_gpio_keys[] __initdata = { -+ { -+ .desc = "BTN_7", -+ .type = EV_KEY, -+ .code = BTN_7, -+ .debounce_interval = GL_AR150_KEYS_DEBOUNCE_INTERVAL, -+ .gpio = GL_AR150_GPIO_BTN_MANUAL, -+ .active_low = 0, -+ }, -+ { -+ .desc = "BTN_8", -+ .type = EV_KEY, -+ .code = BTN_8, -+ .debounce_interval = GL_AR150_KEYS_DEBOUNCE_INTERVAL, -+ .gpio = GL_AR150_GPIO_BTN_AUTO, -+ .active_low = 0, -+ }, -+ { -+ .desc = "reset", -+ .type = EV_KEY, -+ .code = KEY_RESTART, -+ .debounce_interval = GL_AR150_KEYS_DEBOUNCE_INTERVAL, -+ .gpio = GL_AR150_GPIO_BTN_RESET, -+ .active_low = 0, -+ }, -+}; -+ -+static void __init gl_ar150_setup(void) -+{ -+ -+ /* ART base address */ -+ u8 *art = (u8 *) KSEG1ADDR(0x1fff0000); -+ -+ /* disable PHY_SWAP and PHY_ADDR_SWAP bits */ -+ ath79_setup_ar933x_phy4_switch(false, false); -+ -+ /* register flash. */ -+ ath79_register_m25p80(NULL); -+ -+ /* register gpio LEDs and keys */ -+ ath79_register_leds_gpio(-1, ARRAY_SIZE(gl_ar150_leds_gpio), -+ gl_ar150_leds_gpio); -+ ath79_register_gpio_keys_polled(-1, GL_AR150_KEYS_POLL_INTERVAL, -+ ARRAY_SIZE(gl_ar150_gpio_keys), -+ gl_ar150_gpio_keys); -+ -+ /* enable usb */ -+ gpio_request_one(GL_AR150_GPIO_BIN_USB, -+ GPIOF_OUT_INIT_HIGH | GPIOF_EXPORT_DIR_FIXED, -+ "USB power"); -+ ath79_register_usb(); -+ -+ /* register eth0 as WAN, eth1 as LAN */ -+ ath79_init_mac(ath79_eth0_data.mac_addr, art+GL_AR150_MAC0_OFFSET, 0); -+ ath79_init_mac(ath79_eth1_data.mac_addr, art+GL_AR150_MAC1_OFFSET, 0); -+ ath79_register_mdio(0, 0x0); -+ ath79_register_eth(0); -+ ath79_register_eth(1); -+ -+ /* register wireless mac with cal data */ -+ ath79_register_wmac(art + GL_AR150_CALDATA_OFFSET, art + GL_AR150_WMAC_MAC_OFFSET); -+} -+ -+MIPS_MACHINE(ATH79_MACH_GL_AR150, "GL-AR150", "GL-AR150",gl_ar150_setup); -Index: openwrt/target/linux/ar71xx/generic/profiles/gl-connect.mk -=================================================================== ---- openwrt.orig/target/linux/ar71xx/generic/profiles/gl-connect.mk -+++ /dev/null -@@ -1,17 +0,0 @@ --# --# Copyright (C) 2014 OpenWrt.org --# --# This is free software, licensed under the GNU General Public License v2. --# See /LICENSE for more information. --# -- --define Profile/GLINET -- NAME:=GL.iNet -- PACKAGES:=kmod-usb-core kmod-usb2 --endef -- --define Profile/GLINET/Description -- Package set optimized for the GL-Connect GL.iNet v1. --endef -- --$(eval $(call Profile,GLINET)) -Index: openwrt/target/linux/ar71xx/generic/profiles/gli.mk -=================================================================== ---- /dev/null -+++ openwrt/target/linux/ar71xx/generic/profiles/gli.mk -@@ -0,0 +1,27 @@ -+# -+# Copyright (C) 2013 OpenWrt.org -+# -+# This is free software, licensed under the GNU General Public License v2. -+# See /LICENSE for more information. -+# -+define Profile/GLINET -+ NAME:=GL.iNet 6416 -+ PACKAGES:=kmod-usb-core kmod-usb2 -+endef -+ -+define Profile/GLINET/Description -+ Package set optimized for the GL-Connect GL.iNet v1. -+endef -+ -+$(eval $(call Profile,GLINET)) -+ -+define Profile/GL-AR150 -+ NAME:=GL-AR150 -+ PACKAGES:=kmod-usb-core kmod-usb2 -+endef -+ -+define Profile/GL-AR150/Description -+ Configuration of GL-AR150. -+endef -+ -+$(eval $(call Profile,GL-AR150)) -Index: openwrt/target/linux/ar71xx/image/Makefile -=================================================================== ---- openwrt.orig/target/linux/ar71xx/image/Makefile -+++ openwrt/target/linux/ar71xx/image/Makefile -@@ -144,6 +144,14 @@ define Device/weio - endef - TARGET_DEVICES += weio - -+define Device/gl-ar150 -+ BOARDNAME = GL-AR150 -+ IMAGE_SIZE = 16000k -+ CONSOLE = ttyATH0,115200 -+ MTDPARTS = spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,16000k(firmware),64k(art)ro -+endef -+TARGET_DEVICES += gl-ar150 -+ - define Device/wndr3700 - BOARDNAME = WNDR3700 - NETGEAR_KERNEL_MAGIC = 0x33373030 -Index: openwrt/target/linux/ar71xx/patches-3.18/911-MIPS-ath79-add-gl_ar150.patch -=================================================================== ---- /dev/null -+++ openwrt/target/linux/ar71xx/patches-3.18/911-MIPS-ath79-add-gl_ar150.patch -@@ -0,0 +1,39 @@ -+--- a/arch/mips/ath79/Kconfig -++++ b/arch/mips/ath79/Kconfig -+@@ -533,6 +533,16 @@ config ATH79_MACH_GL_INET -+ select ATH79_DEV_USB -+ select ATH79_DEV_WMAC -+ -++config ATH79_MACH_GL_AR150 -++ bool "GL AR150 support" -++ select SOC_AR933X -++ select ATH79_DEV_ETH -++ select ATH79_DEV_GPIO_BUTTONS -++ select ATH79_DEV_LEDS_GPIO -++ select ATH79_DEV_M25P80 -++ select ATH79_DEV_USB -++ select ATH79_DEV_WMAC -++ -+ config ATH79_MACH_EAP300V2 -+ bool "EnGenius EAP300 v2 support" -+ select SOC_AR934X -+--- a/arch/mips/ath79/Makefile -++++ b/arch/mips/ath79/Makefile -+@@ -78,6 +78,7 @@ obj-$(CONFIG_ATH79_MACH_EL_MINI) += mach -+ obj-$(CONFIG_ATH79_MACH_EPG5000) += mach-epg5000.o -+ obj-$(CONFIG_ATH79_MACH_ESR1750) += mach-esr1750.o -+ obj-$(CONFIG_ATH79_MACH_F9K1115V2) += mach-f9k1115v2.o -++obj-$(CONFIG_ATH79_MACH_GL_AR150) += mach-gl-ar150.o -+ obj-$(CONFIG_ATH79_MACH_GL_INET) += mach-gl-inet.o -+ obj-$(CONFIG_ATH79_MACH_GS_MINIBOX_V1) += mach-gs-minibox-v1.o -+ obj-$(CONFIG_ATH79_MACH_GS_OOLITE) += mach-gs-oolite.o -+--- a/arch/mips/ath79/machtypes.h -++++ b/arch/mips/ath79/machtypes.h -+@@ -67,6 +67,7 @@ enum ath79_mach_type { -+ ATH79_MACH_ESR1750, /* EnGenius ESR1750 */ -+ ATH79_MACH_EPG5000, /* EnGenius EPG5000 */ -+ ATH79_MACH_F9K1115V2, /* Belkin AC1750DB */ -++ ATH79_MACH_GL_AR150, /* GL-AR150 support */ -+ ATH79_MACH_GL_INET, /* GL-CONNECT GL-INET */ -+ ATH79_MACH_GS_MINIBOX_V1, /* Gainstrong MiniBox V1.0 */ -+ ATH79_MACH_GS_OOLITE, /* GS OOLITE V1.0 */ diff --git a/patches/100-add_package_snmp-mibs.patch b/patches/100-add_package_snmp-mibs.patch deleted file mode 100644 index cd19571689..0000000000 --- a/patches/100-add_package_snmp-mibs.patch +++ /dev/null @@ -1,62 +0,0 @@ -commit 5eead6cd002b4d66f13123886c2d263ef94ec351 -Author: Sven Roederer -Date: Sat Jul 23 13:26:01 2016 +0200 - - net-snmp: add package snmp-mibs - - this installs the default MIBS-files under /usr/share/snmp/mibs - -diff --git a/feeds/packages/net/net-snmp/Makefile b/feeds/packages/net/net-snmp/Makefile -index 5736e0d..86a70b1 100644 ---- a/feeds/packages/net/net-snmp/Makefile -+++ b/feeds/packages/net/net-snmp/Makefile -@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk - - PKG_NAME:=net-snmp - PKG_VERSION:=5.4.4 --PKG_RELEASE:=1 -+PKG_RELEASE:=2 - - PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz - PKG_SOURCE_URL:=@SF/net-snmp -@@ -88,6 +88,18 @@ $(call Package/net-snmp/Default/description) - endef - - -+define Package/snmp-mibs -+$(call Package/net-snmp/Default) -+ TITLE:=Open source SNMP implementation (MIB-files) -+endef -+ -+define Package/snmp-mibs/description -+$(call Package/net-snmp/Default/description) -+ . -+ This package contains SNMP MIB-Files. -+endef -+ -+ - SNMP_MIB_MODULES_INCLUDED = \ - host/hr_device \ - host/hr_disk \ -@@ -164,7 +176,6 @@ CONFIGURE_ARGS += \ - --enable-applications \ - --disable-debugging \ - --disable-manuals \ -- --disable-mibs \ - --disable-scripts \ - --with-out-mib-modules="$(SNMP_MIB_MODULES_EXCLUDED)" \ - --with-mib-modules="$(SNMP_MIB_MODULES_INCLUDED)" \ -@@ -250,7 +261,13 @@ define Package/snmp-utils/install - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/snmp{get,set,status,test,trap,walk} $(1)/usr/bin/ - endef - -+define Package/snmp-mibs/install -+ $(INSTALL_DIR) $(1)/usr/share/snmp/mibs -+ $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/snmp/mibs/* $(1)/usr/share/snmp/mibs/ -+endef -+ - $(eval $(call BuildPackage,libnetsnmp)) - $(eval $(call BuildPackage,snmp-utils)) - $(eval $(call BuildPackage,snmpd)) - $(eval $(call BuildPackage,snmpd-static)) -+$(eval $(call BuildPackage,snmp-mibs)) diff --git a/patches/series b/patches/series index 765466ae58..94978a75a3 100644 --- a/patches/series +++ b/patches/series @@ -1,19 +1,5 @@ -000-fix-mt7620-failsafe.patch 001-rt2x00_allow_adhoc_and_ap.patch 002-add_ramips-nexx-image.patch -003-add_tpl-wr842v3.patch -004-add_GL-AR150.patch -005-add_GL-AR300.patch -006-add_GL-DominoPi.patch -007-add_GL-MT300A.patch -008-add_GL-MT300N.patch -009-add_GL-MT750.patch -010-tpl-CPE_enable_LNA.patch -011-tpl-wr841_names.patch -012-iwinfo_add_nsm2locoxm.patch -100-add_package_snmp-mibs.patch -200-update-community-profiles.patch 600-imagebuilder-custom-postinst-script.patch 701-luci-freifunk-policyrouting-berlin.patch -702-luci-bootstrap-input-css.patch 703-policyrouting_fix_bypass-vpn.patch diff --git a/profiles/ar71xx-mikrotik.profiles b/profiles/ar71xx-mikrotik.profiles index 8b19395a15..697bb66f2c 100644 --- a/profiles/ar71xx-mikrotik.profiles +++ b/profiles/ar71xx-mikrotik.profiles @@ -1 +1 @@ -DefaultNoWifi +Default