11 days agocurl: bump to 7.71.0 master
Hans Dedecker [Tue, 30 Jun 2020 20:21:24 +0000 (22:21 +0200)]
curl: bump to 7.71.0

For changes in 7.71.0; see

Signed-off-by: Hans Dedecker <>
12 days agoath10k-ct: update to version 2020-06-30
Álvaro Fernández Rojas [Wed, 1 Jul 2020 09:46:48 +0000 (11:46 +0200)]
ath10k-ct: update to version 2020-06-30

Backports commit "a1769bb68a850508a492e3674ab1e5e479b11254", which reverts
upstream commit "76d164f582150fd0259ec0fcbc485470bcd8033e" (ath10k: fix DMA
related firmware crashes on multiple devices).

Signed-off-by: Álvaro Fernández Rojas <>
12 days agobuild: store default/device packages in JSON
Paul Spooren [Tue, 30 Jun 2020 11:02:43 +0000 (01:02 -1000)]
build: store default/device packages in JSON

With this commit the `profiles.json` contain both the target specific
`default_packages` as well as the device specific `device_packages` as a
array of strings.

This information is required for downstream projects like the various
web-based interactive firmware generators.

Signed-off-by: Daniel Golle <>
Signed-off-by: Paul Spooren <>
12 days agodropbear: bump to 2020.80
Hans Dedecker [Tue, 30 Jun 2020 20:02:20 +0000 (22:02 +0200)]
dropbear: bump to 2020.80

- drop patches (applied upstream)
 * 001-backport_GNU_SOURCE-for-random.patch
 * 002-backport-move-GNU_SOURCE-earlier.patch
 * 010-backport-disable-toom-and-karatsuba.patch

Signed-off-by: Hans Dedecker <>
12 days agozram-swap: init: replace backticks with $()
Rui Salvaterra [Tue, 30 Jun 2020 16:23:12 +0000 (17:23 +0100)]
zram-swap: init: replace backticks with $()

This replaces deprecated backticks by more versatile $(...) syntax.

Signed-off-by: Rui Salvaterra <>
[add commit description]
Signed-off-by: Adrian Schmutzler <>
12 days agodropbear: init: replace backticks with $()
Rui Salvaterra [Tue, 30 Jun 2020 16:22:10 +0000 (17:22 +0100)]
dropbear: init: replace backticks with $()

This replaces deprecated backticks by more versatile $(...) syntax.

Signed-off-by: Rui Salvaterra <>
[add commit description]
Signed-off-by: Adrian Schmutzler <>
12 days agoramips: add support for TP-Link RE220 v2
Rowan Border [Tue, 30 Jun 2020 13:35:56 +0000 (14:35 +0100)]
ramips: add support for TP-Link RE220 v2

TP-Link RE220 v2 is a wireless range extender with Ethernet and 2.4G and 5G
WiFi with internal antennas. It's based on MediaTek MT7628AN+MT7610EN.

This port of OpenWRT leverages work done by Andreas Böhler <>
for the TP-Link RE200 v2 as both devices share the same SoC, flash layout
and GPIO pinout.


MediaTek MT7628AN (580 Mhz)
64 MB of RAM
2T2R 2.4 GHz and 1T1R 5 GHz
1x 10/100 Mbps Ethernet
UART header on PCB (57600 8n1)
8x LED (GPIO-controlled), 2x button
There are 2.4G and 5G LEDs in red and green which are controlled separately.

Web Interface Installation

It is possible to upgrade to OpenWrt via the web interface. Simply flash
the -factory.bin from OEM. In contrast to a stock firmware, this will not
overwrite U-Boot.

Signed-off-by: Rowan Border <>
12 days agokernel: cake: backport upstream tweaks & fixes
Kevin Darbyshire-Bryant [Sat, 18 Jan 2020 15:35:38 +0000 (15:35 +0000)]
kernel: cake: backport upstream tweaks & fixes

From upstream:
b8392808eb3f sch_cake: add RFC 8622 LE PHB support to CAKE diffserv handling
3f608f0c4136 sch_cake: fix a few style nits
8c95eca0bb8c sch_cake: don't call diffserv parsing code when it is not needed
9208d2863ac6 sch_cake: don't try to reallocate or unshare skb unconditionally

From netdev not yet accepted:
sch_cake: fix IP protocol handling in the presence of VLAN tags

The VLAN tag handling is actually wider than just cake so upstream are
working out how to fix it generically.  We fix it here just for cake.

Signed-off-by: Kevin Darbyshire-Bryant <>
13 days agokernel: cake: backport unused var patch to 5.4
Kevin Darbyshire-Bryant [Mon, 29 Jun 2020 18:52:10 +0000 (19:52 +0100)]
kernel: cake: backport unused var patch to 5.4

This was backported to 4.19 and I clearly expected it to land in 5.4 but
it didn't (5.5) so backport it to 5.4 for consistency.

Signed-off-by: Kevin Darbyshire-Bryant <>
13 days agokernel: cake: skb hash backport to 419
Kevin Darbyshire-Bryant [Thu, 25 Jun 2020 13:23:32 +0000 (14:23 +0100)]
kernel: cake: skb hash backport to 419

Commit 7b4877c2040a63332cd1f10023c51698fec2ed98 backported to 5.4 only,
backport to 4.19 as well.

Signed-off-by: Kevin Darbyshire-Bryant <>
13 days agokernel: cake: renumber backport patches
Kevin Darbyshire-Bryant [Thu, 25 Jun 2020 12:39:54 +0000 (13:39 +0100)]
kernel: cake: renumber backport patches

Signed-off-by: Kevin Darbyshire-Bryant <>
2 weeks agoramips: remove duplicate MAC assignment case
David Bauer [Mon, 29 Jun 2020 13:51:37 +0000 (15:51 +0200)]
ramips: remove duplicate MAC assignment case

Cudy WR1000 and Wavlink WL-WN577A2 store WAN as well as label MAC address
at the same position in flash.

Suggested-by: Sungbo Eo <>
Signed-off-by: David Bauer <>
2 weeks agopackage: add ravpower-mcu package
David Bauer [Mon, 29 Jun 2020 10:24:04 +0000 (12:24 +0200)]
package: add ravpower-mcu package

This package allows to read battery status information and control the
power state of the RAVPower RP-WD009 power management IC.

Signed-off-by: David Bauer <>
2 weeks agoramips: add support for RAVPower RP-WD009
David Bauer [Mon, 29 Jun 2020 10:24:01 +0000 (12:24 +0200)]
ramips: add support for RAVPower RP-WD009

The RAVPower RP-WD009 is a batter-powered pocket sized router with SD
card lot and USB port.

CPU:   MediaTek MT7628AN
RAM:   64M DDR2
FLASH: 16M GigaDevices SPI-NOR
WLAN:  MediaTek MT7628AN 2T2R b/g/n
       MediaTek MT7610E  1T1R n/ac
ETH:   1x FastEthernet
SD:    SD Card slot
USB:   USB 2.0

Custom PMIC on the I2C bus (address 0x0a).


1. Press and hold down the reset button.

2. Power up the Device. Keep pressing the reset button for 10
   more seconds until the Globe LED lights up.

3. Attach your Computer to the Ethernet port. Assign yourself the

4. Access the recovery page at and upload the OpenWrt
   factory image.

5. The flashing will take around 1 minute. The device will reboot
   automatically into OpenWrt.

Signed-off-by: David Bauer <>
2 weeks agoath79: replace custom uImageArcher generation
David Bauer [Sun, 28 Jun 2020 23:07:00 +0000 (01:07 +0200)]
ath79: replace custom uImageArcher generation

The replaces the custom uImageArcher build step with the generic uImage
build step. The only different between these two is the difference in
the generated name.

Tested on: TP-Link Archer C59 v1

Acked-by: Adrian Schmutzler <>
Signed-off-by: David Bauer <>
2 weeks agoramips: add support for WAVLINK WL-WN577A2
Lars Wessels [Thu, 25 Jun 2020 19:09:59 +0000 (21:09 +0200)]
ramips: add support for WAVLINK WL-WN577A2

