openwrt/staging/blocktrron.git
2 years agorealtek: Consolidate bootargs
Sander Vanheule [Sun, 14 Nov 2021 18:45:30 +0000 (19:45 +0100)]
realtek: Consolidate bootargs

All current devices use identical bootargs, so let's move that to the
common devicetree includes.

Signed-off-by: Sander Vanheule <sander@svanheule.net>
Tested-by: Stijn Segers <foss@volatilesystems.org>
Tested-by: Paul Fertser <fercerpav@gmail.com>
Tested-by: Stijn Tintel <stijn@linux-ipv6.be>
2 years agorealtek: reset both ethernet NIC and queues
Sander Vanheule [Thu, 18 Nov 2021 17:39:18 +0000 (18:39 +0100)]
realtek: reset both ethernet NIC and queues

Recent versions of Realtek's SDK reset both the ethernet NIC and queues
(SW_NIC_RST and SW_Q_RST bits) when initialising the hardware.

Furthermore, when issuing a CPU reset on the Zyxel GS1900-8 (not
supported by any current driver), the networking part of the SoC is not
reset. This leads to unresponsive network after the restart. By
resetting both the ethernet NIC and queues, networking always comes up
reliably.

Suggested-by: Birger Koblitz <mail@birger-koblitz.de>
Signed-off-by: Sander Vanheule <sander@svanheule.net>
Tested-by: Stijn Tintel <stijn@linux-ipv6.be>
2 years agohostapd: add a patch that allows processing auth requests for peers in blocked state
Felix Fietkau [Wed, 24 Nov 2021 16:02:26 +0000 (17:02 +0100)]
hostapd: add a patch that allows processing auth requests for peers in blocked state

If authentication fails repeatedly e.g. because of a weak signal, the link
can end up in blocked state. If one of the nodes tries to establish a link
again before it is unblocked on the other side, it will block the link to
that other side. The same happens on the other side when it unblocks the
link. In that scenario, the link never recovers on its own.

To fix this, allow restarting authentication even if the link is in blocked
state, but don't initiate the attempt until the blocked period is over.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 years agomac80211: add a fix for kernel warnings when forwarding packets in mesh mode
Felix Fietkau [Wed, 24 Nov 2021 13:02:09 +0000 (14:02 +0100)]
mac80211: add a fix for kernel warnings when forwarding packets in mesh mode

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 years agomac80211: fix regression in SSN handling of addba tx
Felix Fietkau [Wed, 24 Nov 2021 09:45:28 +0000 (10:45 +0100)]
mac80211: fix regression in SSN handling of addba tx

Some drivers that do their own sequence number allocation (e.g. ath9k, mwlwifi) rely
on being able to modify params->ssn on starting tx ampdu sessions.
This was broken by a change that modified it to use sta->tid_seq[tid] instead.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 years agohostapd: allow hostapd under ujail to communicate with hostapd_cli
Mark Mentovai [Tue, 23 Nov 2021 17:28:55 +0000 (12:28 -0500)]
hostapd: allow hostapd under ujail to communicate with hostapd_cli

When procd-ujail is available, 1f785383875a runs hostapd as user
"network", with only limited additional capabilities (CAP_NET_ADMIN and
CAP_NET_RAW).

hostapd_cli (CONFIG_PACKAGE_hostapd-utils) communicates with hostapd
over a named UNIX-domain socket. hostapd_cli is responsible for creating
this socket at /tmp/wpa_ctrl_$pid_$counter. Since it typically runs as
root, this endpoint is normally created with uid root, gid root, mode
0755. As a result, hostapd running as uid network is able to receive
control messages sent through this interface, but is not able to respond
to them. If debug-level logging is enabled (CONFIG_WPA_MSG_MIN_PRIORITY
<= 2 at build, and log_level <= 2 in /etc/config/wireless wifi-device),
this message will appear from hostapd:

CTRL: sendto failed: Permission denied

As a fix, hostapd_cli should create the socket node in the filesystem
with uid network, gid network, mode 0770. This borrows the presently
Android-only strategy already in hostapd intended to solve the same
problem on Android.

If procd-ujail is not available and hostapd falls back to running as
root, it will still be able to read from and write to the socket even if
the node in the filesystem has been restricted to the network user and
group. This matches the logic in
package/network/services/hostapd/files/wpad.init, which sets the uid and
gid of /var/run/hostapd to network regardless of whether procd-ujail is
available.

