openwrt/staging/pepe2k.git
4 years agoipq40xx: use ath10k-ct-smallbuffers for 128 MiB devices
Paul Fertser [Tue, 24 Dec 2019 17:49:10 +0000 (20:49 +0300)]
ipq40xx: use ath10k-ct-smallbuffers for 128 MiB devices

Signed-off-by: Paul Fertser <fercerpav@gmail.com>
(cherry picked from commit 0b7d779dcfc57507ab1d06ce6f1052d25e9de017)

4 years agokernel: bump 4.14 to 4.14.160
Hauke Mehrtens [Tue, 24 Dec 2019 13:36:38 +0000 (14:36 +0100)]
kernel: bump 4.14 to 4.14.160

Refreshed all patches.

Compile-tested on: ipq40xx, ath79
Runtime-tested on: ipq40xx

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
4 years agokernel: bump 4.14 to 4.14.159
Koen Vandeputte [Wed, 18 Dec 2019 15:39:42 +0000 (16:39 +0100)]
kernel: bump 4.14 to 4.14.159

Refreshed all patches.

Remove upstreamed:
- 302-0002-dmaengine-dw-implement-per-channel-protection-contro.patch

Fixes:
- CVE-2019-19332

Compile-tested on: cns3xxx
Runtime-tested on: cns3xxx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
4 years agoath79: use ath10k-ct-smallbuffers for 64 MiB devices
Paul Fertser [Tue, 24 Dec 2019 12:04:26 +0000 (15:04 +0300)]
ath79: use ath10k-ct-smallbuffers for 64 MiB devices

Signed-off-by: Paul Fertser <fercerpav@gmail.com>
4 years agoath10k-firmware: Add kmod-ath10k-ct-smallbuffers to depends
Hauke Mehrtens [Mon, 23 Dec 2019 23:46:51 +0000 (00:46 +0100)]
ath10k-firmware: Add kmod-ath10k-ct-smallbuffers to depends

Only select ath10k-ct-regular when smallbuffers version was not
selected.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 80f06cb601160534f20e61d476dcedba77d5a47d)

4 years agokernel: ath10k-ct: provide a build variant for small RAM devices
Paul Fertser [Sun, 22 Dec 2019 18:20:57 +0000 (21:20 +0300)]
kernel: ath10k-ct: provide a build variant for small RAM devices

According to many bugreports [0][1][2] the default ath10k-ct kernel
module is unusable on devices with just 64 MiB RAM or with 128 MiB and
dual ath10k cards. The target boards boot but eventually oom-killer
starts to interfere with normal operation, so the current state is
effectively broken.

Since the two patches in question have a performance impact (and
possibly some other unexpected side-effects) a dedicated build variant
is added so that users of the low RAM devices can still benefit from all
the ath10k-ct advantages.

According to testing [3] results, the issue can be experienced even with
"a 256MB device with three radios". Measured performance impact of
implementing small buffers was lowering "the maximum 5 GHz throughput on
an IPQ40xx device without RPS/XPS optimizations from 494/432 Mbit/s for
TCP transfers (download/upload) to 438/343 Mbit/s"

The patches were apparently inspired by QSDK tweaks used by ODMs for the
affected devices.

[0] http://lists.infradead.org/pipermail/openwrt-devel/2019-December/020573.html
[1] https://github.com/openwrt/openwrt/pull/1077
[2] https://bugs.openwrt.org/index.php?do=details&task_id=2664
[3] https://github.com/freifunk-gluon/gluon/pull/1440#issue-195607701

Signed-off-by: Paul Fertser <fercerpav@gmail.com>
[Remove double CONFIG_ATH10K-CT_LEDS entry]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 1ac627024de916eb157659caf49f93fa89d3b19a)

4 years agofstools: update to latest git HEAD
Jo-Philipp Wich [Sun, 22 Dec 2019 20:30:02 +0000 (21:30 +0100)]
fstools: update to latest git HEAD

b4e25d5 libblkid-tiny: fix symbol collision with full libblkid

Fixes: FS#2691, FS#2692
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 5f4244150f99d7bf72a96ec4d9c1055386e66b53)

4 years agofstools: update to latest git HEAD
Rafał Miłecki [Fri, 20 Dec 2019 07:19:02 +0000 (08:19 +0100)]
fstools: update to latest git HEAD

111a43f libblkid-tiny: vfat: Change parsing label in special cases
f43a1aa libblkid-tiny: vfat: Fix reading labels which starts with byte 0x05
157924d libblkid-tiny: add blkid_probe_set_id_label() stub
0c5761f libblkid-tiny: use separated buffer for each block device read
b82c5c1 libblkid-tiny: add functions for allocating & freeing probe struct
12851d6 blockd: don't flush devices list on "hotplug" call
5ea47fe blockd: fix vlist memory corruption

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit 4ebc9dc9c4faf8d9abc4197a74b892a66d9c1bcb)

4 years agofstools: bump to version 2019-11-03
Yousong Zhou [Sun, 3 Nov 2019 02:18:33 +0000 (02:18 +0000)]
fstools: bump to version 2019-11-03

2f2a09a block: mount_device: err log only when mp deviates from spec
da4edc1 block: mount_device: skip extroot earlier
32c3126 block: mount_action: handle mount/umount deps
fb0700f block: support hierarchical mount/umount
1212b5b block: umount: skip / unless -a is given
eda8b3f block: use fsck.fat instead of dosfsck
d05276d libblkid-tiny: ntfs: fix use-after-free

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
(cherry picked from commit e4af39d56395738d86daa4babb379ab605b4d277)

4 years agofstools: update to latest Git HEAD
Hauke Mehrtens [Fri, 20 Sep 2019 23:02:11 +0000 (01:02 +0200)]
fstools: update to latest Git HEAD

4327ed4 mkdev: Avoid out of bounds read
9b3eb63 libblkid-tiny: use blkid_probe_set_utf8label for label set
c9d0462 libblkid-tiny: adds blkid_probe_set_utf8label support

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 541a3210707d1fc4b439ac61dc06816dcec2ab10)

4 years agolibubox: bump to version 2019-10-29
Yousong Zhou [Sun, 3 Nov 2019 02:16:56 +0000 (02:16 +0000)]
libubox: bump to version 2019-10-29

It contains a single change to vlist.h header file: "vlist: add more
macros for loop iteration".  This is needed for newer version of fstools

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
(cherry picked from commit 51e76247762d265d4a4aac33456876b83b0cca25)

4 years agolibubox: update to latest git HEAD
Roman Yeryomin [Mon, 21 Oct 2019 21:10:04 +0000 (00:10 +0300)]
libubox: update to latest git HEAD

eb30a03 libubox, jshn: add option to write output to a file

Signed-off-by: Roman Yeryomin <roman@advem.lv>
(cherry picked from commit c0e7ec91a0927002942631bbc995b90f5f7dd7ed)

4 years agokernel: remove LINUX_4_9 dependency of kmod-dax
Sungbo Eo [Fri, 6 Dec 2019 13:49:16 +0000 (22:49 +0900)]
kernel: remove LINUX_4_9 dependency of kmod-dax

This patch resolves recursive dependency warning on a feed package:

$ make defconfig
Collecting package info: done
tmp/.config-package.in:104721:error: recursive dependency detected!
For a resolution refer to Documentation/kbuild/kconfig-language.txt
subsection "Kconfig recursive dependency limitations"
tmp/.config-package.in:104721:symbol PACKAGE_nfs-kernel-server depends on NFS_KERNEL_SERVER_V4
For a resolution refer to Documentation/kbuild/kconfig-language.txt
subsection "Kconfig recursive dependency limitations"
feeds/packages/net/nfs-kernel-server/Config.in:4:symbol NFS_KERNEL_SERVER_V4 depends on PACKAGE_nfs-kernel-server
#
# configuration written to .config
#

19.07 branch uses kernel 4.14 only, so CONFIG_LINUX_4_9 symbol is not
needed anyway.

Ref: https://github.com/openwrt/packages/issues/10490

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
4 years agoscripts/dowload.pl: add archive.apache.org to apache mirror list
Jiri Kastner [Thu, 28 Nov 2019 15:29:31 +0000 (16:29 +0100)]
scripts/dowload.pl: add archive.apache.org to apache mirror list

apache mirrors holds only latest releases, to download
older releases, one must use archive.apache.org to get
them.

Signed-off-by: Jiri Kastner <cz172638@gmail.com>
(cherry picked from commit dc34c695c4faa46efc6e2367a2ba06a47caa4840)

4 years agokernel: fix *-gpio-custom module unloading
Sungbo Eo [Fri, 6 Dec 2019 14:25:48 +0000 (23:25 +0900)]
kernel: fix *-gpio-custom module unloading

Unloading and reloading the modules fails, as platform_device_put() does not
release resources fully.

