openwrt/staging/hauke.git
2 years agoramips: fix ralink_i2s_debugfs_remove declaration
Eneas U de Queiroz [Mon, 20 Sep 2021 20:31:48 +0000 (17:31 -0300)]
ramips: fix ralink_i2s_debugfs_remove declaration

Correct ralink_i2s_debugfs_remove declaration in ralink patches when
CONFIG_DEBUG_FS is not selected.

Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
2 years agoramips: use lzma-loader on D-Link DIR-615 H1
Mirko Parthey [Thu, 30 Sep 2021 12:08:54 +0000 (14:08 +0200)]
ramips: use lzma-loader on D-Link DIR-615 H1

Fixes the boot loader LZMA decompression issue:
LZMA ERROR 1 - must RESET board to recover

Signed-off-by: Mirko Parthey <mirko.parthey@web.de>
2 years agoramips: add support for Wavlink WL-WN576A2
Thomas Aldrian [Tue, 2 Nov 2021 19:10:39 +0000 (19:10 +0000)]
ramips: add support for Wavlink WL-WN576A2

This commit adds support for the Wavlink WL-WN576A2 wall-plug wireles
repeater / router. It is also sold under the name SilverCrest SWV 733 B1.

Device specs:

- CPU: MediaTek MT7628AN
- Flash: 8MB
- RAM: 64MB
- Bootloader: U-Boot
- Ethernet: 1x 10/100 Mbps
- 2.4 GHz: b/g/n SoC
- 5 GHz: a/n/ac MT7610EN
- Buttons: WPS, reset, sliding switch (ap/repeater)
- LEDs: 5x wifi status, 1x LAN/WAN, 1x WPS

Flashing:

U-Boot launches a TFTP client if WPS button is held during boot.

- Server IP: 192.168.10.100
- Firmware file name: firmware.bin

Device will reboot automatically. First boot takes about 90s.

Coelner (waenger@gmail.com) is the original author, but I have made some
fixes. He does not wish to sign off using his real name.

Signed-off-by: Thomas Aldrian <dev.aldrian@gmail.com>
2 years agonftables: install libnftables to staging dir
Daniel Danzberger [Mon, 4 Oct 2021 07:47:32 +0000 (09:47 +0200)]
nftables: install libnftables to staging dir

Makes libnftables library and headers available for other packages.

Signed-off-by: Daniel Danzberger <daniel@dd-wrt.com>
2 years agotools/cpio: fix compilation with clang
Rosen Penev [Thu, 4 Mar 2021 01:59:58 +0000 (17:59 -0800)]
tools/cpio: fix compilation with clang

A define dealing with builtin type is wrong. A gnulib update fixes
this, but that requires a new cpio version.

Refresh other patch.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years agoath79: merge D-Link DAP-2695 with dtsi
Sebastian Schaper [Mon, 30 Nov 2020 17:20:18 +0000 (18:20 +0100)]
ath79: merge D-Link DAP-2695 with dtsi

Further devices from the series have been added in the meantime,
introducing `qca955x_dlink_dap-2xxx.dtsi`.

Thus, merge support for DAP-2695 with the existing dtsi.

This implies factory images can now be flashed via the regular
OEM Web UI, as well as the bootloader recovery.

Signed-off-by: Sebastian Schaper <openwrt@sebastianschaper.net>
2 years agoath79: move cal-data extraction to dts for DAP-2695
Sebastian Schaper [Wed, 25 Aug 2021 20:00:08 +0000 (22:00 +0200)]
ath79: move cal-data extraction to dts for DAP-2695

This device can be merged with the existing dtsi, which declares
the location of ath9k cal-data via devicetree, correcting the 2.4G
mac address in `10_fix_wifi_mac` rather than `10-ath9k-eeprom`.

To make these changes more visible, apply before merging with dtsi.

Signed-off-by: Sebastian Schaper <openwrt@sebastianschaper.net>
2 years agoath79: increase SPI frequency for D-Link DAP-2695
Sebastian Schaper [Mon, 23 Aug 2021 20:38:36 +0000 (22:38 +0200)]
ath79: increase SPI frequency for D-Link DAP-2695

This device can be merged with the existing dtsi,
which will increase spi-max-frequency to 50 MHz.

To make this change more visible, increase to 50 MHz before merging.

Signed-off-by: Sebastian Schaper <openwrt@sebastianschaper.net>
2 years agokernel: add kmod-usb-net-smsc75xx
Marius Durbaca [Mon, 13 Sep 2021 11:35:36 +0000 (11:35 +0000)]
kernel: add kmod-usb-net-smsc75xx

add kernel module for smsc75xx based USB 2.0 Gigabit Ethernet devices

Signed-off-by: Marius Durbaca <mariusd84@gmail.com>
2 years agoomap: switch to kernel 5.10
Andre Heider [Sat, 11 Sep 2021 06:40:20 +0000 (08:40 +0200)]
omap: switch to kernel 5.10

Signed-off-by: Andre Heider <a.heider@gmail.com>
2 years agoomap: update kernel 5.10 config
Andre Heider [Sat, 11 Sep 2021 06:39:47 +0000 (08:39 +0200)]
omap: update kernel 5.10 config

Manually set toggles are:
MMC_SDHCI_OMAP=y
TI_PRUSS_INTC=y
DRM_TI_TPD12S015=y (successor to DRM_OMAP_ENCODER_TPD12S015 [0] [1])
DRM_DISPLAY_CONNECTOR=y (for DRM_TI_TPD12S015 [1])
DRM_SIMPLE_BRIDGE=y (for DRM_TI_TPD12S015 [1])

Manually unset toggles are:
SND_MIXER_OSS=y (disabled by generic config)

The rest was automatically modified by the kernel_oldconfig make target.

