openwrt/openwrt.git
8 months agobase-files: sysupgrade: allow overriding config restore
Álvaro Fernández Rojas [Wed, 31 Jan 2024 10:43:55 +0000 (11:43 +0100)]
base-files: sysupgrade: allow overriding config restore

Some platforms like Raspberry Pi require patching some backup files like
cmdline.txt in order to set the correct root PARTUUID.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
8 months agobcm27xx: pass signature to partition generation
Álvaro Fernández Rojas [Tue, 30 Jan 2024 20:28:54 +0000 (21:28 +0100)]
bcm27xx: pass signature to partition generation

Passes IMG_PART_SIGNATURE to ptgen instead of using the default "OWRT"
signature.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
8 months agobcm27xx: base-files: fix platform_copy_config
Álvaro Fernández Rojas [Mon, 4 Mar 2024 15:20:55 +0000 (16:20 +0100)]
bcm27xx: base-files: fix platform_copy_config

/boot/kernel*.img wildcard only works without quotation marks.

Fixes: 1a5e51ab0011 ("bcm27xx: base-files: fix platform_copy_config")
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
8 months agobcm63xx: drop target
Álvaro Fernández Rojas [Mon, 5 Feb 2024 17:39:57 +0000 (18:39 +0100)]
bcm63xx: drop target

BCM63xx maintainance is a PITA since there's no full Device Tree support and
therefore every board needs it's own definition in board_bcm963xx.c
There's no DSA support for this board and there have been very few
contributions in the last years.
Moreover, BCM63xx SoCs >= BCM6358 are already supported in bmips target, so
any efforts to keep this target alive aren't worth the time.
Let's focus the community efforts on improving bmips instead.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
8 months agobase-files: sysupgrade: fix streaming backup archives to stdout
Jo-Philipp Wich [Mon, 4 Mar 2024 13:50:46 +0000 (14:50 +0100)]
base-files: sysupgrade: fix streaming backup archives to stdout

Due to previous refactoring in sysupgrade, writing backup archives to
stdout became impossible since the hardcoded gzip output redirection
did not account for the `-` special case filename.

Fix this issue by substituting `-` with `/proc/self/fd/1` in the tar
archive output path variable.

Also remove a redundant `rm -f` of the target file path that occurs
before the file could've possibly been written.

Fixes: #14773
Fixes: https://github.com/openwrt/luci/issues/6961
Fixes: e36cc53092 ("base-files: sysupgrade: use tar helper to include installed_packages.txt")
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
8 months agobuild: add $(STAGING_DIR) and $(BIN_DIR) preparation to target and package subdir...
Matthias Schiffer [Thu, 1 Feb 2024 23:46:58 +0000 (00:46 +0100)]
build: add $(STAGING_DIR) and $(BIN_DIR) preparation to target and package subdir compile dependencies

