openwrt/openwrt.git
4 years agogeneric: fix patching error on kernel 5.4
Koen Vandeputte [Fri, 8 May 2020 14:48:19 +0000 (16:48 +0200)]
generic: fix patching error on kernel 5.4

Fixes a build error seen when applying the kernel patches.

Applying patch generic/435-mtd-add-routerbootpart-parser-config.patch
patching file drivers/mtd/parsers/Kconfig
Hunk #1 FAILED at 160.
1 out of 1 hunk FAILED -- rejects in file drivers/mtd/parsers/Kconfig
patching file drivers/mtd/parsers/Makefile
Hunk #1 FAILED at 10.
1 out of 1 hunk FAILED -- rejects in file drivers/mtd/parsers/Makefile

This was missed as 5.4 is currently set as testing kernel
while the main kernel being used is 4.19

Fixes: 2976e423dc6e ("generic: routerboot partition build bits")
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
4 years agoramips/mt7621: mikrotik: don't use mtd-mac-address in DTS
Thibaut VARÈNE [Mon, 20 Apr 2020 12:35:57 +0000 (14:35 +0200)]
ramips/mt7621: mikrotik: don't use mtd-mac-address in DTS

As evidenced here[1] the device MAC address can be stored at a random
offset in the hard_config partition. Rely on sysfs to update the MAC
address correctly.

Adjust config so that WAN is base MAC and LAN is base MAC +1 to better
match label and vendor OS.

[1] https://github.com/openwrt/openwrt/pull/2850#issuecomment-610809021

Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
4 years agoath79/mikrotik: load caldata via sysfs loader
Thibaut VARÈNE [Sun, 19 Apr 2020 15:17:03 +0000 (17:17 +0200)]
ath79/mikrotik: load caldata via sysfs loader

This commit takes advantages of base-files 220 which introduces routines
to perform caldata loading directly via the kernel sysfs loader helper.
This has the benefits of not wasting flash space to store caldata.

Memory footprint is reduced to the bare minimum: for devices that don't
need MAC patching, the caldata is loaded directly, for devices that do
need MAC patching, the caldata is extracted to /tmp, patched and then
loaded.

Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
4 years agopackage/base-files: add caldata_sysfsload_from_file()
Thibaut VARÈNE [Mon, 20 Apr 2020 11:48:02 +0000 (13:48 +0200)]
package/base-files: add caldata_sysfsload_from_file()

This routine enables loading caldata binary via the kernel sysfs loader

See https://www.kernel.org/doc/html/v4.19/driver-api/firmware/fallback-mechanisms.html

Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
4 years agopackage/base-files: caldata: allow setting target file
Thibaut VARÈNE [Mon, 20 Apr 2020 11:48:02 +0000 (13:48 +0200)]
package/base-files: caldata: allow setting target file

This will enable platforms to extract caldata to an arbitrary file,
or patch mac in an abitrary file.

Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
4 years agoar71xx/mikrotik: ath10k: use new sysfs driver
Thibaut VARÈNE [Sun, 19 Apr 2020 14:04:42 +0000 (16:04 +0200)]
ar71xx/mikrotik: ath10k: use new sysfs driver

Fetch ath10k calibration data from new mikrotik sysfs driver

Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
4 years agopackage/utils: remove rbextract
Thibaut VARÈNE [Sun, 19 Apr 2020 09:46:57 +0000 (11:46 +0200)]
package/utils: remove rbextract

Rationale:
1/ This tool is no longer necessary following the implementation of a
   sysfs driver
2/ The upstream author, Robert Marko, stated[1] that this tool had been
   taken from his tree in an unfinished state not suitable for merging

[1] https://github.com/openwrt/openwrt/pull/2850#issuecomment-610277863

Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
4 years agoath79/mikrotik: use standard caldata functions
Thibaut VARÈNE [Sun, 19 Apr 2020 09:42:45 +0000 (11:42 +0200)]
ath79/mikrotik: use standard caldata functions

With the implementation of a sysfs interface to access WLAN data, this
target no longer needs a special wrapper to extract caldata.

Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
4 years agoath79/mikrotik: don't use mtd-mac-address in DTS
Thibaut VARÈNE [Sun, 19 Apr 2020 10:09:20 +0000 (12:09 +0200)]
ath79/mikrotik: don't use mtd-mac-address in DTS

As evidenced here[1] the device MAC address can be stored at a random
offset in the hard_config partition. Rely on sysfs to update the MAC
address correctly.

To match sticker and vendor OS behavior, WAN MAC is set to the device
base MAC and LAN MAC is incremented from that.

Note: this will trigger a harmless kernel message during boot:
ag71xx 19000000.eth: invalid MAC address, using random address

There is no clean workaround to prevent this message from being emitted.

[1] https://github.com/openwrt/openwrt/pull/2850#issuecomment-610809021

Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
4 years agogeneric: platform/mikrotik: support LZOR encoding
Thibaut VARÈNE [Fri, 27 Mar 2020 13:33:48 +0000 (14:33 +0100)]
generic: platform/mikrotik: support LZOR encoding

Some newer MikroTik RouterBOARD devices use a new encoding scheme
for their WLAN calibration data. This patch provides support for
decoding this new scheme.

Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
4 years agoramips/mt7621: enable mikrotik platform driver
Thibaut VARÈNE [Tue, 28 Apr 2020 13:57:41 +0000 (15:57 +0200)]
ramips/mt7621: enable mikrotik platform driver

Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
4 years agoar71xx/mikrotik: enable mikrotik platform driver
Thibaut VARÈNE [Wed, 25 Mar 2020 10:45:51 +0000 (11:45 +0100)]
ar71xx/mikrotik: enable mikrotik platform driver

Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
4 years agoath79/mikrotik: enable mikrotik platform driver
Thibaut VARÈNE [Tue, 24 Mar 2020 21:31:17 +0000 (22:31 +0100)]
ath79/mikrotik: enable mikrotik platform driver

Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
4 years agogeneric: mikrotik platform build bits
Thibaut VARÈNE [Tue, 24 Mar 2020 21:28:26 +0000 (22:28 +0100)]
generic: mikrotik platform build bits

Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
4 years agogeneric: routerboot sysfs platform driver
Thibaut VARÈNE [Sun, 22 Mar 2020 20:46:42 +0000 (21:46 +0100)]
generic: routerboot sysfs platform driver

