Eneas U de Queiroz [Mon, 6 Mar 2023 14:58:56 +0000 (11:58 -0300)]
openssl: fix variable reference in conffiles
Fix the trivial abscence of $() when assigning engine config files to
the main libopenssl-config package even if the corresponding engines
were not built into the main library.
This is mostly cosmetic, since scripts/ipkg-build tests the file's
presence before it is actually included in the package's conffiles.
Fixes: 30b0351039 "openssl: configure engine packages during install"
Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
Eneas U de Queiroz [Mon, 6 Mar 2023 14:58:56 +0000 (11:58 -0300)]
openssl: fix sysupgrade failure with devcrypto
The bump to 3.0.8 inadvertently removed patches that are needed here,
but were not adopted upstream. The most important one changes the
default value of the DIGESTS setting from ALL to NONE. The absence of
this patch causes a sysupgrade failure while the engine is in use with
digests enabled. When this happens, the system fails to boot with a
kernel panic.
Also, explicitly set DIGESTS to NONE in the provided config file, and
change the default ciphers setting to disable ECB, which has been
recommended for a long time and may cause trouble with some apps.
The config file change by itself is not enough because the config file
may be preserved during sysupgrade.
For people affected by this bug:
You can either:
1. remove, the libopenssl-devcrypto package
2. disable the engine in /etc/config/openssl;
3. change /etc/ssl/engines.cnf.d/devcrypto.cnf to set DIGESTS=NONE;
4. update libopenssl-devcrypto to >=3.0.8-3
However, after doing any of the above, **you must reboot the device
before running sysupgrade** to ensure no running application is using
the engine. Running `/etc/init.d/openssl restart` is not enough.
Fixes: 7e7e76afca "openssl: bump to 3.0.8"
Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
Hauke Mehrtens [Sun, 26 Feb 2023 14:47:09 +0000 (15:47 +0100)]
binutils: Update to version 2.40
binutils 2.39: https://lists.gnu.org/archive/html/info-gnu/2022-08/msg00002.html
binutils 2.40: https://lists.gnu.org/archive/html/info-gnu/2023-01/msg00003.html
This version includes a new libsframe.so library, pack it into the
libbfd package as it is used by this library. Also deactivate some
optional configuration options for now.
An extra patch to fix compile problem in AARCH64 is added.
gprofng needs a C++ standard library, deactivate it for now.
Activate feature-disassembler-init-styled in bpftools too to fix
compilation with the updated binutils.
An bpftool version 7.0 or later is needed for binutils 2.39 and later.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Hauke Mehrtens [Sat, 25 Feb 2023 21:21:15 +0000 (22:21 +0100)]
bpftool: Update to version 7.1.0
bpftool changelog: https://github.com/libbpf/bpftool/releases
libbpf changelog: https://github.com/libbpf/libbpf/releases
This updates the bfptool to version 7.1.0. This also includes an update
of the libbpf to version 1.1.
This also adds some new feature options and removes some old ones which
were also removed form the source code. zlib for example is now
mandatory.
Add -flto also to LD flags to make it really work.
Before this change bpftool was on a git commit between version 6.7 and
6.8 and libbpf was on a commit between version 0.7 and 0.8.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Rosen Penev [Wed, 15 Feb 2023 03:31:03 +0000 (19:31 -0800)]
mac80211: enable ATH9K_HWRNG
in kernel 5.17,
fcd09c90c3c5254b18ef34e30c57c65d34290a84 integrated it
better with thee random framework.
Gives boot time randomness on supported devices.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Rosen Penev [Wed, 1 Feb 2023 22:50:22 +0000 (14:50 -0800)]
ksmbd: update to 3.4.7
Remove upstreamed patches.
Switch to normal tarballs. Codeload recently had a reproducibility issue.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Hauke Mehrtens [Sun, 5 Mar 2023 17:42:49 +0000 (18:42 +0100)]
bcm47xx: Refresh patches
The kernel patches did not apply cleanly any more, refresh them
automatically.
Fixes: 26bc8f68767e ("generic: MIPS: Add barriers between dcache & icache flushes")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Tomasz Maciej Nowak [Fri, 17 Feb 2023 13:21:01 +0000 (14:21 +0100)]
sdk: expose PATENTED an NLS build options
Some packages offer functionalities guarded by these options and it'll
be impossible to reach them without changing Config-build.in. So allow
to toggle these in more friendly way, by exposing them in configuration
menu.
Signed-off-by: Tomasz Maciej Nowak <tmn505@gmail.com>
Paul Fertser [Fri, 20 Jan 2023 15:25:13 +0000 (18:25 +0300)]
Remove ccache wrappers
These wrappers are not needed as CC doesn't need to be a single word.
a53b084e497a9f1629a2caada833ebe14a6838b7 which introduced the wrappers
doesn't explain why they were really needed and why only for the target
and not for the host.
Moreover, name of the wrappers breaks a ccache assumption: since
v4.0-3-g6a92b4cd3a67 it has special handling for "chained" invocation
such as "ccache ccache gcc" where it skips all the "ccache*" names in
the middle and proceeds to run as if it was started as "ccache
gcc"[1][2].
This becomes important when a build system sees ccache in the PATH and
automatically enables it by prepending to CC. An example of such a
system would be autosetup as used by jimtcl. With the wrappers it breaks
as the command line ends up being just "ccache -Os..." because
"ccache_cc" gets skipped as it starts with "ccache".
[1] https://github.com/ccache/ccache/blob/master/src/ccache.cpp#L2105
[2] https://github.com/ccache/ccache/blob/master/src/Util.cpp#L802
Reported-by: Karl Palsson <karlp@etactica.com>
Signed-off-by: Paul Fertser <fercerpav@gmail.com>
Stijn Tintel [Mon, 20 Feb 2023 14:00:54 +0000 (16:00 +0200)]
kernel: set default for KERNEL_BPF_KPROBE_OVERRIDE
Without the default value this still causes a missing symbol. Disable by
default as it depends on FUNCTION_ERROR_INJECTION, which is disabled in
the generic config and we don't have a build symbol to enable that.
Fixes: 500c37c56ff6 ("kernel: add missing symbol")
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
Felix Fietkau [Sun, 5 Mar 2023 16:25:34 +0000 (17:25 +0100)]
mediatek: backport more WED upstream fixes
Fixes hang if the WO firmware can't be loaded
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Alan Luck [Sun, 26 Feb 2023 06:17:37 +0000 (22:17 -0800)]
ipq806x: Add buttons to OnHub
These are the factory reset button (external) and "developer mode"
button (hidden inside the case (ASUS) or under a screw in the base
(TP-Link)) found on the TP-Link and ASUS OnHub devices.
Signed-off-by: Alan Luck <luckyhome2008@gmail.com>
[Brian: add description; factor out for both ASUS and TP-Link; use
existing pinmux definitions; add keycode for dev button]
Signed-off-by: Brian Norris <computersforpeace@gmail.com>
Tim Harvey [Tue, 28 Feb 2023 00:13:07 +0000 (16:13 -0800)]
kernel: add kmod-hwmon-max6642 support
Add package for Maxim MAX6642 i2c based temperature sensor.
Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Hauke Mehrtens [Sun, 5 Mar 2023 15:39:24 +0000 (16:39 +0100)]
uci: update to git HEAD
5de3871 cli: drop redundant uci_add_delta_path() call for -P
f49a2fd delta: simplify uci_load_delta() by using a helper
9b6605e uci: fix use-after-free uci_set on update option
b7ceda9 uci: maintain option position in uci_set
7e01d66 uci: optimize update option in uci_set
47697e6 uci: fix use-after-free uci_add_list
74f2797 uci: fix atomicity of uci_add_list
b2f3417 uci: maintain option position in uci_add_list
16e8a3b uci: fix memory leak uci_set on update section
ae61e1c uci: optimize update section in uci_set
04d0c46 uci: macro uci_alloc_element not in uci.h
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Álvaro Fernández Rojas [Sun, 5 Mar 2023 10:51:46 +0000 (11:51 +0100)]
Revert "bmips: add missing switch cpu label"
This reverts commit
dc0de05e10a9c6e1ef66ca2934e8a0ff0d488943.
As pointed out by @BKPepe and @arinc9 this was removed by
9df035b since it
isn't needed.
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Felix Fietkau [Sun, 5 Mar 2023 08:58:40 +0000 (09:58 +0100)]
mediatek: add missing DTS entries for WED on MT7986
Needed to support WLAN offloading
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Felix Fietkau [Sat, 4 Mar 2023 18:11:37 +0000 (19:11 +0100)]
kernel: backport upstream mtk_eth_soc fixes
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Felix Fietkau [Sat, 4 Mar 2023 16:57:46 +0000 (17:57 +0100)]
kernel: move accepted mtk_eth_soc patches to generic-backport
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Nick Hainke [Wed, 1 Mar 2023 21:18:14 +0000 (22:18 +0100)]
dtc: update to 1.7.0
Changelog:
039a994 Bump version to v1.7.0
3f29d6d pylibfdt: add size_hint parameter for get_path
2022bb1 checks: Update #{size,address}-cells check for 'dma-ranges'
abbd523 pylibfdt: Work-around SWIG limitations with flexible arrays
a41509b libfdt: Replace deprecated 0-length arrays with proper flexible arrays
2cd89f8 dtc: Warning rather than error on possible truncation of cell values
55778a0 libfdt: tests: add get_next_tag_invalid_prop_len
7359034 libfdt: prevent integer overflow in fdt_next_tag
035fb90 libfdt: add fdt_get_property_by_offset_w helper
98a0700 Makefile: fix infinite recursion by dropping non-existent `%.output`
a036cc7 Makefile: limit make re-execution to avoid infinite spin
c6e9210 libdtc: remove duplicate judgments
e37c256 Don't generate erroneous fixups from reference to path
5045465 libfdt: Don't mask fdt_get_name() returned error
e64a204 manual.txt: Follow README.md and remove Jon
f508c83 Update README in MANIFEST.in and setup.py to README.md
c2ccf8a Add description of Signed-off-by lines
90b9d9d Split out information for contributors to CONTRIBUTING.md
0ee1d47 Remove Jon Loeliger from maintainers list
b33a73c Convert README to README.md
7ad6073 Allow static building with meson
fd9b8c9 Allow static building with make
fda71da libfdt: Handle failed get_name() on BEGIN_NODE
c7c7f17 Fix test script to run also on dash shell
01f23ff Add missing relref_merge test to meson test list
ed31080 pylibfdt: add FdtRo.get_path()
c001fc0 pylibfdt: fix swig build in install
26c54f8 tests: add test cases for label-relative path references
ec7986e dtc: introduce label relative path references
651410e util: introduce xstrndup helper
4048aed setup.py: fix out of tree build
ff5afb9 Handle integer overflow in check_property_phandle_args()
ca72944 README: Explain how to add a new API function
c0c2e11 Fix a UB when fdt_get_string return null
cd5f69c tests: setprop_inplace: use xstrdup instead of unchecked strdup
a04f690 pylibfdt: add Property.as_*int*_array()
8310271 pylibfdt: add Property.as_stringlist()
d152126 Fix Python crash on getprop deallocation
17739b7 Support 'r' format for printing raw bytes with fdtget
45f3d1a libfdt: overlay: make overlay_get_target() public
c19a4ba libfdt: fix an incorrect integer promotion
1cc41b1 pylibfdt: Add packaging metadata
db72398 README: Update pylibfdt install instructions
383e148 pylibfdt: fix with Python 3.10
23b56cb pylibfdt: Move setup.py to the top level
69a7607 pylibfdt: Split setup.py author name and email
0b106a7 pylibfdt: Use setuptools_scm for the version
c691776 pylibfdt: Use setuptools instead of distutils
5216f3f libfdt: Add static lib to meson build
4eda259 CI: Cirrus: bump used FreeBSD from 12.1 to 13.0
0a3a9d3 checks: Add an interrupt-map check
8fd2474 checks: Ensure '#interrupt-cells' only exists in interrupt providers
d8d1a9a checks: Drop interrupt provider '#address-cells' check
52a16fd checks: Make interrupt_provider check dependent on interrupts_extended_is_cell
37fd700 treesource: Maintain phandle label/path on output
e33ce1d flattree: Use '\n', not ';' to separate asm pseudo-ops
d24cc18 asm: Use assembler macros instead of cpp macros
ff3a30c asm: Use .asciz and .ascii instead of .string
5eb5927 fdtdump: fix -Werror=int-to-pointer-cast
0869f82 libfdt: Add ALIGNMENT error string
69595a1 checks: Fix bus-range check
72d09e2 Makefile: add -Wsign-compare to warning options
b587787 checks: Fix signedness comparisons warnings
69bed6c dtc: Wrap phandle validity check
9102211 fdtget: Fix signedness comparisons warnings
d966f08 tests: Fix signedness comparisons warnings
ecfb438 dtc: Fix signedness comparisons warnings: pointer diff
5bec74a dtc: Fix signedness comparisons warnings: reservednum
24e7f51 fdtdump: Fix signedness comparisons warnings
Remove upstreamed:
- 0001-Support-r-format-for-printing-raw-bytes-with-fdtget.patch
Signed-off-by: Nick Hainke <vincent@systemli.org>
Nick Hainke [Wed, 1 Mar 2023 20:14:54 +0000 (21:14 +0100)]
mac80211: refresh patches
The last mac80211 commits did not refresh the patches.
Refresh:
- ath/402-ath_regd_optional.patch
- ath10k/080-ath10k_thermal_config.patch
- ath10k/974-ath10k_add-LED-and-GPIO-controlling-support-for-various-chipsets.patch
- ath9k/551-ath9k_ubnt_uap_plus_hsr.patch
- rt2x00/602-rt2x00-introduce-rt2x00eeprom.patch
Signed-off-by: Nick Hainke <vincent@systemli.org>
Álvaro Fernández Rojas [Sat, 4 Mar 2023 20:27:30 +0000 (21:27 +0100)]
bmips: add missing switch cpu label
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Daniel González Cabanelas [Mon, 19 Dec 2022 14:25:30 +0000 (15:25 +0100)]
bcm63xx: kernel: power cycle the bcm6358 USB PLL
Some BCM6358 based boards may detect USB2.0 high speed devices as USB1.1
full speed. This is an old well known bug, but nobody cared about it. It
is quite random and hard to track.
With the latest versions of Openwrt, one user confirmed that the bug is
still there (tested router: HG556a).
Power cycle the USB PLL to fix it.
Signed-off-by: Daniel González Cabanelas <dgcbueu@gmail.com>
Daniel González Cabanelas [Mon, 19 Dec 2022 14:21:28 +0000 (15:21 +0100)]
bcm63xx: kernel: fix up bcm63268 roboswitch gpio registers
Some BCM63268 bootloaders may leave gpio registers, related to the
roboswitch, disabled before loading the OpenWrt firmware. As result of
this the switch won't work.
These registers, if not enabled, probably avoid forwarding packets.
Signed-off-by: Daniel González Cabanelas <dgcbueu@gmail.com>
Álvaro Fernández Rojas [Sat, 4 Mar 2023 18:47:06 +0000 (19:47 +0100)]
bcm63xx: drop kernel 5.10 support
Now that the target is on kernel 5.15 this is no longer needed.
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Paul Spooren [Wed, 22 Feb 2023 18:50:58 +0000 (19:50 +0100)]
bcm63xx: switch to Kernel 5.15 by default
Getting ready for the next release.
Signed-off-by: Paul Spooren <mail@aparcar.org>
Sieng-Piaw Liew [Tue, 19 Jul 2022 00:20:45 +0000 (08:20 +0800)]
bmips: check for DMA error when refilling Rx
dma_mapping_error() should be called as dma_map_single() could fail and
return error.
Signed-off-by: Sieng-Piaw Liew <liew.s.piaw@gmail.com>
Sieng-Piaw Liew [Fri, 8 Jul 2022 08:16:08 +0000 (16:16 +0800)]
bmips: fix Tx cleanup when NAPI poll budget is zero
NAPI poll() function may be passed a budget value of zero, i.e. during
netpoll, which isn't NAPI context.
Therefore, napi_consume_skb() must be given budget value instead of
!force to truly discern netpoll-like scenarios.
https://lore.kernel.org/netdev/
20220707141056.2644-1-liew.s.piaw@gmail.com/t/#m470f5c20225e76fb08c44d6cfa2f1b739ffaaea4
Signed-off-by: Sieng-Piaw Liew <liew.s.piaw@gmail.com>
[improve code format]
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Sieng Piaw Liew [Wed, 29 Jun 2022 08:18:12 +0000 (16:18 +0800)]
bmips: add BQL support
Add Byte Queue Limits support to reduce/remove bufferbloat.
Signed-off-by: Sieng Piaw Liew <liew.s.piaw@gmail.com>
Sieng Piaw Liew [Wed, 29 Jun 2022 08:16:13 +0000 (16:16 +0800)]
bmips: batch process eth_type_trans() in rx path
Improve cache efficiency by running eth_type_trans() in its own loop.
Signed-off-by: Sieng Piaw Liew <liew.s.piaw@gmail.com>
Sieng Piaw Liew [Wed, 29 Jun 2022 08:11:38 +0000 (16:11 +0800)]
bmips: batch process rx path
Use netif_receive_skb_list() to batch process rx skb. This improves
cache efficiency.
Signed-off-by: Sieng Piaw Liew <liew.s.piaw@gmail.com>
Sieng Piaw Liew [Thu, 23 Jun 2022 06:48:42 +0000 (14:48 +0800)]
bmips: improve rx loop
Use existing rx processed count to track against budget, thereby making
budget decrement operation redundant.
rx_desc_count can be calculated outside the rx loop, making the loop a
bit smaller.
Signed-off-by: Sieng Piaw Liew <liew.s.piaw@gmail.com>
Sieng Piaw Liew [Thu, 23 Jun 2022 04:49:28 +0000 (12:49 +0800)]
bmips: switch to napi_build_skb() to reuse skbuff_heads
napi_build_skb() reuses NAPI skbuff_head cache in order to save some
cycles on freeing/allocating skbuff_heads on every new rx or completed
tx.
Use napi_consume_skb() to feed the cache with skbuff_heads of completed
tx so it's never empty.
Signed-off-by: Sieng Piaw Liew <liew.s.piaw@gmail.com>
Sieng Piaw Liew [Thu, 23 Jun 2022 03:49:23 +0000 (11:49 +0800)]
bmips: check NAPI context when refilling rx SKB
Check if we're in NAPI context when refilling rx. Normally we're almost
always running in NAPI context. Dispatch to napi_alloc_frag() directly
instead of relying on netdev_alloc_frag() which does the same but with
the overhead of local_bh_disable/enable.
Signed-off-by: Sieng Piaw Liew <liew.s.piaw@gmail.com>
[improve code format]
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Sieng Piaw Liew [Thu, 23 Jun 2022 03:16:47 +0000 (11:16 +0800)]
bmips: convert to build_skb()
We can increase the efficiency of rx path by using buffers to receive
packets then build SKBs around them just before passing into the network
stack. In contrast, preallocating SKBs too early reduces CPU cache
efficiency.
Performance is slightly increased but the changes allow more
potential optimizations.
Signed-off-by: Sieng Piaw Liew <liew.s.piaw@gmail.com>
[improve code format]
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Sieng Piaw Liew [Wed, 22 Jun 2022 05:22:17 +0000 (13:22 +0800)]
bmips: use netdev_alloc_skb() for copybreak
bmips is using Broadcom B53 DSA driver which means the ethernet driver
must compensate for 6 bytes tags from the internal switch.
This means using NET_IP_ALIGN actually misaligns the skb, lowering
performance significantly. Therefore napi_alloc_skb() which uses
NET_IP_ALIGN is changed to netdev_alloc_skb().
Performance in iperf3 is increased from ~47Mbps to 52Mbps.
Signed-off-by: Sieng Piaw Liew <liew.s.piaw@gmail.com>
André Fonseca [Mon, 27 Feb 2023 11:58:08 +0000 (12:58 +0100)]
ramips: mt7621: TP-Link EAP235/615-Wall: add poe passthrough gpio definitions
Add the missing definitions for the PoE passthrough functionality.
The relevant pin is already being exported, but it is missing from
the initial board configuration file. With this change, the user is
now able to toggle the PoE passthorough functionality via the uci cli
Signed-off-by: André Fonseca <mail@andrefonseca.pt>
Chukun Pan [Sun, 12 Feb 2023 15:19:16 +0000 (23:19 +0800)]
bpf-headers: fix package category
This removes the non-selectable 'Kernel' item
when make menuconfig.
Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
Felix Fietkau [Sat, 4 Mar 2023 15:26:54 +0000 (16:26 +0100)]
uboot-mediatek: mark all packages as hidden
They are enabled by selecting devices. Fixes build errors when enabling extra
devices without creating a new config from scratch.
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Mikhail Zhilkin [Sun, 26 Feb 2023 18:28:54 +0000 (18:28 +0000)]
ramips: fix wrong pcie port number for Arcadyan WE420223-99
Wrong pcie port number for WLAN causes missing 5g WLAN interface with 5.15
kernel on Arcadyan WE420223-99 (KPN Experia WiFi).
This changes port from pcie0 to pcie1.
[1.331556] mt7621-pci
1e140000.pcie: pcie0 no card, disable it (RST & CLK)
[1.345299] mt7621-pci
1e140000.pcie: pcie2 no card, disable it (RST & CLK)
[1.359116] mt7621-pci
1e140000.pcie: PCIE1 enabled
Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com>
Hang Zhou [Sun, 26 Feb 2023 09:13:33 +0000 (20:13 +1100)]
ramips: add support for D-Link Dir-853 A1
Specifications:
* SoC: MT7621AT
* RAM: 256MB (NT5CC64M16GP-DI)
* Flash: 16MB NOR SPI flash (GD25Q127CSIG, using GD25Q128C driver)
* WiFi: MT7615DN (2.4GHz+5Ghz) with DBDC
* Ethernet: 4x1000M LAN, 1x 1000M WAN
* LEDs: Power Blue+Orange,Wan Blue+Orange,WPS Blue,"2.4G"Blue, "5G" Blue,
USB Blue
* Buttons: Reset,WPS, Wifi
* Serial interface: on board but not populated, pinout (from the DC jack
side to the WAN port side) is "3.3V Input Output Gnd". Baud rate is 57600,
settings are 8 data bits, no parity bit, one stop bit, and no flow control.
Stock flash layout:
```
GD25Q128C(c8
40180000) (16384 Kbytes)
mtd .name = raspi, .size = 0x01000000 (16M) .erasesize = 0x00010000 (64K)
.numeraseregions = 0
Creating 7 MTD partitions on "raspi":
0x000000000000-0x000001000000 : "ALL"
0x000000000000-0x000000030000 : "Bootloader"
0x000000030000-0x000000040000 : "Config"
0x000000040000-0x000000050000 : "Factory"
0x000000050000-0x000000060000 : "Config2"
0x000000060000-0x000000fb0000 : "Kernel"
0x000000fb0000-0x000001000000 : "Private"
```
The kernel partition will be replaced with the OpenWrt image, the other
partitions are left untouched.
"Config2" seems to be the config storage used by the stock firmware.
"Private" is a 320kB empty JFFS2 partition that comes with the stock
firmware. One can get a larger space for OpenWrt by merging it with
"Kernel".
OpenWrt flash layout:
```
0x000000000000-0x000000030000 : "u-boot"
0x000000030000-0x000000040000 : "u-boot-env"
0x000000040000-0x000000050000 : "factory"
0x000000050000-0x000000060000 : "config2_stock"
0x000000060000-0x000000fb0000 : "firmware"
0x000000fb0000-0x000001000000 : "private_stock"
```
The OpenWrt image must have 96 bytes of padding in the header.
MAC addresses on OEM firmware:
| | location on the flash | notes |
|------ |----------------------- |---------- |
| lan (eth2) | factory + 0xe000 | on label |
| wan (eth3) | factory + 0xe006 | |
| 2.4g (rax0) | not on flash | lan + 1 |
| 5g (ra0) | not on flash | lan + 2 |
Mac addresses of the 2.4g and 5g interface are stored as ASCII strings in
the u-boot-env partition, but they are not used. OpenWrt calculates
Wifi Mac addresses based on the LAN Mac.
Flash and test instructions:
Flash the encrypted image (available in the OpenWrt forum) through the
stock D-Dink web interface.
1. Open the case, and solder the 4-pin header near the WAN port.
2. Connect it to a USB-UART TTL (3.3V) adapter, no need to connect VCC.
3. Open a terminal emulator (e.g. `screen /dev/ttyUSB0` on linux) with
the settings mentioned above.
4. Setup a TFTP server on your PC that can serve
`xxx-ramips-mt7621-dlink_dir-853-a1-initramfs-kernel.bin`.
5. Connect any LAN port to your PC and set a static IPv4 address to
192.168.0.101 (netmask 255.255.255.0).
6. Power on the device and keeps pressing 1 until you see the prompt.
7. Use default IP addresses and enter the file name accordingly, then hit
enter.
8. Wait until it boots to OpenWrt, the default IP address is 192.168.1.1,
you need to change your PC network adapter to use DHCP in order to access
LUCI.
9. So far, the OpenWrt runs in RAM and the flash contents are not touched.
You can try OpenWrt without having to overwrite the stock firmware, a
reboot clears all changes.
10. Optionally, backup the stock firmware (the "firmware" partition) in
Luci.
11. To permantly install OpenWrt to the device , click
on "System -> Backup/Flash Firmware" in Luci and flash
`xxx-ramips-mt7621-dlink_dir-853-a1-squashfs-sysupgrade.bin`
Known problems:
* WLAN0 defaults to 5G after a fresh installation, to enable 2.4G network,
you need to config it manually in LUCI.
* If you see jffs2 related warnings/errors after updating from the stock
web interface, you need to do a reset in LUCI. The error will be gone after
a cold reboot.
Signed-off-by: Hang Zhou <929513338qq@gmail.com>
INAGAKI Hiroshi [Sat, 25 Feb 2023 00:56:27 +0000 (09:56 +0900)]
ipq807x: don't generate factory.ubi for Buffalo WXR-5950AX12
On WXR-5950AX12, squashfs-factory.ubi is unnecessary for OpenWrt
installation and other purposes, so drop it from IMAGES and don't
generate to prevent confusion of users.
Reviewed-by: Robert Marko <robimarko@gmail.com>
Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
David Bauer [Thu, 2 Mar 2023 15:53:59 +0000 (16:53 +0100)]
generic: MIPS: Add barriers between dcache & icache flushes
This fixes spurious boot-errors with some ath79 MIPS 74Kc boards such
as the AC Lite as well as Archer C7 v2.
The missing barrier leads to the icache flush being executed before the
dcache writeback, which results in the CPU executing the dummy infinite
loop in tlbmiss_handler_setup_pgd.
Applying this patch from upstream ensures the dcache is written back
before flushing the icache.
Signed-off-by: David Bauer <mail@david-bauer.net>
John Audia [Fri, 3 Mar 2023 18:39:04 +0000 (13:39 -0500)]
kernel: bump 5.15 to 5.15.98
Removed upstreamed:
backport-5.15/883-0001-net-Remove-WARN_ON_ONCE-sk-sk_forward_alloc-from-sk_.patch[1]
All other patches automatically rebased.
1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v5.15.98&id=
e7f460696340fe5caba5f21ddb262a44a2388af2
Build system: x86_64
Build-tested: bcm2711/RPi4B, filogic/xiaomi_redmi-router-ax6000-ubootmod, ramips/tplink_archer-a6-v3
Run-tested: bcm2711/RPi4B, filogic/xiaomi_redmi-router-ax6000-ubootmod, ramips/tplink_archer-a6-v3
Signed-off-by: John Audia <therealgraysky@proton.me>
Josef Schlehofer [Mon, 5 Sep 2022 14:36:26 +0000 (16:36 +0200)]
mpc85xx: p2020: enable CONFIG_MAX63XX_WATCHDOG
This enables CONFIG_MAX63XX_WATCHDOG [1], which can be used on P2020
RDB.
[1] https://cateee.net/lkddb/web-lkddb/MAX63XX_WATCHDOG.html
Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
Josef Schlehofer [Mon, 5 Sep 2022 12:54:44 +0000 (14:54 +0200)]
kernel: add support for max6370 watchdog via GPIO
This backports the third version [1], which is awaiting upstream merge. It
adds support for watchdog max6370, which is connected via GPIO. It
is useful primarily for P2020 RDB and Turris 1.x routers, which are
not yet supported.
[1] https://www.spinics.net/lists/linux-watchdog/msg23299.html
Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
Nick Hainke [Thu, 23 Feb 2023 10:45:52 +0000 (11:45 +0100)]
kernel: move CONFIG_PAGE_POOL to generic
Move "# CONFIG_PAGE_POOL is not set" to generic.
Suggested-by: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: Nick Hainke <vincent@systemli.org>
Felix Fietkau [Fri, 3 Mar 2023 10:20:46 +0000 (11:20 +0100)]
mac80211: fix regression in sw a-msdu tx introduced in mesh improvement patches
Fixes: 6262d3eb068c ("mac80211: sync mesh fast xmit patch with upstream requested changes")
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Álvaro Fernández Rojas [Thu, 2 Mar 2023 17:32:29 +0000 (18:32 +0100)]
bmips: loader-lzma: drop unused RAMSIZE parameter
This parameter has never been used.
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Álvaro Fernández Rojas [Thu, 2 Mar 2023 17:00:40 +0000 (18:00 +0100)]
bcm63xx: loader-lzma: drop unused RAMSIZE parameter
This parameter has never been used.
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
David Bauer [Tue, 28 Feb 2023 18:53:44 +0000 (19:53 +0100)]
fritz-tools: fix segfault in caldata-extract
* Fix incorrect error message in case input file opening fails
* Don't close files in case the pointers are invalid
Signed-off-by: David Bauer <mail@david-bauer.net>
Felix Fietkau [Thu, 2 Mar 2023 13:03:47 +0000 (14:03 +0100)]
mac80211: add mesh fast-rx support
This helps bring down rx CPU usage by avoiding calls to the rx handlers in
the slow path. Supports forwarding and local rx, including A-MSDU.
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Felix Fietkau [Thu, 2 Mar 2023 11:58:16 +0000 (12:58 +0100)]
kernel: fix mtk dsa tag padding
The padding intended to avoid corrupted non-zero padding payload was
accidentally adding too many padding bytes, tripping up some setups.
Fix this by using eth_skb_pad instead.
Fixes #11942.
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Felix Fietkau [Thu, 2 Mar 2023 10:24:15 +0000 (11:24 +0100)]
linux-firmware: add mt7986 offload firmware
This is needed for WED support on MT7986.
Enable it by default for the filogic subtarget.
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Felix Fietkau [Wed, 1 Mar 2023 18:59:35 +0000 (19:59 +0100)]
mt76: update to the latest version
71d84bfb343e wifi: mt76: mt76x0u: report firmware version through ethtool
99d13130b517 wifi: mt76: support ww power config in dts node
09c614734880 Revert "wifi: mt76: mt7996: rely on mt76_connac2_mac_decode_he_radiotap"
e1c9c1cb50a8 mt76: mt7921: Let PCI core handle power state and use pm_sleep_ptr()
34064dbcd72a wifi: mt76: mt7921e: add pci .shutdown() support
18ccfa73a9e2 wifi: mt76: remove redundent MCU_UNI_CMD_* definitions
282845ce7f3d wifi: mt76: mt7921: fix wrong command to set STA channel
546934dacfd4 wifi: mt76: mt7921: fix PCI DMA hang after reboot
fc2ed0dfc5b0 wifi: mt76: mt7996: Remove unneeded semicolon
1b602db9c235 wifi: mt76: mt7915: unlock on error in mt7915_thermal_temp_store()
ce2438aa616a wifi: mt76: mt7996: fix radiotap bitfield
17ec2146b8f0 wifi: mt76: dynamic channel bandwidth changes in AP mode
ab2d3650a456 wifi: mt76: mt7915: expose device tree match table
90d78253498e wifi: mt76: mt7915: add dev->hif2 support for mt7916 WED device
a69c34a60451 wifi: mt76: mt7915: rework init flow in mt7915_thermal_init()
39079b5e44a7 wifi: mt76: drop the incorrect scatter and gather frame
f9ca70d6367a wifi: mt76: mt7915: add back 160MHz channel width support for MT7915
eff7666e1aa4 wifi: mt76: handle failure of vzalloc in mt7615_coredump_work
920bc6e1fc8e wifi: mt76: do not run mt76_unregister_device() on unregistered hw
b0721b96927b wifi: mt76: connac: refresh tx session timer for WED device
c32d6d849c43 wifi: mt76: usb: fix use-after-free in mt76u_free_rx_queue
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Felix Fietkau [Thu, 2 Mar 2023 10:18:14 +0000 (11:18 +0100)]
mac80211: add patch for allowing the driver to refresh aggregation sessions
Required by a mt76 update
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Felix Fietkau [Wed, 1 Mar 2023 13:41:01 +0000 (14:41 +0100)]
mac80211: backport upstream HE/VHT capability handling changes
Will be required by an mt76 update at some point
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Felix Fietkau [Tue, 28 Feb 2023 10:05:48 +0000 (11:05 +0100)]
mac80211: sync mesh fast xmit patch with upstream requested changes
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Hauke Mehrtens [Mon, 20 Feb 2023 21:38:27 +0000 (22:38 +0100)]
toolchain/binutils: switch to version 2.40 by default
This was build tested with all core packages on all targets
successfully.
This was run tested on the following systems:
* lantiq/xrx200 musl
* x86/64 musl
* x86/64 glibc
* malta/be
The size of some of the initramfs images from lantiq/xrx increased by
240 bytes.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Hauke Mehrtens [Mon, 20 Feb 2023 21:35:50 +0000 (22:35 +0100)]
toolchain/binutils: backport stable patches
Add the patches with real changes from the binutils 2.40 stable branch.
I am not aware that we ran into any of these problems, but I think it is
better to take the existing stable patches.
They were exported like this:
git format-patch binutils-2_40...origin/binutils-2_40-branch
I removed the patches changing the version numbers and updating the
translations only.
I removed the following patches:
*Automatic-date-updat*
001-Re-enable-development.-Update-version-to-2.40.0.patch
004-Updated-translations-for-the-gas-and-binutils-sub-di.patch
015-Updated-Swedish-translation-for-the-binutils-sub-dir.patch
027-Updated-Swedish-translation-for-the-binutils-sub-dir.patch
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Tim Harvey [Tue, 28 Feb 2023 00:11:33 +0000 (16:11 -0800)]
kernel: fix hwmon-gsc driver
Fix hwmon-gsc driver by replacing out-of-tree hwmon-gsc driver with in-tree
driver that was merged in Linux v5.8:
- remove the old out-of-tree module
- add configuration for the in-tree modules
Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Bjørn Mork [Tue, 28 Feb 2023 11:39:36 +0000 (12:39 +0100)]
mt7621: move uboot-envtools to DEFAULT_PACKAGES
Several devices depend on fw_printenv during sysupgrade. Make sure
it always is present in all images, including initramfs images built
by the buildbots.
Fixes: 2449a632084b ("ramips: mt7621: Add support for ZyXEL NR7101")
Signed-off-by: Bjørn Mork <bjorn@mork.no>
Sergio Paracuellos [Sat, 25 Feb 2023 11:01:40 +0000 (12:01 +0100)]
ramips: rt5350: enable lzma-loader for ALLNET ALL5003
Fixes the boot loader LZMA decompression issue:
LZMA ERROR 1 - must RESET board to recover
Signed-off-by: Sergio Paracuellos <sergio.paracuellos@gmail.com>
Nick Hainke [Sun, 28 Aug 2022 04:57:17 +0000 (06:57 +0200)]
kexec-tools: update to 2.0.26
Release Notes:
- 2.0.22: https://www.spinics.net/lists/kexec/msg26864.html
- 2.0.23: https://www.spinics.net/lists/kexec/msg27693.html
- 2.0.24: https://www.spinics.net/lists/kexec/msg28922.html
- 2.0.25: https://lore.kernel.org/all/YuYl22cyGldQQc5m@vergenet.net/
- 2.0.26: https://www.spinics.net/lists/kexec/msg30743.html
Remove upstreamed patch:
- 001-arm-do-not-copy-magic-4-bytes-of-appended-DTB-in-zIm.patch
Tested-by: Linhui Liu <liulinhui36@gmail.com> # x86_64
Signed-off-by: Nick Hainke <vincent@systemli.org>
Florian Eckert [Wed, 8 Feb 2023 08:23:08 +0000 (09:23 +0100)]
kernel: add tty led trigger kernel module package
This allows LEDs to be controlled by activity on ttys which includes
serial devices like '/dev/ttyS0'.
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
John Audia [Mon, 27 Feb 2023 22:54:37 +0000 (17:54 -0500)]
kernel: bump 5.15 to 5.15.96
All patches automatically rebased.
Build system: x86_64
Build-tested: bcm2711/RPi4B, filogic/xiaomi_redmi-router-ax6000-ubootmod, ramips/tplink_archer-a6-v3
Run-tested: bcm2711/RPi4B, filogic/xiaomi_redmi-router-ax6000-ubootmod, ramips/tplink_archer-a6-v3
Signed-off-by: John Audia <therealgraysky@proton.me>
John Audia [Thu, 23 Feb 2023 11:16:52 +0000 (06:16 -0500)]
kernel: bump 5.15 to 5.15.95
Removed upstreamed:
backport-5.15/807-v6.1-0003-nvmem-core-add-error-handling-for-dev_set_name.patch[1]
bcm47xx/patches-5.15/070-net-bgmac-fix-BCM5358-support-by-setting-correct-fla.patch[2]
Added fix:
backport-5.15/883-0001-net-Remove-WARN_ON_ONCE-sk-sk_forward_alloc-from-sk_.patch[3]
All other patches automatically rebased.
1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v5.15.95&id=
14eea6449473c1f55e196cc104ba16d144465869
2. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v5.15.95&id=
2603a5ca6223bb3a88814e2728335eec14f715ab
3. https://lore.kernel.org/stable/
20230227211548.13923-1-kuniyu@amazon.com
Build system: x86_64
Build-tested: bcm2711/RPi4B, filogic/xiaomi_redmi-router-ax6000-ubootmod
Run-tested: bcm2711/RPi4B, filogic/xiaomi_redmi-router-ax6000-ubootmod
Signed-off-by: John Audia <therealgraysky@proton.me>
Rafał Miłecki [Tue, 28 Feb 2023 09:04:56 +0000 (10:04 +0100)]
fstools: update to the latest master
bfe882d libblkid-tiny: add exfat superblock support
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Rafał Miłecki [Mon, 27 Feb 2023 09:46:14 +0000 (09:46 +0000)]
bcm47xx: fix bgmac support for BCM5358
Fix two long-standing regressions.
Fixes: https://github.com/openwrt/openwrt/issues/8278
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Rafał Miłecki [Mon, 27 Feb 2023 07:44:12 +0000 (07:44 +0000)]
bcm47xx: add pending devices support
This includes Lines E2500 V2 and Huawei B593u-12.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Rafał Miłecki [Mon, 27 Feb 2023 06:30:58 +0000 (06:30 +0000)]
bcm47xx: reorder MIPS BCM47XX patches
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Felix Fietkau [Sun, 26 Feb 2023 19:35:40 +0000 (20:35 +0100)]
mac80211: fix mesh path discovery based on unicast packets
If a packet has reached its intended destination, it was bumped to the code
that accepts it, without first checking if a mesh_path needs to be created
based on the discovered source.
Fix this by moving the destination address check further down
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Felix Fietkau [Sun, 26 Feb 2023 12:36:58 +0000 (13:36 +0100)]
mac80211: rework mesh fast xmit implementation
Refactor in order to make use of generic fast xmit functions
Fix issues with mesh SA/DA addressing
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Tim Harvey [Tue, 21 Feb 2023 23:08:29 +0000 (15:08 -0800)]
octeontx: add f2fs and ext4 support
Add both ext4 and f2fs support for overlayfs. The fstools mount_root
application will choose f2fs if the overlay volume space available
exceeds 100MB, otherwise ext4 is used.
Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Tim Harvey [Sat, 18 Feb 2023 01:06:41 +0000 (17:06 -0800)]
octeontx: add default packages for on-board devices
The Gateworks Newport boards supported by the octeontx target have
the following on-board devices:
- Gateworks System Controller
- GPIO buttons
- GPIO leds
- GPS PPS
- Accelerometer
- MCP251X CAN controller
Add kernel drivers for these devices in DEFAULT_PACKAGES
Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Tomasz Maciej Nowak [Wed, 24 Aug 2022 16:05:58 +0000 (18:05 +0200)]
ath79: add support for MikroTik RouterBOARD 911 Lite2/Lite5
Forward-port from ar71xx target the board introduced in commit
eb9e3651dd1a (" ar71xx: add support for the MikroTik RB911-2Hn/5Hn
boards"). Citing:
The patch adds support for the MikroTik RB911-2Hn (911 Lite2)
and the RB911-5Hn (911 Lite5) boards:
https://mikrotik.com/product/RB911-2Hn
https://mikrotik.com/product/RB911-5Hn
The two boards are using the same hardware design, the only difference
between the two is the supported wireless band.
Specifications:
* SoC: Atheros AR9344 (600MHz)
* RAM: 64MiB
* Storage: 16 MiB SPI NOR flash
* Ethernet: 1x100M (Passive PoE in)
* Wireless: AR9344 built-in wireless MAC, single chain
802.11b/g/n (911-2Hn) or 802.11a/g/n (911-5Hn)
Notes:
* Older versions of these boards might be equipped with a NAND
flash chip instead of the SPI NOR device. Those boards are not
supported (yet).[1]
* The MikroTik RB911-5HnD (911 Lite5 Dual) board also uses the
same hardware. Support for that can be added later with little
effort probably.[2]
End of citation.
Follow intallation instruction from that commit message, using
openwrt-ath79-mikrotik-mikrotik_routerboard-911-lite-initramfs-kernel.bin
and
openwrt-ath79-mikrotik-mikrotik_routerboard-911-lite-squashfs-sysupgrade.bin
images found in ath79/mikrotik directory. Be advised that the board
accepts 10-30 V on PoE input.
Known issues
Compared to ar71xx target image, there is still small leak of current to
user LED, which makes it lit, although weaker, even if brightness is set
to 0. The cause of that is still unknown.
1. https://github.com/openwrt/openwrt/pull/3652
2. RB911-5HnD should work with this commit or with [1], depending on
what flash topology was used.
Signed-off-by: Tomasz Maciej Nowak <tmn505@gmail.com>
Tomasz Maciej Nowak [Wed, 24 Aug 2022 16:05:57 +0000 (18:05 +0200)]
ath79: mikrotik: stack ar9344 devices to single dtsi
Most of boards from MikroTik with AR9344 SoC (supported and
un-supported) replicate the same schematic, so stack common device nodes
to a single dtsi.
ar9344_mikrotik_routerboard-16m-nor.dtsi:
- remove include paragraph and wmac node, make it single nor flash node
for others dts to include
ar9344_mikrotik_routerboard-lhg-5nd.dts:
- move all of the nodes to new file ar9344_mikrotik_routerboard.dtsi
and leave only power, user and lan LEDs which differ from sxt-5nd-r2
and other yet unsupported devices
ar9344_mikrotik_routerboard-sxt-5n.dtsi:
- remove, it made no sense to keep it, as only
ar9344_mikrotik_routerboard-sxt-5nd-r2.dts included this file and
added only compatible and model
ar9344_mikrotik_routerboard-sxt-5nd-r2.dts:
- include ar9344_mikrotik_routerboard.dtsi
- add nand gpio activating node, beeper, additional LEDs and flash chips
which previously have been in ar9344_mikrotik_routerboard-sxt-5n.dtsi
ar9344_mikrotik_routerboard.dtsi:
- inherited most of the content from ar9344_mikrotik_routerboard-lhg-5nd.dts
except three LEDs
- add wmac node, removed from ar9344_mikrotik_routerboard-16m-nor.dtsi
Signed-off-by: Tomasz Maciej Nowak <tmn505@gmail.com>
Prasun Maiti [Wed, 16 Nov 2022 11:03:33 +0000 (16:33 +0530)]
build: fix for sourcing targets image config installed via feeds
Sourcing of image/Config.in will not happen
When a target is installed from target/linux/feeds/
Signed-off-by: Prasun Maiti <prasunmaiti87@gmail.com>
Acked-by: Petr Štetiar <ynezz@true.cz>
Arınç ÜNAL [Wed, 30 Nov 2022 18:00:13 +0000 (21:00 +0300)]
treewide: remove label = "cpu" from DSA dt-binding
This is not used by the DSA dt-binding, so remove it from all devicetrees.
Link: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=9cc115d8d6f73dd260de1609182f3645844d6907
Signed-off-by: Arınç ÜNAL <arinc.unal@arinc9.com>
Linus Walleij [Fri, 16 Dec 2022 20:52:44 +0000 (21:52 +0100)]
bcm53xx: Add D-Link DWL-8610AP board settings
The D-Link DWL-8610AP does not make use of the B53 switch
like most equipment. It lies dormant and the machine is using
eth0 and eth1 directly.
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Linus Walleij [Fri, 16 Dec 2022 20:52:27 +0000 (21:52 +0100)]
bcm53xx: Add support for D-Link DWL-8610AP
The D-Link DWL-8610AP is a pretty straight-forward
BC53016
device, D-Link has invented a firmware package format which
is a tar file, and we implement this for the factory image.
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Jan-Niklas Burfeind [Fri, 30 Dec 2022 02:41:17 +0000 (03:41 +0100)]
sunxi: enable CONFIG_NVMEM_SYSFS
in both the stable and the testing kernel
h2+/h3/h5 devices have a Secure ID that can be read from
`/sys/bus/nvmem/devices/sunxi-sid0/nvmem`.
Enabling CONFIG_NVMEM_SYSFS grants sysfs access from userspace.
Signed-off-by: Jan-Niklas Burfeind <git@aiyionpri.me>
Tomasz Maciej Nowak [Mon, 23 Jan 2023 13:44:50 +0000 (14:44 +0100)]
grub2: re-add test module
It seems more hardware needs early load of firmware when initialised
to work properly (at least Intel hardware). One of previous case is CPU
microcode, which this series[1] tried to change. The second one is Intel
graphics IC, which needs firmware for controlling DMC circuit (switch
conncted display to DC6 power state). As it stands, the i915 module is
built-in and it seems the hardware can't cope with firmware loaded
later from rootfs, it needs to be supplied when the module is loaded.
Unfortunately we need bootloader to handle the load of firmware in this
case, but as previously mentioned series[1], there was an error when
initrd was hardcoded, instead of testing existence for it and then
loading. To remedy this in later the
55b808e0c4be ('x86: image: add test
module to bootloader') was commited. Which was later accidentally
dropped when grub2 image creation was moved to packages. Therefore bring
back test module, so we can test for cases of existing firmware in
grub.cfg.
1. https://patchwork.ozlabs.org/project/openwrt/cover/
20181120162044.16371-1-tomek_n@o2.pl
Fixes: 5a5df62d95f5 ("x86/grub2: move grub2 image creation to package")
Signed-off-by: Tomasz Maciej Nowak <tmn505@gmail.com>
Tomasz Maciej Nowak [Mon, 23 Jan 2023 13:44:49 +0000 (14:44 +0100)]
x86: remove bootloader upgrade from preinit
This hack was to bring all existing installations to the newest GRUB
version as fast as possible. Since 19.07.x is EoL we can assume this
task is completed. Now sysupgrade will solely be responsible for
bootloader upgrade.
Signed-off-by: Tomasz Maciej Nowak <tmn505@gmail.com>
Daniel González Cabanelas [Mon, 20 Feb 2023 23:43:55 +0000 (00:43 +0100)]
mvebu: add support for Buffalo LinkStation LS220DE
The Buffalo LinkStation LS220DE is a dual bay NAS, based on Marvell
Armada 370
Hardware:
SoC: Marvell Armada
88F6707
CPU: Cortex-A9 800 MHz, 1 core
Flash 1: SPI-NOR 1 MiB (U-Boot)
Flash 2: NAND 512 MiB (OS)
RAM: DDR3 256 MiB
Ethernet: 1x 1GbE
USB: 1x 2.0
SATA: 2x 3Gb/s
LEDs/Input: 5x / 2x (1x button, 1x slide-switch)
Fan: 1x casing
Flash instructions, from hard drive:
1. Get access to the "boot" partition at the hard drive where the stock
firmware is installed. It can be done with acp-commander or by
plugging the hard drive to a computer.
2. Backup the stock uImage:
mv /boot/uImage.buffalo /boot/uImage.buffalo.bak
3. Move and rename the Openwrt initramfs image to the boot partition:
mv openwrt-initramfs-kernel.bin /boot/uImage.buffalo
4. Power on the Linkstation with the hardrive inside. Now Openwrt will
boot, but still not installed.
5. Connect via ssh to OpenWrt:
ssh root@192.168.1.1
6. Rename boot files inside boot partition
mount -t ext3 /dev/sda1 /mnt
mv /mnt/uImage.buffalo /mnt/uImage.buffalo.openwrt.bak
mv /mnt/initrd.buffalo /mnt/initrd.buffalo.bak
7. Format ubi partitions at the NAND flash ("kernel_ubi" and "ubi"):
ubiformat /dev/mtd0 -y
ubidetach -p /dev/mtd1
ubiformat /dev/mtd1 -y
8. Flash the sysupgrade image:
sysupgrade -n openwrt-squashfs-sysupgrade.bin
9. Wait until it finish, the device will reboot with OpenWrt installed
on the NAND flash.
Restore the stock firmware:
1. Take the hard drive used for the installation and restore boot backup
files to their original names:
mount -t ext3 /dev/sda1 /mnt
mv /mnt/uImage.buffalo.bak /mnt/uImage.buffalo
mv /mnt/initrd.buffalo.bak /mnt/initrd.buffalo
2. Boot from the hard drive and perform a stock firmware update using
the Buffalo utility. The NAND will be restored to the original
state.
Signed-off-by: Daniel González Cabanelas <dgcbueu@gmail.com>
Tim Harvey [Tue, 21 Feb 2023 20:35:05 +0000 (12:35 -0800)]
octeontx: switch to Kernel 5.15
Switch over from testing version.
Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Karl Chan [Thu, 16 Feb 2023 10:47:21 +0000 (18:47 +0800)]
ramips: Alternative name Asus RT-AC750L for Asus RT-AC1200V2
The Asus RT-AC750L is identical to the already supported Asus RT-AC1200V2. Use the ALT0 buildroot tags to show both devices.
Reference : https://forum.openwrt.org/t/asus-rt-ac750l-is-the-same-as-rt-ac1200-v2/151783
Signed-off-by: Karl Chan <exkc@exkc.moe>
Felix Fietkau [Thu, 23 Feb 2023 14:06:14 +0000 (15:06 +0100)]
mac80211: fix mesh fast xmit header cache flush
split into multiple functions depending on sta, mpath or mpp
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Tobias Hilbig [Sat, 25 Feb 2023 10:40:37 +0000 (11:40 +0100)]
ncurses: add alacritty terminfo
Add terminfo file for the terminal emulator alacritty.
https://github.com/alacritty/alacritty
Signed-off-by: Tobias Hilbig <web.tobias@hilbig-ffb.de>
Kevin Darbyshire-Bryant [Wed, 18 Jan 2023 09:39:18 +0000 (09:39 +0000)]
dnsmasq: bump to v2.89
Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
Daniel González Cabanelas [Thu, 16 Feb 2023 22:04:20 +0000 (23:04 +0100)]
ipq40xx: Linksys MR8300: fix the USB port power
The USB port on the MR8300 randomly fails to feed bus-powered devices.
This is caused by a misconfigured pinmux. The GPIO68 should be used to
enable the USB power (active low), but it's inside the NAND pinmux.
This GPIO pin was found in the original firmware at a startup script in
both MR8300 and EA8300. Therefore apply the fix for both boards.
Signed-off-by: Daniel González Cabanelas <dgcbueu@gmail.com>
Reviewed-by: Robert Marko <robimarko@gmail.com>
Felix Baumann [Mon, 20 Feb 2023 02:40:20 +0000 (03:40 +0100)]
ramips: correct the PCIe port number for some mt7621 devices
MT7621 uses a new PCIe driver in the 5.15+ kernel. Allocating wrong PCIe
port will cause the PCIe NIC to not work properly. This commit fixes
the wrong port numbers on Netgear R6220, WAC104 and WNDR3700 v5.
According to bootlog, MT7612E (5GHz) is connected to pcie0, and
MT7603E (2GHz) is connected to pcie2:
[2.758986] mt7621-pci
1e140000.pcie: pcie1 no card, disable it (RST & CLK)
[2.772862] mt7621-pci
1e140000.pcie: PCIE0 enabled
[2.782579] mt7621-pci
1e140000.pcie: PCIE2 enabled
...
[3.009151] pci 0000:01:00.0: [14c3:7662] type 00 class 0x028000
[3.125715] pci 0000:02:00.0: [14c3:7603] type 00 class 0x028000
Tested-by: Maximilian Baumgartner <aufhaxer@googlemail.com>
Signed-off-by: Shiji Yang <yangshiji66@qq.com>
[felix.bau@gmx.de: adjust commit message for Netgear devices]
Signed-off-by: Felix Baumann <felix.bau@gmx.de>
Daniel Golle [Sat, 25 Feb 2023 17:49:10 +0000 (17:49 +0000)]
tools/squashfs4: fix PKG_MIRROR_HASH
The hash currently matches neither the SHA256 of the Github download
nor the hash of the archive generated by the OpenWrt build system.
(and yes, they differ...)
Set hash of Github-generated tarball.
Fixes: 30f2d516ba ("tools/squashfs4: add new tool for squashfs4 images")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Daniel Golle [Sat, 25 Feb 2023 17:42:23 +0000 (17:42 +0000)]
mvebu: setup effective thermal zones on Puzzle M901 and M902
Assign fan with 4 active cooling levels to be used for the main CPU as
well as external SerDes units.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Daniel Golle [Sat, 25 Feb 2023 02:35:16 +0000 (02:35 +0000)]
mvebu: puzzle: fix fan thermal cooling driver
Several fixes for the Puzzle WT61P803 hwmon driver were needed to make
it behave well as thermal cooling device:
- wire-up cooling device with OF node in device tree
- properly parse cooling-levels (u32 with range check vs. u8)
- actually use cooling-levels
- keep current state and only write to uC if state has changed
(avoids flooding the uC with commands which will result in uC crashing)
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Hauke Mehrtens [Sat, 25 Feb 2023 18:56:12 +0000 (19:56 +0100)]
netifd: update to the latest version
ed65a00 netifd: bridge: Fix format string position
19372d8 netifd: Fix multiple -Wsign-compare warnings
8ebf033 netifd: Do not return values in void function
c77417a netifd: Explicitly zero initialize variables
463a120 netifd: Activate -Wextra compile warnings
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Hauke Mehrtens [Sat, 25 Feb 2023 17:37:26 +0000 (18:37 +0100)]
ustream-ssl: update to Git version 2023-02-25
498f6e2 ustream-mbedtls: Use getrandom() instead of /dev/urandom
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Xinfa Deng [Thu, 9 Feb 2023 07:37:30 +0000 (15:37 +0800)]
ath79: add support for GL.iNet GL-X1200
This patch adds supports for GL-X1200.
Specification:
- SOC: QCA9563 (775MHz)
- Flash: 16 MiB
- RAM: 128 MiB DDR2
- Ethernet: 4x 1Gbps LAN + 1x 1Gbps WAN
- Wireless: QCA9563(2.4GHz) and QCA9886(5GHz)
- SIM: 2x SIM card slots
- MicroSD: 1x microSD slot
- Antenna: 2x external 5dBi antennas
- USB: 1x USB 2.0 port
- Button: 1x reset button
- LED: 16x LEDs (3x GPIO controllable)
- UART: 1x UART on PCB (JP1: 3.3V, RX, TX, GND)
- OEM U-Boot supplies HTTP/GUI access
Implementation Notes
====================
Both the NOR and NAND variants boot off a NOR-based kernel,
consistent with the OEM's firmware.
The mode LEDs are
* Boot, Running system
* Failsafe 2G
* Upgrade 5G
Installation
============
Using sysupgrade
----------------
sysupgrade may be used to install a NAND image on a device running
a NAND image or a NOR image on a device running a NOR image. It is
recommended to *not* preserve config when upgrading from OEM firmware
or previous versions of OpenWrt. No supported sysupgrade path should
require "force". Transitioning from NOR to NAND can be accomplished
Using U-Boot
------------
The OEM U-Boot can be put into a graphical, firmware-upload mode by
holding down the button on the side of the router while applying power
and for a bit more than five seconds following with the current OEM
U-Boot. The power LED will come on, then the 5G LED will flash five
times, about once a second. When the 5G LED stops flashing and the
2G LED lights solid, the router's U-Boot will provide an upload page
at http://192.168.1.1/ Either a browser may be used to upload an image,
or a utility such as curl may be used:
curl -X POST -F gl_firmware=\@*-nand-squashfs-factory.img \
http://192.168.1.1/index.html
or
curl -X POST -F gl_firmware=\@*-nor-squashfs-sysupgrade.bin \
http://192.168.1.1/index.html
Note that NOR vs. NAND is based on the file name extension.
Signed-off-by: Xinfa Deng <xinfa.deng@gl-inet.com>
Michael Pratt [Tue, 21 Feb 2023 19:58:20 +0000 (14:58 -0500)]
toolchain: remove references to $(LIBC)/utils subtarget
The utils subtarget was used for uClibc and eglibc
which are both obsolete and replaced in Openwrt by mainline
musl and glibc, which do not have a utils Makefile target.
Ref:
5d19a38d8 ("toolchain: sync eglibc headers/build split with uclibc changes")
Fixes: 63fb17520 ("toolchain: remove uClibc-ng")
Suggested-by: Andre Heider <a.heider@gmail.com>
Signed-off-by: Michael Pratt <mcpratt@pm.me>
Michael Pratt [Wed, 10 Aug 2022 21:56:41 +0000 (17:56 -0400)]
toolchain: cleanup dependencies
Reorganize dependencies between toolchain targets to save a line.
This also puts them in a linear order which is easier to read.
Signed-off-by: Michael Pratt <mcpratt@pm.me>
Michael Pratt [Sat, 10 Sep 2022 01:43:18 +0000 (21:43 -0400)]
toolchain: fix stampfile dependency
Use the gcc/final/install target stampfile as the prerequisite
for the toolchain/compile target stampfile.
The previous filename was also incorrect,
the stampfile name format was changed (see reference)
but was never updated here.
The issue was never noticed
because the usage of timestamp.pl was broken
(fixed in previous commit)
causing the extra prereq files passed to 'call stampfile'
to never get checked at all.
Fixes: 5149ed151 ("gcc: split up the build process into three distinct stages")
Signed-off-by: Michael Pratt <mcpratt@pm.me>