[0] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=cff5e6f7e83f6271ed75972e9a2920e2c7f62d6c
[1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=e7e67d9a2f1dd2f938adcc219b3769f5cc3f0df7

Signed-off-by: Andre Heider <a.heider@gmail.com>
2 years agoomap: copy kernel 5.4 config for 5.10
Andre Heider [Sat, 11 Sep 2021 06:12:23 +0000 (08:12 +0200)]
omap: copy kernel 5.4 config for 5.10

Signed-off-by: Andre Heider <a.heider@gmail.com>
2 years agoomap: update u-boot to 2021.07
Andre Heider [Sat, 11 Sep 2021 10:10:51 +0000 (12:10 +0200)]
omap: update u-boot to 2021.07

Signed-off-by: Andre Heider <a.heider@gmail.com>
2 years agogettext: remove package
Rosen Penev [Fri, 17 Sep 2021 03:21:35 +0000 (20:21 -0700)]
gettext: remove package

This package was necessary when uClibc was in the tree. Now that uClibc
is gone, this can go too.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years agoath79: add support for Mikrotik LHG 5
Jakob (Jack/XDjackieXD) [Sun, 7 Nov 2021 00:08:25 +0000 (01:08 +0100)]
ath79: add support for Mikrotik LHG 5

The MikroTik LHG 5 series (product codes RBLHG-5nD, RBLHG-5HPnD and
RBLHG-5HPnD-XL) devices are an outdoor 5GHz CPE with a 24.5dBi or 27dBi
integrated antenna built around the Atheros AR9344 SoC.
It is very similar to the SXT Lite5 series which this patch is based
upon.

Specifications:
 - SoC: Atheros AR9344
 - RAM: 64 MB
 - Storage: 16 MB SPI NOR
 - Wireless: Atheros AR9340 (SoC) 802.11a/n 2x2:2
 - Ethernet: Atheros AR8229 switch (SoC), 1x 10/100 port,
    8-32 Vdc PoE in
 - 8 user-controllable LEDs:
  - 1x power (blue)
  - 1x user (white)
  - 1x ethernet (green)
  - 5x rssi (green)

 See https://mikrotik.com/product/RBLHG-5nD for more details.

Notes:
 The device was already supported in the ar71xx target.

Flashing:
 TFTP boot initramfs image and then perform a sysupgrade. Follow common
 MikroTik procedure as in https://openwrt.org/toh/mikrotik/common.

Signed-off-by: Jakob (Jack/XDjackieXD) <jakob@chaosfield.at>
2 years agosunxi: add rtc-sun6i driver package
Zhao Yu [Sat, 28 Aug 2021 02:35:12 +0000 (10:35 +0800)]
sunxi: add rtc-sun6i driver package

AP6212 wifi need wifi_pwrseq, but from OrangePi Lite 2 dts :

wifi_pwrseq: wifi_pwrseq {
compatible = "mmc-pwrseq-simple";
clocks = <&rtc 1>;
clock-names = "ext_clock";
reset-gpios = <&r_pio 1 3 GPIO_ACTIVE_LOW>; /* PM3 */
post-power-on-delay-ms = <200>;
};

this pwrseq need rtc clock, or kernel won't find this device.
but now rtc-sunxi.c only support A10/A20.
Orangepi Lite 2 use H6 ,from rtc-sun6i.c show compatible is
{ .compatible = "allwinner,sun6i-a31-rtc" },
{ .compatible = "allwinner,sun8i-a23-rtc" },
{ .compatible = "allwinner,sun8i-h3-rtc" },
{ .compatible = "allwinner,sun8i-r40-rtc" },
{ .compatible = "allwinner,sun8i-v3-rtc" },
{ .compatible = "allwinner,sun50i-h5-rtc" },
{ .compatible = "allwinner,sun50i-h6-rtc" },
So it need this to let kernel find this mmc wifi device.

As suggested by hauke, let it build as package.

Signed-off-by: Zhao Yu <574249312@qq.com>
2 years agolinux-firmware: add firmware for intel ax200
Nian Bohung [Wed, 3 Nov 2021 16:32:22 +0000 (09:32 -0700)]
linux-firmware: add firmware for intel ax200

Signed-off-by: Nian Bohung <n0404.n0404@gmail.com>
2 years agocypress-nvram: fix firmware is not exist for raspberry pi compute 4
Nian Bohung [Mon, 25 Oct 2021 13:26:51 +0000 (06:26 -0700)]
cypress-nvram: fix firmware is not exist for raspberry pi compute 4

Fix file "brcmfmac43455-sdio.raspberrypi,4-compute-module.txt" is not exist.

Signed-off-by: Nian Bohung <n0404.n0404@gmail.com>
2 years agopcre: bring back C++ bindings
Rosen Penev [Wed, 20 Oct 2021 22:45:50 +0000 (15:45 -0700)]
pcre: bring back C++ bindings

It seems some people use them privately.

Reported-by: Jan Kardell <jan.kardell@telliq.com>
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years agoreadline: disable shared library for host
Rosen Penev [Tue, 19 Oct 2021 07:52:03 +0000 (00:52 -0700)]
readline: disable shared library for host

Allows to avoid rpath hacks with at least softethervpn.

--with-pic is needed as it's not default with static libraries, only
shared ones.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years agolibjson-c: don't build shared host libraries
Rosen Penev [Tue, 19 Oct 2021 07:54:59 +0000 (00:54 -0700)]
libjson-c: don't build shared host libraries

Avoids having to deal with various rpath hacks.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years agoath79: mikrotik: enable USB module on RouterBoard wAPR-2nD
Roger Pueyo Centelles [Fri, 22 Oct 2021 10:19:40 +0000 (12:19 +0200)]
ath79: mikrotik: enable USB module on RouterBoard wAPR-2nD

The MikroTik RouterBOARD wAPR-2nD (wAP R) router features a miniPCI-e
slot with USB lines connected, which are used by some USB cards with
miniPCI-e form factor, like the R11e-LR8. Enabling USB support is
required for such cards to work.

Tested on a MikroTik wAP LR8 kit (RB wAPR-2nD + R11e-LR8).

Signed-off-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
2 years agoocteon: add USB3 support (for Ubiquiti EdgeRouter 6P)
Laurent DEBOMY [Tue, 9 Nov 2021 11:39:00 +0000 (12:39 +0100)]
octeon: add USB3 support (for Ubiquiti EdgeRouter 6P)

Fixes: FS#4086
Signed-off-by: Laurent DEBOMY <laurent.debomy@canal-belletrud.fr>
2 years agomvebu: backport mvneta basic MQPrio patch
Kabuli Chana [Fri, 5 Nov 2021 14:19:17 +0000 (08:19 -0600)]
mvebu: backport mvneta basic MQPrio patch

Implement a basic MQPrio support, inserting rules in RX that translate
the TC to prio mapping into vlan prio to queues.

Signed-off-by: Kabuli Chana <newtownBuild@gmail.com>
2 years agokernel: add kmod-ledtrig-pattern
Karel Kočí [Fri, 12 Nov 2021 08:10:45 +0000 (09:10 +0100)]
kernel: add kmod-ledtrig-pattern

This allows LEDs to be triggered by custom pattern and not just
predefined ones.

Signed-off-by: Karel Kočí <karel.koci@nic.cz>
2 years agokernel: bump 5.4 to 5.4.159
John Audia [Fri, 12 Nov 2021 20:20:08 +0000 (15:20 -0500)]
kernel: bump 5.4 to 5.4.159

Manually rebased:
    generic-backport/850-v5.13-usb-ehci-add-spurious-flag-to-disable-overcurrent-ch.patch

All other patches automatically rebased.

Signed-off-by: John Audia <graysky@archlinux.us>
2 years agokernel: remove non-existent config symbols
Jianhui Zhao [Sat, 20 Nov 2021 10:02:48 +0000 (10:02 +0000)]
kernel: remove non-existent config symbols

The crashlog patch as not ported to kernel 5.4.

Fixes: 4e0c54bc5bc8 ("kernel: add support for kernel 5.4")
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2 years agolibubox: update to git HEAD
Daniel Golle [Sat, 20 Nov 2021 17:46:45 +0000 (17:46 +0000)]
libubox: update to git HEAD

 cce5e35 vlist: define vlist_for_each_element_safe

This is change affects only a macro in headers and hence it is not
required to bump ABI_VERSION.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2 years agoqosify: add qosify-status script
Felix Fietkau [Fri, 19 Nov 2021 22:50:50 +0000 (23:50 +0100)]
qosify: add qosify-status script

This will show detailed status for all devices/interfaces

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 years agoqosify: add class specific bulk flow detection example to voice class
Felix Fietkau [Fri, 19 Nov 2021 21:59:09 +0000 (22:59 +0100)]
qosify: add class specific bulk flow detection example to voice class

With the new version, priority/bulk flow detection can be selectively enabled
and configured per class

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 years agoqosify: update to the latest version
Felix Fietkau [Fri, 19 Nov 2021 21:57:03 +0000 (22:57 +0100)]
qosify: update to the latest version

68961a555e42 ubus: drop dnsmasq check for dns_result method
1ca3e26b8169 bpf: refactor code to support explicit opt-in for bulk+prio detection
3f0acf039f41 bpf: move flow prio/bulk detection config into a separate data structure
bc54c97e3333 map, bpf: create a separate map for configured dscp classes
46cf3eae2d99 bpf: fix bulk flow detaction
88f1db7dd611 bpf: fix priority flow detection
b5dec7874373 bpf: remove access to skb->gso_size
e728a319a9a5 interface: unify status, always include ifname, ingress, egress

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 years agobpf-headers: switch to mips64 for 64 bit targets
Felix Fietkau [Thu, 18 Nov 2021 21:25:47 +0000 (22:25 +0100)]
bpf-headers: switch to mips64 for 64 bit targets

BTF pointer data has a different size on 32 vs 64 bit targets,
and while the generated eBPF code works, the BTF data fails to validate
on mismatch

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 years agoqosify: keep ICMP in the default best-effort class
Felix Fietkau [Thu, 18 Nov 2021 15:55:02 +0000 (16:55 +0100)]
qosify: keep ICMP in the default best-effort class

Also preserve existing DSCP tags to make it easier to test latency for
different DSCP values

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 years agoqosify: move package to Base System
Rodrigo B. de Sousa Martins [Mon, 15 Nov 2021 16:53:43 +0000 (13:53 -0300)]
qosify: move package to Base System

Since sqm-scripts and qos-scripts packages are in the same category as qosify,
the firsts being in the Base System category, I find it understandable to move
the latter to Base System instead of network section.

Signed-off-by: Rodrigo B. de Sousa Martins <rodrigo.sousa.577@gmail.com>
2 years agoinclude/bpf.mk: preserve the bpf .o file with debug symbols
Felix Fietkau [Thu, 18 Nov 2021 15:47:51 +0000 (16:47 +0100)]
include/bpf.mk: preserve the bpf .o file with debug symbols

Makes it easier to analyze verifier complaints

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 years agohostapd: fix use after free bugs
David Bauer [Wed, 17 Nov 2021 20:46:11 +0000 (21:46 +0100)]
hostapd: fix use after free bugs

Using a pointer one lifter after it freed is not the best idea.
Let's not do that.

Signed-off-by: David Bauer <mail@david-bauer.net>
2 years agomac80211: fix IBSS/adhoc mode for brcmfmac
Bastian Bittorf [Sun, 19 Sep 2021 11:19:36 +0000 (11:19 +0000)]
mac80211: fix IBSS/adhoc mode for brcmfmac

On systems using brmcfmac (e.g. Raspberry Pi Zero W) without this fix,
the final setup-call:
iw dev wlan0 ibss join ...

fails with returncode 161 and message:
"command failed: Not supported (-95)"

So this patch calls an explicit:
iw dev wlan0 set type ibss
just prior to the 'ibss join' command.

I have tested several ath9k and mt76xx devices
with different revisions: this patch does not harm.

please also apply to stable branch.

Signed-off-by: Bastian Bittorf <bb@npl.de>
2 years agomediatek/mt7622: unifi-6-lr: fix ucidef network configuration typo
Mark Mentovai [Fri, 19 Nov 2021 14:53:04 +0000 (09:53 -0500)]
mediatek/mt7622: unifi-6-lr: fix ucidef network configuration typo

There's no such thing as ucidef_set_interfaces_lan. It's
ucidef_set_interface_lan.

Cc: David Bauer <mail@david-bauer.net>
Signed-off-by: Mark Mentovai <mark@moxienet.com>
2 years agobcm4908: build chk image for Netgear RAXE500
Rafał Miłecki [Fri, 19 Nov 2021 13:48:20 +0000 (14:48 +0100)]
bcm4908: build chk image for Netgear RAXE500

Fixes: 63ba3eaccdde ("bcm4908: start working on Netgear RAXE500 image")
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2 years agobcm4908: start working on Netgear RAXE500 image
Rafał Miłecki [Fri, 19 Nov 2021 13:32:59 +0000 (14:32 +0100)]
bcm4908: start working on Netgear RAXE500 image

bootfs still needs more work before it's ready.

For some unknown reason model RAXE500 uses board id RAX220.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2 years agobcm4908: enable MTD_CMDLINE_PARTS
Rafał Miłecki [Fri, 19 Nov 2021 13:32:58 +0000 (14:32 +0100)]
bcm4908: enable MTD_CMDLINE_PARTS

It's needed to support devices with U-Boot. That bootloader passes MTD
layout using cmdline.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2 years agobcm4908: continue work on images for U-Boot based devices
Rafał Miłecki [Fri, 19 Nov 2021 13:32:58 +0000 (14:32 +0100)]
bcm4908: continue work on images for U-Boot based devices

It still isn't ready though - more data needs to be added to the bootfs.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2 years agosunxi: 5.10: Orange Pi Zero Plus: Fix networking
Robert Marko [Wed, 17 Nov 2021 15:17:07 +0000 (16:17 +0100)]
sunxi: 5.10: Orange Pi Zero Plus: Fix networking

Orange Pi Zero Plus uses a Realtek RTL8211E RGMII Gigabit PHY, but its
currently set to plain RGMII mode meaning that it doesn't introduce
delays.

With this setup, TX packets are completely lost and changing the mode to
RGMII-ID so the PHY will add delays internally fixes the issue.

It looks like this got broken in 5.10 as the PHY RGMII config got fixed
due to datasheet being available and a lot of boards got broken by that.

This has already been sent upstream and received multiple reviews.

Signed-off-by: Robert Marko <robert.marko@sartura.hr>
2 years agokernel: bump 5.10 to 5.10.80
Rui Salvaterra [Thu, 18 Nov 2021 18:24:32 +0000 (18:24 +0000)]
kernel: bump 5.10 to 5.10.80

Deleted (upstreamed):
ath79/patches-5.10/921-serial-core-add-support-for-boot-console-with-arbitr.patch [1]
bcm53xx/patches-5.10/033-v5.15-0012-ARM-dts-BCM5301X-Fix-memory-nodes-names.patch [2]
lantiq/patches-5.10/0016-mtd-rawnand-xway-Keep-the-driver-compatible-with-on-.patch [3]
lantiq/patches-5.10/0110-MIPS-lantiq-dma-add-small-delay-after-reset.patch [4]
lantiq/patches-5.10/0111-MIPS-lantiq-dma-reset-correct-number-of-channel.patch [5]
lantiq/patches-5.10/0112-MIPS-lantiq-dma-fix-burst-length-for-DEU.patch [6]

Manually rebased:
ipq806x/patches-5.10/0065-arm-override-compiler-flags.patch

[1] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v5.10.80&id=47462c5e600fbaffd755cd13dedd80d04e41ff83
[2] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v5.10.80&id=2fde76df1885a6bec04317e457121326070450eb
[3] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v5.10.80&id=9b366f5221d8aa64b22f35be137a5749326444ce
[4] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v5.10.80&id=5af57ce8a6155fe3e4270d28d171abf8903bebc0
[5] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v5.10.80&id=b92a5df2c7adc79a57481445f67de0c1c716581f
[6] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v5.10.80&id=6b72caabc47011d03f44064452b2c65e8ed18326

Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
2 years agobcm4908: backport upstream DT commits
Rafał Miłecki [Thu, 18 Nov 2021 16:51:08 +0000 (17:51 +0100)]
bcm4908: backport upstream DT commits

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2 years agobcm53xx: use more upsteam DT patches from 5.16 / 5.17
Rafał Miłecki [Thu, 18 Nov 2021 15:34:55 +0000 (16:34 +0100)]
bcm53xx: use more upsteam DT patches from 5.16 / 5.17

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2 years agotoolchain: add a version that can be bumped to force toolchain/target rebuild
Felix Fietkau [Tue, 16 Nov 2021 20:46:21 +0000 (12:46 -0800)]
toolchain: add a version that can be bumped to force toolchain/target rebuild

This can be used to ensure that the compiled code is up to date, when
something important changes in the toolchain.
A recent example of this is the gcc 11 fix for a code miscompilation issue

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 years agotoolchain/gcc: revert a faulty upstream commit that caused miscompiled code
Felix Fietkau [Tue, 16 Nov 2021 09:47:43 +0000 (10:47 +0100)]
toolchain/gcc: revert a faulty upstream commit that caused miscompiled code

This broke at least the OKLI loader, but possibly other things as well

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 years agolantiq: improve ethernet performance
Aleksander Jan Bajkowski [Sat, 22 May 2021 18:07:56 +0000 (20:07 +0200)]
lantiq: improve ethernet performance

This commit contains a series of fixes for DMA. The burst length
patch significantly improves Ethernet performance. Patches were
tested on the xRX200 and xRX330.

Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
2 years agoltq-vdsl-fw: update w921v firmware download URL
Daniel Golle [Mon, 15 Nov 2021 01:02:57 +0000 (01:02 +0000)]
ltq-vdsl-fw: update w921v firmware download URL

Update Telekom Speedport W921V firmware download URL.
Contained TAPI and VDSL firmware blobs are identical.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2 years agokernel: add missing symbol
Stijn Tintel [Sat, 6 Nov 2021 18:55:57 +0000 (20:55 +0200)]
kernel: add missing symbol

Enabling KERNEL_FTRACE exposes the HIST_TRIGGERS triggers symbol. Add a
build option for it to fix build failures with KERNEL_FTRACE enabled.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2 years agohostapd: set VARIANT=* for wpa-cli, hostapd-utils
Eneas U de Queiroz [Wed, 3 Nov 2021 18:58:57 +0000 (15:58 -0300)]
hostapd: set VARIANT=* for wpa-cli, hostapd-utils

19aae94 [build: avoid rebuilds of unset VARIANT packages] builds
packages defined without a VARIANT only once, using the first VARIANT
defined in the Makefile.

This caused problems with wpa-cli, as it is only built for variants that
include supplicant support, and the first VARIANT defined may not build
it.

The same happens to hostapd-utils, which is not built for
supplicant-only variants.

To circumvent this, set VARIANT=* for both packages so that they get
built for every defined variant.  This should not cause spurious
rebuilds, since tey are not a dependency of any other package defined in
this Makefile.

Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
2 years agobuild: allow package to be built for all variants
Eneas U de Queiroz [Wed, 3 Nov 2021 18:51:32 +0000 (15:51 -0300)]
build: allow package to be built for all variants

This allows a package to be rebuilt for all different VARIANTs.
To do so, set VARIANT=*.

The wpa-cli package is not getting built after changes made by
19aae94 [build: avoid rebuilds of unset VARIANT packages], because
wpa-cli is only built when compiling a variant that includes
supplicant support, and the first selected variant may not build it.

Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
2 years agokernel: fix mac-address-increment patch
Ansuel Smith [Thu, 4 Nov 2021 13:36:50 +0000 (14:36 +0100)]
kernel: fix mac-address-increment patch

Fix mac address increment patch. Permit to overflow to the next
byte and correctly calculate the incremented mac.

Reported-by: Chen Minqiang <ptpt52@gmail.com>
Fixes: d284e6ef0f06 ("treewide: convert mtd-mac-address-increment* to generic implementation")
Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
2 years agokernel: 5.10: backport explicit MAC06 disable patch
Matthew Hagan [Sat, 6 Nov 2021 14:05:30 +0000 (14:05 +0000)]
kernel: 5.10: backport explicit MAC06 disable patch

Backport of Ansuel Smith's "net: dsa: qca8k: make sure PAD0 MAC06
exchange is disabled", to ensure mac06 is disabled even if enabled by
the bootloader.

Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
Signed-off-by: Matthew Hagan <mnhagan88@gmail.com>
2 years agomxs: drop kernel 5.4 support
Zoltan HERPAI [Sun, 14 Nov 2021 18:05:39 +0000 (19:05 +0100)]
mxs: drop kernel 5.4 support

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2 years agomxs: switch to Kernel 5.10
Paul Spooren [Thu, 30 Sep 2021 05:23:05 +0000 (19:23 -1000)]
mxs: switch to Kernel 5.10

Signed-off-by: Paul Spooren <mail@aparcar.org>
2 years agolldpd: add reload trigger
Stijn Tintel [Sun, 14 Nov 2021 19:18:13 +0000 (21:18 +0200)]
lldpd: add reload trigger

This is needed to reload the service when calling reload_config, if the
UCI config has changed.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2 years agolldpd: consolidate procd command lines
Stijn Tintel [Sun, 14 Nov 2021 19:12:53 +0000 (21:12 +0200)]
lldpd: consolidate procd command lines

There is no need to have multiple lines for this.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2 years agolldpd: bump to 1.0.13
Stijn Tintel [Sun, 14 Nov 2021 18:59:47 +0000 (20:59 +0200)]
lldpd: bump to 1.0.13

Fixes CVE-2021-43612.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2 years agolantiq: fix mac address from nvmem-cells
Mathias Kresin [Sun, 14 Nov 2021 19:09:25 +0000 (20:09 +0100)]
lantiq: fix mac address from nvmem-cells

The devicetree property mac-address is expected to be set by the
bootloader and has priority over the nvmem supplied one.

Drop the mac-address address property from the dtsi files, to let the
mac address from nvmem-cells get used.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2 years agouboot-lantiq: reduce stack size
Mathias Kresin [Sun, 14 Nov 2021 16:11:14 +0000 (17:11 +0100)]
uboot-lantiq: reduce stack size

On lantiq a lot of stuff expects to be loaded to and executed at
0x80002000, including our own second stage bootloader.

For all build u-boots, the initial stack pointer is at 0x80008000. After
loading data to 0x80002000, every further stack operation corrupts the
loaded code.

Set the initial stack pointer to 0x80002000, to not overwrite code
loaded in memory. A stack of 0x2000 bytes has been proven as enough in
all done tests.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2 years agouboot-lantiq: danube: fix SPL boot
Mathias Kresin [Tue, 2 Nov 2021 22:35:32 +0000 (23:35 +0100)]
uboot-lantiq: danube: fix SPL boot

On danube we only have 0x6800 bytes of usable SRAM. Everything behind
can't be written to and a SPL u-boot locks up during boot.

Since it's a hard to debug issue and took me more than two years to fix
it, I consider it worth to include fix albeit SPL u-boots are not build
in OpenWrt.

I faced the issue while trying to shrink the u-boot to 64K since some
boards only have an u-boot partition of that size from the days
ifx-uboot was used.

Signed-off-by: Mathias Kresin <dev@kresin.me>
Reviewed-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
2 years agouboot-lantiq: fix out of bounds cache invalidate
Mathias Kresin [Tue, 2 Nov 2021 21:20:28 +0000 (22:20 +0100)]
uboot-lantiq: fix out of bounds cache invalidate

With gcc10 the variables are placed more tightly to each other, which
uncovers a long existing bug in the lantiq DMA code. It can be observed
when using tftpboot with the filename parameter, which gets reset during
the tftpboot execution.

NetRxPackets[] points to cache line size aligned addresses. In
ltq_eth_rx_packet_align() the address NetRxPackets[] points to is
increased by LTQ_ETH_IP_ALIGN and the resulting not cache aligned
address is used further on. While doing so, the length/size is never
updated.

The "not cache aligned address" + len/size for a cache aligned address
is passed to invalidate_dcache_range(). Hence, invalidate_dcache_range()
invalidates the next 32 bit as well, which flashes the BootFile variable
as well.

   variable BootFile is at address: 0x83ffe12c
   NetRxPackets[] points to 0x83ffdb20 (len is 0x600)
   data points to: 0x83ffdb22 (len is 0x600)

   ltq_dma_dcache_inv: 0x83ffdb22 (for len 0x600)
   invalidate_dcache_range: 0x83ffdb20 to 0x83ffe120 (size: 32)
   invalidate_dcache_range: 0x83ffdb20 to 0x83ffdb40 (Bootfile: a.bin)
   ...
   invalidate_dcache_range: 0x83ffe100 to 0x83ffe120 (Bootfile: a.bin)
   invalidate_dcache_range: 0x83ffe120 to 0x83ffe140 (Bootfile: )

In ltq_dma_tx_map() and ltq_dma_rx_map() the start address passed to
ltq_dma_dcache_wb_inv() is incorrect. By considering the offset, the
start address passed to flush_dcache_range() is always aligned to 32, 64
or 128 bytes dependent on configured DMA burst size.

Fixes: FS#4113
Signed-off-by: Mathias Kresin <dev@kresin.me>
2 years agouboot-lantiq: danube: fix hanging lzma kernel uncompression
Mathias Kresin [Fri, 5 Nov 2021 09:41:26 +0000 (10:41 +0100)]
uboot-lantiq: danube: fix hanging lzma kernel uncompression

At least since gcc 7.3.0 (OpenWrt 18.06) lwr/lwl are used in the
assembly of LzmaProps_Decode. While the decission made by the compiler
looks perfect fine, it triggers some obscure hang on lantiq danube-s
v1.5 with MX29LV640EB NOR flash chips.

Only if the offset 1 is used, the hang can be observed. Using any other
offset works fine:

  lwl s0,0(a1) - s0 == 0x6d000080
  lwl s0,1(a1) - hangs
  lwl s0,2(a1) - s0 == 0x0080xxxx
  lwl s0,3(a1) - s0 == 0x80xxxxxx

It isn't clear whether it is a limitation of the flash chip, the EBU or
something else.

Force 8bit reads to prevent gcc optimizing the read with lwr/lwl
instructions.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2 years agoqosify: add missing alias support in the init script
Felix Fietkau [Sun, 14 Nov 2021 18:35:52 +0000 (19:35 +0100)]
qosify: add missing alias support in the init script

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 years agoipq40xx: fix missing include
Christian Lamparter [Sun, 14 Nov 2021 18:14:55 +0000 (19:14 +0100)]
ipq40xx: fix missing include

This patch fixes a blunder of mine. The include needed
for LED_COLOR_ID_BLUE property is missing.

This caused the builds to fail with:
|Error: arch/arm/boot/dts/qcom-ipq4019-r619ac.dtsi:91.13-14 syntax error
|FATAL ERROR: Unable to parse input tree

Fixes: 12d33d388c52 ("ipq40xx: add support for P&W R619AC (aka G-DOCK 2.0)")
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2 years agoipq40xx: reenable Zyxel NBG6617 by default
Christian Lamparter [Fri, 5 Nov 2021 23:42:43 +0000 (00:42 +0100)]
ipq40xx: reenable Zyxel NBG6617 by default

The Zyxel NBG6617 already uses lzma to compress the kernel.
A local build with every module enabled (either as =Y or =M)
ended produced a 3058 KiB kernel (the kernel partition is 4MiB).
It booted just fine, let's reenable the device.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2 years agoipq40xx: add support for P&W R619AC (aka G-DOCK 2.0)
Richard Yu [Fri, 12 Nov 2021 03:16:21 +0000 (11:16 +0800)]
ipq40xx: add support for P&W R619AC (aka G-DOCK 2.0)

P&W R619AC is a IPQ4019 Dual-Band AC1200 router.
It is made by P&W (p2w-tech.com) known as P&W R619AC
but marketed and sold more popularly as G-DOCK 2.0.

Specification:

* SOC: Qualcomm Atheros IPQ4019 (717 MHz)
* RAM: 512 MiB
* Flash: 16 MiB (NOR) + 128 MiB (NAND)
* Ethernet: 5 x 10/100/1000 (4 x LAN, 1 x WAN)
* Wireless:
  - 2.4 GHz b/g/n Qualcomm Atheros IPQ4019
  - 5 GHz a/n/ac Qualcomm Atheros IPQ4019
* USB: 1 x USB 3.0
* LED: 4 x LAN, 1 x WAN, 2 x WiFi, 1 x Power (All Blue LED)
* Input: 1 x reset
* 1 x MicroSD card slot
* Serial console: 115200bps, pinheader J2 on PCB
* Power: DC 12V 2A
* 1 x Unpopulated mPCIe Slot (see below how to connect it)
* 1 x Unpopulated Sim Card Slot

Installation:
1. Access to tty console via UART serial
2. Enter failsafe mode and mount rootfs
   <https://openwrt.org/docs/guide-user/troubleshooting/failsafe_and_factory_reset>
3. Edit inittab to enable shell on tty console
   `sed -i 's/#ttyM/ttyM/' /etc/inittab`
4. Reboot and upload `-nand-factory.bin` to the router (using wget)
5. Use `sysupgrade` command to install

Another installation method is to hijack the upgrade server domain
of stock firmware, because it's using insecure http.

This commit is based on @LGA1150(at GitHub)'s work
<https://github.com/LGA1150/openwrt/commit/a4932c8d5a275d1fb4297bd20ec03f9270a45d1c>
With some changes:
1. Added `qpic_bam` node in dts. I don't know much about this,
   but I observed other dtses have this node.
2. Removed `ldo` node under `sd_0_pinmux`, because `ldo` cause SD card not
   working. This fix is from
   <https://github.com/coolsnowwolf/lede/commit/51143b4c7571f717afe071db60bbb4db1532cbf2>
3. Removed the 32MB NOR variant.
4. Removed `cd-gpios` in `sdhci` node, because it's reported that it makes
   wlan2g led light up.
5. Added ethphy led config in dts.
6. Changed nand partition label from `rootfs` to `ubi`.

About the 128MiB variant: The stock bootloader sets size of nand to 64MiB.
But most of this devices have 128MiB nand. If you want to use all 128MiB,
you need to modify the `MIBIB` data of bootloader. More details can be
found on github:
<https://github.com/openwrt/openwrt/pull/3691#issuecomment-818770060>
For instructions on how to flash the MIBIB partition from u-boot console:
<https://github.com/openwrt/openwrt/pull/3691#issuecomment-819138232>

About the Mini PCIe slot: (from "ygleg")
"The REFCLK signals on the Mini PCIe slot is not connected on
this board out of the box. If you want to use the Mini PCIe slot
on the board, you need to (preferably) solder two 0402 resistors:
R436 (REFCLK+) and R444 (REFCLK-)..."
This and much more information is provoided in the github comment:
<https://github.com/openwrt/openwrt/pull/3691#issuecomment-968054670>

Signed-off-by: Richard Yu <yurichard3839@gmail.com>
Signed-off-by: DENG Qingfang <dqfext@gmail.com>
[Added comment about MIBIB+128 MiB variant. Added commit
message section about pcie slot. Renamed gpio-leds' subnodes
and added color, function+enum properties.]
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2 years agoscripts/env: fix env for git conf init.defaultBranch not set to "master"
Arne Zachlod [Wed, 10 Nov 2021 13:47:55 +0000 (14:47 +0100)]
scripts/env: fix env for git conf init.defaultBranch not set to "master"

Since version 2.28, git has a config option init.defaultBranch to set the name
of the first branch created with git init. The env script expects this name to
be "master". This commit sets the initial branch name to "master"
instead of using the git configured one.

Signed-off-by: Arne Zachlod <arne@nerdkeller.org>
2 years agofirewall4: update to latest Git HEAD
Paul Spooren [Mon, 25 Oct 2021 23:27:26 +0000 (13:27 -1000)]
firewall4: update to latest Git HEAD

eb0a3ee fw4.uc: Do not quote port ranges
c5a8e3e tests: adapt test to new ICMP print logic

Also start using $(AUTORELEASE)

Signed-off-by: Paul Spooren <mail@aparcar.org>
2 years agobase-files: stage2: improve /proc/*/stat parser
Daniel Golle [Sat, 13 Nov 2021 16:29:52 +0000 (16:29 +0000)]
base-files: stage2: improve /proc/*/stat parser

Simply reading /proc/*/stat as a space-separated string will not work
as the process name may itself contain spaces. Hence we must match on
the '(' and ')' characters around the process name and can then handle
the remaining string as space-separated values.
This fixes shell error messages which have been popping up the console
due to spaces in process names being interpreted as field separators.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2 years agokernel: bump 5.10 to 5.10.79
Rui Salvaterra [Fri, 12 Nov 2021 15:31:37 +0000 (15:31 +0000)]
kernel: bump 5.10 to 5.10.79

Manually rebased:
generic/backport-5.10/810-v5.13-usb-ehci-add-spurious-flag-to-disable-overcurrent-ch.patch

Tested-by: John Audia <graysky@archlinux.us>
Tested-by: Daniel Golle <daniel@makrotopia.org>
Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
2 years agomac80211: Fix deadlock when configuring wifi
Hauke Mehrtens [Sat, 13 Nov 2021 17:24:52 +0000 (18:24 +0100)]
mac80211: Fix deadlock when configuring wifi

The nl80211_set_wiphy() function was changed between kernel 5.11 and
5.12 to take the rdev->wiphy lock which should be freed at the end
again. The 500-mac80211_configure_antenna_gain.patch added some code
which just returned in some cases without unlocking. This resulted in a
deadlock with brcmfmac.
This patch fixes this by also jumping to the out label in case we want
to leave the function.
This fixes a hanging system when brcmfmac is in use. I do not know why
we do not see this with other driver.

The kernel returns very useful debug details when setting these OpenWrt
configuration options:
CONFIG_KERNEL_DETECT_HUNG_TASK=y
CONFIG_KERNEL_PROVE_LOCKING=y

Fixes: FS#4122
Fixes: b96c2569ac76 ("mac80211: Update to version 5.12.19-1")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 years agoiproute2: update to 5.15
Russell Senior [Sun, 7 Nov 2021 23:32:18 +0000 (15:32 -0800)]
iproute2: update to 5.15

from https://git.kernel.org/pub/scm/network/iproute2/iproute2.git

changes since 5.14.0:

ad3a118f rdma: Fix SRQ resource tracking information json
7a235a10 man: devlink-port: fix pfnum for devlink port add
229eaba5 uapi: pickup fix for xfrm ABI breakage
a500c5ac lib/bpf: fix map-in-map creation without prepopulation
7c032cac man: devlink-port: remove extra .br
04ee8e6f man: devlink-port: fix style
14802d84 man: devlink-port: fix the devlink port add synopsis
897772a7 cmd: use spaces instead of tabs for usage indentation
e7a98a96 mptcp: unbreak JSON endpoint list
2f5825cb lib: bpf_legacy: fix bpffs mount when /sys/fs/bpf exists
d756c08a tc/f_flower: fix port range parsing
92e32f77 uapi: updates from 5.15-rc1
e7e0e2ce iptuntap: fix multi-queue flag display
deef844b man: ip-link: remove double of
a3272b93 configure: restore backward compatibility
ceba5930 tree-wide: fix some typos found by Lintian
7a705242 ip: remove leftovers from IPX and DECnet
8ab1834e uapi: update headers from 5.15 merge
6d0d35ba ip/bond: add lacp active support
926ad641 Update kernel headers
c730bd0b ip/tunnel: always print all known attributes
df8912ed ipioam6: use print_nl instead of print_null
7e7270bb tc/skbmod: Introduce SKBMOD_F_ECN option
86c596ed IOAM man8
2d83c710 New IOAM6 encap type for routes
f0b3808a Add, show, link, remove IOAM namespaces and schemas
acbdef93 Import ioam6 uapi headers
2d6fa30b Update kernel headers
508ad89c ipneigh: add support to print brief output of neigh cache in tabular format

* update patch 170-ip_tiny.patch to accomodate ioam.

Signed-off-by: Russell Senior <russell@personaltelco.net>
2 years agoqosify: add default alias sections
Felix Fietkau [Fri, 12 Nov 2021 22:11:37 +0000 (23:11 +0100)]
qosify: add default alias sections

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 years agoqosify: update to the latest version
Felix Fietkau [Fri, 12 Nov 2021 22:06:26 +0000 (23:06 +0100)]
qosify: update to the latest version

0750f2b4d329 README: dnsmasq integration is complete
8e48d0b0cbba bpf: add initial support for splitting map dscp value into ingress and egress
bfc2cafe2a8c map: add support for defining aliases

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 years agodnsmasq: fix the dynamic dns object names patch
Rui Salvaterra [Fri, 12 Nov 2021 16:50:33 +0000 (16:50 +0000)]
dnsmasq: fix the dynamic dns object names patch

We can't use booleans, since we're not including stdbool.h. Use integers
instead.

Fixes: 0b79e7c01e ("dnsmasq: generate the dns object name dynamically")
Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
2 years agomediatek: mt7622: bpi-r64: rewrite MMC uImage.FIT sysupgrade
Daniel Golle [Fri, 12 Nov 2021 14:54:52 +0000 (14:54 +0000)]
mediatek: mt7622: bpi-r64: rewrite MMC uImage.FIT sysupgrade

Similar to mt7623, also no longer use 'blockdev' and stop relying on
in-kernel partition parsers. Instead, strip off all metadata using
'fwtool' while writing the firmware image and scrape the number of
blocks written from 'dd', then use that block offset to stash the
configuration backup.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2 years agomediatek: mt7623: re-write sysupgrade uImage.FIT on MMC
Daniel Golle [Fri, 12 Nov 2021 11:50:26 +0000 (11:50 +0000)]
mediatek: mt7623: re-write sysupgrade uImage.FIT on MMC

Re-reading the partition table doesn't work reliably, it fails if
anything on the device is still in use and it's not trivial to prevent
every possible case of a block device still being in use somehow.

Therefore, instead of relying on the in-kernel partition parser to know
where to write the configuration backup, use OpenWrt's format-agnostic
fwtool to strip off all metadata from the image and count its blocks
while writing. In that way we can know where to write the config backup
without needing the kernel to parse the MBR and FIT structures.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2 years agodnsmasq: add ubus acl to allow calls to hotplug.tftp object
Daniel Golle [Thu, 11 Nov 2021 14:24:26 +0000 (14:24 +0000)]
dnsmasq: add ubus acl to allow calls to hotplug.tftp object

dnsmasq may call hotplug.dhcp, hotplug.neigh and hotplug.tftp.
Only the first two callees were listed in the ACL, so add missing
hotplug.tftp.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2 years agoinclude/bpf.mk: fix typo in clang version check
Felix Fietkau [Fri, 12 Nov 2021 12:15:35 +0000 (13:15 +0100)]
include/bpf.mk: fix typo in clang version check

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 years agoprocd: update to git HEAD
Daniel Golle [Thu, 11 Nov 2021 14:05:59 +0000 (14:05 +0000)]
procd: update to git HEAD

 9d1431e jail: allow passing environment variable to procd jailed process

Fixes dnsmasq in ujail which needs USER_SCRIPT env variable to be
passed to jailed process.

Reported-by: Bastian Bittorf <bb@npl.de>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2 years agomac80211: fix queue selection issue
Felix Fietkau [Wed, 10 Nov 2021 21:24:51 +0000 (22:24 +0100)]
mac80211: fix queue selection issue

When __ieee80211_select_queue is called, skb->cb has not been cleared yet,
which means that info->control.flags can contain garbage.
In some cases this leads to IEEE80211_TX_CTRL_DONT_REORDER being set, causing
packets marked for other queues to randomly end up in BE instead.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 years agonat46: update to latest git HEAD
Hans Dedecker [Wed, 10 Nov 2021 19:24:36 +0000 (20:24 +0100)]
nat46: update to latest git HEAD

1fdf2a3 Fix kernel panic due to device deletion (#29)
e7b48d1 add the mutex lock for create/delete/config/insert nat46 devices to fix nat46 module crash issues. (#28)

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2 years agodnsmasq: generate the dns object name dynamically
Felix Fietkau [Wed, 10 Nov 2021 09:07:02 +0000 (10:07 +0100)]
dnsmasq: generate the dns object name dynamically

Fixes an issue with running multiple dnsmasq instances

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 years agoinclude/bpf.mk: check minimum required clang version
Felix Fietkau [Tue, 9 Nov 2021 19:59:15 +0000 (20:59 +0100)]
include/bpf.mk: check minimum required clang version

Avoid spurious runtime errors caused by loading eBPF modules
built with an old clang version

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 years agodnsmasq: add match_tag for --dhcp-host
Paul Fertser [Thu, 23 Sep 2021 07:28:45 +0000 (10:28 +0300)]
dnsmasq: add match_tag for --dhcp-host

A set of tags can be specified for --dhcp-host option to restrict the
assignment to the requests which match all the tags.

Example usage:

config vendorclass
        option networkid 'udhcp'
        option vendorclass 'udhcp'

config host
        option mac '*:*:*:*:*:*'
        list match_tag 'switch.10'
        list match_tag 'udhcp'
        option ip '192.168.25.10'

Signed-off-by: Paul Fertser <fercerpav@gmail.com>
2 years agoqosify: mark as nonshared
Felix Fietkau [Tue, 9 Nov 2021 10:03:10 +0000 (11:03 +0100)]
qosify: mark as nonshared

The SDK does not have the LLVM toolchain yet

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 years agobcm4908: switch to kernel 5.10
Rafał Miłecki [Tue, 9 Nov 2021 10:57:22 +0000 (11:57 +0100)]
bcm4908: switch to kernel 5.10

Tested on:
1. Asus GT-AC5300
2. Netgear R8000P

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2 years agobcm4908: add watchdog support
Rafał Miłecki [Tue, 9 Nov 2021 11:07:59 +0000 (12:07 +0100)]
bcm4908: add watchdog support

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2 years agobcm4908: refresh kernel configs
Rafał Miłecki [Tue, 9 Nov 2021 10:57:07 +0000 (11:57 +0100)]
bcm4908: refresh kernel configs

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2 years agoqosify: move files to /etc/qosify
Felix Fietkau [Mon, 8 Nov 2021 21:26:45 +0000 (22:26 +0100)]
qosify: move files to /etc/qosify

Now that wildcard matching is supported, this makes it easier for packages
to supply their own qosify rules

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 years agoqosify: update to the latest version
Felix Fietkau [Mon, 8 Nov 2021 21:26:16 +0000 (22:26 +0100)]
qosify: update to the latest version

737970946bc0 map: default to fnmatch matching for dns patterns. support regex via leading /
b56b112e62e2 ubus: fix crash caused by missing static keyword
3a420e272c18 qosify: support wildcards in classifier filenames

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 years agoqosify: add missing dependency
Felix Fietkau [Mon, 8 Nov 2021 20:28:27 +0000 (21:28 +0100)]
qosify: add missing dependency

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 years agobcm4908: fix b53 regression regarding RGMII reg(s)
Rafał Miłecki [Mon, 8 Nov 2021 16:23:09 +0000 (17:23 +0100)]
bcm4908: fix b53 regression regarding RGMII reg(s)

This fixes:
[   35.308550] WARNING: CPU: 0 PID: 230 at bcm_sf2_reg_rgmii_cntrl.isra.0+0x84/0x90

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2 years agobcm53xx: drop patch for downstream swconfig-based b53
Rafał Miłecki [Mon, 8 Nov 2021 14:58:42 +0000 (15:58 +0100)]
bcm53xx: drop patch for downstream swconfig-based b53

It isn't used anymore so there is no need to hack CPU port. Upstream
(DSA-based) b53 also supports all switch ports just fine.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2 years agobcm53xx: drop downstream patch for Buffalo WZR-1750DHP button
Rafał Miłecki [Thu, 16 Sep 2021 06:39:50 +0000 (08:39 +0200)]
bcm53xx: drop downstream patch for Buffalo WZR-1750DHP button

This patch never received a proper description and was never sent
upstream as supposed. It was meant to be handled in 2015-2018 so it
should be safe to assume noone really understands it or care.

Cc: Felix Fietkau <nbd@nbd.name>
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2 years agolayerscape: mkits-multiple-config: fail on invalid arguments
Rafał Miłecki [Mon, 25 Oct 2021 08:17:15 +0000 (10:17 +0200)]
layerscape: mkits-multiple-config: fail on invalid arguments

Fail if arguments couldn't be parsed and print unrecognized part. It's
important when running it from script with dynamic values. Missing value
could result in skipping argument and silent failures (unexpected its).

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2 years agobcm4908: start work on images for devices using U-Boot
Rafał Miłecki [Wed, 3 Nov 2021 17:12:05 +0000 (18:12 +0100)]
bcm4908: start work on images for devices using U-Boot

New BCM4908 family based routers will use U-Boot bootloader. That will
require using a totally different firmware format. Kernel has to be put
in a FIT image.

OpenWrt has some helpers for generating .its files but they don't fit
BCM4908 requirements and there is no simple way of extending any of
them. The best solution seems to be storing an .its template.

BCM4908 bootfs may:
1. contain extra binaries (other than kernel & DTB)
2. include multiple DTB files
3. store device specific U-Boot configurations with custom properties

Such setups are too complex to generate using shell script. Raw .its
file on the other hand seems quire clean & reasonable.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>