This commit adds support for the Wavlink WL-WN577A2 (black case) dual-band
wall-plug wireless router. In Germany this device is sold under the brand
name Maginon WL-755 (white case):

Device specifications:

- CPU: MediaTek MT7628AN (580MHz)
- Flash: 8MB
- RAM: 64MB
- Bootloader: U-Boot
- Ethernet: 2x 10/100 Mbps (Ralink RT3050)
- 2.4 GHz: 802.11b/g/n SoC
- 5 GHz: 802.11a/n/ac MT7610E
- Antennas: internal
- 4 green LEDs: 1 programmable (WPS) + LAN, WAN, POWER
- Buttons: Reset, WPS
- Small sliding power switch

Flashing instructions (U-boot):

- Configure a TFTP server on your PC/Laptop and set its IP

- Rename the OpenWrt image to firmware.bin and place it in the
  root folder of the TFTP server

- Power off (using the small sliding power switch on the left
  side) the device and connect an ethernet cable from its LAN
  or WAN port to your PC/Laptop

- Press the WPS button (and keep it pressed)

- Power on the device (using the small power switch)

- After a few seconds, when the WAN/LAN LED stops blinking
  very fast, release the WPS button

- Flashing OpenWrt takes less than a minute, system will
  reboot automatically

- After reboot the WPS LED will indicate the current OpenWrt
  running status

Signed-off-by: Lars Wessels <>
[removed unused labels - fix whitespace errors - wrap commit message]
Signed-off-by: David Bauer <>
2 weeks agomvebu: move definition of factory.img out of Device/Default
Adrian Schmutzler [Wed, 24 Jun 2020 17:56:23 +0000 (19:56 +0200)]
mvebu: move definition of factory.img out of Device/Default

The Device/Default definition in mvebu defines an IMAGE/factory.img
which is not included in IMAGES, and only used twice in the
individual definitions. Move it out of the default definition
to keep it closer to the reassignment of IMAGES and make it more
consistent with respect to other values of IMAGE/factory.img

Signed-off-by: Adrian Schmutzler <>
2 weeks agoipq806x: set IMAGES in Device/Default definition
Adrian Schmutzler [Wed, 24 Jun 2020 17:47:06 +0000 (19:47 +0200)]
ipq806x: set IMAGES in Device/Default definition

The Device/Default definition sets a default IMAGE/sysupgrade.bin,
but does not enable it by setting IMAGES. This is not consistent,
and has led to IMAGES being defined at various other places in the

Thus, this patch consolidates the default value for IMAGES by putting
it in Device/Default. Since it's still overwritten where necessary,
this patch is cosmetic.

Signed-off-by: Adrian Schmutzler <>
2 weeks agoipq40xx: set IMAGES in Device/Default definition
Adrian Schmutzler [Wed, 24 Jun 2020 17:40:45 +0000 (19:40 +0200)]
ipq40xx: set IMAGES in Device/Default definition

The Device/Default definition sets a default IMAGE/sysupgrade.bin,
but does not enable it by setting IMAGES. This is not consistent,
and has led to IMAGES being defined at various other places in the

Thus, this patch consolidates the default value for IMAGES by putting
it in Device/Default. Since it's still overwritten where necessary,
this patch is cosmetic.

Signed-off-by: Adrian Schmutzler <>
2 weeks agofirmware-utils: sort tools alphabetically
Sungbo Eo [Sat, 30 May 2020 16:33:03 +0000 (01:33 +0900)]
firmware-utils: sort tools alphabetically

Also remove leading whitespace after comma.

Signed-off-by: Sungbo Eo <>
2 weeks agoath79: do not build TP-Link tiny images by default
Adrian Schmutzler [Mon, 22 Jun 2020 11:41:27 +0000 (13:41 +0200)]
ath79: do not build TP-Link tiny images by default

For quite some time, the tiny (4M flash) TP-Link sysupgrade and
factory images cannot be built anymore by the buildbots, just
the initramfs-kernel.bin files are still there.

Disable these images for the buildbots and prevent useless builds.

Note that these devices still build fine with default settings,
even for kernel 5.4.

Signed-off-by: Adrian Schmutzler <>
2 weeks agomvebu: remove non-existant board name solidrun,clearfog-a1
Adrian Schmutzler [Tue, 9 Jun 2020 17:46:22 +0000 (19:46 +0200)]
mvebu: remove non-existant board name solidrun,clearfog-a1

In 02_network, the board name solidrun,clearfog-a1 is used in a
case, but it does not seem to be used/exist anywhere else in OpenWrt.

The valid strings are:
- solidrun,clearfog-pro-a1
- solidrun,clearfog-base-a1