This driver exposes the data encoded in the "hard_config" flash segment
of MikroTik RouterBOARDs devices. It presents the data in a sysfs folder
named "hard_config". The WLAN calibration data is available on demand via
the 'wlan_data' sysfs file in that folder.

This driver permanently allocates a chunk of RAM as large as the
"hard_config" MTD partition (typically 4KB), although it is technically
possible to operate entirely from the MTD device without using a local
buffer (except when requesting WLAN calibration data), at the cost of a
performance penalty.

This driver does not reuse any of the existing code previously found in
routerboot.c.

This driver has been successfully tested on BE (ath79) and LE (ipq40xx
and ramips) hardware.

Tested-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
Tested-by: Baptiste Jonglez <git@bitsofnetworks.org>
Tested-by: Tobias Schramm <t.schramm@manjaro.org>
Tested-by: Christopher Hill <ch6574@gmail.com>
Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
4 years agoramips: mikrotik: use routerbootpart partitions
Thibaut VARÈNE [Sat, 21 Mar 2020 21:54:53 +0000 (22:54 +0100)]
ramips: mikrotik: use routerbootpart partitions

Enable routerbootpart partitions on MikroTik devices.

Tested-by: Tobias Schramm <t.schramm@manjaro.org>
Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
4 years agoramips/mt7621: enable CONFIG_MTD_ROUTERBOOT_PARTS
Thibaut VARÈNE [Tue, 24 Mar 2020 10:22:00 +0000 (11:22 +0100)]
ramips/mt7621: enable CONFIG_MTD_ROUTERBOOT_PARTS

Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
4 years agoath79/mikrotik: use routerbootpart partitions
Thibaut VARÈNE [Sat, 21 Mar 2020 12:07:23 +0000 (13:07 +0100)]
ath79/mikrotik: use routerbootpart partitions

Enable routerbootpart partitions on MikroTik devices.

Tested-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
4 years agoath79/mikrotik: enable CONFIG_MTD_ROUTERBOOT_PARTS
Thibaut VARÈNE [Sat, 21 Mar 2020 11:17:49 +0000 (12:17 +0100)]
ath79/mikrotik: enable CONFIG_MTD_ROUTERBOOT_PARTS

Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
4 years agogeneric: routerboot partition build bits
Thibaut VARÈNE [Tue, 24 Mar 2020 10:19:41 +0000 (11:19 +0100)]
generic: routerboot partition build bits

Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
4 years agogeneric: routerbootpart MTD parser for RouterBoot
Thibaut VARÈNE [Fri, 20 Mar 2020 21:38:51 +0000 (22:38 +0100)]
generic: routerbootpart MTD parser for RouterBoot

This driver provides an OF MTD parser to properly assign the RouterBoot
partitions on the flash. This parser builds from the "fixed-partitions"
one (see ofpart.c), but it can handle dynamic partitions as found on
routerboot devices.

The parent node must contain the following:
compatible = "mikrotik,routerboot-partitions";
#address-cells = <1>;
#size-cells = <1>;

Children routerbootpart DTS nodes are defined as follows:
For fixed partitions
node-name@unit-address {
reg = <prop-encoded-array>;
label = <string>;
read-only;
lock;
};

All properties but reg are optional.

For dynamic partitions:
node-name {
size = <prop-encoded-array>;
label = <string>;
read-only;
lock;
};

size property is mandatory unless the next partition is a fixed one or
a "well-known" one (matched from the strings defined below) in which case
it can be omitted or set to 0; other properties are optional.

By default dynamic partitions are appended after the preceding one, except
for "well-known" ones which are automatically located on flash.

Well-known partitions (matched via label or node-name):
 - "hard_config"
 - "soft_config"
 - "dtb_config"

This parser requires the DTS to list partitions in ascending order as
expected on the MTD device.

This parser has been successfully tested on BE (ath79) and LE (ipq40xx
and ramips) hardware.

Tested-by: Baptiste Jonglez <git@bitsofnetworks.org>
Tested-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
Tested-by: Tobias Schramm <t.schramm@manjaro.org>
Tested-by: Christopher Hill <ch6574@gmail.com>
Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
4 years agokernel: add missing symbol to 5.4 config
Stijn Tintel [Fri, 8 May 2020 02:11:27 +0000 (05:11 +0300)]
kernel: add missing symbol to 5.4 config

This symbol is exposed if KERNEL_PROVE_LOCKING is enabled.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
4 years agolldpd: add management IP setting
Daniel A. Maierhofer [Wed, 26 Feb 2020 20:44:45 +0000 (21:44 +0100)]
lldpd: add management IP setting

add option to set management IP pattern

also add missing 'unconfigure system hostname'

for example pattern '!192.168.1.1' makes it possible that
WAN IP is selected instead of LAN IP

Signed-off-by: Daniel A. Maierhofer <git@damadmai.at>
[grammar and spelling fixes in commit message]
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
4 years agosamba36: Remove
Rosen Penev [Sun, 1 Sep 2019 01:50:48 +0000 (18:50 -0700)]
samba36: Remove

Samba 3.6 is completely unsupported, in addition to having tons of patches

It also causes kernel panics on some platforms when sendfile is enabled.
Example:

https://github.com/gnubee-git/GnuBee_Docs/issues/45

I have reproduced on ramips as well as mvebu in the past.

Samba 4 is an alternative available in the packages repo.

cifsd is a lightweight alternative available in the packages repo. It is
also a faster alternative to both Samba versions (lower CPU usage). It
was renamed to ksmbd.

To summarize, here are the alternatives:
- ksmbd + luci-app-cifsd
- samba4 + luci-app-samba4

Signed-off-by: Rosen Penev <rosenp@gmail.com>
[drop samba36-server from GEMINI_NAS_PACKAGES, ksmbd rename + summary]
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
4 years agoopkg: update to latest Git HEAD
Jo-Philipp Wich [Thu, 7 May 2020 20:47:47 +0000 (22:47 +0200)]
opkg: update to latest Git HEAD