root@OpenWrt:/# insmod i2c-gpio-custom bus0=0,18,0,5
[  196.860620] Custom GPIO-based I2C driver version 0.1.1
[  196.871162] ------------[ cut here ]------------
[  196.880517] WARNING: CPU: 0 PID: 1365 at fs/sysfs/dir.c:31 0x80112158
[  196.893431] sysfs: cannot create duplicate filename '/devices/platform/i2c-gpio.0'
...
[  197.513200] kobject_add_internal failed for i2c-gpio.0 with -EEXIST, don't try to register things with the same name in the same directory.

This patch fixes it by replacing platform_device_put() to
platform_device_unregister().

Fixes: da7740853715 ("i2c-gpio-custom: minor bugfix")
Fixes: 3bc81edc70e8 ("package: fix w1-gpio-custom package (closes #6770)")
Signed-off-by: Sungbo Eo <mans0n@gorani.run>
(cherry picked from commit a22b7a60d98836343c4f7b9ec0fcae68d9131522)

4 years agocmake: Install host packages to lib instead of lib64
Rosen Penev [Sun, 17 Nov 2019 21:42:04 +0000 (13:42 -0800)]
cmake: Install host packages to lib instead of lib64

Several CMake packages such as log4cplus and protobuf(-c) install to
lib64 instead of lib on some hosts. This completely breaks rpath linking.
Override it globally to avoid fixing each package individually.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Tested-by: Sebastian Kemper <sebastian_ml@gmx.net>
(cherry picked from commit 383abffb1179a142b4c8f86559baad5b24d391c3)

4 years agoadb: fix for SuperSpeed devices
Bjørn Mork [Tue, 19 Nov 2019 13:37:24 +0000 (14:37 +0100)]
adb: fix for SuperSpeed devices

The USB descriptor parsing in adb fails to detect SuperSpeed devices
because of the SuperSpeed Endpoint Companion Descriptor.  This
cherry-picks the upstream fix for the problem.

Unfortunately there never were a release with this fix before the
conversion to C++, so upgrading to a newer version isn't an option.

This makes adb work with SuperSpeed devices like the Sierra Wireless
EM7565.  Tested and verified.

Signed-off-by: Bjørn Mork <bjorn@mork.no>
(cherry picked from commit d034a1f4577108a465e8347d11a51dc0e5a29298)

4 years agotoolchain/gcc: Backport patch to fix unconditional MULTIARCH_DIRNAME
Jeffery To [Mon, 18 Nov 2019 22:04:59 +0000 (06:04 +0800)]
toolchain/gcc: Backport patch to fix unconditional MULTIARCH_DIRNAME

This backports the patch for GCC PR target/89587 (gcc's rs6000
configuration unconditionally sets MULTIARCH_DIRNAME, even when
multiarch is disabled).

This currently affects apm821xx and may cause issues when
cross-compiling packages, e.g. Python 3[1].

This includes patches for GCC 8 (with the changelog diff removed);
this change is already included in GCC 9.2 and 7.5.

[1]: https://github.com/openwrt/packages/issues/10552

Signed-off-by: Jeffery To <jeffery.to@gmail.com>
[Removed patch for GCC 7.4.0, GCC 7.5.0 already contains this]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit c102f702e7dc976c2ad2c04c0ce4462373e62365)

4 years agotoolchain/gcc: correct the check expr for newer clang
Yorkie Liu [Tue, 19 Nov 2019 05:41:10 +0000 (13:41 +0800)]
toolchain/gcc: correct the check expr for newer clang

This fixes gcc build error within clang 11.0, it tweaks the version
string from LLVM to clang.

Signed-off-by: Yorkie Liu <yorkiefixer@gmail.com>
(cherry picked from commit 65a561fd0919eafff2363ae8324db64be2a57f77)

4 years agolantiq: fix phys led
Aleksander Jan Bajkowski [Wed, 11 Dec 2019 18:11:42 +0000 (19:11 +0100)]
lantiq: fix phys led

led2l and led2h value is incorrectly set by led3l and led3h.
Bug was introduced in commit: 863e79f8d5544a8a884375d7e867f350fddca9b9

Signed-off-by: Aleksander Jan Bajkowski <A.Bajkowski@stud.elka.pw.edu.pl>
Fixes: 863e79f8d554 ("lantiq: add support for kernel 4.9")
(cherry picked from commit 692390225d76de8f2daf582454e74942b82d090a)

4 years agouhttpd: reset PKG_RELEASE
Jo-Philipp Wich [Sun, 22 Dec 2019 22:03:59 +0000 (23:03 +0100)]
uhttpd: reset PKG_RELEASE

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 97af1fc979d0683649c6bea8a9245a6a9fa5413a)

4 years agouhttpd: update to latest Git HEAD
Jo-Philipp Wich [Sun, 22 Dec 2019 21:50:00 +0000 (22:50 +0100)]
uhttpd: update to latest Git HEAD

5f9ae57 client: fix invalid data access through invalid content-length values

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit f34f9a414dd32311bda950776eb77e63c0c772cb)

4 years agoar71xx: fix MAC address setup for TL-WDR4300 board
Sungbo Eo [Sun, 15 Dec 2019 09:10:18 +0000 (18:10 +0900)]
ar71xx: fix MAC address setup for TL-WDR4300 board

The current ethernet MAC address setup of TL-WDR4300 board is different
from the setup of stock firmware:

OpenWrt: lan = label_mac -2, wan = label_mac -2
  stock: lan = label_mac,    wan = label_mac +1

This patch applies to all devices using TL-WDR4300 board:
TL-WDR3600 v1
TL-WDR4300 v1
TL-WDR4300 v1 (IL)
TL-WDR4310 v1
Mercury MW4530R v1

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
(cherry picked from commit 9b02d32e34df2bb8821ec6f08f525bee22d0d1ba)

4 years agoath79: fix MAC address setup for TP-Link TL-WDR3600/TL-WDR4300
Sungbo Eo [Sun, 15 Dec 2019 09:11:45 +0000 (18:11 +0900)]
ath79: fix MAC address setup for TP-Link TL-WDR3600/TL-WDR4300

The current ethernet MAC address setup of TL-WDR4300 board is different
from the setup of stock firmware:

OpenWrt: lan = label_mac -2, wan = label_mac -2
  stock: lan = label_mac,    wan = label_mac +1

The full address assignment is as follows:
LAN  label
WAN  label + 1
5G   label
2G   label - 1

This patch changes all devices using TL-WDR4300 board:
TL-WDR3600 v1 (checked on device)
TL-WDR4300 v1 (checked on device)
TL-WDR4300 v1 (IL)

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
[rephrase/extend commit title/message, backport]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit a4260eaab7744c8e3f1f7a62a61aab5e3b562342)

4 years agoramips: fix USB LED for Belkin F9K1109v1
Sungbo Eo [Mon, 11 Nov 2019 16:19:03 +0000 (01:19 +0900)]
ramips: fix USB LED for Belkin F9K1109v1

Device support for Belkin F9K1109v1 was added using set_usb_led()
although this was removed in 772b27c20736 ("ramips: set F5D8235 v1
usb led trigger via devicetree").

Use ucidef_set_led_usbport() instead.

Fixes: f2c83532f92c ("ramips: add support for Belkin F9K1109v1")
Signed-off-by: Sungbo Eo <mans0n@gorani.run>
[rephrase commit title and message, backport]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 1f455418ef1ea67fda710e1b86a9e021bb4a2413)

4 years agomac80211: brcm: add support for BCM4359 SDIO chipset
Rafał Miłecki [Thu, 19 Dec 2019 08:16:59 +0000 (09:16 +0100)]
mac80211: brcm: add support for BCM4359 SDIO chipset

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit 17e2246eca901fec79fbac5b7a90f68f60785c4e)

4 years agomac80211: brcm: backport 5.5 and 5.6 kernel patches
Rafał Miłecki [Thu, 19 Dec 2019 07:40:12 +0000 (08:40 +0100)]
mac80211: brcm: backport 5.5 and 5.6 kernel patches

This update doesn't include:
3b1e0a7bdfee brcmfmac: add support for SAE authentication offload
be898fed355e brcmfmac: send port authorized event for FT-802.1X
due to nl80211 dependencies.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit c3aa33bf705027751b344bc668541e5d08ed9495)

4 years agoath79: migrate LED paths of TL-WDR4300 board
Sungbo Eo [Sun, 15 Dec 2019 09:16:55 +0000 (18:16 +0900)]
ath79: migrate LED paths of TL-WDR4300 board

TL-WDR4300 board uses only green LED names in DTSI.
This patch adds migration for them.

The actual LED colors on the devices have been reported to vary
across subrevisions (v1.x). Despite, the USB LEDs on the back might
have different color than the other LEDs on the front.

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
[extended commit message]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 01d39cd18c4035e362f179548cd2c051aac03042)