Fixes: 12795ec9f16b ("mvebu: split interface configuration for
clearfog pro and base")

Signed-off-by: Adrian Schmutzler <>
2 weeks agoath79: build Compex WPJ531 cpximg files
Leon M. George [Thu, 25 Jul 2019 09:59:56 +0000 (11:59 +0200)]
ath79: build Compex WPJ531 cpximg files

Generate additional images that are compatible to the cpximg loader.
The cpximg loader can be started either by holding the reset button during
power up or by entering the u-boot prompt and entering 'cpximg'.
Once it's running, a TFTP-server under will accept the image
appropriate for the board revision that is etched on the board.

For example, if the board is labelled '7A04':

tftp -v -m binary -c put openwrt-ath79-generic-compex_wpj531-16m-squashfs-cpximg-7A04.bin

These files can also be used with the sysupgrade utility in stock images (add
SSH key in luci for root access).

Signed-off-by: Leon M. George <>
[fix sorting of definitions]
Signed-off-by: Adrian Schmutzler <>
2 weeks agoath79: add support for Compex WPJ531 (16M)
Leon M. George [Thu, 25 Jul 2019 01:06:32 +0000 (03:06 +0200)]
ath79: add support for Compex WPJ531 (16M)


SoC: QCA9531
Flash: 16MB SPI-NOR
2 100MBit ethernet ports
2×2 2.4GHz on-board radio
miniPCIe slot that supports 5GHz radio
PoE 24V - 48V IEEE 802.3af optional
USB 2.0 header


To install, start a tftp server in bin/targets/ath79/generic/ and use the
u-boot prompt over UART:

tftpboot 0x80500000 openwrt-ath79-generic-compex_wpj531-16m-squashfs-sysupgrade.bin
erase 0x9f030000 +$filesize
erase 0x9f680000 +1
cp.b $fileaddr 0x9f030000 $filesize

The cpximg file can be used with sysupgrade in the stock firmware (add SSH key
in luci for root access).

Another way is to hold the reset button during power up or running 'cpximg' in
the u-boot prompt.
Once the last LED starts flashing regularly, a TFTP-server under
will accept the image appropriate for the board revision that is etched on the

For example, if the board is labelled '7A04':

tftp -v -m binary -c put openwrt-ath79-generic-compex_wpj531-16m-squashfs-cpximg-7A04.bin

MAC addresses:

<&uboot 0x2e010>  *:cb  (label)
<&uboot 0x2e018>  *:cc
<&uboot 0x2e020>  *:cd
<&uboot 0x2e028>  *:ce

Only the first two are used (for ethernet), the WiFi modules have
separate (valid) addresses. The latter two addresses are not used.

Signed-off-by: Leon M. George <>
[commit title/message facelift, fix rssileds, add led aliases]
Signed-off-by: Adrian Schmutzler <>
2 weeks agouboot-kirkwood: Revert "uboot-kirkwood: enable sata in nsa310 uboot"
Hauke Mehrtens [Sat, 27 Jun 2020 16:38:12 +0000 (18:38 +0200)]
uboot-kirkwood: Revert "uboot-kirkwood: enable sata in nsa310 uboot"

This reverts commit 930f3c014821df423507c878415c7fb4910a454d.

The build fails with the following build error:
arm-openwrt-linux-muslgnueabi-ld.bfd: drivers/built-in.o: in function `ide_init':
build_dir/target-arm_xscale_musl_eabi/u-boot-nsa310/u-boot-2020.04/drivers/block/ide.c:750: undefined reference to `ide_preinit'
make[4]: *** [Makefile:1700: u-boot] Error 1

Signed-off-by: Hauke Mehrtens <>
2 weeks agoramips: add support for NETGEAR WAC124
Jan Hoffmann [Fri, 26 Jun 2020 21:46:19 +0000 (23:46 +0200)]
ramips: add support for NETGEAR WAC124

The WAC124 hardware appears to be identical to R6260/R6350/R6850.

SoC:   MediaTek MT7621AT
RAM:   128M DDR3
FLASH: 128M NAND (Macronix MX30LF1G18AC)
WiFI:  MediaTek MT7603 bgn 2T2R
       MediaTek MT7615 nac 4T4R
ETH:   SoC Integrated Gigabit Switch (1x WAN, 4x LAN)
USB:   1x USB 2.0
BTN:   Reset, WPS
LED:   Power, Internet, WiFi, USB (all green)

The factory image can be flashed from the stock firmware web interface
or using nmrpflash. With nmrpflash it is also possible to revert to
stock firmware.

Signed-off-by: Jan Hoffmann <>
2 weeks agoramips: add support for Netgear R6080
Alex Lewontin [Fri, 21 Feb 2020 20:56:44 +0000 (15:56 -0500)]
ramips: add support for Netgear R6080

This adds support for the Netgear R6080, aka Netgear AC1000.

The R6080 has almost the same hardware as the Netgear R6120,
aka Netgear AC1200, but it lacks the USB port, has only 8 MiB flash and
uses a different SERCOMM_HWID.


SoC: MediaTek MT7628 (580 MHz)
Flash: 8 MiB
RAM: 64 MiB
Wireless: 2.4Ghz (builtin) and 5Ghz (MT7612E)
LAN speed: 10/100
LAN ports: 4
WAN speed: 10/100
WAN ports: 1
UART (57600 8N1) on PCB


Flashing OpenWRT from stock firmware requires nmrpflash. Use an ethernet
cable to connect to LAN port 1 of the R6080, and power the R6080 off.
From the connected workstation, run
`nmrpflash -i eth0 -f openwrt-ramips-mt76x8-netgear_r6080-squashfs-factory.img`,
replacing eth0 with the appropriate interface (can be identified by
running `nmrpflash -L`). Then power on the R6080. After flashing has finished,
power cycle the R6080, and it will boot into OpenWRT. Once OpenWRT has been
installed, subsequent flashes can use the web interface and sysupgrade files.

Signed-off-by: Alex Lewontin <>
[rebase and adjust for 5.4]
Signed-off-by: Adrian Schmutzler <>
Javier Marcet [Wed, 3 Jun 2020 12:01:37 +0000 (14:01 +0200)]

This has been changed in kernel 3.14.

Signed-off-by: Javier Marcet <>
2 weeks agoath79: Fix ubnt_edgeswitch-8xp DEVICE_PACKAGES
Hauke Mehrtens [Wed, 13 May 2020 21:42:15 +0000 (23:42 +0200)]
ath79: Fix ubnt_edgeswitch-8xp DEVICE_PACKAGES

switch-bcm53xx-mdio does not exists, use kmod-switch-bcm53xx-mdio

Signed-off-by: Hauke Mehrtens <>
Cc: Tobias Schramm <>
2 weeks agomvebu: LS421DE: dts file improvements
Daniel González Cabanelas [Sun, 26 Apr 2020 20:20:24 +0000 (22:20 +0200)]
mvebu: LS421DE: dts file improvements

- Delete useless HDD presence inputs: they aren't buttons, and probably
  they are outputs in the stock firmware.
- Change the Function Button keycode: the current one isn't mapped by
  the kernel module.
- Use the recommended property names for the ethernet stuff.
- Add missing i2c pinmux.
- Minor cosmetic changes.

Signed-off-by: Daniel González Cabanelas <>
2 weeks agolantiq: remove unused PHY drivers on xrx200
Aleksander Jan Bajkowski [Sat, 2 May 2020 16:26:29 +0000 (18:26 +0200)]
lantiq: remove unused PHY drivers on xrx200

All boards on xrx200 use builtin switch and there is no supported device
with external switch.
It was copy paste from xway subtarget and was added in commit 18b76c66fbfea0e21ff66c6df432fa109c5bbb43.

Save 20.3 kB flash memory.

Signed-off-by: Aleksander Jan Bajkowski <>
2 weeks agoramips: fix sd polling
Qin Wei [Sat, 16 May 2020 07:51:36 +0000 (15:51 +0800)]
ramips: fix sd polling

This is fixed in 18.06, it appears again in 19.07.
Currently mt7628 sdcard driver do not support polling mode which is for
the device do not have card-detect pin to detect sd card insert. Without
this patch, device will not detect sdcard is inserted. This patch is a
fix of that.

Signed-off-by: Qin Wei <>
2 weeks agokernel: i2c-pxa: remove slave
Scott Roberts [Wed, 20 May 2020 19:28:39 +0000 (13:28 -0600)]
kernel: i2c-pxa: remove slave

Removing i2c pxa slave

The i2c-pxa is typically not use in slave mode. It does not make sense
to have slave mode enabled by default.
Having slave mode enabled prevents the i2c controller from being reset
if a real slave device such as an SFP is attached to the i2c-pxa bus and
locks it up.
Disable slave mode so that the i2c controller can be reset if the bus is
locked up.
If someone actually has a need for pxa slave mode this can be enabled in
kernel config.

Signed-off-by: Scott Roberts <>
2 weeks agonetifd: replace timesvr with timesrv
Sukru Senli [Fri, 22 May 2020 14:33:04 +0000 (16:33 +0200)]
netifd: replace timesvr with timesrv

         Keep support for 'timesvr' while also supporting 'timesrv'
         Add log message indicating deprecation of 'timesvr'

Signed-off-by: Sukru Senli <>
2 weeks agouboot-kirkwood: enable sata in nsa310 uboot
Alberto Bursi [Fri, 22 May 2020 16:49:15 +0000 (18:49 +0200)]
uboot-kirkwood: enable sata in nsa310 uboot

the uboot of nsa310 cannot use the network chip
as it is a realtek on the PCIe lanes and not a
Marvell ethernet from the SoC.

Therefore tftp is not possible on this device
and the only way to install is by loading files
from a USB drive.
If the USB subsystem is dead there is no way to
install OpenWrt.
Enable sata support and commands so it can be
used as a fallback in case of USB issues.

Signed-off-by: Alberto Bursi <>
2 weeks agosunxi: add text referencing Allwinner H3 and H5 CPUs
Rogan Dawes [Wed, 27 May 2020 08:43:26 +0000 (10:43 +0200)]
sunxi: add text referencing Allwinner H3 and H5 CPUs

This makes it a little easier to figure out which options to choose.

Signed-off-by: Rogan Dawes <>
2 weeks agobase-files: coreutil-sha256sum breaks status code
Huangbin Zhan [Thu, 4 Jun 2020 13:49:54 +0000 (21:49 +0800)]
base-files: coreutil-sha256sum breaks status code

With package "coreutil-sha256sum" installed "sysupgrade" fails to perform 'sha256sum -s' and instead returns 'invalid option -- 's''.
This is caused due to:
different syntax for a sha256sum status check ('sha256sum --status' with "coreutil-sha256sum")
'/usr/bin/sha256sum' being symlinked to '/usr/bin/gnu-sha256sum' (after installation of "coreutil-sha256sum")
"coreutil-sha256sum" package from the packages feed replaces the Busybox sha256sum
This patch restores for 'sysupgrade' the busybox call to its sha256sum applet.

Signed-off-by: Huangbin Zhan <>
2 weeks agox86: Support Intel 10 Gigabit Ethernet Cards
Gregory L. Dietsche [Sun, 7 Jun 2020 04:30:23 +0000 (23:30 -0500)]
x86: Support Intel 10 Gigabit Ethernet Cards

Support Intel 10 Gigabit Ethernet Cards in x86/64 images by default.
This ensures that systems with cards such as the Intel x520 will work properly.

Signed-off-by: Gregory L. Dietsche <>
2 weeks agoubox: add ALTERNATIVES
Huangbin Zhan [Wed, 3 Jun 2020 02:24:52 +0000 (10:24 +0800)]

This avoids a conflict with the kmod util from the package feed.

Signed-off-by: Huangbin Zhan <>
2 weeks agologger: enable alternatives support
Huangbin Zhan [Tue, 9 Jun 2020 23:11:08 +0000 (07:11 +0800)]
logger: enable alternatives support

Avoid conflict with busybox

Signed-off-by: Huangbin Zhan <>
2 weeks agotarget/hack-5.4: platform/x86/pcengines: revert led simswich compromise
Florian Eckert [Fri, 27 Mar 2020 15:23:14 +0000 (16:23 +0100)]
target/hack-5.4: platform/x86/pcengines: revert led simswich compromise

With this change the LED subsystem is abused in the kernel to switch the
simswap. This change will be reverted, so we could use again the gpio

Signed-off-by: Florian Eckert <>
2 weeks agokernel: add pcengines-apu2 module description
Florian Eckert [Tue, 2 Jul 2019 10:04:58 +0000 (12:04 +0200)]
kernel: add pcengines-apu2 module description

Add a module description for the new pcengnies-apu2 device driver.
This driver supports the front button and LEDs on the PC Engines
APUv2/APUv3 boards.

Signed-off-by: Florian Eckert <>
2 weeks agokernel: add gpio-amd-fch module description
Florian Eckert [Tue, 2 Jul 2019 10:04:27 +0000 (12:04 +0200)]
kernel: add gpio-amd-fch module description

Add a module description for the new gpio-amd-fch device driver.

Signed-off-by: Florian Eckert <>
2 weeks agokernel/leds-apu2: remove deprecated leds-apu2 driver
Florian Eckert [Mon, 30 Jul 2018 06:24:03 +0000 (08:24 +0200)]
kernel/leds-apu2: remove deprecated leds-apu2 driver

Remove leds-apu2 out of tree driver. There is a new upstream device gpio
and leds driver stack available for the APUv2 and APUv3 boards from pc
egnines. This new driver stack was add in kernel version 4.15.

Signed-off-by: Florian Eckert <>
2 weeks agoath79: drop and consolidate redundant chosen/bootargs
Adrian Schmutzler [Thu, 25 Jun 2020 21:09:05 +0000 (23:09 +0200)]
ath79: drop and consolidate redundant chosen/bootargs

In ath79, for several SoCs the console bootargs are defined to the
very same value in every device's DTS. Consolidate these definitions
in the SoC dtsi files and drop further redundant definitions elsewhere.

The only device without any bootargs set has been OpenMesh OM5P-AC V2.
This will now inherit the setting from qca955x.dtsi

Note that while this tidies up master a lot, it might develop into a
frequent pitfall for backports.

Signed-off-by: Adrian Schmutzler <>
2 weeks agoramips: drop redundant chosen/bootargs
Adrian Schmutzler [Thu, 25 Jun 2020 20:31:40 +0000 (22:31 +0200)]
ramips: drop redundant chosen/bootargs

chosen/bootargs are defined to the same value in device DTS files
that is already set in the SoC DTSI. Remove the redundant definitions.

Signed-off-by: Adrian Schmutzler <>
2 weeks agomac80211: ath9k: enable MFP capability unconditionally
David Bauer [Thu, 25 Jun 2020 00:36:19 +0000 (02:36 +0200)]
mac80211: ath9k: enable MFP capability unconditionally

ath9k will already fallback on software-crypto for chipsets not
supporting IEEE802.11w (MFP). So advertising MFP is not dependent
on disabling HW crypto for all traffic entirely.

Tested on Sonicwall SonicPoint Ni (AR9132)

Signed-off-by: David Bauer <>
2 weeks agoath79: add support for AVM FRITZ!WLAN Repeater DVB-C
Natalie Kagelmacher [Thu, 14 May 2020 08:44:21 +0000 (10:44 +0200)]
ath79: add support for AVM FRITZ!WLAN Repeater DVB-C

This commit adds support for the AVM FRITZ!WLAN Repeater DVB-C

SOC:   Qualcomm Atheros QCA9556
RAM:   64 MiB
WLAN:  QCA9556 3T3R 2.4 GHZ b/g/n and
       QCA9880 3T3R 5 GHz n/ac
ETH:   Atheros AR8033 1000 Base-T
DVB-C: EM28174 with MaxLinear MXL251 tuner
BTN:   WPS Button
LED:   Power, WLAN, TV, RSSI0-4

Tested and working:
 - Ethernet (correct MAC, gigabit, iperf3 about 200 Mbit/s)
 - 2.4 GHz Wi-Fi (correct MAC)
 - 5 GHz Wi-Fi (correct MAC)
 - WPS Button (tested using wifitoggle)
 - LEDs
 - Installation via EVA bootloader (FTP recovery)
 - OpenWrt sysupgrade (both CLI and LuCI)
 - Download of "urlader" (mtd0)

Not working:
 - Internal USB
 - DVB-C em28174+MxL251 (depends on internal USB)

Installation via EVA bootloader (FTP recovery):
Set NIC to gateway and power on the device,
connect to through FTP and sign in with adam2/adam2:

ftp> quote USER adam2
ftp> quote PASS adam2
ftp> binary
ftp> debug
ftp> passive
ftp> quote MEDIA FLSH
ftp> put openwrt-sysupgrade.bin mtd1

Wait for "Transfer complete" together with the transfer details.
Wait two minutes to make sure flash is complete (just to be safe).

Then restart the device (power off and on) to boot into OpenWrt.
Revert your NIC settings to reach OpenWrt at

Signed-off-by: Natalie Kagelmacher <>
[fixed sorting - removed change to other board -
prettified commit message]
Signed-off-by: David Bauer <>
2 weeks agodropbear: fix compilation for uClibc
Hans Dedecker [Wed, 24 Jun 2020 20:30:58 +0000 (22:30 +0200)]
dropbear: fix compilation for uClibc

Backport patches which fix compile issue for uClibc-ng :

dbrandom.c:174:8: warning: implicit declaration of function 'getrandom'; did you mean 'genrandom'? [-Wimplicit-function-declaration]
  ret = getrandom(buf, sizeof(buf), GRND_NONBLOCK);
dbrandom.c:174:36: error: 'GRND_NONBLOCK' undeclared (first use in this function); did you mean 'SOCK_NONBLOCK'?
  ret = getrandom(buf, sizeof(buf), GRND_NONBLOCK);

Signed-off-by: Hans Dedecker <>
2 weeks agourandom-seed: update Makefile
Sungbo Eo [Sun, 23 Feb 2020 12:39:26 +0000 (21:39 +0900)]
urandom-seed: update Makefile

- update SPDX license identifier
- use https in URL
- use default PKG_BUILD_DIR

Suggested-by: Josef Schlehofer <>
Tested-by: Josef Schlehofer <>
Signed-off-by: Sungbo Eo <>
2 weeks agofeeds: add freifunk feed
Sven Roederer [Mon, 11 May 2020 19:29:10 +0000 (21:29 +0200)]
feeds: add freifunk feed

Read the freifunk packages, that have been moved from the LuCI feed
into its own feed in January 2019.

Signed-off-by: Sven Roederer <>
2 weeks agowireguard: bump to 1.0.20200623
Jason A. Donenfeld [Tue, 23 Jun 2020 22:18:06 +0000 (16:18 -0600)]
wireguard: bump to 1.0.20200623

* compat: drop centos 8.1 support as 8.2 is now out

Of note, as well, is that we now have both RHEL7 and RHEL8 in our CI at

* Kbuild: remove -fvisibility=hidden from cflags

This fixes an issue when compiling wireguard as a module for ARM kernels in
THUMB2 mode without the JUMP11 workaround.

* noise: do not assign initiation time in if condition

Style fix.

* device: avoid circular netns references

Fixes a circular reference issue with network namespaces.

* netns: workaround bad 5.2.y backport

This works around a back backport in the 5.2.y series.

Signed-off-by: Jason A. Donenfeld <>
2 weeks agomac80211: fix use of local variable
Leon M. George [Thu, 30 Apr 2020 08:26:36 +0000 (10:26 +0200)]
mac80211: fix use of local variable

mac80211_get_addr is called from mac80211_generate_mac, where the local variable
initialisation id="${macidx:-0}" suggests that macidx is not always defined.
Probably, idx was supposed to be used instead of $(($macidx + 1)).

Fixes: 4d99db168cf7 ("mac80211: try to get interface addresses from wiphy sysfs 'addresses' if no mask is set")

Signed-off-by: Leon M. George <>
2 weeks agobcm47xx: add support for NETGEAR R6200 V1
Edward Matijevic [Tue, 23 Jun 2020 19:50:04 +0000 (14:50 -0500)]
bcm47xx: add support for NETGEAR R6200 V1

This patch adds supports for the NETGEAR R6200 V1
This device is mainlined in Linux as of 5.4

   - SOC: Broadcom BCM4718A1 (480 MHz)
   - Flash: 16MB (Macronix MX25L128)
   - RAM: 128MB DDR2
   - SWITCH: BCM53125
   - Ethernet: 5x GE (1 WAN + 4 LAN, Inverted order)
   - WLAN 2.4G: In SOC
   - WLAN 5GHz: miniPCIe card, BCM4352 (ID: 4360)
   - USB: 1x USB 2.0 port (Type A)
   - Buttons: Reset, WLAN, WPS
   - LED: Amber for Power, others need a workaround
   - UART: 1x UART on PCB

LED Issues: They are controlled by a 74HC164 via bit banging(GPIO 6/7)

Firmware Install Instructions
Using the device specific .chk, use that file to perform
a normal device upgrade in the OEM admin page.

Signed-off-by: Edward Matijevic <>
2 weeks agobase-files: remove urandom-seed definition
Sungbo Eo [Sun, 23 Feb 2020 04:17:39 +0000 (13:17 +0900)]
base-files: remove urandom-seed definition

urandom-seed has a separate Makefile, we can safely remove the definition here.

Fixes: 27bfde9c9f78 ("base-files: move urandom seed bits into separate package")

Signed-off-by: Sungbo Eo <>
2 weeks agoramips: clean up Netgear R6120 code formatting
Alex Lewontin [Mon, 6 Apr 2020 16:07:07 +0000 (12:07 -0400)]
ramips: clean up Netgear R6120 code formatting

This commit performs minor janitorial work to clean up some code
formatting for the Netgear R6120.

Signed-off-by: Alex Lewontin <>
2 weeks agoramips: move Netgear R6120 LED trigger to DTS
Alex Lewontin [Fri, 21 Feb 2020 20:58:12 +0000 (15:58 -0500)]
ramips: move Netgear R6120 LED trigger to DTS

This moves the trigger for the Netgear R6120's wlan2g_green LED from
base-files/etc/board.d/01_leds to the device-tree file.

This has been applied to R6120 based on findings for the very similar
Netgear R6080.

Signed-off-by: Alex Lewontin <>
[merge case in 01_leds, slightly adjust commit message/title]
Signed-off-by: Adrian Schmutzler <>
2 weeks agomvebu: consolidate DTS files
Adrian Schmutzler [Thu, 18 Jun 2020 09:26:00 +0000 (11:26 +0200)]
mvebu: consolidate DTS files

The DTS files in files-4.19 and files-5.4 are exactly identical
except for one file (armada-3720-uDPU.dts), which is only present
for 4.19, as it has been upstreamed before 5.4.

Since there is no point in maintaining all these identical files
twice, this patch moves them to the "files" directory, only keeping
the named exception to files-4.19.

Signed-off-by: Adrian Schmutzler <>
2 weeks agoipq40xx: consolidate DTS files
Adrian Schmutzler [Thu, 18 Jun 2020 09:13:12 +0000 (11:13 +0200)]
ipq40xx: consolidate DTS files

The DTS files in files-4.19 and files-5.4 are exactly identical
except for one file (qcom-ipq4018-emr3500.dts), which is only
present for 5.4.

Since there is no point in maintaining all these identical files
twice, this patch moves them to the "files" directory.

If there ever was a new kernel with substantial DTS changes, a
new folder would need to be introduced anyway and could easily be

Signed-off-by: Adrian Schmutzler <>
2 weeks agoigmpproxy: remove some bashism
Sven Roederer [Wed, 25 Dec 2019 18:20:10 +0000 (19:20 +0100)]
igmpproxy: remove some bashism

"[[" is a bash extension for test. As the ash-implementation is not
fully compatible we drop its usage.
This follows up 3519bf4976b41c

As a result, we also need to move the and/or out of the test brackets.

Signed-off-by: Sven Roederer <>
[squash from two patches, adjust commit message]
Signed-off-by: Adrian Schmutzler <>
2 weeks agolibnetfilter-queue: fix package title and description
Catalin Patulea [Thu, 10 Oct 2019 02:40:15 +0000 (22:40 -0400)]
libnetfilter-queue: fix package title and description

The original text was copy/pasted from some other package.
Adjust the package title and description to match the description
on the publishers page.

Signed-off-by: Catalin Patulea <>
[slightly adjust content and commit message]
Signed-off-by: Adrian Schmutzler <>
2 weeks agomvebu: fix default EU regdomain for Linksys WRT AC devices
Jose Olivera [Mon, 20 May 2019 13:10:56 +0000 (21:10 +0800)]
mvebu: fix default EU regdomain for Linksys WRT AC devices

The mwlwifi driver sets the default country code for EU (fi-
rmware region code 0x30) certified devices to FR (France),
not DE (Germany). Whilst this is a trivial fix, novice users
may not know how mwlwifi negatively reacts to a non-matching
country code and may leave the setting alone. Especially si-
nce it is under the advanced settings section in LuCI.

Relevant mwlwifi driver code:

The mwlwifi driver readme states "Please don't change country
code and let mwlwifi set it for you." However, OpenWrt's current
behaviour does not adhere to this with its default, 'just flashed
from factory' setting for EU devices.

Signed-off-by: Jose Olivera <>
[rebase, extend commit message]
Signed-off-by: Adrian Schmutzler <>
2 weeks agoarmvirt,x86: fix build breakage of crypto ccp module
Petr Štetiar [Tue, 23 Jun 2020 07:24:57 +0000 (09:24 +0200)]
armvirt,x86: fix build breakage of crypto ccp module

Upstream in commit f9f8f0c24203 ("crypto: ccp -- don't "select"
CONFIG_DMADEVICES") removed dependency on CONFIG_DMADEVICES symbol which
leads to build breakage of ccp crypto module, so fix this by adding that
symbol back in the kernel config.

Signed-off-by: Petr Štetiar <>
3 weeks agobcm63xx: AV4202N: add missing PCI pinmux
Daniel González Cabanelas [Sat, 20 Jun 2020 15:44:42 +0000 (17:44 +0200)]
bcm63xx: AV4202N: add missing PCI pinmux

The ADB P.DG AV4202N device has a wifi chipset connected via PCI. But the
PCI pinmux is missing and without it the wifi won't work properly.

Add the pinctrl_pci to enable the missing PCI pins for this device.

Signed-off-by: Daniel González Cabanelas <>
3 weeks agokernel: bump 5.4 to 5.4.48
Petr Štetiar [Tue, 9 Jun 2020 12:18:25 +0000 (14:18 +0200)]
kernel: bump 5.4 to 5.4.48

Resolved merge conflict in the following patches:

 layerscape: 701-net-0213-dpaa2-eth-Add-CEETM-qdisc-support.patch
 ramips: 0013-owrt-hack-fix-mt7688-cache-issue.patch

Refreshed patches, removed upstreamed patch:

 bcm63xx: 020-v5.8-mtd-rawnand-brcmnand-fix-hamming-oob-layout.patch

Run tested: qemu-x86-64
Build tested: x86/64

Signed-off-by: Petr Štetiar <>
3 weeks agoath79: image: fix initramfs for safeloader devices
Petr Štetiar [Wed, 17 Jun 2020 21:48:32 +0000 (23:48 +0200)]
ath79: image: fix initramfs for safeloader devices

Currently it's not possible to tftpboot initramfs image on archer-c7-v5
as the image contains tplink-v1-header which leads to:

 ath> bootm
 ## Booting image at 81000000 ...
 Bad Magic Number

as U-Boot expects uImage wrapped image. This is caused by following
inheritance issue:

  define Device/Init

  define Device/tplink-v1
    KERNEL := kernel-bin | append-dtb | lzma
    KERNEL_INITRAMFS := kernel-bin | append-dtb | lzma | tplink-v1-header

  define Device/tplink-safeloader

  define Device/tplink-safeloader-uimage
    KERNEL := kernel-bin | append-dtb | lzma | uImageArcher lzma

  define Device/tplink_archer-c7-v5

where tplink-v1 defines KERNEL_INITRAMFS with tplink-v1-header and it's
then used by all devices inheriting from tplink-safeloader. Fix this by
overriding KERNEL_INITRAMFS to KERNEL variable again.

Signed-off-by: Petr Štetiar <>
3 weeks agodropbear: bump to 2020.79
Konstantin Demin [Sun, 21 Jun 2020 12:36:47 +0000 (15:36 +0300)]
dropbear: bump to 2020.79

- drop patches (applied upstream):
  * 010-backport-change-address-logging.patch
  * 020-backport-ed25519-support.patch
  * 021-backport-chacha20-poly1305-support.patch
- backport patches:
  * 010-backport-disable-toom-and-karatsuba.patch:
    reduce dropbear binary size (about ~8Kb).
- refresh patches.
- don't bother anymore with following config options
  because they are disabled in upstream too:
- explicitly disable DO_MOTD as it was before commit a1099ed:
  upstream has (accidentally) switched it to 0 in release 2019.77,
  but reverted back in release 2020.79.

Signed-off-by: Konstantin Demin <>
3 weeks agolantiq: fritz7312: set maximum speed to 100 mbit on 5.4
Adrian Schmutzler [Thu, 18 Jun 2020 09:48:58 +0000 (11:48 +0200)]
lantiq: fritz7312: set maximum speed to 100 mbit on 5.4

The fritz 7312 does not support 1000 gbit. Advertising it makes it
worse. Some NIC will change to 1000 gibt and turn off and on again for

The previous patch in 36f628910b8b was only applied to the 4.19 file,
so let's just make it consistent with this patch.

Cc: Alexander Couzens <>
Signed-off-by: Adrian Schmutzler <>
3 weeks agoath79: fix input type for TP-Link TL-WR902AC v1 mode switch
Lech Perczak [Sat, 20 Jun 2020 16:16:11 +0000 (18:16 +0200)]
ath79: fix input type for TP-Link TL-WR902AC v1 mode switch

Inputs assigned to "mode select" switch on the side of the device
were missing linux,input-type property.
This would cause them do incorrectly generate EV_KEY events.
Fix this by setting the linux,input-type = <EV_SW> property on them.

Signed-off-by: Lech Perczak <>
3 weeks agoramips: add support for ELECOM WRC-2533GST2
INAGAKI Hiroshi [Sat, 16 May 2020 08:39:26 +0000 (17:39 +0900)]
ramips: add support for ELECOM WRC-2533GST2

ELECOM WRC-2533GST2 is a 2.4/5 GHz band 11ac (Wi-Fi 5) router, based
on MT7621A.


- SoC : MediaTek MT7621A
- RAM : DDR3 256 MiB
- Flash : SPI-NOR 32 MiB
- WLAN : 2.4/5 GHz 4T4R (2x MediaTek MT7615)
- Ethernet : 10/100/1000 Mbps x5
  - Switch : MediaTek MT7530 (SoC)
- LED/keys : 4x/6x (2x buttons, 1x slide-switch)
- UART : through-hole on PCB
  - J4: 3.3V, GND, TX, RX from ethernet port side
  - 57600n8
- Power : 12VDC, 1.5A

Flash instruction using factory image:

1. Boot WRC-2533GST2 normally
2. Access to "" and open firmware update page
3. Select the OpenWrt factory image and click apply ("適用") button
4. Wait ~150 seconds to complete flashing

Signed-off-by: INAGAKI Hiroshi <>
3 weeks agoramips: add MT7615 wireless support for ELECOM WRC-GST devices
INAGAKI Hiroshi [Tue, 25 Jun 2019 13:20:44 +0000 (22:20 +0900)]
ramips: add MT7615 wireless support for ELECOM WRC-GST devices

ELECOM WRC-1900GST and WRC-2533GST have two MT7615 chips for 2.4/5 GHz

Signed-off-by: INAGAKI Hiroshi <>
Acked-by: NOGUCHI Hiroshi <>
3 weeks agoramips: increase SPI frequency for ELECOM WRC-GST devices
INAGAKI Hiroshi [Sat, 16 May 2020 06:14:18 +0000 (15:14 +0900)]
ramips: increase SPI frequency for ELECOM WRC-GST devices

Increase the SPI frequency for ELECOM WRC-1900GST and WRC-2533GST
to 40 MHz by updating the common DTSI file.

Signed-off-by: INAGAKI Hiroshi <>
Acked-by: NOGUCHI Hiroshi <>
[split patch, adjust commit title/message]
Signed-off-by: Adrian Schmutzler <>
3 weeks agoramips: add label-mac-device for ELECOM WRC-GST devices
INAGAKI Hiroshi [Sat, 16 May 2020 06:14:18 +0000 (15:14 +0900)]
ramips: add label-mac-device for ELECOM WRC-GST devices

Update the dtsi for ELECOM WRC-1900GST and WRC-2533GST to add
label-mac-device alias.

Signed-off-by: INAGAKI Hiroshi <>
Acked-by: NOGUCHI Hiroshi <>
[split patch, adjust commit title/message]
Signed-off-by: Adrian Schmutzler <>
3 weeks agoath79: add support for TP-Link CPE610 v2
Andrew Cameron [Thu, 18 Jun 2020 13:25:43 +0000 (08:25 -0500)]
ath79: add support for TP-Link CPE610 v2

TP-Link CPE610 v2 is an outdoor wireless CPE for 5 GHz with
one Ethernet port based on Atheros AR9344

 - 560/450/225 MHz (CPU/DDR/AHB)
 - 1x 10/100 Mbps Ethernet
 - 64 MB of DDR2 RAM
 - 8 MB of SPI-NOR Flash
 - 23dBi high-gain directional 2×2 MIMO antenna and a
   dedicated metal reflector
 - Power, LAN, WLAN5G green LEDs
 - 3x green RSSI LEDs

Flashing instructions:
 Flash factory image through stock firmware WEB UI
 or through TFTP
 To get to TFTP recovery just hold reset button while powering on for
 around 4-5 seconds and release.
 Rename factory image to recovery.bin
 Stock TFTP server IP:
 Stock device TFTP adress:

Signed-off-by: Andrew Cameron <>
3 weeks agoath79: add support for TP-Link TL-WA801ND v3/v4
Adrian Schmutzler [Tue, 16 Jun 2020 13:14:18 +0000 (15:14 +0200)]
ath79: add support for TP-Link TL-WA801ND v3/v4

This ports support for these devices from ar71xx.


- System-On-Chip: Qualcomm Atheros QCA9533
- CPU/Speed: v3: 560 MHz, v4: 650 MHz
- Flash: 4096 KiB
- RAM: 32 MiB
- Ethernet: 1 port @ 100M
- Wireless: SoC-integrated: QCA9533 2.4GHz 802.11bgn

In contrast to the implementation in ar71xx (reset and WiFi button),
the device actually features reset and WPS buttons.

Flashing instructions:

Upload the ...-factory.bin file via OEM web interface.

TFTP Recovery:

1. Set PC to fixed IP address
2. Download *-factory.bin image and rename it to
3. Start a tftp server with the image file 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.

TFTP recovery has only been tested with v3, and the Wiki states
that the procedure won't work for v4, which cannot be verified
or falsified at the moment.

Tested by Tim Ward (see forum):

Signed-off-by: Adrian Schmutzler <>
3 weeks agobcm63xx: DGND3700v1: fix port order
Daniel González Cabanelas [Sat, 23 May 2020 22:24:02 +0000 (00:24 +0200)]
bcm63xx: DGND3700v1: fix port order

Fix the switch LAN labels for the DGND3700v1/DGND3800B router,
the order is reversed.

Signed-off-by: Daniel González Cabanelas <>
[cut out of bigger patch, adjust commit title/message accordingly]
Signed-off-by: Adrian Schmutzler <>
3 weeks agobcm63xx: HG622: enable LAN LEDs
Daniel González Cabanelas [Wed, 17 Jun 2020 09:39:56 +0000 (11:39 +0200)]
bcm63xx: HG622: enable LAN LEDs

The Huawei Echolife HG622 has hardware controlled LAN LEDs.

Add the ephy led pinctrl to let the router show LAN activity on these

Signed-off-by: Daniel González Cabanelas <>
3 weeks agoath79: set &eth1 status for TP-Link CPE devices in parent DTSI
Adrian Schmutzler [Thu, 18 Jun 2020 20:31:11 +0000 (22:31 +0200)]
ath79: set &eth1 status for TP-Link CPE devices in parent DTSI

The status is set to "okay" for all devices on ar9344, so just move
this to the parent DTSI.

Signed-off-by: Adrian Schmutzler <>
3 weeks agotoolchain: glibc ldd env path fixup
Chen Minqiang [Wed, 17 Apr 2019 12:00:49 +0000 (20:00 +0800)]
toolchain: glibc ldd env path fixup

This replace the shell script header of ldd
when it install to `/usr/bin/ldd` where
`#! /..../staging_dir/host/bin/bash`
should be

Signed-off-by: Chen Minqiang <>
3 weeks agobase-files: gpio switch: add named GPIO support
Kuan-Yi Li [Sat, 10 Aug 2019 19:23:28 +0000 (03:23 +0800)]
base-files: gpio switch: add named GPIO support

Previously, gpio_switch only accepts GPIO pin number as input. Once a
GPIO pin is exported and named by device tree, its pin state cannot be
configured and saved across reboots by UCI.

This patch adds support for named GPIO pins. Thus GPIO pin can be
exported by device tree with active high/low correctly configured,
having human-readable name in /sys/class/gpio/ is also now possible.

More importantly, GPIO pins which are referenced by name will be immune
from pin mapping breakage while unintentional pin number changes are
introduced by kernel or driver updates.

Signed-off-by: Kuan-Yi Li <>
3 weeks agomac80211: ath9k: enable adding wireless noise to kernel entropy pool
Alan Swanson [Sat, 7 Mar 2020 15:42:54 +0000 (15:42 +0000)]
mac80211: ath9k: enable adding wireless noise to kernel entropy pool

This option allows adding the ath9k ADC register output as a source
of randomness into the Linux entropy pool at sufficient quality
random data (at least 10 bits and up to 22 bits of min-entropy for
a 32-bit value).

Fixes FS#1444
Signed-off-by: Alan Swanson <>
3 weeks agohostapd: fix compilation of wpa_supplicant
Karel Kočí [Tue, 16 Jun 2020 15:07:46 +0000 (17:07 +0200)]
hostapd: fix compilation of wpa_supplicant

Ubus patch as it seems have been broken by some rebase in the past as
the location of line that adds ubus object file was in condition for
CONFIG_MACSEC. That condition was adding object files that are not
touched by ubus patch. This means ubus.o does not have to be included in
that case. When it has to be and when build fails is when CONFIG_AP is
set. All files included in wpa_supplicant that are touched by this patch
are in this condition. This means that this is for sure the original
place for it.

Signed-off-by: Karel Kočí <>
3 weeks agotoolchain: remove gcc libssp and use libc variant
Ian Cooper [Mon, 15 Jun 2020 21:14:04 +0000 (22:14 +0100)]
toolchain: remove gcc libssp and use libc variant

Removes the standalone implementation of stack smashing protection
in gcc's libssp in favour of the native implementation available
in glibc and uclibc. Musl libc already uses its native ssp, so this
patch does not affect musl-based toolchains.

Stack smashing protection configuration options are now uniform
across all supported libc variants.

This also makes kernel-level stack smashing protection available
for x86_64 and i386 builds using non-musl libc.

Signed-off-by: Ian Cooper <>
3 weeks agocomgt-ncm: do not attempt to connect if the control device is invalid
Rozhuk Ivan [Sat, 24 Aug 2019 16:41:01 +0000 (19:41 +0300)]
comgt-ncm: do not attempt to connect if the control device is invalid

After a hardware reconnect, the control device might be unavailable and
attempting to interact with it will lead to hanging gcom calls, leaving
the protocol setup in an unrecoverable state.

Change the protocol handler to bail out early and notify netifd if the
control device is not defined or if the underlying device node does not

Also ensure that the "disconnect", "connect" and "setmode" commands are
actually defined before trying to invoke them.

Finally attempt to re-query the device manufacturer if it is unset in
the interface state in order to prevent UNUPPORTED_MODEM errors after
a modem hardware reconnect.

Signed-off-by: Rozhuk Ivan <>
[reword subject and commit message]
Signed-off-by: Jo-Philipp Wich <>
3 weeks agoopenvpn: add generic hotplug mechanism
Florian Eckert [Fri, 30 Nov 2018 13:03:50 +0000 (14:03 +0100)]
openvpn: add generic hotplug mechanism

Pass a default --up and --down executable to each started OpenVPN instance
which triggers /etc/hotplug.d/openvpn/ scripts whenever an instance
goes up or down.

User-configured up and down scripts are invoked by the default shipped
01-user hotplug handler to ensure that existing setups continue to work
as before.

As a consequence of this change, the up, down and script_security OpenVPN
options are removed from the option file, since we're always passing them
via the command line, they do not need to get included into the generated

Signed-off-by: Florian Eckert <>
[reword commit message, move hotplug executable to /usr/libexec]
Signed-off-by: Jo-Philipp Wich <>
3 weeks agoath79: define CONFIG_MFD_RB4XX_CPLD to fix build breakage
Hannu Nyman [Wed, 17 Jun 2020 17:11:06 +0000 (20:11 +0300)]
ath79: define CONFIG_MFD_RB4XX_CPLD to fix build breakage

Define the kernel config symbol CONFIG_MFD_RB4XX_CPLD=n
to fix build breakage on non-mikrotik targets.

The driver was added for all ath79, but the symbol was only
defined for mikrotik subtarget.

Fixes: fa70b3a4bbc6 ("ath79: add Mikrotik rb4xx series drivers")

Signed-off-by: Hannu Nyman <>
[rearrange commit message]
Signed-off-by: Adrian Schmutzler <>
3 weeks agouclient: uclient-fetch: add option to read POST data from file
Daniel Golle [Wed, 17 Jun 2020 15:37:19 +0000 (16:37 +0100)]
uclient: uclient-fetch: add option to read POST data from file

 c660986 uclient-fetch: add option to read POST data from file

Signed-off-by: Daniel Golle <>
3 weeks agolantiq: drop "CONFIG_HZ_100 is not set"
Adrian Schmutzler [Wed, 17 Jun 2020 12:23:51 +0000 (14:23 +0200)]
lantiq: drop "CONFIG_HZ_100 is not set"

CONFIG_HZ_100 is not set to "y" in generic config anymore since
3a761c90afc0 ("treewide: Don't diverge from upstream default HZ
settings on 4.19"), so we don't need to disable it anymore either.

This was the only remaining case in the entire tree.

Signed-off-by: Adrian Schmutzler <>
3 weeks agolantiq: switch to 5.4
Aleksander Jan Bajkowski [Sun, 14 Jun 2020 10:26:07 +0000 (12:26 +0200)]
lantiq: switch to 5.4

Runtime tested on BT Home Hub 5A and D-Link DWR-966.

Signed-off-by: Aleksander Jan Bajkowski <>
3 weeks agokernel: bump 5.4 to 5.4.46
Petr Štetiar [Fri, 12 Jun 2020 10:32:11 +0000 (12:32 +0200)]
kernel: bump 5.4 to 5.4.46

Refreshed patches.

Run tested: qemu-x86-64, wrt3200acm
Build tested: x86/64, imx6, mvebu/cortexa9, sunxi/a53

Signed-off-by: Petr Štetiar <>
3 weeks agomvebu: fix bootloader kernel commandline mangling
Petr Štetiar [Wed, 10 Jun 2020 14:01:06 +0000 (16:01 +0200)]
mvebu: fix bootloader kernel commandline mangling

Currently I'm unable to boot initramfs image with `console=ttyS0,115200`
kernel commandline as the kernel commandline mangling resets kernel
commandline if there is no `root=` option provided, efectively clearing
whatever I pass to the kernel, making the `root=` option mandatory.

So if the kernel commandline mangling is not appropriate just leave the
kernel commandline as it is.

Signed-off-by: Petr Štetiar <>
3 weeks agomediatek: mt7623: refresh kernel 5.4 config
Sungbo Eo [Fri, 29 May 2020 13:06:10 +0000 (22:06 +0900)]
mediatek: mt7623: refresh kernel 5.4 config

By running make kernel_oldconfig and selecting relevant options.

Signed-off-by: Sungbo Eo <>
3 weeks agobcm63xx: use the generic nand upgrade on Sercomm devices
Daniel González Cabanelas [Mon, 15 Jun 2020 22:09:33 +0000 (00:09 +0200)]
bcm63xx: use the generic nand upgrade on Sercomm devices

The Sercomm devices don't need the jffs2 cleanmarkers for the kernel
partition. With the stock firmware they are only added when the
bootloader partition is upgraded.

Furthermore, on the Sercomm H500-s, the specific cfe_jffs2_upgrade_tar
function causes OOB corruption. As a result of this, combined with the
nature of the mtdsplit driver, the upgrade procedure ends in a bricked

Use the generic nand_do_upgrade provided by the OpenWrt common functions.

Signed-off-by: Daniel González Cabanelas <>
3 weeks agomediatek: fix IPv4-only corner case and commit in 99-net-ps
Adrian Schmutzler [Tue, 16 Jun 2020 12:46:42 +0000 (14:46 +0200)]
mediatek: fix IPv4-only corner case and commit in 99-net-ps

The uci config section network.globals set up in /bin/config_generate
will only be created if /proc/sys/net/ipv6 exists.

Correspondingly, lacking IPv6 support, the command
uci set network.globals.packet_steering=1
will fail with "uci: Invalid argument" as the network.globals config
has not been set up.

Fix that by adding the setup there as well.

While at it, limit the uci commit to the network config file.

Signed-off-by: Adrian Schmutzler <>
3 weeks agoath79: add support for the TP-Link WBS210 v1
Adrian Schmutzler [Wed, 15 Apr 2020 19:51:59 +0000 (21:51 +0200)]
ath79: add support for the TP-Link WBS210 v1

- SoC: Atheros AR9344
- RAM: 64MB
- Storage: 8 MB SPI NOR
- Wireless: 2.4GHz N based built into SoC
- Ethernet: 1x 10/100 Mbps with 24V POE IN, 1x 10/100 Mbps

Flash factory image through stock firmware WEB UI
or through TFTP
To get to TFTP recovery just hold reset button while powering on for
around 4-5 seconds and release.
Rename factory image to recovery.bin
Stock TFTP server IP:
Stock device TFTP adress:

Signed-off-by: Adrian Schmutzler <>
3 weeks agotreewide: drop shebang from non-executable target files
Adrian Schmutzler [Sat, 6 Jun 2020 21:13:41 +0000 (23:13 +0200)]
treewide: drop shebang from non-executable target files

This drops the shebang from all target files for /lib and
/etc/uci-defaults folders, as these are sourced and the shebang
is useless.

While at it, fix the executable flag on a few of these files.

This does not touch ar71xx, as this target is just used for
backporting now and applying cosmetic changes would just complicate

Signed-off-by: Adrian Schmutzler <>
3 weeks agoath79: add support for MikroTik RouterBOARD 493G (rb4xx series)
Christopher Hill [Tue, 26 May 2020 01:10:00 +0000 (21:10 -0400)]
ath79: add support for MikroTik RouterBOARD 493G (rb4xx series)

This patch adds support for the MikroTik RouterBOARD RB493G, ported
from the ar71xx target.

See for details

- SoC Qualcomm Atheros AR7161
- RAM: 256 MiB
- Storage: 128MiB NAND
- Ethernet: 9x 1000/100/10 Mbps
- USB 1x 2.0 / 1.0 type A
- PCIe: 3x Mini slot
- MicroSD slot

- Board/system detection
- Ethernet
- LEDs
- Sysupgrade

Enabled (but untested due to lack of hardware):
- PCIe - ath79_pci_irq struct has the slot/pin/IRQ mappings if needed

Installation methods:
- tftp boot initramfs image, scp then flash via "sysupgrade -n"
- nand boot existing OpenWrt, scp then flash via "sysupgrade -n"

- initramfs image will not work if uncompressed image size over ~8.5Mb
- The "rb4xx" drivers have been enabled

Signed-off-by: Christopher Hill <>
3 weeks agoath79: add Mikrotik rb4xx series drivers
Christopher Hill [Tue, 26 May 2020 01:05:00 +0000 (21:05 -0400)]
ath79: add Mikrotik rb4xx series drivers

This adds 3 Mikrotik rb4xx series drivers as follows:

rb4xx-cpld: This is in the mfd subsystem, and is the parent CPLD device
that interfaces between the SoC SPI bus and its two children below.
rb4xx-gpio: This is the GPIO expander.
rb4xx-nand: This is the NAND driver.

The history of this code comes in three phases.

1. The first is a May 2015 attempt to push the equivalient ar71xx rb4xx
drivers upstream. See

Module-author: Gabor Juhos <>
Module-author: Imre Kaloz <>
Module-author: Bert Vermeulen <>

2. Next several ar71xx patches were applied bringing the code current.

commit 7bbf4117c6fe4b764d9d7c62fb2bcf6dd93bff2c
Signed-off-by: Hauke Mehrtens <>
commit af79fdbe4af32a287798b579141204bda056b8aa
commit 889272d92db689fd9c910243635e44c9d8323095
commit e21cb649a235180563363b8af5ba8296b9ac0baa
commit 7c09fa4a7492ca436f2c94bd9a465b7c5bbeed6f
Signed-off-by: Felix Fietkau <>
3. Finally a heavy refactor to split the driver into the three new
subsystems, and updated to work with the device tree configuration, plus
updates and review feedback incorporated

Reviewed-by: Thibaut VARÈNE <>
Signed-off-by: Christopher Hill <>
3 weeks agoath79: patch upstream Mikrotik rb4xx-spi driver to be device tree aware
Christopher Hill [Tue, 26 May 2020 01:00:00 +0000 (21:00 -0400)]
ath79: patch upstream Mikrotik rb4xx-spi driver to be device tree aware

Backport upstream patches that make drivers/spi/spi-rb4xx.c device tree
aware, plus a null pointer fix.

Signed-off-by: Christopher Hill <>
3 weeks agobcm63xx: a226m-fwb: fix linux partition offset
Daniel González Cabanelas [Mon, 15 Jun 2020 17:51:28 +0000 (19:51 +0200)]
bcm63xx: a226m-fwb: fix linux partition offset

The Pirelli A226M-FWB has a wrong linux partition offset, caused
by a copy-paste error. As of result of this, OpenWrt is currently
broken in this unit.

Fix it.

While at it, also use generic node names and fix the addresses
there as well.

Fixes: a27d59bb4274 ("brcm63xx: switch to new partition layout

Signed-off-by: Daniel González Cabanelas <>
[also fix/update node names, extend commit message]
Signed-off-by: Adrian Schmutzler <>