f2166a8 libopkg: implement lightweight package listing logic
cf4554d libopkg: support passing callbacks to feed parsing functions
2a0210f opkg-cl: don't read feeds on opkg update
b6f1967 libopkg: use xsystem() to spawn opkg-key
60b9af2 file_util.c: refactor and fix checksum_hex2bin()
206ebae file_util.c: fix possible bad memory access in file_read_line_alloc()

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
4 years agolayerscape: update restool to LSDK-20.04
Yangbo Lu [Wed, 11 Mar 2020 10:51:46 +0000 (18:51 +0800)]
layerscape: update restool to LSDK-20.04

Update restool to latest LSDK-20.04.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
4 years agolayerscape: update ls-dpl to LSDK-20.04
Yangbo Lu [Sat, 14 Mar 2020 06:37:18 +0000 (14:37 +0800)]
layerscape: update ls-dpl to LSDK-20.04

Update ls-dpl to latest LSDK-20.04.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
4 years agolayerscape: define only one package for ls-dpl
Yangbo Lu [Sat, 14 Mar 2020 06:32:39 +0000 (14:32 +0800)]
layerscape: define only one package for ls-dpl

We do not have to define package for each board, and
consider variant's installing.
It is easier to maintain ls-dpl with only one package
installing all 4 files as intermediate files.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
4 years agolayerscape: update ls-mc to LSDK-20.04
Yangbo Lu [Sat, 14 Mar 2020 06:28:05 +0000 (14:28 +0800)]
layerscape: update ls-mc to LSDK-20.04

Update ls-mc to latest LSDK-20.04.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
4 years agolayerscape: define only one package for ls-mc
Yangbo Lu [Sat, 14 Mar 2020 06:25:33 +0000 (14:25 +0800)]
layerscape: define only one package for ls-mc

We do not have to define package for each board, and
consider variant's installing.
It is easier to maintain ls-mc with only one package
installing all two images as intermediate files.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
4 years agolayerscape: update ppfe-firmware to LSDK-20.04
Yangbo Lu [Wed, 11 Mar 2020 10:01:29 +0000 (18:01 +0800)]
layerscape: update ppfe-firmware to LSDK-20.04

Update ppfe-firmware to latest LSDK-20.04.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
4 years agolayerscape: update fman-ucode to LSDK-20.04
Yangbo Lu [Fri, 3 Apr 2020 03:23:33 +0000 (11:23 +0800)]
layerscape: update fman-ucode to LSDK-20.04

Just update PKG_VERSION/PKG_MIRROR_HASH since fman-ucode
of LSDK-20.04 had no changes.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
4 years agolayerscape: define only one package for fman-ucode
Yangbo Lu [Sat, 14 Mar 2020 06:11:12 +0000 (14:11 +0800)]
layerscape: define only one package for fman-ucode

We do not have to define package for each board, and
consider variant's installing.
It is easier to maintain fman-ucode with only one package
installing all two binaries as intermediate files.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
4 years agolayerscape: update tfa to LSDK-20.04
Yangbo Lu [Wed, 11 Mar 2020 08:28:35 +0000 (16:28 +0800)]
layerscape: update tfa to LSDK-20.04

Update tfa package to latest LSDK-20.04 dropping one patch
which had already been integrated.

Add fixes,
- Fix DEPENDS/PKG_BUILD_DEPENDS.
- Remove HIDDEN:=1.
- Move intermediate files installing into Build/InstallDev.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
4 years agolayerscape: update u-boot to LSDK-20.04
Yangbo Lu [Wed, 11 Mar 2020 06:55:36 +0000 (14:55 +0800)]
layerscape: update u-boot to LSDK-20.04

Update u-boot package to latest LSDK-20.04 dropping patches
which are no longer needed.
Adapt u-boot bootargs to kernel 5.4 for booting.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
4 years agolayerscape: update ls-rcw to latest LSDK-20.04
Yangbo Lu [Sat, 14 Mar 2020 05:07:50 +0000 (13:07 +0800)]
layerscape: update ls-rcw to latest LSDK-20.04

Update ls-rcw to latest LSDK-20.04.
Update patch 0001 with a new one.
Drop patch 0002 since it had been integrated.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
4 years agolayerscape: define only one package for ls-rcw
Yangbo Lu [Wed, 1 Apr 2020 08:47:41 +0000 (16:47 +0800)]
layerscape: define only one package for ls-rcw

We do not have to define package for each board, and
consider variant's building/installing.
It is easier to maintain ls-rcw with only one package
installing all boards RCW binaries as intermediate
files, each of which is just about hundreds of bytes.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
4 years agolayerscape: switch to kernel 5.4
Yangbo Lu [Fri, 10 Apr 2020 04:08:16 +0000 (12:08 +0800)]
layerscape: switch to kernel 5.4

Switch to kernel 5.4 in Makefile.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
4 years agolayerscape: disable UEFI runtime support in config-5.4
Yangbo Lu [Fri, 10 Apr 2020 06:34:44 +0000 (14:34 +0800)]
layerscape: disable UEFI runtime support in config-5.4

Disable CONFIG_EFI (UEFI runtime support) in config-5.4,
while is not required.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
4 years agolayerscape: re-enable IFC NAND/NOR controllers in config-5.4
Yangbo Lu [Fri, 10 Apr 2020 06:52:49 +0000 (14:52 +0800)]
layerscape: re-enable IFC NAND/NOR controllers in config-5.4

The Freescale IFC NAND/NOR controllers options were disabled
in default in previous running make kernel_oldconfig.
So re-enable them.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
4 years agolayerscape: refresh kernel 5.4 config
Yangbo Lu [Fri, 10 Apr 2020 03:58:57 +0000 (11:58 +0800)]
layerscape: refresh kernel 5.4 config

By running make kernel_oldconfig and selecting relevant options.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
4 years agolayerscape: copy kernel config from 4.14 to 5.4
Yangbo Lu [Fri, 10 Apr 2020 03:01:08 +0000 (11:01 +0800)]
layerscape: copy kernel config from 4.14 to 5.4

Just copy kernel config from 4.14 to 5.4.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
4 years agolayerscape: add patches-5.4
Yangbo Lu [Fri, 10 Apr 2020 02:47:05 +0000 (10:47 +0800)]
layerscape: add patches-5.4

Add patches for linux-5.4. The patches are from NXP LSDK-20.04 release
which was tagged LSDK-20.04-V5.4.
https://source.codeaurora.org/external/qoriq/qoriq-components/linux/

For boards LS1021A-IOT, and Traverse-LS1043 which are not involved in
LSDK, port the dts patches from 4.14.