4 years agomalta: remove CONFIG_LEGACY_PTY from kernel config
Daniel Golle [Mon, 9 Dec 2019 19:16:53 +0000 (20:16 +0100)]
malta: remove CONFIG_LEGACY_PTY from kernel config

Having legacy PTYs enabled causes problems with procd-hotplug.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit e964338110526b3692847769343816cd2f853d18)

4 years agosunxi: remove CONFIG_LEGACY_PTY from kernel config
Daniel Golle [Mon, 9 Dec 2019 19:15:36 +0000 (20:15 +0100)]
sunxi: remove CONFIG_LEGACY_PTY from kernel config

Having legacy PTYs enabled causes problems with procd-hotplug.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit 2105354968ed9698709d220ec446b6d9c27da3a5)

4 years agolayerscape: remove CONFIG_LEGACY_PTY from kernel config
Daniel Golle [Mon, 9 Dec 2019 19:15:02 +0000 (20:15 +0100)]
layerscape: remove CONFIG_LEGACY_PTY from kernel config

Having legacy PTYs enabled causes problems with procd-hotplug.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit 414d027ae8ac05ec9aa06bc50afd5458c2da02fc)

4 years agokirkwood: remove CONFIG_LEGACY_PTY from kernel config
Daniel Golle [Mon, 9 Dec 2019 19:13:41 +0000 (20:13 +0100)]
kirkwood: remove CONFIG_LEGACY_PTY from kernel config

Having legacy PTYs enabled causes problems with procd-hotplug.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit 411e824ec371a322b975e90af5a1f32760a61720)

4 years agoat91: disable legacy PTYs and virtual terminals
Daniel Golle [Mon, 9 Dec 2019 19:12:41 +0000 (20:12 +0100)]
at91: disable legacy PTYs and virtual terminals

Enabling legacy PTYs causes problems with procd-hotplug.
And as this is a headless target, no need to have virtual terminals.
Remove corresponding kernel config options, they are disabled in
generic kernel config.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit c1db4d9c5655e3c74ffdbb6a6a3367269f65c55f)

4 years agompc85xx: remove CONFIG_LEGACY_PTY from kernel config
Daniel Golle [Mon, 9 Dec 2019 19:11:18 +0000 (20:11 +0100)]
mpc85xx: remove CONFIG_LEGACY_PTY from kernel config

Having legacy PTYs enabled causes problems with procd-hotplug.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit d0d7f5d9e49b8632f372c92e0339895fa10904f9)

4 years agouml: remove CONFIG_LEGACY_PTY from kernel config
Daniel Golle [Mon, 9 Dec 2019 19:09:13 +0000 (20:09 +0100)]
uml: remove CONFIG_LEGACY_PTY from kernel config

Having legacy PTYs enabled causes problems with procd-hotplug.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit dcf48fda054c4bbc52f6106250a7e06ab8f5cbdd)

4 years agooxnas: disable legacy PTYs and virtual terminals
Daniel Golle [Mon, 9 Dec 2019 19:07:00 +0000 (20:07 +0100)]
oxnas: disable legacy PTYs and virtual terminals

Enabling legacy PTYs causes problems with procd-hotplug.
And as this is a headless target, no need to have virtual terminals.
Remove corresponding kernel config options, they are disabled in
generic kernel config.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit c881769a558b38ddd5977a50b67cd32c6d3f7d5e)

4 years agoodhcpd: optimize syslog priority values
Hans Dedecker [Mon, 16 Dec 2019 20:14:11 +0000 (21:14 +0100)]
odhcpd: optimize syslog priority values

e53fec8 treewide: optimize syslog priority values

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
4 years agolantiq: remove redundant WiFi LED on FRITZ!Box 7320
Manuel Kock [Mon, 11 Nov 2019 12:01:33 +0000 (13:01 +0100)]
lantiq: remove redundant WiFi LED on FRITZ!Box 7320

The led wireless trigger is already set correctly to phy0tpt through the
alias in the device tree.

Signed-off-by: Manuel Kock <github.web@manu.li>
[rephrased commit title]
Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit 509894cffb7ec24ac21a381bed3c035efce42aeb)

4 years agompc85xx: add support for Enterasys WS-AP3710i
David Bauer [Fri, 13 Dec 2019 20:31:50 +0000 (21:31 +0100)]
mpc85xx: add support for Enterasys WS-AP3710i

Hardware
--------

SoC:   NXP P1020 (2x e500 @ 800MHz)
RAM:   256M DDR3 (Micron)
FLASH: 32M NOR (Spansion S29GL128S)
BTN:   1x Reset
WiFi:  1x Atheros AR9590 2.4 bgn 3x3
       2x Atheros AR9590 5.0 an 3x3
ETH:   1x Gigabit Ethernet (Atheros AR8033)
LED:   System (green/red) - Radio{0,1} (green)
       LAN (connected to PHY)
        - GE blue
        - FE green

Serial is a Cisco-compatible RJ45 next to the ethernet port.
115200-N-8 are the settings for OS and U-Boot.

Installation
------------

1. Grab the OpenWrt initramfs, rename it to 01C8A8C0.img. Place it in
   the root directory of a TFTP server and serve it at
   192.168.200.200/24.

2. Connect to the serial port and boot the AP. Stop autoboot in U-Boot
   by pressing Enter when prompted. Credentials are identical to the one
   in the APs interface. By default it is admin / new2day.

3. Set the bootcmd so the AP can boot OpenWrt by executing

   $ setenv boot_openwrt "setenv bootargs;
     cp.b 0xee000000 0x1000000 0x1000000; bootm 0x1000000"
   $ setenv bootcmd "run boot_openwrt"
   $ saveenv

   If you plan on going back to the vendor firmware - the bootcmd for it
   is stored in the boot_flash variable.

4. Load the initramfs image to RAM and boot by executing

   $ tftpboot 0x1000000 192.168.200.200:01C8A8C0.img; bootm

5. Make a backup of the "firmware" partition if you ever wish to go back
   to the vendor firmware.

6. Upload the OpenWrt sysupgrade image via SCP to the devices /tmp
   folder.

7. Flash OpenWrt using sysupgrade.

   $ sysupgrade -n /tmp/openwrt-sysupgrade.bin

Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit 16b01fb1b9c99513c318109bef96a1a3545c57a0)