In a pristine build, these directories are created as dependencies of
the tools subdir compile, however this step never runs when the tools
compile stamp already exists. Since commit ed6ba2801c0a ("tools: keep
stamp file in $(STAGING_DIR_HOST)"), this will happen after `make clean`:
$(STAGING_DIR) has been deleted, but the tools stamp still exists, so
the next build will fail because $(STAGING_DIR) has not been set up
correctly.

Fix builds after `make clean` by adding the preparation as dependencies
for the target and package directories as well.

Fixes: ed6ba2801c0a ("tools: keep stamp file in $(STAGING_DIR_HOST)")
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
8 months agokernel: lantiq: ltq-vmmc: introduce user group for vmmc
Daniel Golle [Sun, 3 Mar 2024 15:22:54 +0000 (15:22 +0000)]
kernel: lantiq: ltq-vmmc: introduce user group for vmmc

asterisk-chan-lantiq is by now the only user of the VMMC interface.
And asterisk runs as user 'asterisk' which doesn't give it permission
to open the /dev/vmmc* devices.
Introduce a new user group 'vmmc' and give permission to access the
/dev/vmmc* devices to that group.
Another commit for asterisk-chan-lantiq will add the 'asterisk' user
to that group.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
8 months agomvebu: add support for SolidRun ClearFog Pro
Tobias Schramm [Mon, 26 Feb 2024 11:47:29 +0000 (12:47 +0100)]
mvebu: add support for SolidRun ClearFog Pro

The SolidRun ClearFog Pro is a router based on the SolidRun CN9130 SOM.

Specs:
 - SoC: Quad-Core Cortex-A72 CN9130 SoC
 - RAM: 4GiB DDR4
 - Serial: Micro-USB port on front (FT232R, 115200 8n1)
 - Storage: 8GiB eMMC, microSD card slot, 8MiB SPI NOR flash
 - Ethernet: 7x GbE (1 port dedicated on SoC, 6 port switch with single GbE CPU port)
 - SFP: 1x SFP+
 - USB: 1x USB-A 3.1 Gen 1
 - PCIe: 2x mini PCIe (one slot with USB and SIM card socket)
 - SATA: 1x M.2 Key-B

In addition to the usual connectivity options this device also features
an internal mikroBUS expansion connector.

SATA is currently untested due to lack of a suitable M.2 SSD.

Installation
============

1. Write sdcard sysupgrade image to microSD card using dd or similar
2. Insert microSD card into router and apply power
3. Device boots into OpenWRT
4. (optional) dd sysupgrade image to /dev/mmcblk0 to install to eMMC

Signed-off-by: Tobias Schramm <tobias@t-sys.eu>
8 months agokernel: 6.1: backport Marvell Armada 8k AP807 cpufreq support
Tobias Schramm [Mon, 26 Feb 2024 09:40:50 +0000 (10:40 +0100)]
kernel: 6.1: backport Marvell Armada 8k AP807 cpufreq support

Upstream a patch adding support for cpufreq on AP807-based SoC like the
CN913x was submitted. Include it in patches to ensure best performance
under load and lowest power consumption in idle.

Signed-off-by: Tobias Schramm <tobias@t-sys.eu>
8 months agou-boot.mk: override default PATH to avoid pick hostpkg python
Tianling Shen [Sun, 25 Feb 2024 12:33:08 +0000 (20:33 +0800)]
u-boot.mk: override default PATH to avoid pick hostpkg python

hostpkg python from packages feed can be picked when do a incremental
build because hostpkg has higher priority in PATH. It may lead build
faliure as it's heavily trimmed (e.g. lacks necessary modules).

For uboot which uses binman and intree dtc, this is forced as hostpkg
python will never provide those modules by default.

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
8 months agomediatek: filogic: fix failsafe mode on devices with no lan1
Paul Geraedts [Sat, 24 Feb 2024 08:01:01 +0000 (09:01 +0100)]
mediatek: filogic: fix failsafe mode on devices with no lan1

Default to lan4 port, instead of (missing) lan1 port,
to fix failsafe mode on Xiaomi AX3000T, WR30U, AX6000

Build system: x86/64
Build-tested: mediatek/filogic/xiaomi_mi-router-ax3000t-ubootmod
Run-tested: mediatek/filogic/xiaomi_mi-router-ax3000t-ubootmod

Signed-off-by: Paul Geraedts <p.f.j.geraedts@gmail.com>
8 months agols-mc: bump to 10.38.0
Pawel Dembicki [Fri, 1 Mar 2024 09:47:36 +0000 (10:47 +0100)]
ls-mc: bump to 10.38.0

Update ls-mc to latest 10.38.0 version.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
8 months agols-dpl: bump to 10.38.0
Pawel Dembicki [Fri, 1 Mar 2024 09:44:48 +0000 (10:44 +0100)]
ls-dpl: bump to 10.38.0

Update ls-dpl to latest 10.38.0 version.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
8 months agoath79: add support for ELECOM WAB-I1750-PS
INAGAKI Hiroshi [Thu, 22 Feb 2024 10:00:57 +0000 (19:00 +0900)]
ath79: add support for ELECOM WAB-I1750-PS

ELECOM WAB-I1750-PS is a 2.4/5 GHz band 11ac (Wi-Fi 5) access point,
based on QCA9558.

Specification:

- SoC              : Qualcomm Atheros QCA9558
- RAM              : DDR2 128 MiB (2x Winbond W9751G6KB251)
- Flash            : SPI-NOR 16 MiB (Macronix MX25L12835FMI-10G)
- WLAN             : 2.4/5 GHz 3T3R
  - 2.4 GHz        : Qualcomm Atheros QCA9558 (SoC)
  - 5 GHz          : Qualcomm Atheros QCA9880
- Ethernet         : 2x 10/100/1000 Mbps
  - phy ("PD")     : Atheros AR8035
  - phy ("PSE")    : Atheros AR8033
- LEDs/keys (GPIO) : 3x/3x
- UART             : 2x RJ-45 port
  - "SERVICE"      : TTL (3.3V)
    - port         : ttyS0
    - assignment   : 1:3.3V, 2:GND, 3:TX, 4:RX
    - settings     : 115200n8
    - note         : no compatibility with "Cisco console cable"
  - "SERIAL"       : RS232C (+-12V)
    - port         : ?
    - assignment   : 1:NC , 2:NC , 3:TXD, 4:GND,
                     5:GND, 6:RXD, 7:NC , 8:NC
    - settings     : 115200n8
    - note         : compatible with "Cisco console cable"
- Buzzer           : 1x GPIO-controlled
- USB              : 1x USB 2.0 Type-A
- Power            : DC jack or PoE
  - DC jack        : 12 VDC, 1.04 A (device only, rating)
  - PoE            : 802.3af/at, 48 VDC, 0.26 A (device only, rating)
  - note           : supports 802.3af supply on PSE (downstream) port
                     when powered by DC adapter or 802.3at PoE

Flash instruction using factory.bin image:

1. Boot WAB-I1750-PS without no upstream connection (or PoE connection
   without DHCP)
2. Access to the WebUI ("http://192.168.3.1") on the device and open
   firmware update page
   ("ツールボックス" -> "ファームウェア更新")
3. Select the OpenWrt factory.bin image and click update
   ("アップデート") button
4. Wait ~120 seconds to complete flashing

Revert to OEM firmware:

1. Download the latest OEM firmware
2. Remove 128 bytes(0x80) header from firmware image
3. Decode by xor with a pattern "8844a2d168b45a2d" (hex val)
4. Upload the decoded firmware to the device
5. Flash to "firmware" partition by mtd command
6. Reboot

Notes:

- To use the "SERVICE" port, the connection of 3.3V line is also
  required to enable console output.
  The uart line of "SERVICE" is branched out from the internal pin
  header with 74HC126D and 3.3V line is connected to OE pin on it.

- "SERIAL" port is provided by HS UART on QCA9558 SoC that has
  compatibility with qca,ar9330-uart, but QCA955x SoC's is not supported
  on Linux Kernel and OpenWrt.

- To supply 802.3af PoE on "PSE" port when powered by DC adapter, 12 VDC
  3.5 A adapter is recommended. (official: WAB-EX-ADP1)

MAC addresses:

Ethernet (PD, PSE): 00:90:FE:xx:xx:0A (Config, ethaddr (text))
2.4GHz            : 00:90:FE:xx:xx:0A (Config, ethaddr (text))
5GHz              : 00:90:FE:xx:xx:0B

[original work]
Signed-off-by: Yanase Yuki <dev@zpc.st>
[update for NVMEM and others]
Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
8 months agoath79: add support for ELECOM WAB-S1167-PS
INAGAKI Hiroshi [Thu, 22 Feb 2024 10:00:57 +0000 (19:00 +0900)]
ath79: add support for ELECOM WAB-S1167-PS

ELECOM WAB-S1167-PS is a 2.4/5 GHz band 11ac (Wi-Fi 5) access point,
based on QCA9557.

Specification:

- SoC              : Qualcomm Atheros QCA9557
- RAM              : DDR2 128 MiB (2x Winbond W9751G6KB251)
- Flash            : SPI-NOR 16 MiB (Macronix MX25L12835FMI-10G)
- WLAN             : 2.4/5 GHz 2T2R
  - 2.4 GHz        : Qualcomm Atheros QCA9557 (SoC)
  - 5 GHz          : Qualcomm Atheros QCA9882
- Ethernet         : 2x 10/100/1000 Mbps
  - phy ("PD")     : Atheros AR8035
  - phy ("PSE")    : Atheros AR8033
- LEDs/keys (GPIO) : 3x/3x
- UART             : 1x RJ-45 port
  - "SERVICE"      : TTL (3.3V)
    - port         : ttyS0
    - assignment   : 1:3.3V, 2:GND, 3:TX, 4:RX
    - settings     : 115200n8
    - note         : no compatibility with "Cisco console cable"
- Buzzer           : 1x GPIO-controlled
- USB              : 1x USB 2.0 Type-A
- Power            : DC jack or PoE
  - DC jack        : 12 VDC, 1 A (device only, rating)
  - PoE            : 802.3af/at, 48 VDC, 0.25 A (device only, rating)
  - note           : supports 802.3af supply on PSE (downstream) port
                     when powered by DC adapter or 802.3at PoE

Flash instruction using factory.bin image:

1. Boot WAB-S1167-PS without no upstream connection (or PoE connection
   without DHCP)
2. Access to the WebUI ("http://192.168.3.1") on the device and open
   firmware update page
   ("ツールボックス" -> "ファームウェア更新")
3. Select the OpenWrt factory.bin image and click update
   ("アップデート") button
4. Wait ~120 seconds to complete flashing

Revert to OEM firmware:

1. Download the latest OEM firmware
2. Remove 128 bytes(0x80) header from firmware image
3. Decode by xor with a pattern "8844a2d168b45a2d" (hex val)
4. Upload the decoded firmware to the device
5. Flash to "firmware" partition by mtd command
6. Reboot

Notes:

- To use the "SERVICE" port, the connection of 3.3V line is also
  required to enable console output.
  The uart line of "SERVICE" is branched out from the internal pin
  header with 74HC126D and 3.3V line is connected to OE pin on it.

- The same PCB is used with WAB-S600-PS.

- To supply 802.3af PoE on "PSE" port when powered by DC adapter, 12 VDC
  3.5 A adapter is recommended. (official: WAB-EX-ADP1)

MAC addresses:

Ethernet (PD, PSE): 00:90:FE:xx:xx:04 (Config, ethaddr (text))
2.4GHz            : 00:90:FE:xx:xx:04 (Config, ethaddr (text))
5GHz              : 00:90:FE:xx:xx:05

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
8 months agoath79: add support for ELECOM WAB-S600-PS
INAGAKI Hiroshi [Thu, 22 Feb 2024 10:00:57 +0000 (19:00 +0900)]
ath79: add support for ELECOM WAB-S600-PS

ELECOM WAB-S600-PS is a 2.4/5 GHz band 11n (Wi-Fi 4) access point, based
on QCA9557.
This device also supports 11ac (Wi-Fi 5) with the another official
firmware.

Specification:

- SoC              : Qualcomm Atheros QCA9557
- RAM              : DDR2 128 MiB (2x Winbond W9751G6KB251)
- Flash            : SPI-NOR 16 MiB (Macronix MX25L12835FMI-10G)
- WLAN             : 2.4/5 GHz 2T2R
  - 2.4 GHz        : Qualcomm Atheros QCA9557 (SoC)
  - 5 GHz          : Qualcomm Atheros QCA9882
- Ethernet         : 2x 10/100/1000 Mbps
  - phy ("PD")     : Atheros AR8035
  - phy ("PSE")    : Atheros AR8033
- LEDs/keys (GPIO) : 3x/3x
- UART             : 1x RJ-45 port
  - "SERVICE"      : TTL (3.3V)
    - port         : ttyS0
    - assignment   : 1:3.3V, 2:GND, 3:TX, 4:RX
    - settings     : 115200n8
    - note         : no compatibility with "Cisco console cable"
- Buzzer           : 1x GPIO-controlled
- USB              : 1x USB 2.0 Type-A
- Power            : DC jack or PoE
  - DC jack        : 12 VDC, 1 A (device only, rating)
  - PoE            : 802.3af/at, 48 VDC, 0.25 A (device only, rating)
  - note           : supports 802.3af supply on PSE (downstream) port
                     when powered by DC adapter or 802.3at PoE

Flash instruction using factory.bin image:

1. Boot WAB-S600-PS without no upstream connection (or PoE connection
   without DHCP)
2. Access to the WebUI ("http://192.168.3.1") on the device and open
   firmware update page
   ("ツールボックス" -> "ファームウェア更新")
3. Select the OpenWrt factory.bin image and click update
   ("アップデート") button
4. Wait ~120 seconds to complete flashing

Revert to OEM firmware:

1. Download the latest OEM firmware
2. Remove 128 bytes(0x80) header from firmware image
3. Decode by xor with a pattern "8844a2d168b45a2d" (hex val)
4. Upload the decoded firmware to the device
5. Flash to "firmware" partition by mtd command
6. Reboot

Notes:

- To use the "SERVICE" port, the connection of 3.3V line is also
  required to enable console output.
  The uart line of "SERVICE" is branched out from the internal pin
  header with 74HC126D and 3.3V line is connected to OE pin on it.

- The same PCB is used with WAB-S1167-PS.

- To supply 802.3af PoE on "PSE" port when powered by DC adapter, 12 VDC
  3.5 A adapter is recommended. (official: WAB-EX-ADP1)

MAC addresses:

Ethernet (PD, PSE): BC:5C:4C:xx:xx:7C (Config, ethaddr (text))
2.4GHz            : BC:5C:4C:xx:xx:7C (Config, ethaddr (text))
5GHz              : BC:5C:4C:xx:xx:7D

[original work of common dtsi part for WAB-I1750-PS]
Signed-off-by: Yanase Yuki <dev@zpc.st>
[adding support for WAB-S600-PS]
Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
8 months agoramips: Unielec u7621-01: remove invalid led status
David Bentham [Sun, 24 Dec 2023 13:49:50 +0000 (13:49 +0000)]
ramips: Unielec u7621-01: remove invalid led status

The original commit had an invalid setting of the
led status for this device.

There is no gpio pin connected to that led so lets
remove these from the u7621-01 dtsi file.

Signed-off-by: David Bentham <db260179@gmail.com>
8 months agoocteontx: update default network config
Tim Harvey [Thu, 2 Mar 2023 22:29:39 +0000 (14:29 -0800)]
octeontx: update default network config

Update the default network configuration for Gateworks Newport boards
such that the left-most front-panel NIC is WAN and any additional are in
LAN bridge:
 - gw610x/gw6903; single NIC: eth0
 - gw620x/gw630x; two NIC's from left to right are: eth1 eth0
 - gw640x; multiple NIC's from left to right: eth4 eth0 eth1 eth2 eth3

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
8 months agoapm821xx: MBL DUO-only: enable USB-Storage for boot from USB support
Christian Lamparter [Sat, 17 Feb 2024 20:16:12 +0000 (21:16 +0100)]
apm821xx: MBL DUO-only: enable USB-Storage for boot from USB support

it is possible to boot and run OpenWrt from an image on an USB-Stick
on the MyBook Live DUO. (No, the MyBook Live Single does NOT have an
USB-Port and attempts at enabling it sadly all failed... so far).

To do that:
First, prepare a USB-Stick by writing the raw and uncompressed OpenWRT
factory image for the device onto the stick (i.e.
 # gunzip -c openwrt-*wd_mybooklive*-factory.img.gz > /dev/sd$XX).

Then enter the u-boot via an attached TTL/CMOS 3.3V cable adapter and
give the following commands a try in the:

 usb start; sata init
 ext2load usb 0:1 ${fdt_addr_r} /boot/apollo3g.dtb
 ext2load usb 0:1 ${kernel_addr_r} /boot/uImage
 setenv bootargs 'root=/dev/sdc2 rw rootfstype=squashfs,ext4 rootdelay=5'
 run addtty; bootm ${kernel_addr_r} - ${fdt_addr_r}

Notes:
 - booting from USB-Sticks takes a long time! Be prepared to wait a few
   minutes. (~3 minutes for 4 MiB /boot/uImage file on a USB 2.0 Stick)

 - the bootargs part 'root=/dev/sdX2' depends on how many HDDs/SSDs are
   slotted in. (if none: then use sda, if one: sdb. if two: sdc)

 - rootdelay is important as the storage on the USB-Sticks do not show
   up fast enough. 5 seconds might be excessive though.

 - it's possible to concat these commands together in one line and
   write it into u-boot's "bootcmd" environment variable and save the
   environment to make the device to always boot from USB from then on.

   if you have accidentally overridden the 'bootcmd' and want to return
   to 'spec' enter the following commands :

   setenv bootcmd 'run boot_sata_script_ap2nc'
   saveenv

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
8 months agoapm821xx: add u-boot,env compatible
Christian Lamparter [Fri, 9 Jun 2023 18:34:02 +0000 (20:34 +0200)]
apm821xx: add u-boot,env compatible

Note about the MyBook Live.
The MyBook Live didn't have the encompassing fixed-partitions.
This is needed for the u-boot,env compatible to be read as otherwise
the kernel assumes this is a legacy NOR/NAND node and this binding
is unsupported.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
8 months agoapm821xx: remove 5.15 remnants
Christian Lamparter [Sat, 17 Feb 2024 19:52:41 +0000 (20:52 +0100)]
apm821xx: remove 5.15 remnants

deletes config-5.15 and patches-5.15/.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
8 months agoapm821xx: make 6.1 kernel default
Christian Lamparter [Sat, 17 Feb 2024 19:51:13 +0000 (20:51 +0100)]
apm821xx: make 6.1 kernel default

6.1 has been available for some time for testing.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
8 months agoqualcommax: enable DEBUG_BUGVERBOSE
Robert Marko [Fri, 1 Mar 2024 18:51:24 +0000 (19:51 +0100)]
qualcommax: enable DEBUG_BUGVERBOSE

Enable DEBUG_BUGVERBOSE by default on qualcommax as without it once BUG()
is called we will not get any output other than
"------------[ cut here ]------------"
which is not usefull at all, so since we dont have kernel size constraints
lets enable it by default.

Signed-off-by: Robert Marko <robimarko@gmail.com>
8 months agobuild: scripts/config - update to kconfig-v6.6.16
Eneas U de Queiroz [Fri, 16 Feb 2024 17:32:07 +0000 (14:32 -0300)]
build: scripts/config - update to kconfig-v6.6.16

The main goal here is to keep this close to upstream.

Changes include:
 - allow symbols implied by y to become m
 - make 'imply' obey the direct dependency
 - allow only 'config', 'comment', and 'if' inside 'choice'
 - qconf: make search fully work again on split mode
 - qconf: navigate menus on hyperlinks
 - remove '---help---' support
 - qconf: allow to edit "int", "hex", "string" menus in-place
 - qconf: drop Qt4 support
 - nconf: fix core dump when searching in empty menu
 - nconf: stop endless search loops
 - Create links to main menu items in search
 - fix segmentation fault in menuconfig search
 - nconf: Add search jump feature
 - port qconf to work with Qt6 in addition to Qt5
 - fix possible buffer overflow
 - fix memory leak from range properties

Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
8 months agolayerscape: remove 5.15 kernel support
Pawel Dembicki [Fri, 1 Mar 2024 08:04:00 +0000 (09:04 +0100)]
layerscape: remove 5.15 kernel support

Kernel was switched to 6.1. Lets drop 5.15 support.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
8 months agolayerscape: switch kernel to 6.1 version
Pawel Dembicki [Fri, 1 Mar 2024 08:01:45 +0000 (09:01 +0100)]
layerscape: switch kernel to 6.1 version

It was testing since couple months. Lets switch it to 6.1 by default for
wide testing.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
8 months agobuild: fix kernel component in CycloneDX SBOM
Cedric DOURLENT [Fri, 1 Mar 2024 15:42:34 +0000 (16:42 +0100)]
build: fix kernel component in CycloneDX SBOM

As stated in the cycloneDX documentation, the field "type" is mandatory for all components.

More details here (https://cyclonedx.org/docs/1.5/json/#components_items_type)

Signed-off-by: Cedric DOURLENT <cedric.dourlent@softathome.com>
8 months agomediatek: mt7622: rtl8367c: add casts to fix compiler warnings
Daniel Golle [Fri, 1 Mar 2024 00:06:47 +0000 (00:06 +0000)]
mediatek: mt7622: rtl8367c: add casts to fix compiler warnings

Use type casts to prevent compiler warnings which are going to turn
into errors when we switch to Linux 6.6.
In the long run we should try to get rid of this downstream driver
now that RTL8367S is support by the rtl8365mb DSA driver.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
8 months agomediatek: rename or replace accepted patches
Daniel Golle [Thu, 29 Feb 2024 23:52:56 +0000 (23:52 +0000)]
mediatek: rename or replace accepted patches

Rename kernel patches accepted upstream to indicate at which version
they have been accepted, replacing downstream variants which what was
accepted upstream. Note that some of them are fixes which will
find their way to older kernel versions as well via linux-stable.
No functional changes.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
8 months agomediatek: fix version tag in thermal patches
Daniel Golle [Thu, 29 Feb 2024 19:30:10 +0000 (19:30 +0000)]
mediatek: fix version tag in thermal patches

Some backported thermal patches ended up with the wrong kernel
version in their filename. Fix this.

Fixes: c36de2e73a ("mediatek: backport a hell of thermal commits")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
8 months agouboot-mediatek: remove rootfs_data before attempting to replace fip
Daniel Golle [Thu, 29 Feb 2024 19:22:43 +0000 (19:22 +0000)]
uboot-mediatek: remove rootfs_data before attempting to replace fip

Make sure there is enough space to replace 'fip' volume and always
remove rootfs_data before.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
8 months agokirkwood: Add Marvell RTC to all machines with nothing else
Linus Walleij [Fri, 23 Feb 2024 07:23:47 +0000 (08:23 +0100)]
kirkwood: Add Marvell RTC to all machines with nothing else

The Kirkwood SoCs all have an onchip RTC that can hold the time
over e.g. a reboot which will help if no NTP servers are available.

Create a kernel module package for the Marvell RTC, and add it to
all Kirkwood devices that do not have their own discrete
battery-backed RTC. Adding it to platforms with a proper RTC
is just surplus.

All Kirkwoods have at least one RTC so add RTC to the features
list for Kirkwood as well.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
8 months agoath79: nand: add SUPPORTED_DEVICES for Meraki MR18
Samuele Longhi [Fri, 23 Feb 2024 09:36:58 +0000 (10:36 +0100)]
ath79: nand: add SUPPORTED_DEVICES for Meraki MR18

This adds the board name from ar71xx to support upgrade without
-F for the Meraki MR18.

Signed-off-by: Samuele Longhi <agave@dracaena.it>
8 months agoramips: fix nvmem-cells for routers based on TP-Link Archer
Mieczyslaw Nalewaj [Fri, 23 Feb 2024 20:23:05 +0000 (21:23 +0100)]
ramips: fix nvmem-cells for routers based on TP-Link Archer

Added missing nvmem-cells located in the loaded file mt7620a_tplink_archer.dtsi

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
8 months agomediatek: filogic: add support for Cudy RE3000 v1
Robert Senderek [Fri, 16 Feb 2024 13:04:40 +0000 (14:04 +0100)]
mediatek: filogic: add support for Cudy RE3000 v1

MT7981B /256MB /16MB SPI (XM25QH128C)
AX 2.4Ghz
AX 5Ghz 160Mhz wide
1Gbit LAN

OEM:
root@RE3000:~# ifconfig |grep HWaddr
br-lan    Link encap:Ethernet  HWaddr 80:XX:XX:08:XX:X0 (label)
br-wan    Link encap:Ethernet  HWaddr 80:XX:XX:08:XX:X0
eth0      Link encap:Ethernet  HWaddr 80:XX:XX:08:XX:X0
ra0       Link encap:Ethernet  HWaddr 80:XX:XX:08:XX:X0
ra2       Link encap:Ethernet  HWaddr 82:XX:XX:28:XX:X0
rax0      Link encap:Ethernet  HWaddr 82:XX:XX:38:XX:X0
rax2      Link encap:Ethernet  HWaddr 82:XX:XX:58:XX:X0

OpenWrt
root@OpenWrt:/# ifconfig |grep HW
br-lan    Link encap:Ethernet  HWaddr 80:XX:XX:08:XX:X0
eth0      Link encap:Ethernet  HWaddr 80:XX:XX:08:XX:X0
phy0-ap0  Link encap:Ethernet  HWaddr 80:XX:XX:08:XX:X0
phy1-ap0  Link encap:Ethernet  HWaddr 82:XX:XX:08:XX:X1

 tftp Installation via u-boot:

Connect TTL3.3V converter
connector is under the radiator Set speed 115200 8 N 1
Interrupt boot process by holding down-arrow key during boot then
>> 6. Load image
>> 0 - TFTP client (Default)
enter IP adresses and initramfs-kernel.bin

write to flash via sysupgrade or gui

Signed-off-by: Robert Senderek <robert.senderek@10g.pl>
8 months agouboot-d1: cleanup Makefile
Zoltan HERPAI [Thu, 29 Feb 2024 16:06:04 +0000 (17:06 +0100)]
uboot-d1: cleanup Makefile

Clean up leftover PKG_HASH.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
8 months agod1: add new target
Zoltan HERPAI [Wed, 24 May 2023 21:51:14 +0000 (23:51 +0200)]
d1: add new target

This target adds support for the Allwinner D1 RISC-V based SoCs.

 - RISC-V single-core T-Head C906 (RV64GCV)
 - Tensilica HiFi4 DSP
 - DDR2/DDR3 support
 - 10/100/1000M ethernet
 - usual peripherals like USB2, SPI, I2C, PWM, etc.

Four boards are supported:
 - Dongshan Nezha STU
    - 512Mb RAM
    - ethernet

 - LicheePi RV Dock
    - 512Mb RAM
    - wireless-only (RTL8723DS)

 - MangoPi MQ-Pro
    - 512Mb RAM
    - there are pads available for an SPI flash
    - wireless-only (RTL8723DS)

 - Nezha D1
    - 512Mb/1Gb/2Gb RAM
    - 256Mb NAND flash
    - ethernet, wireless

Installation:
Standard SD-card installation via dd-ing the generated image to
an SD-card of at least 256Mb.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
8 months agouboot-d1: add bootloader for upcoming d1 target
Zoltan HERPAI [Wed, 7 Jun 2023 12:34:06 +0000 (14:34 +0200)]
uboot-d1: add bootloader for upcoming d1 target

Add u-boot bootloader based on 2023.01 to support D1-based boards, currently:

 - Dongshan Nezha STU
 - LicheePi RV Dock
 - MangoPi MQ-Pro
 - Nezha D1

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
8 months agoopensbi: allow building on upcoming d1 target
Zoltan HERPAI [Wed, 7 Jun 2023 09:54:34 +0000 (11:54 +0200)]
opensbi: allow building on upcoming d1 target

U-boot on D1 also uses OpenSBI as its payload. As the current version of
OpenSBI already supports D1 with no further patches required, allow
building it on the upcoming TARGET_d1 too.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
8 months agobase-files: sysupgrade: add uci-defaults script disabling services #2
Rafał Miłecki [Wed, 28 Feb 2024 10:51:02 +0000 (11:51 +0100)]
base-files: sysupgrade: add uci-defaults script disabling services #2

Disabled services should be kept disabled after sysupgrade. This can be
easily handled using a proper uci-defaults script.

Extend sysupgrade to check for disabled services, generate uci-defaults
script disabling them and include it in backup.

Cc: Christian Marangi <ansuelsmth@gmail.com>
Cc: Jo-Philipp Wich <jo@mein.io>
Cc: Jonas Gorski <jonas.gorski@gmail.com>
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Acked-by: Jo-Philipp Wich <jo@mein.io>
8 months agobase-files: sysupgrade: use tar helper to include installed_packages.txt
Rafał Miłecki [Wed, 28 Feb 2024 10:51:01 +0000 (11:51 +0100)]
base-files: sysupgrade: use tar helper to include installed_packages.txt

Replace mount + overlay with manually built tar archive that gets
prepended to the actual config files backup. This allows more
flexibility with including extra backup files. They can be included at
any paths and don't require writing to flash or mounting an overlay
which has its own limitations (mount points).

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Acked-by: Jo-Philipp Wich <jo@mein.io>
8 months agobase-files: sysupgrade: add tar.sh with helpers for building archives
Jo-Philipp Wich [Wed, 28 Feb 2024 10:51:00 +0000 (11:51 +0100)]
base-files: sysupgrade: add tar.sh with helpers for building archives

This allows building uncompressed tar archives from shell scripts (and
compressing them later if needed)

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
[rmilecki: adapt to sysupgrade needs]
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
8 months agotools/dwarves: update to 1.26
Tony Ambardar [Wed, 28 Feb 2024 23:04:57 +0000 (15:04 -0800)]
tools/dwarves: update to 1.26

Release Notes:
https://lore.kernel.org/dwarves/20240228193921.JWQp1Mc2M47ffhgIjnHKh8538u4uztVKuznlck9Pk9E@z/

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
8 months agomediatek: re-enable mt7622-rfb1-ubi with changed partition layout
Felix Fietkau [Wed, 28 Feb 2024 08:52:08 +0000 (09:52 +0100)]
mediatek: re-enable mt7622-rfb1-ubi with changed partition layout

The boot loader does not have a fixed size limit for the kernel,
so we're free to change the layout. This may break sysupgrade, but a fresh
flash from initramfs works.

Fixes: 6e2962d4c548 ("mediatek: mt7622: skip build for MT7622 rfb1 (UBI)")
Signed-off-by: Felix Fietkau <nbd@nbd.name>
8 months agouboot-mediatek: correct board name for BananaPi BPi-R3 Mini
Tianling Shen [Sun, 25 Feb 2024 12:21:40 +0000 (20:21 +0800)]
uboot-mediatek: correct board name for BananaPi BPi-R3 Mini

It should be "BananaPi BPi-R3 Mini" instead of just "BananaPi BPi-R3".

Fixes: bc25519f98cd ("uboot-mediatek: add builds for BananaPi BPi-R3 mini")
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
8 months agobuild: fix shebang line
Michael Seibt [Mon, 5 Feb 2024 23:40:21 +0000 (00:40 +0100)]
build: fix shebang line

Remove space between sharp-exclamation and interpreter.

Signed-off-by: Michael Seibt <github@roboschmie.de>
8 months agolantiq: add support for Arcadyan VRV9510KWAC23
Daniel Huici [Sun, 4 Feb 2024 22:59:48 +0000 (23:59 +0100)]
lantiq: add support for Arcadyan VRV9510KWAC23

The Arcadyan VRV9510KWAC23 (trade name Livebox Next) is a Lantiq router distributed by some spanish ISPs

Hardware:
-   SoC: Lantiq VRX200
-   CPU: 2x MIPS 34Kc 500 MHz
-   RAM: 256 MiB DDR2
-   Flash: 128 MiB NAND
-   Ethernet: Built-in Gigabit Ethernet switch, 5x 1GbE
-   Wifi 2.4GHz: Broadcom BCM43222KFBG 802.11b/g/b MIMO 2T2R
-   Wifi 5GHz: Broadcom BCM4360KMLG 802.11ac MIMO 3T3R
-   USB: 2x USB 2.0
-   DSL: Built-in VDSL/ADSL2+ XWAY VRX208
-   LEDs: 8x
-   Buttons: 4x
-   Phone: Lantiq PEF 42068 V XWAY SLIC120

Install instructions:
Detailed instructions can be found on the wiki https://openwrt.org/toh/arcadyan/vrv9510kwac23
1. Boot into UART mode and upload the the https://raw.githubusercontent.com/danielhuici/arcadyan-vrv9510kwac23-utils/main/u-boot.asc file via serial console to boot into U-Boot.
2. Perform a backup of the NAND
3. Setup a TFTP server and serve the https://github.com/danielhuici/arcadyan-vrv9510kwac23-utils/raw/main/u-boot.ltq.lzo.nandspl. Replace the OEM bootloader with this one. Erase your NAND and write the image into it
4. Reboot the router
5. Serve the OpenWrt ramdisk image on your TFTP server and boot it via U-Boot
6. When OpenWrt boots, flash the SquashFS OpenWrt image using LuCi interface, so OpenWrt gets installed into the NAND

Signed-off-by: Daniel Huici <danielhuici@hotmail.com>
8 months agoramips: removing unnecessary compatibility for TP-Link Archer C2 v1
Mieczyslaw Nalewaj [Thu, 15 Feb 2024 20:58:31 +0000 (21:58 +0100)]
ramips: removing unnecessary compatibility for TP-Link Archer C2 v1

Removing: compatible = "rtl8367b"
This string is not used anywhere in the code.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
8 months agoumdns: prevent a few 'uci: Entry not found'
Paul Donald [Sun, 11 Feb 2024 22:44:42 +0000 (23:44 +0100)]
umdns: prevent a few 'uci: Entry not found'

pass '-q' switch to uci to prevent spurious output

Signed-off-by: Paul Donald <newtwen@gmail.com>
8 months agogeneric l2tp: drop flow hash on forward
David Bauer [Mon, 26 Feb 2024 13:43:09 +0000 (14:43 +0100)]
generic l2tp: drop flow hash on forward

Drop the flow-hash of the skb when forwarding to the L2TP netdev.

This avoids the L2TP qdisc from using the flow-hash from the outer
packet, which is identical for every flow within the tunnel.

This does not affect every platform but is specific for the ethernet
driver. It depends on the platform including L4 information in the
flow-hash.

Signed-off-by: David Bauer <mail@david-bauer.net>
8 months agogeneric vxlan: don't learn non-unicast L2 destinations
David Bauer [Sat, 17 Feb 2024 21:37:05 +0000 (22:37 +0100)]
generic vxlan: don't learn non-unicast L2 destinations

This patch avoids learning non-unicast targets in the vxlan FDB. They
are non-unicast and thus should be sent to the broadcast-IPv6 instead of
a unicast address

Link: https://lore.kernel.org/netdev/15ee0cc7-9252-466b-8ce7-5225d605dde8@david-bauer.net/
Link: https://github.com/freifunk-gluon/gluon/issues/3191
Signed-off-by: David Bauer <mail@david-bauer.net>
8 months agomvebu: add kernel module for Turris Omnia Wi-Fi 6
Jan Jasper de Kroon [Mon, 5 Feb 2024 08:02:57 +0000 (09:02 +0100)]
mvebu: add kernel module for Turris Omnia Wi-Fi 6

The following kernel module package was added to the build recipe for the
Turris Omnia: kmod-mt7915-firmware

This module enables support for the official Wi-Fi 6 upgrade kit sold by
CZ.NIC, which includes the AW7915-NP1 miniPCIE board based on Mediatek
MT7915AN, providing 5 GHz Wi-Fi 6 connectivity. With this commit we now
support the latest Turris Omnia Wi-Fi 6 Edition

Signed-off-by: Jan Jasper de Kroon <jajadekroon@gmail.com>
8 months agodnsmasq: Fix wrong format for --dhcp-boot option
Julius Lehmann [Thu, 22 Feb 2024 17:01:04 +0000 (18:01 +0100)]
dnsmasq: Fix wrong format for --dhcp-boot option

dnsmasq --dhcp-boot option uses 'tag' instead of 'net' to specify tags

Signed-off-by: Julius Lehmann <lehmanju@devpi.de>
8 months agoe2fsprogs: add libe2p and development headers
Oskari Rauta [Wed, 14 Feb 2024 04:38:49 +0000 (06:38 +0200)]
e2fsprogs: add libe2p and development headers

this patch separates libe2p from e2fsprogs package, like all other
provided libraries are their own packages. Also some development headers
were missing so I added those along with pkg-config files.

Signed-off-by: Oskari Rauta <oskari.rauta@gmail.com>
8 months agomvebu: fill additional info for mvneta tx queue workaround patch
Tomasz Maciej Nowak [Mon, 26 Feb 2024 16:26:42 +0000 (17:26 +0100)]
mvebu: fill additional info for mvneta tx queue workaround patch

Because some still unresolved bugs in this driver, which sprout
occasional questions what this patch works around, point to the issue
which started this. Being here, fill headers required by git am.

Signed-off-by: Tomasz Maciej Nowak <tmn505@gmail.com>
8 months agoairoha: dts: fix pcie ranges properties
Lorenzo Bianconi [Fri, 5 Jan 2024 16:17:53 +0000 (17:17 +0100)]
airoha: dts: fix pcie ranges properties

Reduce and split pcie controller memory ranges for en7523 SoC
in order to properly load a pcie card on the second port.

Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
8 months agomediatek: filogic: Cudy WR3000 v1 wps button fix
Robert Senderek [Thu, 22 Feb 2024 15:42:21 +0000 (16:42 +0100)]
mediatek: filogic: Cudy WR3000 v1 wps button fix

WPS button activation method is wrong .  It should be active low

Signed-off-by: Robert Senderek <robert.senderek@10g.pl>
8 months agobase-files: export whole disk of fitblk backing partition
Daniel Golle [Mon, 26 Feb 2024 03:56:36 +0000 (03:56 +0000)]
base-files: export whole disk of fitblk backing partition

After commit ad62247800 ("base-files: improve lib/upgrade/common.sh")
behavior of export_bootdevice has been made consistent in such way that
always the whole disk device is exported (as that was the case already
when matching via UUID) rather than the partition device.
Do the same for the device holding the fitblk backing partition.

Fixes: 5992f976b3 ("base-files: recognize bootdevice on devices using fitblk")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
8 months agomediatek: include 'fitblk' package for subtargets
Daniel Golle [Mon, 26 Feb 2024 01:50:50 +0000 (01:50 +0000)]
mediatek: include 'fitblk' package for subtargets

If selected on a per-board base, fitblk doesn't end up in initramfs
images which always only come with the subtarget's default packages.
Hence fitblk needs to be included as a default package of all
subtargets making use of fitblk instead of it being selected for
individual boards.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
8 months agomediatek: drop platform_get_bootdev
Daniel Golle [Sun, 25 Feb 2024 21:12:10 +0000 (21:12 +0000)]
mediatek: drop platform_get_bootdev

Now that we got fitblk_get_bootdev in /lib/upgrade/common.sh we don't
need platform_get_bootdev in each of the subtargets any longer.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
8 months agouboot-envtools: replace use of platform_get_bootdev
Daniel Golle [Sun, 25 Feb 2024 21:08:57 +0000 (21:08 +0000)]
uboot-envtools: replace use of platform_get_bootdev

Use new function fitblk_get_bootdev in /lib/upgrade/common.sh instead.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
8 months agobase-files: recognize bootdevice on devices using fitblk
Daniel Golle [Sun, 25 Feb 2024 21:01:01 +0000 (21:01 +0000)]
base-files: recognize bootdevice on devices using fitblk

Boards using the fitblk driver need special treatment when it comes to
detecting the actual block device used to store the image used to boot
from. Transparently handle this in 'export_bootdevice' and provide new
'fitblk_get_bootdev' function to replace implementations in
/lib/upgrade/platform.sh.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
8 months agokernel: fix compiler warning caused by NVMEM-on-UBI
Daniel Golle [Sun, 25 Feb 2024 23:56:55 +0000 (23:56 +0000)]
kernel: fix compiler warning caused by NVMEM-on-UBI

When building the UBI NVMEM provider on 32-bit platforms a compiler
warning is triggered due to different sizeof(int).
Fix this by using integer types with well-defined size.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
8 months agoipq-wifi: update to version 2024-02-25, remove unused ipq8174 extension
Paweł Owoc [Sun, 25 Feb 2024 14:04:31 +0000 (15:04 +0100)]
ipq-wifi: update to version 2024-02-25, remove unused ipq8174 extension

fc30aee ipq8074: remove regdomain, update regdb and rename MX4200 BDF
Remove unused ipq8174 extension

Signed-off-by: Paweł Owoc <frut3k7@gmail.com>
8 months agoairoha: allow selecting 6.1 as test kernel
Robert Marko [Mon, 19 Feb 2024 20:42:20 +0000 (21:42 +0100)]
airoha: allow selecting 6.1 as test kernel

Add 6.1 as the test kernel for airoha.

Signed-off-by: Robert Marko <robimarko@gmail.com>
8 months agoairoha: 6.1: refresh config
Robert Marko [Mon, 19 Feb 2024 20:41:51 +0000 (21:41 +0100)]
airoha: 6.1: refresh config

Refresh the 6.1 config.

Signed-off-by: Robert Marko <robimarko@gmail.com>
8 months agoairoha: make files 5.15 only
Robert Marko [Mon, 19 Feb 2024 20:34:37 +0000 (21:34 +0100)]
airoha: make files 5.15 only

Contents of the files folder were upstreamed in 6.1 so make it 5.15 only.

Signed-off-by: Robert Marko <robimarko@gmail.com>
8 months agoairoha: 6.1: make patches apply
Robert Marko [Mon, 19 Feb 2024 20:32:06 +0000 (21:32 +0100)]
airoha: 6.1: make patches apply

Drop upstreamed patches and refresh the left SPI controller patch.

Signed-off-by: Robert Marko <robimarko@gmail.com>
8 months agoairoha: copy 5.15 files to 6.1
Robert Marko [Mon, 19 Feb 2024 20:05:27 +0000 (21:05 +0100)]
airoha: copy 5.15 files to 6.1

Start working on updating airoha to 6.1 by copying 5.15 config and
patches to 6.1.

Signed-off-by: Robert Marko <robimarko@gmail.com>
8 months agorockchip: fix device packages for nanopi r4s enterprise edition
Tianling Shen [Sun, 25 Feb 2024 04:36:02 +0000 (12:36 +0800)]
rockchip: fix device packages for nanopi r4s enterprise edition

In official OpenWrt we use kmod-r8169 driver provided by upstream kernel
instead of kmod-r8168 driver from Realtek.

Fixes: afca1236f318 ("rockchip: add NanoPi R4S Enterprise Edition build")
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
8 months agomediatek: mt7623: bpi-r2: bump compat version on boot
Daniel Golle [Sun, 25 Feb 2024 01:38:39 +0000 (01:38 +0000)]
mediatek: mt7623: bpi-r2: bump compat version on boot

The device booting successfully indicates that bootloader has been
updated. Set compat_version to 1.1 on new configs and bump
compat_version to 1.1 on first boot after a successful sysupgrade.

Fixes: 6368ed1ae5 ("mediatek: mt7623: phase out uImage.FIT partition parser")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
8 months agoramips: TP-Link Archer C5 v4: license and file formatting fixes
Mieczyslaw Nalewaj [Sat, 24 Feb 2024 20:59:40 +0000 (21:59 +0100)]
ramips: TP-Link Archer C5 v4: license and file formatting fixes

mt7620a_tplink_archer-c5-v4.dts - added missing SPDX-License-Identifier

mt7620.mk: added missing tabulator

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
8 months agoipq40xx: Netgear LBR20 fix for proper img builds
Marcin Gajda [Sat, 24 Feb 2024 16:49:49 +0000 (17:49 +0100)]
ipq40xx: Netgear LBR20 fix for proper img builds

Without UBINIZE_OPTS it is possile to have error:
"ubi0 error: ubi_attach_mtd_dev: failed to atach mtd23, error -22"

This solve this problem.

Signed-off-by: Marcin Gajda <mgajda@o2.pl>
8 months agokernel: bump 6.1 to 6.1.79
John Audia [Fri, 23 Feb 2024 20:40:12 +0000 (15:40 -0500)]
kernel: bump 6.1 to 6.1.79

Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.1.79

Manually rebased:
ath79/patches-6.1/900-unaligned_access_hacks.patch

All other patches automatically rebased.

Build system: x86/64
Build-tested: x86/64/AMD Cezanne, ramips/tplink_archer-a6-v3, flogic/xiaomi_redmi-router-ax6000-ubootmod
Run-tested: x86/64/AMD Cezanne, ramips/tplink_archer-a6-v3, flogic/xiaomi_redmi-router-ax6000-ubootmod

Signed-off-by: John Audia <therealgraysky@proton.me>
8 months agoramips: add support for TP-Link Archer C5 v4
Mieczyslaw Nalewaj [Fri, 23 Feb 2024 19:53:37 +0000 (20:53 +0100)]
ramips: add support for TP-Link Archer C5 v4

TP-Link Archer C5 v4 is a dual band router with 5 GbE ports
Advertised as AC1200 for its 867Mbps (2x2) 5GHz band
and 300 Mbps (2x2) 2.4GHz band.

Specs:
- SoC: MediaTek MT7620A
- Ethernet: 5x GbE ports (Realtek RTL8367S)
- Wireless 2.4GHz: MediaTek MT7620A
- Wireless 5GHz: MediaTek MT7612E
- RAM: 64MiB
- ROM: 8MiB (GD25Q64CSIG)
- 1 USB 2.0 port
- 2 Buttons (WPS and reset)
- 8 LEDs

Flash instructions:
Currently one has to install OpenWrt only via the serial console

1. Rename the factory.bin to to test.bin
2. start a TFTP server from IP address 192.168.0.225 and serve the image named test.bin
3. connect your device to the LAN port
4. power up the router and press 4 on the console to stop the boot process.
5. enter the following commands on the router console
tftp 0x80060000 test.bin
erase tplink 0x20000 0x7a0000
cp.b 0x80060000 0x20000 0x7a0000
reset

Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
[Update leds, add fast-read]
Signed-off-by: Gaspare Bruno <gaspare@anlix.io>
[Rebuilt version based on mt7620 tplink_archer.dtsi, support for external LNA, remove bad cell count info]
Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
8 months agoramips: fix TP-Link Archer MAC address for ethernet
Mieczyslaw Nalewaj [Fri, 23 Feb 2024 19:51:12 +0000 (20:51 +0100)]
ramips: fix TP-Link Archer MAC address for ethernet

This fixes:
[    0.981884] OF: /ethernet@10100000: #nvmem-cell-cells = 1 found 0

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
8 months agokernel: support for RTL8367C/S switch
Mieczyslaw Nalewaj [Wed, 14 Feb 2024 19:27:23 +0000 (20:27 +0100)]
kernel: support for RTL8367C/S switch

From driver point of view no differance between rtl8367b and rtl8367s
if it connected through EXT2 (rgmii only).
So this trivial patch add some identification and initialization only.
SGMII/HSGMII mode for EXT1 is not implemented for the sake of patch
clairity.

Signed-off-by: Serge Vasilugin <vasilugin@yandex.ru>
[Fix code format]
Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
[add flags to separate chip_num/chip_id detection; drop error print in
rtl8367b_init_regs, drop unnecessary info prints, code style fixes]
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
[rebase; use MII macros]
Signed-off-by: Gaspare Bruno <gaspare@anlix.io>
[code optimization]
Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
8 months agokernel: rtl8366_smi: explicitly set phy addr for switch
Mieczyslaw Nalewaj [Wed, 14 Feb 2024 12:14:10 +0000 (13:14 +0100)]
kernel: rtl8366_smi: explicitly set phy addr for switch

By default rtl8366_smi use phy addr 0 at mii-bus to access switch registers.
This patch allow to set it explicitly in dts-file:

rtl8367 {
compatible = "realtek,rtl8367b";
phy-id = <29>; /* switch address at mii-bus */
realtek,extif2 = <1 0 1 1 1 1 1 1 2>;
mii-bus = <&mdio>;
cpu-port = <7>;
}

Use default 0 address if not set.
Backward compatibility tested on tplink archer c2 v1 (rtl8367rb switch)

Signed-off-by: Serge Vasilugin <vasilugin@yandex.ru>
[code style fixes, add explicit phy_id assignment in probe_plat, use
phy-id instead of phy_id for of property name]
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
[rebase]
Signed-off-by: Gaspare Bruno <gaspare@anlix.io>
[added phy_id to struct rtl8366_smi]
Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
8 months agomediatek: mt7623: bpi-r2: set root=/dev/fit0 in bootargs
Daniel Golle [Sat, 24 Feb 2024 17:00:46 +0000 (17:00 +0000)]
mediatek: mt7623: bpi-r2: set root=/dev/fit0 in bootargs

Set root=/dev/fit0 cmdline parameter as the kernel won't mount rootfs
otherwise after the change from the FIT partition parser to the fitblk
driver which replaces it.

Fixes: 6368ed1ae5 ("mediatek: mt7623: phase out uImage.FIT partition parser")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
8 months agoprocd: update to git HEAD
Daniel Golle [Sat, 24 Feb 2024 03:59:02 +0000 (03:59 +0000)]
procd: update to git HEAD

 2f94972 hotplug-dispatch: don't filter empty env variables
 1901aba system: break infite loop resolving rootfs type

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
8 months agokernel: fix warning when building fitblk on 32-bit platforms
Daniel Golle [Sat, 24 Feb 2024 03:32:13 +0000 (03:32 +0000)]
kernel: fix warning when building fitblk on 32-bit platforms

Kernel warns about comparision of different types without cast when
building the fitblk driver on 32-bit platforms.
Fix this by using `min_t(size_t, ...`.

Fixes: 8fc5457869 ("kernel: add pending fitblk uImage.FIT sub-image block driver")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
8 months agomediatek: mt7623: phase out uImage.FIT partition parser
Daniel Golle [Sat, 24 Feb 2024 03:00:27 +0000 (03:00 +0000)]
mediatek: mt7623: phase out uImage.FIT partition parser

Use the new fitblk driver on the BananaPi R2 as well as UniElec U7623.
Introduce boot device selection for fitblk's /chosen/rootdisk
handle, similar to how it is already done on MT7622, MT7986 and MT7988.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
8 months agouboot-mediatek: fix truncated patch
Daniel Golle [Sat, 24 Feb 2024 03:00:46 +0000 (03:00 +0000)]
uboot-mediatek: fix truncated patch

The default environment for the Linksys E8450 and Belkin RT3200 got
truncated by one line due to a broken patch. While the impact was
luckily only cosmetic, fix it so bootmenu title also shows U-Boot
version again.

Fixes: 6aec3c7b5b ("mediatek: mt7622: modernize Linksys E8450 / Belkin RT3200 UBI build")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
8 months agoipq40xx: Add support Netgear LBR20
Marcin Gajda [Sun, 11 Feb 2024 15:20:21 +0000 (16:20 +0100)]
ipq40xx: Add support Netgear LBR20

**Netgear LBR20** is a router with two gigabit ethernets , three wifi radios and integrated LTE cat.18 modem.

SoC Type: Qualcomm IPQ4019
RAM: 512 MiB
Flash: 256 MiB , SLC NAND, 2 Gbit (Macronix MX30LF2G18AC)
Bootloader: U-Boot
Modem: LTE CAT.18 Quectel EG-18EA ,  Max. 1.2Gbps downlink / 150Mbps uplink

WiFi class AC2200:
- radio0 : 5G on QCA9888 , WiFi5- 802.11a/n/ac MU-MIMO 2x2 , 887Mbps , 80MHz - limited for low channels
- radio1: 2,4G on IPQ4019 ,WiFi4- 802.11b/g/n MIMO2x2 300Mbps 40Mhz
- radio2: 5G on IPQ4019 , WiFi5- 802.11a/n/ac MU-MIMO 2x2 , 887Mbps ,80Mhz - limited for high channels  (from 100 up to 165) . Becouse of DFS remember to set country before turning on.

Ethernet: 2x1GbE (WAN/LAN1, LAN2)
LEDs:  section power : green and red  , section on top (orbi) drived by TLC59208F: red, green ,blue and white
USB ports: No
Buttons:  2 Reset and SYNC(WPS)
Power: 12 VDC, 2,5 A
Connector type: Barrel

OpenWRT Installation
1. Simplest way is just do upgrade from webpage with *factory.img
2. You can also do it with standard tool for Netgear's debricking - NMPRFlash
3. Most advanced way is to open device , connect to UART console and :
- Prepare OpenWrt initramfs image in TFTP server root (server IP 192.168.1.10)
- Connect serial console (115200,8n1) to UART connector
- Connect TFTP server to RJ-45 port
- Stop in u-Boot and run u-Boot command:

> setenv serverip 192.168.1.10
> set fdt_high 0x85000000
> tftpboot 0x83000000 openwrt-ipq40xx-generic-netgear_lbr20-initramfs-zImage.itb
> bootm 0x83000000

- Login via ssh
- upload or download *sysupgrade.bin ( like wget ... or scp transfer)
-  Install image via "sysupgrade -n" (like “sysupgrade -n /tmp/openwrt-ipq40xx-generic-netgear_lbr20-squashfs-sysupgrade.bin”)

Back to Stock
- Download firmware from official Netgear's webpage , it will be *.img file after decompressing.
- Use NMRPFlash tool  ( detailed insructions on project page https://github.com/jclehner/nmrpflash )

Open the case
- Unscrew nuts and remove washers from antenna's conectors.
- There are two Torx T10 screws under the label next to antenna conectors. You have to unglue this label from left and right corner to get it
- Two parts of shell covers will slide out from eachother , you have to unglue two small rubber pads and namplate sticker on bottom to do that.
- PCB is screwed with 4Pcs of Torx T10 screws
- Before lifting up PCB remove pigtiles for LTE antennas and release them from PCB and radiator (black and white wires)
- On other side of PCB ,in left bottom corner there is already soldered with 4 pins UART connector for console. Counting from left it is  +3,3V , TX , RX ,GND (reffer to this picture: https://i.ibb.co/Pmrf9KB/20240116-103524.jpg )

BDF's files are in firmware_qca-wireless  https://github.com/openwrt/firmware_qca-wireless/ and in parallel sent to ath10k@lists.infradead.org.

Signed-off-by: Marcin Gajda <mgajda@o2.pl>
8 months agoipq806x: refresh Kconfig
Christian Marangi [Fri, 23 Feb 2024 17:05:09 +0000 (18:05 +0100)]
ipq806x: refresh Kconfig

Refresh Kconfig due to new changes in ARM decompressor with
kernel_makemenuconfig.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
8 months agoipq806x: replace ARM bootloader patch with pending upstream version
Christian Marangi [Fri, 23 Feb 2024 16:54:52 +0000 (17:54 +0100)]
ipq806x: replace ARM bootloader patch with pending upstream version

Replace ARM bootloader patch with pending upstream version. The patch
got reviewed upstream and tested on a Netgear R7800.

This fix a problem with the ARM decompressor and permits to use
AUTO_ZRELADDR without having to hardcode PHYS_OFFSET as the bootloader
now correctly parse the memory modes in the appended DTB.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
8 months agoRevert "build: don't drop 'user' flag when using the ImageBuilder"
Daniel Golle [Thu, 22 Feb 2024 19:13:34 +0000 (19:13 +0000)]
Revert "build: don't drop 'user' flag when using the ImageBuilder"

This reverts commit c42b915af0ea53bc1b65bc72afc9875da08b14d2.
Now that rpcd uses the 'Auto-Installed' field to differentiate between
deliberately and implicitely installed packages we can remove the
hotfix.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
8 months agorpcd: update to latest git HEAD
Daniel Golle [Thu, 22 Feb 2024 19:12:03 +0000 (19:12 +0000)]
rpcd: update to latest git HEAD

 8ef4c25 sys: use "Auto-Installed" field for packagelist

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
8 months agomediatek: mt7622: no longer select FIT_PARTITION
Daniel Golle [Fri, 23 Feb 2024 13:43:43 +0000 (13:43 +0000)]
mediatek: mt7622: no longer select FIT_PARTITION

All mt7622 board previously using the FIT partition parser have been
converted to use the fitblk driver:
 6aec3c7b5b mediatek: mt7622: modernize Linksys E8450 / Belkin RT3200 UBI build
 41c053141e mediatek: mt7622: convert unifi6lr-v{1,2,3}-ubootmod to fitblk
 208f6c1232 mediatek: mt7622: convert BPi-R64 to all-UBI layout and fitblk

Remove the now no longer needed FIT partition parser from builds for
mt7622.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
8 months agomediatek: filogic: asus-tuf-ax6000: use NVMEM-on-UBI
Daniel Golle [Mon, 19 Feb 2024 03:22:52 +0000 (03:22 +0000)]
mediatek: filogic: asus-tuf-ax6000: use NVMEM-on-UBI

Use newly added support for NVMEM-on-UBI instead of extracting MAC
address and WiFi EEPROM data in userspace.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
8 months agomediatek: filogic: asus-tuf-ax4200: use NVMEM-on-UBI
Daniel Golle [Mon, 19 Feb 2024 03:18:47 +0000 (03:18 +0000)]
mediatek: filogic: asus-tuf-ax4200: use NVMEM-on-UBI

Use newly added support for NVMEM-on-UBI instead of extracting MAC
address and WiFi EEPROM data in userspace.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
8 months agomediatek: filogic: asus-rt-ax59u: use NVMEM-on-UBI
Daniel Golle [Mon, 19 Feb 2024 03:11:18 +0000 (03:11 +0000)]
mediatek: filogic: asus-rt-ax59u: use NVMEM-on-UBI

Use newly added support for NVMEM-on-UBI instead of extracting MAC
address and WiFi EEPROM data in userspace.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
8 months agoipq-wifi: fix archive hash
Robert Marko [Fri, 23 Feb 2024 13:14:05 +0000 (14:14 +0100)]
ipq-wifi: fix archive hash

It seems that ipq-wifi bump included and incorrect PKG_MIRROR_HASH value,
so fix it by using:
make package/firmware/ipq-wifi/check FIXUP=1

Fixes: 70fd815e57dc ("qualcommax: ipq807x: add support for Linksys MX5300")
Signed-off-by: Robert Marko <robimarko@gmail.com>
8 months agomac80211: only build ath10k with smallbuffers
Eneas U de Queiroz [Tue, 10 Oct 2023 19:36:12 +0000 (16:36 -0300)]
mac80211: only build ath10k with smallbuffers

When both variants of ath10k drivers are selected, any driver that is
selected along is being built twice, one for each ath10k variant.

Avoid these redundant builds by introducing an optional second parameter
to config_package that lists the variants for which the package is to be
built.

If the symbol is to be set for all of the variants, $(ALL_VARIANTS) can
be used.  This is the case for the mac80211 and cfg80211 modules.  If
the parameter is empty, then the module will be selected and thus built
when the first variant is compiled.

Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
8 months agomac80211: build each variant in its own dir
Eneas U de Queiroz [Tue, 10 Oct 2023 18:58:01 +0000 (15:58 -0300)]
mac80211: build each variant in its own dir

Having different build directories is the default when the package
Makefile defines more than one variant.

Mac80211 overrides PKG_BUILD_DIR, not taking different variants in
consideration, which causes clobbering the directories when both
variants are built.

When compiled with AUTOREMOVE=y, the effect is that the package is
unnecessarily rebuilt when the package is compiled again.

Wihout AUTOREMOVE, the problem is worse: the second variant will not be
rebuilt, and you end up with the smallbuffers variant being a copy of
the regular one.

Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
8 months agoqualcommax: ipq807x: add support for Linksys MX5300
Paweł Owoc [Fri, 24 Nov 2023 21:15:44 +0000 (22:15 +0100)]
qualcommax: ipq807x: add support for Linksys MX5300

Hardware specification:
========
SoC: Qualcomm IPQ8072A
Flash: 512MB (Winbond W29N04GZBIBA)
RAM: 1GB (2x Nanya DDR3L NT5CC256M16ER-EK)
Ethernet: 5x 10/100/1000Mbps (Qualcomm QCA8075)
WiFi1: 5GHz ac 4x4 (Qualcomm QCA9984 + Skyworks SKY85746-11) - channels 100-169
WiFi2: 5GHz ax 4x4 (Qualcomm QCN5054 + Skyworks SKY85755-11) - channels 36-64
WiFi3: 2.4GHz ax 4x4 (Qualcomm QCN5024 + Skyworks SKY8340-11)
IoT: Bluetooth 5, Zigbee and Thread (Qualcomm QCA4024 + Skyworks SE2433T-R)
IoT Flash: 4MB (Macronix MX25R3235F)
RTC: ST M41T00S
LED: 1x RGB status (NXP PCA9633)
USB: 1x USB 3.0
Button: WPS, Reset

Flash instructions:
========
1. Manually upgrade firmware using openwrt-qualcommax-ipq807x-linksys_mx5300-squashfs-factory.bin image.
More details can be found here: https://www.linksys.com/hk/support-article?articleNum=274497
After first boot check actual partition:
- fw_printenv -n boot_part
and install firmware on second partition using command in case of 2:
- mtd -r -e kernel -n write openwrt-qualcommax-ipq807x-linksys_mx5300-squashfs-factory.bin kernel
and in case of 1:
- mtd -r -e alt_kernel -n write openwrt-qualcommax-ipq807x-linksys_mx5300-squashfs-factory.bin alt_kernel

2. Installation using serial connection from OEM firmware (default login: root, password: admin):
- fw_printenv -n boot_part
In case of 2:
- flash_erase /dev/mtd21 0 0
  nandwrite -p /dev/mtd21 openwrt-qualcommax-ipq807x-linksys_mx5300-squashfs-factory.bin
or in case of 1:
- flash_erase /dev/mtd23 0 0
  nandwrite -p /dev/mtd23 openwrt-qualcommax-ipq807x-linksys_mx5300-squashfs-factory.bin
After first boot install firmware on second partition:
- mtd -r -e kernel -n write openwrt-qualcommax-ipq807x-linksys_mx5300-squashfs-factory.bin kernel
or:
- mtd -r -e alt_kernel -n write openwrt-qualcommax-ipq807x-linksys_mx5300-squashfs-factory.bin alt_kernel

3. Installation from initramfs image using USB FAT32 formatted drive:
Stop u-boot and run:
- usb start && fatload usb 0:1 $loadaddr openwrt-qualcommax-ipq807x-linksys_mx5300-initramfs-uImage.itb && bootm $loadaddr
Write firmware to the flash from initramfs:
- mtd -e kernel -n write openwrt-qualcommax-ipq807x-linksys_mx5300-squashfs-factory.bin kernel
and:
- mtd -r -e alt_kernel -n write openwrt-qualcommax-ipq807x-linksys_mx5300-squashfs-factory.bin alt_kernel

4. Back to the OEM firmware:
- mtd -e kernel -n write FW_MX5300_1.1.9.200251_prod.img kernel
and:
- mtd -r -e alt_kernel -n write FW_MX5300_1.1.9.200251_prod.img alt_kernel

5. USB recovery:
- fw_setenv usbimage 'openwrt-qualcommax-ipq807x-linksys_mx5300-initramfs-uImage.itb'
  fw_setenv bootusb 'usb start && fatload usb 0:1 $loadaddr $usbimage && bootm $loadaddr'
  fw_setenv bootcmd 'run bootusb; aq_load_fw && if test $auto_recovery = no; then bootipq; elif test $boot_part = 1; then run bootpart1; else run bootpart2; fi'

Notes:
========
IoT device is accesible over spi. Not yet supported.

Signed-off-by: Paweł Owoc <frut3k7@gmail.com>
Reviewed-by: Robert Marko <robimarko@gmail.com>
8 months agoqualcommax: ipq807x: add patch for QUP4 SPI node
Robert Marko [Fri, 24 Nov 2023 22:09:58 +0000 (23:09 +0100)]
qualcommax: ipq807x: add patch for QUP4 SPI node

Add node to support the QUP4 SPI controller inside of IPQ8074.
Some devices use this bus to communicate to a Bluetooth controller.

Signed-off-by: Robert Marko <robimarko@gmail.com>
8 months agoqualcommax: ipq807x: reordering, combine the same commands
Paweł Owoc [Thu, 30 Nov 2023 23:30:20 +0000 (00:30 +0100)]
qualcommax: ipq807x: reordering, combine the same commands

Reordering, combine the same commands for ipq807x devices

Signed-off-by: Paweł Owoc <frut3k7@gmail.com>
8 months agoramips: fix and clean up D-Link MAC address
Alan Luck [Thu, 15 Feb 2024 05:31:12 +0000 (16:31 +1100)]
ramips: fix and clean up D-Link MAC address

add back WIFI eprom addresses pointer in mt7621_dlink_dir-xx60-a1.dtsi
Change MAC address pointer from factory_e006 to factory_e000 + 3
same as used in D-link firmware 1.11 DIR-1960-A1
DIR-1960-A1,DIR-2640-A1,DIR-2660-A1,DIR-3060-A1

Clean-up MAC addresses in D-Link NOR devices DTS's
Change WIFI MAC Addressees to the same as NAND cousins macaddr_factory_e000 + ?
as later devices don't have the MAC address in factory configuration
same as used in D-Link firmware 1.30 DIR-878-A1
DIR-867-A1,DIR-878-A1,DIR-878-R1,DIR-882-A1,DIR-882-R1,DIR-1935-A1

* D-link software differs between source of wan address

Signed-off-by: Alan Luck <luckyhome2008@gmail.com>
8 months agobase-files: sysupgrade: rename add_*files() functions
Rafał Miłecki [Mon, 12 Feb 2024 10:57:01 +0000 (11:57 +0100)]
base-files: sysupgrade: rename add_*files() functions

Usage of word "add" was somehow misleading in those functions:
1. They don't really add (as in: append) anything. Result files are
   created from scratch.
2. It wasn't clear what adding files means. It could be understood as
   adding actual files somewhere (to existing archive?).

Also the word "add" was also a bit ambiguous.

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