As it appears that the "network" user and group are statically allocated
uid 101 and gid 101, respectively, per
package/base-files/files/etc/passwd and USERID in
package/network/services/hostapd/Makefile, this patch also uses a
constant 101 for the uid and gid.

Signed-off-by: Mark Mentovai <mark@moxienet.com>
[refreshed patch]
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2 years agomt76: update to the latest version
Felix Fietkau [Tue, 23 Nov 2021 15:58:08 +0000 (16:58 +0100)]
mt76: update to the latest version

f0a5b1118fa4 mt76: mt7915: fix decap offload corner case with 4-addr VLAN frames
67f93aa9a207 mt76: mt7615: fix decap offload corner case with 4-addr VLAN frames
46261d4bbfb5 mt76: fix possible pktid leak
a7fdd272efee mt76: mt7921: move mt76_connac_mcu_set_hif_suspend to bus-related files
3d9e13f567a4 mt76: mt7921s: fix the device cannot sleep deeply in suspend
99225b985cbc mt76: mt7615: fix unused tx antenna mask in testmode

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 years agomac80211: fix crash in drivers relying on mac80211 retransmitting packets for powersa...
Felix Fietkau [Tue, 23 Nov 2021 12:18:03 +0000 (13:18 +0100)]
mac80211: fix crash in drivers relying on mac80211 retransmitting packets for powersave clients

This showed up primarily on rt2x00

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 years agodnsmasq: fix ismounted check
Oldřich Jedlička [Sun, 7 Nov 2021 20:56:12 +0000 (21:56 +0100)]
dnsmasq: fix ismounted check

Fix the return value, shell return codes should be 0 to indicate success
(i.e. mount point found), 1 should be failure (i.e. mount point not-found).

Fixes: ac4e8aa ("dnsmasq: fix more dnsmasq jail issues")
Signed-off-by: Oldřich Jedlička <oldium.pro@gmail.com>
2 years agoprocd: setup /dev/stdin, /dev/stdout and /dev/stderr symlinks
Jo-Philipp Wich [Thu, 18 Nov 2021 12:00:09 +0000 (13:00 +0100)]
procd: setup /dev/stdin, /dev/stdout and /dev/stderr symlinks

Extend the hotplug.json ruleset to setup the common /dev/std{in,out,err}
symbolic links which are needed by some applications, e.g. nftables when
applying rulesets from stdin.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2 years agoprocd: update to git HEAD
Daniel Golle [Tue, 23 Nov 2021 14:00:42 +0000 (14:00 +0000)]
procd: update to git HEAD

 8de12de system: add diskfree infos to ubus
 bf3fe0e service: move jail parsing to end of instance parser
 87b5836 procd: add full service shutdown prior to sysupgrade
 01ac2c4 procd: service_stop_all: also kill inittab actions

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2 years agobcm53xx: fix platform clocks & USB 2.0 PHY
Rafał Miłecki [Tue, 23 Nov 2021 12:45:36 +0000 (13:45 +0100)]
bcm53xx: fix platform clocks & USB 2.0 PHY

This fixes WARNing, missing clocks and
[   10.422481] bcm_ns_usb2 1800c164.usb2-phy: Clock not defined

Fixes: 5901917b936d ("bcm53xx: use more upsteam DT patches from 5.16 / 5.17")
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2 years agobcm53xx: use new USB 2.0 PHY binding
Rafał Miłecki [Tue, 23 Nov 2021 09:14:22 +0000 (10:14 +0100)]
bcm53xx: use new USB 2.0 PHY binding

This fixes:
[   10.440495] bcm_ns_usb2 1800c000.usb2-phy: can't request region for resource [mem 0x1800c000-0x1800cfff]
[   10.450039] bcm_ns_usb2 1800c000.usb2-phy: Failed to map DMU regs
[   10.456183] bcm_ns_usb2: probe of 1800c000.usb2-phy failed with error -16
caused by conflict in allocating resources.

Fixes: f55f1dbaad33 ("bcm53xx: switch to the kernel 5.10")
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2 years agoRevert "ath79: add support for Mikrotik LHG 5"
Hauke Mehrtens [Mon, 22 Nov 2021 23:24:08 +0000 (00:24 +0100)]
Revert "ath79: add support for Mikrotik LHG 5"