4 years agoglibc: update to latest 2.27 commit (BZ #2503, BZ #2504)
Hans Dedecker [Wed, 11 Dec 2019 21:27:26 +0000 (22:27 +0100)]
glibc: update to latest 2.27 commit (BZ #2503, BZ #2504)

bef0b1cb31 libio: Disable vtable validation for pre-2.1 interposed handles [BZ #25203]
4d5cfeb510 rtld: Check __libc_enable_secure before honoring LD_PREFER_MAP_32BIT_EXEC (CVE-2019-19126) [BZ #25204]
92f04eedb5 mips: Force RWX stack for hard-float builds that can run on pre-4.8 kernels

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
4 years agoglibc: backport fix for regexec buffer read overrun
Alin Nastac [Thu, 21 Nov 2019 13:06:18 +0000 (14:06 +0100)]
glibc: backport fix for regexec buffer read overrun

Problem found by AddressSanitizer[1]:

 Latest `grep` (git commit 1019e6e) compiled with asan may cause a
 heap-buffer-overflow when `-i` is specified.

     ./grep -i '\(\(\)*.\)*\(\)\(\)\1' /bin/chvt

 =================================================================
 ==16206==ERROR: AddressSanitizer: heap-buffer-overflow on address

1. https://debbugs.gnu.org/34140

Ref: https://sourceware.org/bugzilla/show_bug.cgi?id=24114
Signed-off-by: Alin Nastac <alin.nastac@gmail.com>
[commit title and description facelift]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
4 years agoglibc: update to latest 2.27 commit (BZ#23637)
Hans Dedecker [Tue, 17 Sep 2019 20:11:26 +0000 (22:11 +0200)]
glibc: update to latest 2.27 commit (BZ#23637)

5b4f7382af Add undef to fix test failure.
9456483fb2 Improve performance of memmem
373f8b06a3 Improve performance of strstr
4ec1b9e913 Fix strstr bug with huge needles (bug 23637)
ecd6271ed8 Speedup first memmem match
bba6b9288f Simplify and speedup strstr/strcasestr first match
7a4da6ef7a Improve strstr performance

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
4 years agoglibc: update to latest 2.27 commit (BZ #24228, BZ #24744, BZ #24699)
Hans Dedecker [Sun, 8 Sep 2019 19:13:59 +0000 (21:13 +0200)]
glibc: update to latest 2.27 commit (BZ #24228, BZ #24744, BZ #24699)

5f0d2e0491 [AArch64] Add ifunc support for Ares
e6b7252040 aarch64,falkor: Use vector registers for memcpy
c74b884f70 aarch64,falkor: Ignore prefetcher tagging for smaller copies
0fc5934ebd aarch64/strncmp: Use lsr instead of mov+lsr
e0a0bd3acc aarch64/strncmp: Unbreak builds with old binutils
638caf3000 aarch64: Improve strncmp for mutually misaligned inputs
d5f45a29ff aarch64/strcmp: fix misaligned loop jump target
7f690fafad aarch64: Improve strcmp unaligned performance
40df047b3b aarch64: Fix branch target to loop16
062139f233 aarch64: Optimized memcmp for medium to large sizes
f3e2add213 aarch64: Use the L() macro for labels in memcmp
22bd3ab40e posix: Fix large mmap64 offset for mips64n32 (BZ#24699)
bdd16894aa aarch64: handle STO_AARCH64_VARIANT_PCS
0b48caab9a aarch64: add STO_AARCH64_VARIANT_PCS and DT_AARCH64_VARIANT_PCS
949da7f2fd io: Remove copy_file_range emulation [BZ #24744]
f056ac8363 libio: do not attempt to free wide buffers of legacy streams [BZ #24228]
5f90e009b1 NEWS: add entries for bugs 22964, 24180, and 24531

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
4 years agoath79: add support for TP-Link TL-WDR4300 v1 (IL)
Adrian Schmutzler [Mon, 9 Dec 2019 12:53:21 +0000 (13:53 +0100)]
ath79: add support for TP-Link TL-WDR4300 v1 (IL)

The TL-WDR4300 v1 sold in Israel has a different TPLINK_HWID.

Thanks to Josh4300 for testing on device.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit c642a97aa6b51352a718449cd715b92f94af4a5d)

4 years agoramips: allow JCG_MAXSIZE in kiB in Build/jcg-header
Adrian Schmutzler [Thu, 12 Dec 2019 19:26:06 +0000 (20:26 +0100)]
ramips: allow JCG_MAXSIZE in kiB in Build/jcg-header

This allows JCG_MAXSIZE to be specified in kilobytes. This makes
this value more consistent and easier comparable with other size
variables.

This also changes the only occurence of the variable, for Cudy WR1000.

This is backported to 19.07 for convenience, as other developers
backporting device support might not be aware that JCG_MAXSIZE in
kilobytes would not work there.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 0bf4d681d4f2e4bd3c3a61e7fe5dca2a40b1902f)

4 years agobrcm47xx: add switch configuration for WNR3500L
Olli Asikainen [Fri, 15 Nov 2019 15:07:37 +0000 (17:07 +0200)]
brcm47xx: add switch configuration for WNR3500L

Netgear WNR3500L is an already supported device, but out of the
box, the device has no switch configuration and there is no wan.
The correct configuration for this specific model is similar to
some other models. This simple commit adds the correct switch
and the out-of-the-box experience is improved.

Experimentally determined:

Port 0 => WAN
Port 1..4 => LAN
Port 5..7 => unused
Port 8 => CPU

Signed-off-by: Olli Asikainen <olli.asikainen@gmail.com>
Tested-by: Fabian Zaremba <fabian@youremail.eu>
[added port mapping to commit message]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit deb835849aeb713968aaa48bf046101140ab4825)

4 years agoramips: fix number of LAN Ports for Mikrotik RBM33G
Martin Schiller [Wed, 4 Dec 2019 09:43:02 +0000 (10:43 +0100)]
ramips: fix number of LAN Ports for Mikrotik RBM33G

The Mikrotik RBM33G has only 2 LAN ports.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
[moved node in 02_network to maintain alphabetic sorting; backport]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 3a55c7935d4efdc86575601cb4aa7bc94e3c5e44)

4 years agoramips: fix switch port order for TP-Link Archer C20i
Walter Sonius [Wed, 4 Dec 2019 20:07:58 +0000 (21:07 +0100)]
ramips: fix switch port order for TP-Link Archer C20i

Physical port order watched from the backside of the C20i
(from left to right) is: Internet / 1 / 2 / 3 / 4

Physical Port Switch port
WAN             0
LAN 3           1
LAN 4           2
LAN 1           3
LAN 2           4
(not used)      5
CPU             6

Signed-off-by: Walter Sonius <walterav1984@gmail.com>
[commit message/title improvements; backport to 19.07]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit a065cd29bf2dfd1ce1f07becd65aef96cec658e7)

4 years agoath10k-firmware: update Candela Tech firmware images
Koen Vandeputte [Mon, 9 Dec 2019 10:47:01 +0000 (11:47 +0100)]
ath10k-firmware: update Candela Tech firmware images

The release notes since last time for wave-1:

  *  November 29, 2019:  Fix IBSS merge issue, related to TSF id leakage bug in firmware code.
                         Thanks for Ahmed Zaki @ Mage-Networks for helping to diagnose and test.

The release notes since last time for wave-2:

  *  December 6, 2019:  Fix 160Mhz problem caused by logic that did not take into account the fact that
                        160Mhz has only 1/2 of the NSS of lower bandwidths in the rate table.

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
(cherry picked from commit 30109782df3c74becd60dd13216346e1ea2fcc96)

4 years agokernel: bump 4.14 to 4.14.158
Koen Vandeputte [Fri, 6 Dec 2019 13:56:27 +0000 (14:56 +0100)]
kernel: bump 4.14 to 4.14.158

Refreshed all patches.

Altered patches:
- 400-mtd-add-rootfs-split-support.patch

Compile-tested on: cns3xxx
Runtime-tested on: cns3xxx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
4 years agomac80211: unify setup of iw htmode for mesh and adhoc
Santiago Piccinini [Mon, 25 Nov 2019 19:53:59 +0000 (16:53 -0300)]
mac80211: unify setup of iw htmode for mesh and adhoc

This also fixes mac80211_prepare_vif iw set channel in monitor or
mesh mode.

Signed-off-by: Santiago Piccinini <spiccinini@altermundi.net>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
[daniel@makrotopia.org: fixed commit message]
(cherry picked from commit c7fb12beb1d347f1cedc7890dbe2d441f70ccf62)

4 years agoucert: update to latest git HEAD
Daniel Golle [Thu, 28 Nov 2019 19:17:20 +0000 (11:17 -0800)]
ucert: update to latest git HEAD

e4bd927 cast ucert_argv to proper type when passing to execv

Fixes warnings:

warning: passing argument 2 of 'execv' from incompatible pointer type
[-Wincompatible-pointer-types]
  254 |       execv(usign_argv[0], usign_argv)

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit 9c272dd3e42a51c1343ed4fad54ac38bb97349dd)

4 years agoOpenWrt v19.07.0-rc2: revert to branch defaults
Hauke Mehrtens [Sat, 30 Nov 2019 18:40:51 +0000 (19:40 +0100)]
OpenWrt v19.07.0-rc2: revert to branch defaults

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
4 years agoOpenWrt v19.07.0-rc2: adjust config defaults v19.07.0-rc2
Hauke Mehrtens [Sat, 30 Nov 2019 18:40:45 +0000 (19:40 +0100)]
OpenWrt v19.07.0-rc2: adjust config defaults

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
4 years agogeneric ar8xxx: increase VLAN table for AR83x7
David Bauer [Sun, 24 Nov 2019 19:53:39 +0000 (20:53 +0100)]
generic ar8xxx: increase VLAN table for AR83x7

The Atheros AR8327 and AR8337 have (according to their datasheet) a
VLAN table with a maximum of 4096 entries.

Currently, there's a hard limit of 128 VLANs, which is the same as
for most other Atheros switches. Increase this limit only for the
AR83x7 series and modify some shared functions to allow them to work
with a variable max VLAN count.

Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit 3f79aaa2979793c054eae2c8b4058c8c7fccdbe7)

4 years agobusybox: add glibc dependency for vi regex option
Satadru Pramanik [Fri, 15 Nov 2019 17:42:44 +0000 (12:42 -0500)]
busybox: add glibc dependency for vi regex option

Build with musl libc fails with BUSYBOX_DEFAULT_FEATURE_VI_REGEX_SEARCH
enabled. Enabling BusyBox's vi regex search option depends upon GNU
regex.  Musl libc does not support GNU regex[1].

So this patch adds explicit dependency on GNU libc and while at it
remove the FIXME comment.

1. https://wiki.musl-libc.org/functional-differences-from-glibc.html

Ref: https://dev.archive.openwrt.org/ticket/21741.html
Ref: https://forum.openwrt.org/t/busybox-not-compiling/
Ref: https://github.com/openwrt/packages/issues/4453
Signed-off-by: Satadru Pramanik <satadru@umich.edu>
[commit subject/description tweaks, From: fix, USE_GLIBC fix, removed comments]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit f1410902e6c089a53935ab44e83207e877445bc5)

4 years agousign: Activate LTO compile option
Hauke Mehrtens [Sun, 27 Oct 2019 21:38:53 +0000 (22:38 +0100)]
usign: Activate LTO compile option

This decreases the size of the usign application by 16% on MIPS BE.

old:
24,597 /usr/bin/usign

new:
20,501 /usr/bin/usign

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 6ffd8a8f92ab5337ab967ab2922d7de7f0480bc9)

4 years agoswconfig: Activate LTO compile option
Hauke Mehrtens [Sun, 27 Oct 2019 21:35:30 +0000 (22:35 +0100)]
swconfig: Activate LTO compile option

This decreases the size of the swconfig application by 25% on MIPS BE.

old:
16,916 /sbin/swconfig

new:
12,565 /sbin/swconfig

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit e926681387891fe9af89d884ebc3dce4c8c7f450)

4 years agomtd: Activate LTO compile option
Hauke Mehrtens [Sun, 27 Oct 2019 21:32:59 +0000 (22:32 +0100)]
mtd: Activate LTO compile option

This decreases the size of the mtd application by 25% on MIPS BE.

old:
20,597 /sbin/mtd

new:
16,421 /sbin/mtd

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 1eb34b7287ed97ad1e2ae60a436babbb5c68076f)