The patches are sorted into the following categories:
  301-arch-xxxx
  302-dts-xxxx
  303-core-xxxx
  701-net-xxxx
  801-audio-xxxx
  802-can-xxxx
  803-clock-xxxx
  804-crypto-xxxx
  805-display-xxxx
  806-dma-xxxx
  807-gpio-xxxx
  808-i2c-xxxx
  809-jailhouse-xxxx
  810-keys-xxxx
  811-kvm-xxxx
  812-pcie-xxxx
  813-pm-xxxx
  814-qe-xxxx
  815-sata-xxxx
  816-sdhc-xxxx
  817-spi-xxxx
  818-thermal-xxxx
  819-uart-xxxx
  820-usb-xxxx
  821-vfio-xxxx

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
4 years agokernel: bump 5.4 to 5.4.39
Petr Štetiar [Thu, 7 May 2020 07:29:27 +0000 (09:29 +0200)]
kernel: bump 5.4 to 5.4.39

Refreshed patches.

Run tested: qemu-x86-64
Build tested: x86/64, imx6, sunxi/a53, layerscape/armv7+armv8_64b

Signed-off-by: Petr Štetiar <ynezz@true.cz>
4 years agowireguard: bump to 1.0.20200506
Jason A. Donenfeld [Wed, 6 May 2020 22:22:46 +0000 (16:22 -0600)]
wireguard: bump to 1.0.20200506

* compat: timeconst.h is a generated artifact

Before we were trying to check for timeconst.h by looking in the kernel
source directory. This isn't quite correct on configurations in which
the object directory is separate from the kernel source directory, for
example when using O="elsewhere" as a make option when building the
kernel. The correct fix is to use $(CURDIR), which should point to
where we want.

* compat: use bash instead of bc for HZ-->USEC calculation

This should make packaging somewhat easier, as bash is generally already
available (at least for dkms), whereas bc isn't provided by distros by
default in their build meta packages.

* socket: remove errant restriction on looping to self

It's already possible to create two different interfaces and loop
packets between them. This has always been possible with tunnels in the
kernel, and isn't specific to wireguard. Therefore, the networking stack
already needs to deal with that. At the very least, the packet winds up
exceeding the MTU and is discarded at that point. So, since this is
already something that happens, there's no need to forbid the not very
exceptional case of routing a packet back to the same interface; this
loop is no different than others, and we shouldn't special case it, but
rather rely on generic handling of loops in general. This also makes it
easier to do interesting things with wireguard such as onion routing.
At the same time, we add a selftest for this, ensuring that both onion
routing works and infinite routing loops do not crash the kernel. We
also add a test case for wireguard interfaces nesting packets and
sending traffic between each other, as well as the loop in this case
too. We make sure to send some throughput-heavy traffic for this use
case, to stress out any possible recursion issues with the locks around
workqueues.

* send: cond_resched() when processing tx ringbuffers

Users with pathological hardware reported CPU stalls on CONFIG_
PREEMPT_VOLUNTARY=y, because the ringbuffers would stay full, meaning
these workers would never terminate. That turned out not to be okay on
systems without forced preemption. This commit adds a cond_resched() to
the bottom of each loop iteration, so that these workers don't hog the
core. We don't do this on encryption/decryption because the compat
module here uses simd_relax, which already includes a call to schedule
in preempt_enable.

* selftests: initalize ipv6 members to NULL to squelch clang warning

This fixes a worthless warning from clang.

* send/receive: use explicit unlikely branch instead of implicit coalescing

Some code readibility cleanups.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
4 years agoppp: Fix mirror hash
Hauke Mehrtens [Wed, 6 May 2020 19:29:08 +0000 (21:29 +0200)]
ppp: Fix mirror hash

Fixes: ae06a650d680 ("ppp: update to version 2.4.8.git-2020-03-21")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
4 years agofstools: update to the latest version
Rafał Miłecki [Wed, 6 May 2020 15:49:59 +0000 (17:49 +0200)]
fstools: update to the latest version

eec16e2 blockd: add optional "device" parameter to "info" ubus method
9ab936d block(d): always call hotplug.d "mount" scripts from blockd
4963db4 blockd: use uloop_process for calling /sbin/hotplug-call mount
cddd902 Truncate FAT filesystem label until 1st occurance of a blank (0x20)

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
4 years agogeneric: ar8216: fix unknown packet flooding for ar8229/ar8236
Chuanhong Guo [Tue, 5 May 2020 09:37:02 +0000 (17:37 +0800)]
generic: ar8216: fix unknown packet flooding for ar8229/ar8236

ar8229 and ar8236 don't allow unknown unicast/multicast frames and
broadcast frames to be flooded to cpu port. This isn't desired behavior
for swconfig as we treat it as a standalone switch.
Current code doesn't enable unicast frame flooding for ar8229 and uses
wrong setup for ar8236. This commit fixes both of them by enabling port
0 flooding for all unknown frames.

Fixes: FS#2848
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
4 years agobuildsystem: add CPE information to ipkg packages and manifest files
Florian Eckert [Sun, 16 Dec 2018 20:30:20 +0000 (21:30 +0100)]
buildsystem: add CPE information to ipkg packages and manifest files

Common Platform Enumeration (CPE) is a structured naming scheme for
information technology systems, software, and packages.

This information already exists in some makefiles. In order for the
information to be processed further, it should also be added to the
manifest file and the control file of ipkg packages.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
4 years agosunxi: remove unneeded shebang for preinit files
Adrian Schmutzler [Tue, 5 May 2020 11:09:19 +0000 (13:09 +0200)]
sunxi: remove unneeded shebang for preinit files

preinit files are sourced and they have no execute bit set, so remove
their shebang.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
4 years agosunxi: tidy up cases in base-files
Adrian Schmutzler [Tue, 5 May 2020 11:06:26 +0000 (13:06 +0200)]
sunxi: tidy up cases in base-files

This removes unnecessary quotes in cases and applies alphabetic
order to members.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
4 years agofstools: update to the latest version
Rafał Miłecki [Tue, 5 May 2020 07:14:40 +0000 (09:14 +0200)]
fstools: update to the latest version