This reverts commit 48774decea9b42e97edd53ce33e574de7d85f3df.

This commit does not contain a valid name in the Signed-off-by line.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 years agoqosify: update to the latest version
Felix Fietkau [Mon, 22 Nov 2021 16:23:03 +0000 (17:23 +0100)]
qosify: update to the latest version

06872673c10f map: allow referring to a class index directly in tcp/udp default entries

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 years agoqosify: install hotplug handler into /etc/hotplug.d/iface as well
Felix Fietkau [Mon, 22 Nov 2021 16:21:51 +0000 (17:21 +0100)]
qosify: install hotplug handler into /etc/hotplug.d/iface as well

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 years agomt76: update to the latest version
Felix Fietkau [Mon, 22 Nov 2021 15:07:56 +0000 (16:07 +0100)]
mt76: update to the latest version

5dd32475c859 mt76: mt7915: get rid of mt7915_mcu_set_fixed_rate routine
f5cfaaff3dd1 mt76: mt7921: drop offload_flags overwritten
f5ad840ca5c0 mt76: mt7615: fix possible deadlock while mt7615_register_ext_phy()
29a8a08827b1 mt76: mt7921: fix MT7921E reset failure
f44685f2faee mt76: mt7915: fix return condition in mt7915_tm_reg_backup_restore()
ae8e02ddd2b0 mt76: mt7915: fix SMPS operation fail
e814e15716b0 mt76: reverse the first fragmented frame to 802.11
c9bca3ed9566 mt76: mt7915: fix NULL pointer dereference in mt7915_get_phy_mode
dd054b7e16e7 mt76: only set rx radiotap flag from within decoder functions
f1520c9bb332 mt76: mt7915: add default calibrated data support
0c489ea2865a mt76: testmode: add support to set MAC
91c5da3d0a7c mt76: mt7921: add support for PCIe ID 0x0608/0x0616
ca39b4bbc227 mt76: debugfs: fix queue reporting for mt76-usb
00b6f497e2e8 mt76: mt7921: introduce 160 MHz channel bandwidth support
c1574466c733 mt76: fix possible OOB issue in mt76_calculate_default_rate
9680a17b0aed mt76: mt7921: fix possible NULL pointer dereference in mt7921_mac_write_txwi
78fc0dcdcef0 mt76: connac: fix a theoretical NULL pointer dereference in mt76_connac_get_phy_mode
05953e7d6fe7 mt76: mt7615: remove dead code in get_omac_idx
39f6c37127c1 mt76: connac: remove PHY_MODE_AX_6G configuration in mt76_connac_get_phy_mode
526591b203f3 mt76: do not pass the received frame with decryption error
256789bb400f mt76: fix the wiphy's available antennas to the correct value
fa187f5cf068 mt76: fix timestamp check in tx_status
11ebf11a3587 mt76: mt7915: fix the wrong SMPS mode
8c69b815ee7f mt76: mt7921: honor mt76_connac_mcu_set_rate_txpower return value in mt7921_config
bc6798f729f9 mt76: move sar utilities to mt76-core module
b1d0ad2e74fe mt76: mt76x02: introduce SAR support

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 years agobcm53xx: specify switch ports on TP-LINK devices
Rafał Miłecki [Sun, 21 Nov 2021 12:44:58 +0000 (13:44 +0100)]
bcm53xx: specify switch ports on TP-LINK devices

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2 years agomac80211: set beamformer/beamformee number of antennas in VHT caps
Felix Fietkau [Mon, 22 Nov 2021 12:04:03 +0000 (13:04 +0100)]
mac80211: set beamformer/beamformee number of antennas in VHT caps

Without this, beamforming is probably not working

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 years agotools/llvm-bpf: move tarball packing to target/llvm-bpf
Felix Fietkau [Mon, 22 Nov 2021 09:43:43 +0000 (01:43 -0800)]
tools/llvm-bpf: move tarball packing to target/llvm-bpf