4 years agoramips: disable ZyXel Keenetic by default
Jo-Philipp Wich [Sat, 16 Nov 2019 20:23:46 +0000 (21:23 +0100)]
ramips: disable ZyXel Keenetic by default

Disable the ZyXel Keenetic images by default as the device has
insufficient flash space for release build images.

Ref: https://forum.openwrt.org/t/devices-too-big-to-save-overlay/18161/72
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
4 years agoramips: disable WR512-3GN 4MB variant by default
Jo-Philipp Wich [Sat, 16 Nov 2019 20:23:45 +0000 (21:23 +0100)]
ramips: disable WR512-3GN 4MB variant by default

Disable the WR512-3GN 4MB image by default as the device has
insufficient flash space for release build images.

Ref: https://forum.openwrt.org/t/devices-too-big-to-save-overlay/18161/72
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
4 years agoramips: disable A5-V11 by default
Jo-Philipp Wich [Sat, 16 Nov 2019 20:23:44 +0000 (21:23 +0100)]
ramips: disable A5-V11 by default

Disable the A5-V11 image by default as the device has
insufficient flash space for release build images.

Ref: https://forum.openwrt.org/t/devices-too-big-to-save-overlay/18161/72
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
4 years agoar71xx: disable TP-Link TL-WA855RE by default
Jo-Philipp Wich [Sat, 16 Nov 2019 20:23:43 +0000 (21:23 +0100)]
ar71xx: disable TP-Link TL-WA855RE by default

Disable the TP-Link TL-WA855RE image by default as the device has
insufficient flash space for release build images.

Ref: https://forum.openwrt.org/t/devices-too-big-to-save-overlay/18161/72
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
4 years agobrcm47xx: disable Linksys E1000 v1 by default
Jo-Philipp Wich [Sat, 16 Nov 2019 20:23:41 +0000 (21:23 +0100)]
brcm47xx: disable Linksys E1000 v1 by default

Disable the Linksys E1000 v1 image by default as the device has
insufficient flash space for release build images.

Ref: https://forum.openwrt.org/t/devices-too-big-to-save-overlay/18161/72
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
4 years agoramips: disable TP-Link TL-WA750RE by default
Jo-Philipp Wich [Sat, 16 Nov 2019 20:23:40 +0000 (21:23 +0100)]
ramips: disable TP-Link TL-WA750RE by default

Disable the TP-Link TL-WA750RE image by default as the device has
insufficient flash space for release build images.

Ref: https://forum.openwrt.org/t/devices-too-big-to-save-overlay/18161/30
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
4 years agoar71xx: disable TP-Link TL-WA850RE by default
Jo-Philipp Wich [Sat, 16 Nov 2019 20:23:39 +0000 (21:23 +0100)]
ar71xx: disable TP-Link TL-WA850RE by default

Disable the TP-Link TL-WA850RE image by default as the device has
insufficient flash space for release build images.

Ref: https://forum.openwrt.org/t/devices-too-big-to-save-overlay/18161/30
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
4 years agoramips: disable TP-Link TL-WR840N v5 by default
Jo-Philipp Wich [Sat, 16 Nov 2019 20:23:38 +0000 (21:23 +0100)]
ramips: disable TP-Link TL-WR840N v5 by default

Disable the TP-Link TL-WR840N v5 image by default as the device has
insufficient flash space for release build images.

Ref: https://forum.openwrt.org/t/devices-too-big-to-save-overlay/18161/29
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
4 years agoramips: disable Sitecom WL-351 by default
Jo-Philipp Wich [Sat, 16 Nov 2019 20:23:37 +0000 (21:23 +0100)]
ramips: disable Sitecom WL-351 by default

Disable the Sitecom WL-351 image by default as the device has
insufficient flash space for release build images.

Ref: https://forum.openwrt.org/t/devices-too-big-to-save-overlay/18161/24
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
4 years agoramips: disable D-Link DIR-645 by default
Jo-Philipp Wich [Sat, 16 Nov 2019 20:23:36 +0000 (21:23 +0100)]
ramips: disable D-Link DIR-645 by default

Disable the D-Link DIR-645 image by default as the device has
insufficient flash space for release build images.

Ref: https://forum.openwrt.org/t/devices-too-big-to-save-overlay/18161/23
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
4 years agoramips: disable D-Link DIR-300 B5/B6/B7 by default
Jo-Philipp Wich [Sat, 16 Nov 2019 20:23:35 +0000 (21:23 +0100)]
ramips: disable D-Link DIR-300 B5/B6/B7 by default

Disable the D-Link DIR-300 B5/B6/B7 image by default as the device has
insufficient flash space for release build images.

Ref: https://forum.openwrt.org/t/devices-too-big-to-save-overlay/18161/18
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
4 years agoar71xx: disable Netgear WNR2000v4 by default
Jo-Philipp Wich [Sat, 16 Nov 2019 20:23:34 +0000 (21:23 +0100)]
ar71xx: disable Netgear WNR2000v4 by default

Disable the Netgear WNR2000v4 image by default as the device has
insufficient flash space for release build images.

Ref: https://forum.openwrt.org/t/devices-too-big-to-save-overlay/18161/11
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
4 years agoar71xx: disable On Networks N150R by default
Jo-Philipp Wich [Sat, 16 Nov 2019 20:23:33 +0000 (21:23 +0100)]
ar71xx: disable On Networks N150R by default

Disable the On Networks N150R image by default as the device has
insufficient flash space for release build images.

Ref: https://forum.openwrt.org/t/devices-too-big-to-save-overlay/18161/10
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
4 years agoar71xx: disable TP-Link TL-WA850RE v2 by default
Jo-Philipp Wich [Sat, 16 Nov 2019 20:23:32 +0000 (21:23 +0100)]
ar71xx: disable TP-Link TL-WA850RE v2 by default

Disable the TP-Link TL-WA850RE v2 image by default as the device has
insufficient flash space for release build images.

Ref: https://forum.openwrt.org/t/devices-too-big-to-save-overlay/18161/9
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
4 years agoar71xx: disable Netgear WNR612 v2 by default
Jo-Philipp Wich [Sat, 16 Nov 2019 20:23:31 +0000 (21:23 +0100)]
ar71xx: disable Netgear WNR612 v2 by default

Disable the Netgear WNR612 v2 image by default as the device has
insufficient flash space for release build images.

Ref: https://forum.openwrt.org/t/devices-too-big-to-save-overlay/18161/4
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
4 years agoramips: disable ASUS RT-N10+ B1 by default
Jo-Philipp Wich [Sat, 16 Nov 2019 20:23:30 +0000 (21:23 +0100)]
ramips: disable ASUS RT-N10+ B1 by default

Disable the ASUS RT-N10+ B1 image by default as the device has
insufficient flash space for release build images.

Ref: https://forum.openwrt.org/t/devices-too-big-to-save-overlay/18161/1
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
5 years agokernel: bump 4.14 to 4.14.156
Koen Vandeputte [Mon, 25 Nov 2019 10:32:39 +0000 (11:32 +0100)]
kernel: bump 4.14 to 4.14.156

Refreshed all patches.

Compile-tested on: cns3xxx
Runtime-tested on: cns3xxx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agoconfig: kernel: fix typo in HFSPLUG_FS_POSIX_ACL
Stijn Tintel [Thu, 28 Nov 2019 00:01:05 +0000 (02:01 +0200)]
config: kernel: fix typo in HFSPLUG_FS_POSIX_ACL

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
(cherry picked from commit 5f6833395293548f9fdf4897d9766417f2990bac)