8b9e601 block: always use st_dev (device ID) of / when looking for root
37c9148 block: simplify check_extroot() a bit
d70774d block: add some basic extroot documentation
32db27d Revert "block: support hierarchical mount/umount"
0b93429 Revert "block: mount_action: handle mount/umount deps"

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
4 years agoodhcpd: update to latest git HEAD (FS#3056)
Hans Dedecker [Mon, 4 May 2020 19:25:47 +0000 (21:25 +0200)]
odhcpd: update to latest git HEAD (FS#3056)

5ce0770 router: fix Lan host reachibility due to identical RIO and PIO prefixes (FS#3056)

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
4 years agokernel: bump 5.4 to 5.4.38
Petr Štetiar [Sun, 3 May 2020 12:44:49 +0000 (14:44 +0200)]
kernel: bump 5.4 to 5.4.38

Refreshed patches.

Run tested: qemu-x86-64, apalis
Build tested: x86/64, ipq40xx, ath79, imx6, sunxi/a53

Signed-off-by: Petr Štetiar <ynezz@true.cz>
4 years agomediatek: add uboot
John Crispin [Mon, 4 May 2020 14:31:19 +0000 (16:31 +0200)]
mediatek: add uboot

Signed-off-by: John Crispin <john@phrozen.org>
4 years agomediatek: fix image building
John Crispin [Mon, 4 May 2020 14:28:11 +0000 (16:28 +0200)]
mediatek: fix image building

Signed-off-by: John Crispin <john@phrozen.org>
4 years agomediatek: update patches
John Crispin [Mon, 4 May 2020 14:27:30 +0000 (16:27 +0200)]
mediatek: update patches

Signed-off-by: John Crispin <john@phrozen.org>
4 years agomac80211: more wifi reconf related fixes
John Crispin [Tue, 28 Apr 2020 14:10:26 +0000 (16:10 +0200)]
mac80211: more wifi reconf related fixes

* uci state was not getting reset properly during teardown
* AP+STA co-exist state was not flushed properly upon channel switch
* remove a debug logger call
* properly teardown supplicant instances when they get disabled
* add md5 config support for supplicant
* don't call wpa_supplicant_prepare_interface twice

Signed-off-by: John Crispin <john@phrozen.org>
4 years agocurl: update to version 7.70.0
Josef Schlehofer [Sat, 2 May 2020 13:03:47 +0000 (15:03 +0200)]
curl: update to version 7.70.0

- Release notes:
https://curl.haxx.se/changes.html#7_70_0

- Refreshed patch

Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
4 years agoargp-standalone: fix segfault in canon_doc_option
Stijn Tintel [Sun, 3 May 2020 17:31:30 +0000 (20:31 +0300)]
argp-standalone: fix segfault in canon_doc_option

Backported from glibc.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
4 years agobcm27xx: backup /boot/cmdline.txt and restore early
Stijn Tintel [Thu, 16 Apr 2020 21:32:18 +0000 (00:32 +0300)]
bcm27xx: backup /boot/cmdline.txt and restore early

If you want to use the Raspberry Pi UART, "console=serial0,115200" needs
to be removed from the kernel cmdline. This is done by editing
/boot/cmdline.txt. However, this file is not currently backed up during
sysupgrade, so this effectively breaks HATs that require the use of the
UART every sysupgrade.

Backup this file during sysupgrade, and restore it before rebooting.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
4 years agobase-files: generate config files with correct permissions
Hans Dedecker [Thu, 30 Apr 2020 19:29:09 +0000 (21:29 +0200)]
base-files: generate config files with correct permissions

As touch creates files with permission 0644 use umask to create
config files with permission 0600 to be inline with INSTALL_CONF

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
4 years agouci: update to latest git HEAD
Hans Dedecker [Thu, 30 Apr 2020 19:07:11 +0000 (21:07 +0200)]
uci: update to latest git HEAD

ec8d323 file: preserve original file mode after commit

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
4 years agowireguard: bump to 1.0.20200429
Jason A. Donenfeld [Thu, 30 Apr 2020 04:50:40 +0000 (22:50 -0600)]
wireguard: bump to 1.0.20200429

* compat: support latest suse 15.1 and 15.2
* compat: support RHEL 7.8's faulty siphash backport
* compat: error out if bc is missing
* compat: backport hsiphash_1u32 for tests

We now have improved support for RHEL 7.8, SUSE 15.[12], and Ubuntu 16.04.

* compat: include sch_generic.h header for skb_reset_tc

A fix for a compiler error on kernels with weird configs.

* compat: import latest fixes for ptr_ring
* compat: don't assume READ_ONCE barriers on old kernels
* compat: kvmalloc_array is not required anyway

ptr_ring.h from upstream was imported, with compat modifications, to our
compat layer, to receive the latest fixes.

* compat: prefix icmp[v6]_ndo_send with __compat

Some distros that backported icmp[v6]_ndo_send still try to build the compat
module in some corner case circumstances, resulting in errors.  Work around
this with the usual __compat games.

* compat: ip6_dst_lookup_flow was backported to 3.16.83
* compat: ip6_dst_lookup_flow was backported to 4.19.119

Greg and Ben backported the ip6_dst_lookup_flow patches to stable kernels,
causing breaking in our compat module, which these changes fix.

* git: add gitattributes so tarball doesn't have gitignore files

Distros won't need to clean this up manually now.

* crypto: do not export symbols

These don't do anything and only increased file size.

* queueing: cleanup ptr_ring in error path of packet_queue_init

Sultan Alsawaf reported a memory leak on an error path.

* main: mark as in-tree

Now that we're upstream, there's no need to set the taint flag.

* receive: use tunnel helpers for decapsulating ECN markings

ECN markings are now decapsulated using RFC6040 instead of the old RFC3168.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
4 years agokernel: bump 5.4 to 5.4.36
Petr Štetiar [Wed, 29 Apr 2020 21:24:49 +0000 (23:24 +0200)]
kernel: bump 5.4 to 5.4.36

Refreshed patches, removed upstreamed patch:

 generic/hack: 551-loop-Better-discard-support-for-block-devices.patch

Added generic config symbol `ARM64_ERRATUM_1542419` due to Fixes:
f2791551cedb ("arm64: errata: Hide CTR_EL0.DIC on systems affected by
Neoverse-N1 #1542419").

Run tested: qemu-x86-64, apalis, nbg6617
Build tested: x86/64, imx6, ipq40xx, sunxi/a53

Signed-off-by: Petr Štetiar <ynezz@true.cz>
4 years agowireless-regdb: bump to latest release 2020-04-29
Petr Štetiar [Wed, 29 Apr 2020 21:11:05 +0000 (23:11 +0200)]
wireless-regdb: bump to latest release 2020-04-29

Update to latest release.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
4 years agoath10k-ct: update to version 2020-04-29
Petr Štetiar [Wed, 29 Apr 2020 15:13:29 +0000 (17:13 +0200)]
ath10k-ct: update to version 2020-04-29

Pulls in workaround for TX rate code firmware bug which might as well
help track it down via different printk()s and thus possibly provide
more clue for proper fix.

Firmware currently sends wrong (0xff) TX rate code which causes
WARN_ONCE, so the workaround just changes this bogus value (0xff) into 0.

For 5.4 it also pulls in tx-queue-wake throttling patch "ath10k: Restart
xmit queues below low-water mark", which should improve performance with
high number of concurrent TCP streams.

Ref: https://github.com/greearb/ath10k-ct/pull/129
Signed-off-by: Petr Štetiar <ynezz@true.cz>
4 years agodnsmasq: always inform about disabled dhcp service
Petr Štetiar [Tue, 28 Apr 2020 15:00:58 +0000 (17:00 +0200)]
dnsmasq: always inform about disabled dhcp service

Init script checks for an already active DHCP server on the interface
and if such DHCP server is found, then it logs "refusing to start DHCP"
message, starts dnsmasq without DHCP service unless `option force 1` is
set and caches the DHCP server check result.

Each consecutive service start then uses this cached DHCP server check
result, but doesn't provide log feedback about disabled DHCP service
anymore.

So this patch ensures, that the log message about disabled DHCP service
on particular interface is always provided.

Acked-by: Hans Dedecker <dedeckeh@gmail.com>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
4 years agoath79: fix dts of Teltonika RUT9xx devices
Daniel Golle [Wed, 29 Apr 2020 20:59:35 +0000 (21:59 +0100)]
ath79: fix dts of Teltonika RUT9xx devices

The previous commits were missing a semicolon.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
4 years agoath79: add support for Teltonika RUT955 H7V3C0
Daniel Golle [Wed, 29 Apr 2020 19:59:04 +0000 (20:59 +0100)]
ath79: add support for Teltonika RUT955 H7V3C0

This board was previously supported in ar71xx as 'RUT9XX'. The
difference between that and the other RUT955 board already supported in
ath79 is that instead of the SPI shift registers driving the LEDs and
digital outputs that model got an I2C GPIO expander instead.

To support LEDs during early boot and interrupt-driven digital inputs,
I2C support as well as support for PCA953x has to be built-in and
cannot be kernel modules, hence select those symbols for ath79/generic.

Specification:

- 550/400/200 MHz (CPU/DDR/AHB)
- 128 MB of RAM (DDR2)
- 16 MB of FLASH (SPI NOR)
- 4x 10/100 Mbps Ethernet, with passive PoE support on LAN1
- 2T2R 2,4 GHz (AR9344)
- built-in 4G/3G module (example: Quectel EC-25EU)
- internal microSD slot (spi-mmc, buggy and disabled for now)
- RS232 on D-Sub9 port (Cypress ACM via USB, /dev/ttyACM0)
- RS422/RS485 (AR934x high speed UART, /dev/ttyATH1)
- analog 0-24V input (MCP3221)
- various digital inputs and outputs incl. a relay
- 11x LED (4 are driven by AR9344, 7 by PCA9539)
- 2x miniSIM slot (can be swapped via GPIO)
- 2x RP-SMA/F (Wi-Fi), 3x SMA/F (2x WWAN, GPS)
- 1x button (reset)
- DC jack for main power input (9-30 V)
- debugging UART available on PCB edge connector

Serial console (/dev/ttyS0) pinout:

- RX: pin1 (square) on top side of the main PCB (AR9344 is on top)
- TX: pin1 (square) on bottom side

Flash instruction:

Vendor firmware is based on OpenWrt CC release. Use the "factory" image
directly in GUI (make sure to uncheck "keep settings") or in U-Boot web
based recovery. To avoid any problems, make sure to first update vendor
firmware to latest version - "factory" image was successfully tested on
device running "RUT9XX_R_00.06.051" firmware and U-Boot "3.0.1".

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
4 years agoath79: split Teltonika RUT955 to support other RUT9xx models
Daniel Golle [Tue, 28 Apr 2020 17:19:48 +0000 (18:19 +0100)]
ath79: split Teltonika RUT955 to support other RUT9xx models

Split device-tree of Teltonika RUT955 into a generic RUT9xx part and
a part specific to that version of RUT955 already supported.
Also harmonize GPIO and LED names with what is used by the vendor
firmware and assign RS485 DTR signal.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
4 years agougps: nmea: fix time comparision
Daniel Golle [Wed, 29 Apr 2020 18:48:52 +0000 (19:48 +0100)]
ugps: nmea: fix time comparision

Fix bug causing system time to be set over and over again, and causing
massive log pollution.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
4 years agokirkwood: disable image for Linksys EA3500 (Audi)
Adrian Schmutzler [Wed, 29 Apr 2020 16:04:16 +0000 (18:04 +0200)]
kirkwood: disable image for Linksys EA3500 (Audi)

Due to the switch to DSA, the kernel image has become too big (2641k) for the
kernel partition (2624k) on this device:

  WARNING: Image file [...]/linux-kirkwood/linksys_audi-uImage is too big

Disable the device until this is fixed, so buildbots can continue their work.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
4 years agokernel: hwmon: add Analog Devices AD741x support
David Bauer [Sun, 26 Apr 2020 17:42:29 +0000 (19:42 +0200)]
kernel: hwmon: add Analog Devices AD741x support

Signed-off-by: David Bauer <mail@david-bauer.net>
4 years agobuild: prereq: change minimum make version to 3.82
Kevin Darbyshire-Bryant [Mon, 27 Apr 2020 20:28:42 +0000 (21:28 +0100)]
build: prereq: change minimum make version to 3.82

undefine was added in make 3.82 which is now some 10 years ago, some
make scripts are beginning to use 'undefine'

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
4 years agoath79: add SUPPORTED_DEVICES based on ar71xx for some devices
Adrian Schmutzler [Tue, 28 Apr 2020 18:28:06 +0000 (20:28 +0200)]
ath79: add SUPPORTED_DEVICES based on ar71xx for some devices

This adds some still-missing board names for old TP-Link devices
to ath79 SUPPORTED_DEVICES.

Fixes: FS#3017
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
4 years agoRevert "ramips: explicitly disable built-in switch for lan-only devices"
Adrian Schmutzler [Tue, 28 Apr 2020 14:51:41 +0000 (16:51 +0200)]
Revert "ramips: explicitly disable built-in switch for lan-only devices"

This reverts commit a1693bf626f8cd00363b0b98642b682522dfcf75.

The rt288x and rt3883 devices in question don't have switches.
Only keep the merged case for rt305x.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
4 years agokirkwood: remove support for kernel 4.19
Adrian Schmutzler [Tue, 28 Apr 2020 09:58:32 +0000 (11:58 +0200)]
kirkwood: remove support for kernel 4.19

kirkwood has moved to DSA on 5.4, which will make kernel 4.14 and 4.19
support broken on the affected devices.
Support on kernel 5.4 seems to have been running fine for almost 2 months
on multiple devices, while support for 4.19 has never left testing state.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Acked-by: Pawel Dembicki <paweldembicki@gmail.com>
4 years agokirkwood: remove support for kernel 4.14
Adrian Schmutzler [Tue, 28 Apr 2020 09:52:40 +0000 (11:52 +0200)]
kirkwood: remove support for kernel 4.14

kirkwood has moved to DSA on 5.4, which will make kernel 4.14 and 4.19
support broken on the affected devices.
Support on kernel 5.4 seems to have been running fine for almost 2 months
on multiple devices.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Acked-by: Pawel Dembicki <paweldembicki@gmail.com>
4 years agokirkwood: switch from swconfig to dsa
Pawel Dembicki [Mon, 20 Apr 2020 08:06:36 +0000 (10:06 +0200)]
kirkwood: switch from swconfig to dsa

This patch removes support for swconfig and switches to dsa driver.

swconfig and switch drivers are removed. DSA driver is enabled and
configuration is adjusted.

In kirkwood only two devices have switches: Linksys EA3500 and EA4500.

WAN MAC configuration in 02_network is required because otherwise WAN
would have the same MAC address as lan interfaces. In swconfig solution
the WAN address was assigned in u-Boot to eth1. Now, as eth1 is disabled
and wan is part of the switch, we have to set it manually.

Compile tested: EA3500, EA4500
Run tested: EA4500

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
[minor commit title/message adjustments, remove swconfig package
for devices]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
4 years agowpad-wolfssl: fix crypto_bignum_sub()
Antonio Quartulli [Tue, 28 Apr 2020 10:06:58 +0000 (12:06 +0200)]
wpad-wolfssl: fix crypto_bignum_sub()

Backport patch from hostapd.git master that fixes copy/paste error in
crypto_bignum_sub() in crypto_wolfssl.c.

This missing fix was discovered while testing SAE over a mesh interface.

With this fix applied and wolfssl >3.14.4 mesh+SAE works fine with
wpad-mesh-wolfssl.

Cc: Sean Parkinson <sean@wolfssl.com>
Signed-off-by: Antonio Quartulli <a@unstable.cc>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
4 years agoramips: fix MikroTik 750Gr3 ports MAC addresses
DENG Qingfang [Tue, 28 Apr 2020 03:38:51 +0000 (11:38 +0800)]
ramips: fix MikroTik 750Gr3 ports MAC addresses

According to a user in OpenWrt forum, on RouterOS the MAC addresses are
ether1(WAN) = MAC
ether2(LAN2) = MAC+1
ether3(LAN3) = MAC+2
etc.

Fix the MAC addresses in OpenWrt.

Ref: https://forum.openwrt.org/t/few-dumb-question-about-mt7530-rb750gr3-dsa/61608
Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
[remove label_mac in 02_network]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
4 years agoath10k-ct-firmware: add htt-mgt variants
Álvaro Fernández Rojas [Sun, 26 Apr 2020 19:35:53 +0000 (21:35 +0200)]
ath10k-ct-firmware: add htt-mgt variants

For wave-2, there is now a new variant: htt-mgt-community (vs the old
full-htt-mgt-community).

The non-full one (hence forth 'diet') compiles out a lot of firmware features
that ath10k does not use. This saves a lot of resources and lets one
configure more stations/vdevs/etc using fwcfg.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
4 years agoath10k-ct-firmware: update firmware images
Álvaro Fernández Rojas [Sun, 26 Apr 2020 19:11:34 +0000 (21:11 +0200)]
ath10k-ct-firmware: update firmware images

No release notes this time.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
4 years agoath10k-ct-firmware: rename ct-htt packages
Álvaro Fernández Rojas [Sun, 26 Apr 2020 19:30:16 +0000 (21:30 +0200)]
ath10k-ct-firmware: rename ct-htt packages

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
4 years agoath10k-firmware: move CT firmwares to new package
Álvaro Fernández Rojas [Sun, 26 Apr 2020 18:52:52 +0000 (20:52 +0200)]
ath10k-firmware: move CT firmwares to new package

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
4 years agoath10k-ct: remove old patches
Álvaro Fernández Rojas [Sun, 26 Apr 2020 10:40:42 +0000 (12:40 +0200)]
ath10k-ct: remove old patches

Only keep 5.4 patches.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
4 years agoelfutils: powerpc build fix
Luiz Angelo Daros de Luca [Mon, 27 Apr 2020 21:45:44 +0000 (18:45 -0300)]
elfutils: powerpc build fix

Fixes following build error on mpc85xx/generic:

 ppc_initreg.c: In function 'ppc_set_initial_registers_tid':
 ppc_initreg.c:79:22: error: field 'r' has incomplete type
        struct pt_regs r;

Ref: FS#2924
Fixes: d27623b54254 ("elfutils: update to 0.179")
Signed-off-by: Luiz Angelo Daros de Luca <luizluca@gmail.com>
[commit description facelift]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
4 years agowireless-regdb: backport three upstream fixes
Petr Štetiar [Sat, 25 Apr 2020 12:56:20 +0000 (14:56 +0200)]
wireless-regdb: backport three upstream fixes

Another release is overdue for quite some time, so I'm backporting three
fixes from upstream which I plan to backport into 19.07 as well.

Ref: FS#2880
Signed-off-by: Petr Štetiar <ynezz@true.cz>
4 years agoomap: remove support for kernel 4.14
Andre Heider [Mon, 27 Apr 2020 22:43:46 +0000 (00:43 +0200)]
omap: remove support for kernel 4.14

There's support for 5.4 and 4.19 now, remove the 3rd option.

Signed-off-by: Andre Heider <a.heider@gmail.com>
4 years agoomap: switch to kernel 5.4
Andre Heider [Mon, 23 Mar 2020 10:38:33 +0000 (11:38 +0100)]
omap: switch to kernel 5.4

Runtime tested on beagleblack.

Signed-off-by: Andre Heider <a.heider@gmail.com>
[added test comment]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
4 years agoomap: make kernel_oldconfig
Andre Heider [Mon, 23 Mar 2020 10:37:41 +0000 (11:37 +0100)]
omap: make kernel_oldconfig

Attempt to keep the same nand/sound/panel functionality using new knobs.

Signed-off-by: Andre Heider <a.heider@gmail.com>
4 years agoomap: copy kernel 4.19 config for 5.4
Andre Heider [Mon, 23 Mar 2020 09:05:38 +0000 (10:05 +0100)]
omap: copy kernel 4.19 config for 5.4

Signed-off-by: Andre Heider <a.heider@gmail.com>
4 years agoath79: indicate boot/failsafe/upgrade for NanoBeam/Nanostation AC
Adrian Schmutzler [Mon, 27 Apr 2020 21:26:18 +0000 (23:26 +0200)]
ath79: indicate boot/failsafe/upgrade for NanoBeam/Nanostation AC

Like for Ubiquiti PowerBeam 5AC Gen2, the highest RSSI LED can
be exploited to indicate boot/failsafe/upgrade for the NanoBeam AC
and Nanostation AC as well.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
4 years agoath79: add support for Ubiquiti PowerBeam 5AC Gen2
Roger Pueyo Centelles [Thu, 12 Mar 2020 10:37:10 +0000 (11:37 +0100)]
ath79: add support for Ubiquiti PowerBeam 5AC Gen2

The Ubiquiti PowerBeam 5AC Gen 2 (PBE-5AC-Gen2) is an outdoor 802.11ac
5 GHz bridge with a radio feed and a dish antenna. The device is
hardware-compatible with the LiteBeam AC Gen2, plus the 4 extra LEDs.

Specifications:
 - SoC: Qualcomm Atheros AR9342 rev 2
 - RAM: 64 MB DDR2
 - Flash: 16 MB SPI NOR (mx25l12805d)
 - Ethernet: 1x 10/100/1000 Mbps Atheros 8035, 24 Vdc PoE-in
 - WiFi 5 GHz: QCA988x HW2.0 Ubiquiti target 0x4100016c chip_id 0x043222ff
 - WiFi 2.4 GHz: Atheros AR9340 (SoC-based)
 - Buttons: 1x (reset)
 - LEDs: 1x power, 1x Ethernet, 4x RSSI via GPIO. All blue.
 - UART: not tested

Installation from stock airOS firmware:
 - Follow instructions for WA-type Ubiquiti devices on OpenWrt wiki

Signed-off-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
[changed device name in commit title]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
4 years agoramips: rt3883: remove swconfig from individual DEVICE_PACKAGES
Adrian Schmutzler [Mon, 27 Apr 2020 21:04:55 +0000 (23:04 +0200)]
ramips: rt3883: remove swconfig from individual DEVICE_PACKAGES

In rt3883 subtarget, several devices add swconfig to their DEVICE_PACKAGES.
This is redundant as the package is already provided via DEFAULT_PACKAGES.

Remove the redundant inclusions.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
4 years agoramips: remove (kmod-)swconfig DEVICE_PACKAGES for Sitecom WL-351
Adrian Schmutzler [Mon, 27 Apr 2020 20:59:40 +0000 (22:59 +0200)]
ramips: remove (kmod-)swconfig DEVICE_PACKAGES for Sitecom WL-351

These definitions are not required since swconfig is selected for
the target anyway and kmod-swconfig is pulled as dependency by
kmod-switch-rtl8366rb.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
4 years agoramips: explicitly disable built-in switch for lan-only devices
Sungbo Eo [Sat, 25 Apr 2020 09:11:12 +0000 (18:11 +0900)]
ramips: explicitly disable built-in switch for lan-only devices

Commit 8f6334eb947a ("ramips: explicitly disable built-in switch when needed")
did not fix rt288x and rt3883 devices. This patch deals with them.

While at it, consolidate duplicate cases in interface setup.

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
4 years agoramips: create common definition for I-O DATA NAND devices
Adrian Schmutzler [Mon, 27 Apr 2020 10:07:01 +0000 (12:07 +0200)]
ramips: create common definition for I-O DATA NAND devices

Three of the I-O DATA devices with NAND flash share a lot of
variables. Create a common definition for them to reduce duplicate
code.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
4 years agomediatek: fix compile error caused by upstreamed mtk_m32 function
Yong-hyu, Ban [Sun, 26 Apr 2020 09:43:22 +0000 (18:43 +0900)]
mediatek: fix compile error caused by upstreamed mtk_m32 function

This fixes following compile error:

```
  CC      drivers/net/ethernet/mediatek/mtk_eth_soc.o
drivers/net/ethernet/mediatek/mtk_eth_soc.c:70:5: error: conflicting types for 'mtk_m32'
 u32 mtk_m32(struct mtk_eth *eth, u32 mask, u32 set, unsigned reg)
     ^~~~~~~
In file included from drivers/net/ethernet/mediatek/mtk_eth_soc.c:25:
drivers/net/ethernet/mediatek/mtk_eth_soc.h:964:6: note: previous declaration of 'mtk_m32' was here
 void mtk_m32(struct mtk_eth *eth, u32 clear, u32 set, unsigned reg);
      ^~~~~~~
```

which caused by 5.4.34 mainlining of mtk_m32 function.

Fixes: faf668be354a ("kernel: bump 5.4 to 5.4.34")
Signed-off-by: Yong-hyu, Ban <perillamint@quendi.moe>