This ensures that the tarball is regenerated after make clean or after switching
to a different target

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 years agouqmi: update to git HEAD
Daniel Golle [Mon, 22 Nov 2021 01:29:06 +0000 (01:29 +0000)]
uqmi: update to git HEAD

 20cd907 uqmi: use unmodified upstream JSON files
 b2c53dc command-nas: fix out-of-bounds read

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2 years agosunxi: build kernel with sun6i-rtc driver
Daniel Golle [Sun, 21 Nov 2021 21:33:41 +0000 (21:33 +0000)]
sunxi: build kernel with sun6i-rtc driver

sun6i-rtc cannot be built as a module and the hardware is only
present in some of the sunxi SoCs, see driver source:
        { .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" },

Set CONFIG_RTC_DRV_SUN6I=y in kernel config file for cortexa7 and
cortexa53 subtargets which covers all of the above.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2 years agoRevert "sunxi: add rtc-sun6i driver package"
Daniel Golle [Sun, 21 Nov 2021 21:27:52 +0000 (21:27 +0000)]
Revert "sunxi: add rtc-sun6i driver package"

sun6i-rtc is a builtin_platform_driver and cannot be built as a module.
Hence this reverts commit e178d9a5494747a9b6ea34f2fc9e798b4b1ecc16.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2 years ago.gitgnore: add llvm-bpf
Felix Fietkau [Sun, 21 Nov 2021 17:18:01 +0000 (18:18 +0100)]
.gitgnore: add llvm-bpf

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 years agoqosify: add support for configuring overhead
Felix Fietkau [Sun, 21 Nov 2021 12:46:41 +0000 (13:46 +0100)]
qosify: add support for configuring overhead

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 years agoqosify: update to the latest version
Felix Fietkau [Sun, 21 Nov 2021 12:45:29 +0000 (13:45 +0100)]
qosify: update to the latest version

2743e58741b3 bpf: work around a verifier issue

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 years agotools/llvm-bpf: include host os/arch in tarball name
Felix Fietkau [Sun, 21 Nov 2021 11:16:44 +0000 (12:16 +0100)]
tools/llvm-bpf: include host os/arch in tarball name

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 years agotools/llvm-bpf: make sure llvm-bpf.tar.gz is created
Huangbin Zhan [Thu, 18 Nov 2021 11:37:10 +0000 (19:37 +0800)]
tools/llvm-bpf: make sure llvm-bpf.tar.gz is created

The llvm-bpf-$version.tar.xz might be absent. For example `make clean` executed, CONFIG_TARGET changed.
This commit can only guarantee that the target file can be built when tools/compile is explicitly called rather than $(tools/stamp-compile).

Signed-off-by: Huangbin Zhan <zhanhb88@gmail.com>
2 years agotools: include the value of CONFIG_SDK_LLVM_BPF in the stampfile
Felix Fietkau [Sun, 21 Nov 2021 11:13:52 +0000 (12:13 +0100)]
tools: include the value of CONFIG_SDK_LLVM_BPF in the stampfile

tools/llvm-bpf needs to be checked if the value changes

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 years agoethtool: update to version 5.15
Hans Dedecker [Fri, 19 Nov 2021 19:26:14 +0000 (20:26 +0100)]
ethtool: update to version 5.15

cef54c4 Release version 5.15.
23beb39 update UAPI header copies
fd7db64 netlink: settings: Correct duplicate condition
88892ec Merge branch 'review/module-fixes-2-v2'
79cb4ab sff-8636: Remove extra blank lines
128e97c sff-8636: Convert if statement to switch-case
7ff603b sff-8636: Fix incorrect function name
86e9784 sff-8636: Remove incorrect comment
001aecd cmis: Correct comment
1bad83c cmis: Fix wrong define name
2c2fa88 cmis: Fix CLEI code parsing
d007b49 Merge branch 'review/module-fixes' into master
a7431bc netlink: eeprom: Fix compilation when pretty dump is disabled
d02409c ethtool: Fix compilation warning when pretty dump is disabled
2ddb1a1 netlink: eeprom: Fallback to IOCTL when a complete hex/raw dump is requested
7e153a7 cmis: Fix invalid memory access in IOCTL path
769a50e sff-8636: Fix parsing of Page 03h in IOCTL path

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2 years agofstools: update to git HEAD
Daniel Golle [Sat, 20 Nov 2021 21:08:58 +0000 (21:08 +0000)]
fstools: update to git HEAD

 77c0288 fstools: fix a couple of minor code problems

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>