5 years agouboot-envtools: ath79: add support for YunCore XD4200 and A782
Piotr Dymacz [Wed, 13 Nov 2019 13:51:31 +0000 (14:51 +0100)]
uboot-envtools: ath79: add support for YunCore XD4200 and A782

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
(cherry picked from commit 5d2a900163d0a161e6fa5e63436b57deea31287e)

5 years agoath79: add support for YunCore XD4200 and A782
Piotr Dymacz [Tue, 12 Nov 2019 21:36:28 +0000 (22:36 +0100)]
ath79: add support for YunCore XD4200 and A782

YunCore XD4200 ('XD4200_W6.0' marking on PCB) is Qualcomm/Atheros based
(QCA9563, QCA9886, QCA8334) dual-band, Wave-2 AC1200 ceiling AP with PoE
(802.3at) support. A782 model ('T750_V5.1' marking on PCB) is a smaller
version of the XD4200, with similar specification but lower TX power.

Specification:

- QCA9563 (775 MHz)
- 128 MB of RAM (DDR2)
- 16 MB of FLASH (SPI NOR)
- 2x 10/100/1000 Mbps Ethernet (QCA8334), with 802.3at PoE support (WAN)
- Wi-Fi 2.4 GHz:
  - XD4200: 2T2R (QCA9563), with ext. PA (SKY65174-21) and LNA
  - A782: 2T2R (QCA9563), with ext. FEM (SKY85329-11)
- Wi-Fi 5 GHz:
  - XD4200: 2T2R (QCA9886), with ext. FEM (SKY85728-11)
  - A782: 2T2R (QCA9886), with ext. FEM (SKY85735-11)
- LEDs:
  - XD4200: 5x (2x driven by SOC, 1x driven by AC radio, 2x Ethernet)
  - A782: 3x (1x RGB, driven by SOC and radio, 2x Ethernet)
- 1x button (reset)
- 1x UART (4-pin, 2.54 mm pitch) header on PCB
- 1x DC jack (12 V)

Flash instructions:

If your device comes with generic QSDK based firmware, you can login
over telnet (login: root, empty password, default IP: 192.168.188.253),
issue first (important!) 'fw_setenv' command and then perform regular
upgrade, using 'sysupgrade -n -F ...' (you can use 'wget' to download
image to the device, SSH server is not available):

  fw_setenv bootcmd "bootm 0x9f050000 || bootm 0x9fe80000"
  sysupgrade -n -F openwrt-...-yuncore_...-squashfs-sysupgrade.bin

In case your device runs firmware with YunCore custom GUI, you can use
U-Boot recovery mode:

1. Set a static IP 192.168.0.141/24 on PC and start TFTP server with
   'tftp' image renamed to 'upgrade.bin'
2. Power the device with reset button pressed and release it after 5-7
   seconds, recovery mode should start downloading image from server
   (unfortunately, there is no visible indication that recovery got
   enabled - in case of problems check TFTP server logs)

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
(backported from commit e5d4c0966736287c7ade29c5ccaf6f1ad841b7db)

5 years agoath79: add support for YunCore TFTP image generation
Vincent Wiemann [Mon, 12 Aug 2019 23:26:45 +0000 (01:26 +0200)]
ath79: add support for YunCore TFTP image generation

YunCore QCA9k based devices released in 2019 require a custom TFTP image
for U-Boot built-in recovery mode (triggered with reset button). Image
has to be prepended with 'YUNCORE' keyword followed by U-Boot CLI
commands which will be executed later. Images without the custom header
will be ignored by U-Boot.

To be able to support both the vendor firmware (QSDK) and OpenWrt flash
layouts, used here commands change the 'bootcmd' before flashing image.

This commit adds generic helper script for YunCore devices with 16 MB of
flash and enables TFTP image generation for A770 model.

Signed-off-by: Vincent Wiemann <vincent.wiemann@ironai.com>
[pepe2k@gmail.com: commit description reworded, recipe renamed]
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
(cherry picked from commit 8016f648640e8f73f0dc4fc307fb6bebd12afb88)

5 years agoath79: Add support for TP-Link Archer C60 v2
Adrian Schmutzler [Sun, 5 May 2019 16:46:09 +0000 (18:46 +0200)]
ath79: Add support for TP-Link Archer C60 v2

TP-Link Archer C60 v2 is a dual-band AC1350 router,
based on Qualcomm/Atheros QCA9561 + QCA9886.

Specification:

- 775/650/258 MHz (CPU/DDR/AHB)
- 64 MB of RAM (DDR2)
- 8 MB of FLASH (SPI NOR)
- 3T3R 2.4 GHz
- 2T2R 5 GHz
- 5x 10/100 Mbps Ethernet
- 7x LED, 2x button
- UART header on PCB

Flash instruction (WebUI):
Download *-factory.bin image and upload it via the firmwary upgrade
function of the stock firmware WebUI.

Flash instruction (TFTP):
1. Set PC to fixed IP address 192.168.0.66
2. Download *-factory.bin image and rename it to tp_recovery.bin
3. Start a tftp server with the file tp_recovery.bin in its root
   directory
4. Turn off the router
5. Press and hold reset button
6. Turn on router with the reset button pressed and wait ~15 seconds
7. Release the reset button and after a short time the firmware should
   be transferred from the tftp server
8. Wait ~30 second to complete recovery

Flash instruction (under U-Boot, using UART):
tftp 0x81000000 ...-sysupgrade.bin
erase 0x9f030000 +$filesize
cp.b $fileaddr 0x9f030000 $filesize
reset

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 974d6958a7c6332438ab4cda98e72156c8d944ed)

5 years agoath79: Add support for TP-Link Archer C60 v1
Adrian Schmutzler [Sun, 5 May 2019 16:36:43 +0000 (18:36 +0200)]
ath79: Add support for TP-Link Archer C60 v1

TP-Link Archer C60v1 is a dual-band AC1350 router,
based on Qualcomm/Atheros QCA9561+QCA9886.

Specification:

- 775/650/258 MHz (CPU/DDR/AHB)
- 64 MB of RAM (DDR2)
- 8 MB of FLASH (SPI NOR)
- 3T3R 2.4 GHz
- 2T2R 5 GHz
- 5x 10/100 Mbps Ethernet
- 7x LED, 2x button
- UART header on PCB

Flash instruction (WebUI):
Download *-factory.bin image and upload it via the firmwary upgrade
function of the stock firmware WebUI.

Flash instruction (TFTP):
1. Set PC to fixed ip address 192.168.0.66
2. Download *-factory.bin image and rename it to tp_recovery.bin
3. Start a tftp server with the file tp_recovery.bin in its root directory
4. Turn off the router
5. Press and hold Reset button
6. Turn on router with the reset button pressed and wait ~15 seconds
7. Release the reset button and after a short time
the firmware should be transferred from the tftp server
8. Wait ~30 second to complete recovery.

Flash instruction under U-Boot, using UART:
1. tftp 0x81000000 ...-sysupgrade.bin
2. erase 0x9f020000 +$filesize
3. cp.b $fileaddr 0x9f020000 $filesize
4. reset

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 6d313da6dc5f655d92aa86e2ec42ecfcf763df3d)

5 years agobase-files: config_generate: split macaddr with multiple ifaces
Sungbo Eo [Mon, 11 Nov 2019 16:20:45 +0000 (01:20 +0900)]
base-files: config_generate: split macaddr with multiple ifaces

netifd does not handle network.@device[x].name properly if it
contains multiple ifaces separated by spaces. Due to this, board.d
lan_mac setup does not work if multiple ifaces are set to LAN by
ucidef_set_interface_lan.

To fix this, create a device node for each member iface when
running config_generate instead. Those are named based on the
member ifname:

  ucidef_set_interface_lan "eth0 eth1.1"
  ucidef_set_interface_macaddr "lan" "yy:yy:yy:yy:yy:01"

will return

  config device 'lan_eth0_dev'
        option name 'eth0'
        option macaddr 'yy:yy:yy:yy:yy:01'

  config device 'lan_eth1_1_dev'
        option name 'eth1.1'
        option macaddr 'yy:yy:yy:yy:yy:01'

ref: https://github.com/openwrt/openwrt/pull/2542

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
[always use new scheme, extend description, change commit title]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 298814e6be7640d89328de9e7c90d4349e30683f)

5 years agoar71xx: ubnt-(xm,xw): add rssileds package
Lech Perczak [Sun, 17 Nov 2019 19:58:27 +0000 (20:58 +0100)]
ar71xx: ubnt-(xm,xw): add rssileds package

In order to make RSSI indicator on the device work out of box,
include "rssileds" package in per-device rootfs image by default
for Ubiquiti XM and XW devices, namely:
- Bullet M (XM/XW)
- Rocket M (XM/XW)
- Nanostation M (XM/XW)
- Nanostation Loco-M (XW)

This moves the package addition to the individual devices in order
to prevent accidental inclusions of the package when not looking
at the parent node carefully enough.

Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
[add bullet-m-xw, remove rocket-m-ti, extend commit message]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 08d9c95417399ac8615df210f4381cca68a4b25c)

5 years agoath79: add PoE passthrough switch for Ubiquiti Nanostation (XM/XW)
Adrian Schmutzler [Mon, 18 Nov 2019 22:59:06 +0000 (23:59 +0100)]
ath79: add PoE passthrough switch for Ubiquiti Nanostation (XM/XW)

This adds the gpio switch to enable PoE passthrough on Ubiquiti
Nanostation (XM/XW).

Values are copied from the implementation in ar71xx.

GPIO values checked on:
- NanoStation M5 XW
- NanoStation M2 XM

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 317e98a5a2c6f1e2ac599ec530478669b965602c)

5 years agouboot-envtools: ramips: add support for ALFA Network Quad-E4G
Piotr Dymacz [Sun, 3 Nov 2019 11:17:52 +0000 (12:17 +0100)]
uboot-envtools: ramips: add support for ALFA Network Quad-E4G

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
(cherry picked from commit 10bcf1eb40b728b3583c1a7693111f27a9801dc5)

5 years agoramips: add support for ALFA Network Quad-E4G
Piotr Dymacz [Sun, 3 Nov 2019 11:12:44 +0000 (12:12 +0100)]
ramips: add support for ALFA Network Quad-E4G

ALFA Network Quad-E4G is a universal Wi-Fi/4G platform, which offers
three miniPCIe (PCIe, USB 2.0, SIM) and a single M.2 B-key (dual-SIM,
USB 3.0) slots, RTC and five Gigabit Ethernet ports with PoE support.

Specification:

- MT7621A (880 MHz)
- 256/512 MB of RAM (DDR3)
- 16/32+ MB of FLASH (SPI NOR)
- optional second SPI flash (8-pin WSON/SOIC)
- 1x microSD (SDXC) flash card reader
- 5x 10/100/1000 Mbps Ethernet, with passive PoE support (24 V) in LAN1
- optional 802.3at/af PoE module for WAN
- 3x miniPCIe slot (with PCIe and USB 2.0 buses, micro SIM and 5 V)
- 1x M.2/NGFF B-key 3042 (USB 3.0/2.0, mini + micro SIM)
- RTC (TI BQ32002, I2C bus) with backup battery (CR2032)
- external hardware watchdog (EM Microelectronic EM6324)
- 1x USB 2.0 Type-A
- 1x micro USB Type-B for system serial console (Holtek HT42B534)
- 11x LED (5 for Ethernet, 5 driven by GPIO, 1x power indicator)
- 3x button (reset, user1, user2)
- 1x I2C (4-pin, 2.54 mm pitch) header on PCB
- 4x SIM (6-pin, 2.00 mm pitch) headers on PCB
- 2x UART2/3 (4-pin, 2.54 mm pitch) headers on PCB
- 1x mechanical power switch
- 1x DC jack with lock (24 V)

Other:

- U-Boot selects default SIM slot, based on value of 'default_sim' env
  variable: '1' or unset -> SIM1 (mini), '2' -> SIM2 (micro). This board
  has additional logic circuit for M.2 SIM switching. The 'sim-select'
  will work only if both SIM slots are occupied. Otherwise, always slot
  with SIM inside is selected, no matter 'sim-select' value.
- U-Boot enables power in all three miniPCIe and M.2 slots before
  loading the kernel
- this board supports 'dual image' feature (controlled by 'dual_image'
  U-Boot environment variable)
- all three miniPCIe slots have additional 5 V supply on pins 47 and 49
- the board allows to install up to two oversized miniPCIe cards (vendor
  has dedicated MediaTek MT7615N/D cards for this board)
- this board has additional logic circuit controlling PERSTn pins inside
  miniPCIe slots. By default, PERSTn (GPIO19) is routed to all miniPCIe
  slots but setting GPIO22 to high allows PERSTn control per slot, using
  GPIO23-25 (value is inverted)

Flash instructions:

You can use the 'sysupgrade' image directly in vendor firmware which is
based on OpenWrt (make sure to not preserve settings - use 'sysupgrade
-n -F ...' command). Alternatively, use web recovery mode in U-Boot:

1. Power the device with reset button pressed, the modem LED will start
   blinking slowly and after ~3 seconds, when it starts blinking faster,
   you can release the button.
2. Setup static IP 192.168.1.2/24 on your PC.
3. Go to 192.168.1.1 in browser and upload 'sysupgrade' image.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
(backported from commit e68539aca43a560077364de27eb220f1d85ca3ef)

5 years agouboot-envtools: ramips: add support for ALFA Network R36M-E4G
Piotr Dymacz [Wed, 30 Oct 2019 20:48:09 +0000 (21:48 +0100)]
uboot-envtools: ramips: add support for ALFA Network R36M-E4G

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
(cherry picked from commit 3cfea3a32125a2c59dfaa9103804ad51609ebe9d)

5 years agoramips: add support for ALFA Network R36M-E4G
Piotr Dymacz [Tue, 29 Oct 2019 23:10:40 +0000 (00:10 +0100)]
ramips: add support for ALFA Network R36M-E4G

ALFA Network R36M-E4G is a dual-SIM, N300 Wi-Fi, compact size platform
based on MediaTek MT7620A WiSoC. This product is designed for operation
with 4G modem (can be bought in bundle with Quectel EC25, EG25 or EP06)
but supports also Wi-Fi modules (miniPCIe slot has USB and PCIe buses).

Specification:

- MT7620A (580 MHz)
- 64/128/256 MB of RAM (DDR2)
- 16/32+ MB of FLASH (SPI NOR)
- 2x 10/100 Mbps Ethernet, with passive PoE support (24 V)
- 2T2R 2.4 GHz (MT7620A), with ext. LNA (RFFM4227)
- 1x miniPCIe slot (with PCIe and USB 2.0 buses and optional 5 V)
- 2x SIM slot (mini, micro) with detect and switch driven by GPIO
- 2x u.fl antenna connectors (for Wi-Fi)
- 8x LED (7 driven by GPIO)
- 2x button (reset, wifi)
- 2x UART (4-pin/2.54 mm pitch, 10-pin/1.27 mm pitch) headers on PCB
- 1x I2C (4-pin, 1.27 mm pitch) header on PCB
- 1x LED (8-pin, 1.27 mm pitch) header on PCB
- 1x DC jack with lock (12 V)

Other:

- there is a dedicated, 4-pin connector for optional RTC module (Holtek
  HT138x) with 'enable' input, not available at the time of preparing
  support for this board
- miniPCIe slot supports additional 5 V supply on pins 47 and 49 but a
  jumper resistor (R174) is not installed by default
- U-Boot selects default SIM slot, based on value of 'default_sim' env
  variable: '1' or unset -> SIM1 (mini), '2' -> SIM2 (micro). This will
  work only if both slots are occupied, otherwise U-Boot will always
  select slot with SIM card inside (user can override it later, in
  user-space)
- U-Boot resets the modem, using PERSTn signal, before starting kernel
- this board supports 'dual image' feature (controlled by 'dual_image'
  U-Boot environment variable)

Flash instruction:

You can use the 'sysupgrade' image directly in vendor firmware which is
based on OpenWrt (make sure to not preserve settings - use 'sysupgrade
-n -F ...' command). Alternatively, use web recovery mode in U-Boot:

1. Power the device with reset button pressed, the modem LED will start
   blinking slowly and after ~3 seconds, when it starts blinking faster,
   you can release the button.
2. Setup static IP 192.168.1.2/24 on your PC.
3. Go to 192.168.1.1 in browser and upload 'sysupgrade' image.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
(backported from commit dfecf94c2059998411f95067de3866aa7cdf5ec9)

5 years agoramips: support dual image feature on ALFA Network boards
Piotr Dymacz [Tue, 29 Oct 2019 22:25:56 +0000 (23:25 +0100)]
ramips: support dual image feature on ALFA Network boards

New U-Boot version for MediaTek MT76x8/MT762x based ALFA Network boards
includes support for a 'dual image' feature. Users can enable it using
U-Boot environment variable 'dual_image' ('1' -> enabled).

When 'dual image' feature is enabled, U-Boot will modify DTB and divide
the original 'firmware' flash area into two, equal in size and aligned
to 64 KB partitions: 'firmware' and 'backup'. U-Boot will also adjust
size of 'firmware' area to match installed flash chip size.

U-Boot will load kernel from active partition which is marked with env
variable 'bootactive' ('1' -> first partition, '2' -> second partition)
and rename both partitions accordingly ('firmware' <-> 'backup').

There are 3 additional env variables used to control 'dual image' mode:
- bootlimit   - maximum number of unsuccessful boot tries (default: '3')
- bootcount   - current number of boot tries
- bootchanged - flag which informs that active partition was changed; if
                it is set and 'bootcount' reaches 'bootlimit' value,
                U-Boot will start web-based recovery which then updates
                both partitions with provided image

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
(backported from commit bc173ddd8381b03dde8cc2e6c66d0cd392c62bbd)

5 years agoramips: refresh all subtargets kernel configs
Piotr Dymacz [Fri, 22 Nov 2019 22:23:09 +0000 (23:23 +0100)]
ramips: refresh all subtargets kernel configs

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
5 years agoramips: use upstream RAW_APPENDED_DTB instead of our OWRTDTB
Chuanhong Guo [Thu, 27 Jun 2019 12:44:27 +0000 (20:44 +0800)]
ramips: use upstream RAW_APPENDED_DTB instead of our OWRTDTB

Upstream kernel added support for RAW_APPENDED_DTB on ralink arch
in the following commit:
02564fc89d3d ("ralink: Introduce fw_passed_dtb to arch/mips/ralink")

Use upstream solution and get rid of our OWRTDTB hack.
This commit set DEVICE_DTS to $$(DTS) instead of replacing DTS with
DEVICE_DTS in device profile because DTS variable will be dropped
in later commits.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
[Tested on mt7621/mt76x8]
Tested-by: Chuanhong Guo <gch981213@gmail.com>
[Tested on rt305x/mt7620]
Tested-by: INAGAKI Hiroshi <musashino.open@gmail.com>
(cherry picked from commit 7a8d3432c739c6ff038295176e8b6324e92fc116)
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
5 years agoath79: remove ath10k drivers from Archer C7 v1 profile
Stijn Segers [Fri, 22 Nov 2019 18:39:19 +0000 (19:39 +0100)]
ath79: remove ath10k drivers from Archer C7 v1 profile

Ath10k packages were removed from ar71xx in master in commit
34113999ef43 ("ar71xx: Remove ath10k packages from archer-c7-v1 (fixes
FS#1743)") but ath79 in master and the 19.07 branch still suffer from
the issue.

Signed-off-by: Stijn Segers <foss@volatilesystems.org>
[commit subject and description facelift]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
5 years agokernel: nf_conntrack_rtcache: fix WARNING on rmmod
Yousong Zhou [Sat, 23 Nov 2019 18:05:45 +0000 (18:05 +0000)]
kernel: nf_conntrack_rtcache: fix WARNING on rmmod

Fixes b7c58a1ee ("kernel: nf_conntrack_rtcache: fix cleanup on netns
delete and rmmod")

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
(cherry picked from commit b3779e920ebaa168eaf18ac1140774c32b6ec6b6)

5 years agokernel: nf_conntrack_rtcache: fix WARNING on forward path
Yousong Zhou [Sat, 23 Nov 2019 17:10:09 +0000 (17:10 +0000)]
kernel: nf_conntrack_rtcache: fix WARNING on forward path

Fixes b7c58a1ee ("kernel: nf_conntrack_rtcache: fix cleanup on netns
delete and rmmod")

Resolves FS#2624

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
(cherry picked from commit 1c5df850a07690451f2878a310c0ea67d0690836)

5 years agobuild: add PKG_SOURCE_URL_FILE support
Kamil Wcislo [Thu, 5 Jul 2018 19:40:19 +0000 (21:40 +0200)]
build: add PKG_SOURCE_URL_FILE support

It seems that there is a missing PKG_SOURCE_URL_FILE support.
This little fix adds the support for packages to change the name of the
downloaded file.

Sometimes it is desirable to change the downloaded archive file name, like
for mitigating name conflicts for different packages (some files on the server
could be named like, e.g. 2018-01-01.tar.gz) or for the cases that there is
no name for the file in the URL (e.g. http://someserver.com/download).

Signed-off-by: Kamil Wcislo <kamil.wcislo@lpnplant.io>
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
(cherry picked from commit 09c428ec6bca27bdb31e2f6fef85b07787cead30)

5 years agokernel: nf_conntrack_rtcache: fix cleanup on netns delete and rmmod
Yousong Zhou [Wed, 13 Nov 2019 17:03:12 +0000 (17:03 +0000)]
kernel: nf_conntrack_rtcache: fix cleanup on netns delete and rmmod

Fixes FS#1472, FS#2353, FS#2426

Fixes: b3f95490 ("kernel: generic: Add kernel 4.14 support")
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
Acked-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit b7c58a1eeba5be2e1f77ec05b417be9d87e26916)

5 years agomac80211: add default value for noscan
Sebastian Kemper [Sat, 23 Nov 2019 10:25:02 +0000 (11:25 +0100)]
mac80211: add default value for noscan

Commit b3d8b3a introduced a new test:

[ -n "$noscan" -a "$noscan" -gt 0 ] && hostapd_noscan=1

But if length of "$noscan" is zero (noscan is not set) this doesn't stop
the shell to evaluate the rest of the test.

root@hank2:~# [ -n "$noscan" -a "$noscan" -gt 0 ]
ash: out of range
root@hank2:~#

So when radios are brought up this shows in the log:

Sat Nov 23 10:51:38 2019 daemon.info procd: - init complete -
Sat Nov 23 10:52:24 2019 daemon.notice netifd: radio1 (1243): sh: out of range
Sat Nov 23 10:52:25 2019 user.notice firewall: Reloading firewall due to ifup of wan (eth0.2)
Sat Nov 23 10:52:25 2019 daemon.notice netifd: radio0 (1242): sh: out of range
Sat Nov 23 10:52:26 2019 authpriv.info dropbear[1536]: Not backgrounding

This commit sets noscan to 0 if unset and removes the gratuitous length
check, preventing the warning.

Signed-off-by: Sebastian Kemper <sebastian_ml@gmx.net>
(cherry picked from commit 28d84331f4bba5923059e701f5d4878b2df3fa79)
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
5 years agoe2fsprogs: Fix CVE-2019-5094 in libsupport
Hauke Mehrtens [Fri, 22 Nov 2019 21:43:25 +0000 (22:43 +0100)]
e2fsprogs: Fix CVE-2019-5094 in libsupport

This adds the following patch from debian:
https://git.kernel.org/pub/scm/fs/ext2/e2fsprogs.git/commit/?h=debian/stable&id=09fe1fd2a1f9efc3091b4fc61f1876d0785956a8
libsupport: add checks to prevent buffer overrun bugs in quota code

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 0062aad8ecc9bbe36c55895fd78fcaf9a406b006)

5 years agoipq40xx: add support for AVM FRITZ!Repeater 1200
David Bauer [Tue, 10 Sep 2019 19:07:23 +0000 (21:07 +0200)]
ipq40xx: add support for AVM FRITZ!Repeater 1200

Hardware
--------
SoC:   Qualcomm IPQ4019
RAM:   256M DDR3
FLASH: 128M NAND
WiFi:  2T2R IPQ4019 bgn
       2T2R IPQ4019 a/n/ac
ETH:   Atheros AR8033 RGMII PHY
BTN:   1x Connect (WPS)
LED:   Power (green/red/yellow)

Installation
------------

1. Grab the uboot for the Device from the 'u-boot-fritz1200'
   subdirectory. Place it in the same directory as the 'eva_ramboot.py'
   script. It is located in the 'scripts/flashing' subdirectory of the
   OpenWRT tree.

2. Assign yourself the IP address 192.168.178.10/24. Connect your
   Computer to one of the boxes LAN ports.

3. Connect Power to the Box. As soon as the LAN port of your computer
   shows link, load the U-Boot to the box using following command.

   > ./eva_ramboot.py --offset 0x85000000 192.168.178.1 uboot-fritz1200.bin

4. The U-Boot will now start. Now assign yourself the IP address
   192.168.1.70/24. Copy the OpenWRT initramfs (!) image to a TFTP
   server root directory and rename it to 'FRITZ1200.bin'.

5. The Box will now boot OpenWRT from RAM. This can take up to two
   minutes.

6. Copy the U-Boot and the OpenWRT sysupgrade (!) image to the Box using
   scp. SSH into the Box and first write the Bootloader to both previous
   kernel partitions.

   > mtd write /path/to/uboot-fritz1200.bin uboot0
   > mtd write /path/to/uboot-fritz1200.bin uboot1

7. Remove the AVM filesystem partitions to make room for our kernel +
   rootfs + overlayfs.

   > ubirmvol /dev/ubi0 --name=avm_filesys_0
   > ubirmvol /dev/ubi0 --name=avm_filesys_1

8. Flash OpenWRT peristently using sysupgrade.

   > sysupgrade -n /path/to/openwrt-sysupgrade.bin

Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit 7f187229a8e9b7966248b1e024217e07a9fc3e50)
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>