Commit Graph

29546 Commits

Author SHA1 Message Date
Paweł Owoc
879af72b48 qualcommax: ipq807x: Fix MAC addresses usage for RAX120v2
Currently, 6 MAC addresses are read from the "boarddata1" partition and set for network interfaces in sequence.
This partition only contains 3 MAC addresses:
1. lan mac
2. wan mac
3. wlan5g mac
As result only lan2, lan3 and lan4 have correct (OUI) MAC addresses.
lan1, lan5 and wan interfaces get MAC addresses with incorrect OUI from random data on "boarddata1" partition.

This commit fix this and use first MAC for lan and second MAC for wan interfaces.

Signed-off-by: Paweł Owoc <frut3k7@gmail.com>
2024-03-18 22:19:42 +01:00
Chukun Pan
1388444f9b qualcommax: ipq60xx: set PHY mode to psgmii for port 5
The port 5 of most ipq60xx devices is connected to qca8075,
a few are connected to qca8081. So assume that the default
connection is qca8075 and set the phy mode to psgmii.

Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
2024-03-18 22:17:20 +01:00
Chukun Pan
3075d56c4c qualcommax: set phy-mode to sgmii for QCA8081
The dp5 node uses psgmii by default, corrected
the phy-mode to sgmii for the qca8081 phy.

Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
2024-03-18 22:17:20 +01:00
Chukun Pan
a75102bbbc qualcommax: dts: cleanup whitespace
Replace blanks with tabs, remove extra blank lines.
Also add new lines as appropriate.

Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
2024-03-18 22:17:20 +01:00
Rafał Miłecki
081cd769fc kernel: backport some useful LED_FUNCTION_* defines for DT
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2024-03-17 22:55:32 +01:00
John Audia
34b8c70a81 kernel: bump 6.6 to 6.6.22
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.22

Affected Patch automatically rebased.

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

Signed-off-by: John Audia <therealgraysky@proton.me>
2024-03-17 21:16:52 +01:00
John Audia
6642d6c24e kernel: bump 6.6 to 6.6.21
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.21

All patches automatically rebased.

Signed-off-by: John Audia <therealgraysky@proton.me>
2024-03-17 21:16:52 +01:00
Daniel Golle
fc177695e0 mvebu: enable thermal zone polling for IEI Puzzle devices
Marvell's thermal sensors do not support interrupts, so we need to
poll them. Reading temperature every second should be enough to
control the fan.
While at it, also make sure fan speed is reduced again if temperature
goes down.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-03-17 19:37:14 +00:00
INAGAKI Hiroshi
f7275dedd4 qualcommax: ipq807x: fix LEDs on Buffalo WXR-5950AX12
On Buffalo WXR-5590AX12, some LEDs don't have "function" property and
only "color" property is available for the newer binding of LED on
Linux Kernel.
2e659930d3 ("qualcommax: drop redundant label with new LED
color/function format") removes "label" property from LEDs, then,
multiple "<color>:" (ex.: "white:"/"red:") will be appeared as LED names
and renamed to "<color>:_<num>" ("ex.: "white:_1", "green:_2", ...) by
kernel.

logs:

[    5.372863] leds-gpio leds: Led white: renamed to white:_1 due to name collision
[    5.375796] leds-gpio leds: Led red: renamed to red:_1 due to name collision

/sys/class/leds:

root@OpenWrt:/# ls /sys/class/leds/
red:         red:power    white:       white:power
red:_1       red:wlan     white:_1     white:wlan

Fix this issue by adding missing "function" property to LEDs on Buffalo
WXR-5950AX12.
Note: there are no appropriate functions in dt-bindings/leds/common.h
for some LEDs, so use the hardcoded strings for them instead.

Fixes: 2e659930d3 ("qualcommax: drop redundant label with new LED color/function format")
Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2024-03-17 17:31:02 +01:00
INAGAKI Hiroshi
5c1c823c4a qualcommax: ipq807x: fix LEDs on QNAP QHora-301W
On QNAP QHora-301W, all LEDs don't have "function" property and only
"color" property is available for the newer binding of LED on Linux
Kernel.
2e659930d3 ("qualcommax: drop redundant label with new LED
color/function format") removes "label" property from LEDs, then,
multiple "<color>:" (ex.: "amber:"/"green:"/"red:") will be appeared as
LED names and renamed to "<color>:_<num>" ("ex.: "green:_1", "green:_2",
...) by kernel.

logs:

[    4.246494] leds-gpio leds: Led green: renamed to green:_1 due to name collision
[    4.248978] leds-gpio leds: Led green: renamed to green:_2 due to name collision
[    4.256345] leds-gpio leds: Led green: renamed to green:_3 due to name collision
[    4.263770] leds-gpio leds: Led green: renamed to green:_4 due to name collision
[    4.271105] leds-gpio leds: Led amber: renamed to amber:_1 due to name collision
[    4.278487] leds-gpio leds: Led green: renamed to green:_5 due to name collision
[    4.285856] leds-gpio leds: Led amber: renamed to amber:_2 due to name collision
[    4.293257] leds-gpio leds: Led green: renamed to green:_6 due to name collision
[    4.300616] leds-gpio leds: Led amber: renamed to amber:_3 due to name collision
[    4.308002] leds-gpio leds: Led green: renamed to green:_7 due to name collision
[    4.315384] leds-gpio leds: Led amber: renamed to amber:_4 due to name collision
[    4.322760] leds-gpio leds: Led green: renamed to green:_8 due to name collision
[    4.330135] leds-gpio leds: Led amber: renamed to amber:_5 due to name collision

/sys/class/leds:

amber:          amber:_4        green:_2        green:_6
amber:_1        green:_5        green:_3        green:_7
amber:_2        green:          green:_4        green:_8
amber:_3        green:_1        green:_5        red:

Fix this issue by adding missing "function" (and "function-enumerator")
property to LEDs on QNAP QHora-301W.
Note: there are no appropriate functions in dt-bindings/leds/common.h
for some LEDs, so use the hardcoded strings for them instead.

Fixes: 2e659930d3 ("qualcommax: drop redundant label with new LED color/function format")
Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2024-03-17 17:31:02 +01:00
Robert Marko
e0638cfe70 archs38: add 6.1 as testing kernel
Allow selecting 6.1 as testing kernel on archs38.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-03-17 17:28:44 +01:00
Robert Marko
d314b239ef archs38: 6.1: refresh kernel config
Refresh kernel config by running kernel_menuconfig.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-03-17 17:28:44 +01:00
Robert Marko
6ee7ae6895 kernel/archs38: Restore kernel files for v5.15
This is an automatically generated commit and is needed to outsmart git.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-03-17 17:28:44 +01:00
Robert Marko
16edee94e8 kernel/archs38: Create kernel files for v6.1 (from v5.15)
This is an automatically generated commit.

During a `git bisect` session, `git bisect --skip` is needed recommended.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-03-17 17:28:44 +01:00
Zoltan HERPAI
0dfc0495fc kirkwood: add support for Netgear Stora (MS2000/2110) NAS
Dual-slot NAS based on Marvell Kirkwood.

Specifications:
 - Marvell 88F6281 @1GHz
 - 128Mb RAM
 - 256Mb NAND
 - 1x GbE LAN (Marvell 88E1116)
 - 1x USB 2.0
 - 2x SATA
 - PCF8563 RTC
 - LM75 sensor
 - TC654 PWM fan controller
 - Serial on J2 (115200,8n1)
 - Newer bootROM so kwboot-ing via serial is possible

Installation:

1. Serial console
 - Connect your levelshifter to the serial console
   on J2 (refer to the wiki page for pinout)
2. Update u-boot
 - Download the u-boot.kwb image for the device
 - Powercycle the NAS
 - Run "kwboot -b ./u-boot.kwb /dev/ttyUSB0 -p"
 - Connect to the serial console with minicom
 - tftp 0x0800000 netgear_stora-u-boot.kwb
 - nand erase 0x0 100000
 - nand write 0x0800000 0x0 0x100000
 - reset
3. Install OpenWrt
 - Boot up the initramfs image
 - tftpboot 0x800000 openwrt-kirkwood-netgear_stora-initramfs-uImage; bootm 0x800000
 - Download the sysupgrade image and perform sysupgrade

The fan is controlled in 3 stages by a script running every minute
from cron, measuring the CPU temperature.

Snippets taken from bodhi <mibodhi@gmail.com>

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2024-03-17 00:19:22 +01:00
Qingfang Deng
503d26fb24 kernel: xt_FLOWOFFLOAD: fix use of uninitialized dir variable
The dir variable has been used uninitialized since the port to 5.10, and
somehow this remains undetected by GCC.

Fixes: b10d604459 ("kernel: add linux 5.10 support")
Signed-off-by: Qingfang Deng <qingfang.deng@siflower.com.cn>
2024-03-16 15:30:03 +08:00
Chukun Pan
fc9bde82f3 mediatek: mt7622: simplify 02_network
Most mt7622 devices use the mt7531 switch, which have been
switched to dsa driver for a long time. So use dsa as the
default configuration and configure these rtl8367s devices
separately. This reduces the amount of code.

Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
2024-03-16 15:27:17 +08:00
Weijie Gao
7d1145ecb9 mediatek: fix build failure of mt7623/mt7629 using kernel 6.6
In kernel 6.6, dts files for mediatek arm target are moved into
arch/arm/boot/dts/mediatek instead of legacy path arch/arm/boot/dts.

To avoid dts compile failure, change DTS_DIR to the mediatek subfolder
for kernel 6.6.

Signed-off-by: Weijie Gao <hackpascal@gmail.com>
2024-03-16 15:25:05 +08:00
Daniel Golle
6da3c9ddbc generic: 6.6: backport support for SDX75-based MHI 5G modems
Also backport most recent MHI modem additions to Linux 6.6.
Adds support for generic SDX75-based modems.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-03-15 18:30:31 +00:00
Daniel Golle
e4a4c91d8b generic: 6.1: backport support for various MHI 5G modems
* Dell DW5932e
  * Foxconn T99W175 (HP variant)
  * Foxconn T99W510
  * Generic SDX75-based
  * Quectel EM160R-GL (newer variants)
  * Quectel RM520
  * Quectel RM520N-GL (Lenovo variant)
  * SC8280XP Compute Reference Design
  * Telit FE990

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-03-15 17:48:02 +00:00
Daniel Golle
2b25f66d0a mediatek: mt7988: add missing clock for PCIe ports
Add missing CLK_TOP_PEXTP_Px_SEL clock for each of the 4 PCIe interfaces
of the MT7988 SoC. Without that clock PCIe doesn't work reliable.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-03-15 14:09:11 +00:00
Mantas Pucka
904aa43865 qualcommax: ipq60xx: mango-dvk: fix QCA8081 reset timings
Add missing reset delay properties for QCA8081 PHY.
Without delays PHY operation is unreliable.

Signed-off-by: Mantas Pucka <mantas@8devices.com>
2024-03-15 09:13:46 +02:00
Hauke Mehrtens
e40471e923 kernel: Activate CONFIG_NET_VENDOR_DAVICOM
CONFIG_NET_VENDOR_DAVICOM is needed to activate the CONFIG_DM9000 option
which builds the kmod-dm9000. This fixes the following warning:
logs/package/kernel/linux/compile.txt:WARNING: kmod-dm9000 is not available in the kernel config - generating empty package

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-03-14 20:56:18 +01:00
Hauke Mehrtens
fcf0453549 kernel: kmod-can: Fix build of can drivers
Many can kernel modules are now gated by the newly introduced
CONFIG_CAN_NETLINK configuration option. Activate it to build the can
drivers again.
This was changed in this upstream Linux commit:
https://git.kernel.org/linus/df6ad5dd838e0fa543ca28ca6154901fa65a9443

This should fix these warnings with kernel 6.1 and 6.6:
logs/package/kernel/linux/compile.txt:WARNING: kmod-can-c-can is not available in the kernel config - generating empty package
logs/package/kernel/linux/compile.txt:WARNING: kmod-can-c-can-pci is not available in the kernel config - generating empty package
logs/package/kernel/linux/compile.txt:WARNING: kmod-can-c-can-platform is not available in the kernel config - generating empty package
logs/package/kernel/linux/compile.txt:WARNING: kmod-can-mcp251x is not available in the kernel config - generating empty package
logs/package/kernel/linux/compile.txt:WARNING: kmod-can-slcan is not available in the kernel config - generating empty package
logs/package/kernel/linux/compile.txt:WARNING: kmod-can-usb-8dev is not available in the kernel config - generating empty package
logs/package/kernel/linux/compile.txt:WARNING: kmod-can-usb-ems is not available in the kernel config - generating empty package
logs/package/kernel/linux/compile.txt:WARNING: kmod-can-usb-kvaser is not available in the kernel config - generating empty package
logs/package/kernel/linux/compile.txt:WARNING: kmod-can-usb-peak is not available in the kernel config - generating empty package

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-03-14 20:56:11 +01:00
Zoltan HERPAI
af860c4dbf mxs: switch default kernel to 6.1
The testing kernel has been available since Jul/2023, let's switch
to it by default.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2024-03-14 14:24:16 +01:00
Nick Hainke
7b89388674 ramips: 5.15: delete remaining files
Remove the remaining configuration entries that were omitted in the
previous commit.

Fixes: 1576474f55 ("ramips: switch to 6.1 kernel")
Signed-off-by: Nick Hainke <vincent@systemli.org>
2024-03-13 23:51:23 +01:00
Jean Thomas
d1016446da mediatek: Add support for GL.iNet X3000 (Spitz AX) and XE3000 (Puli AX)
The GL.iNet X3000 and XE3000 are Wi-Fi 6 5G cellular routers, based on
MediaTek MT7981A SoC. The XE3000 is the same device as the X3000,
except for an additional battery.

Specifications:
 - SoC: Filogic 820 MT7981A (1.3GHz)
 - RAM: DDR4 512M
 - Flash: eMMC 8G, MicroSD card slot
 - WiFi: 2.4GHz and 5GHz with 6 antennas
 - Ethernet:
   - 1x LAN (10/100/1000M)
   - 1x WAN (10/100/1000/2500M)
 - 5G: Quectel RM520N-GL with two nano-SIM card slots
 - USB: 1x USB 2.0 port
 - UART:
   - 3.3V, TX, RX, GND / 115200 8N1

MAC addresses as verified by OEM firmware:
vendor   OpenWrt    address     source
WAN      eth0       label       factory 0x0a (label)
LAN      eth1       label + 1
2g       phy0-ap0   label + 2   factory 0x04
5g       phy1-ap0   label + 3

Installation via U-Boot rescue:
1. Press and hold reset button while booting the device
2. Wait for the Internet led to blink 5 times
3. Release reset button
4. The rescue page is accessible via http://192.168.1.1
5. Select the OpenWrt sysupgrade image and start upgrade
6. Wait for the router to flash new firmware and reboot

Revert to stock firmware:
1. Download the stock firmware from GL.iNet website
2. Use the method explained above to flash the stock firmware

Switch the modem network port between PCIe and USB interfaces:
1. Connect to the AT commands (/dev/ttyUSB2) port using
e.g. minicom: minicom -D /dev/ttyUSB2
2. Check the current modem mode with 'AT+QCFG="data_interface"':
  - 0,0 indicates that the network port uses the USB interface
  - 1,0 indicates that the network port uses the PCIe interface
3. Switch the active interface with:
  - 'AT+QCFG="data_interface",0,0' to use the USB interface
  - 'AT+QCFG="data_interface",1,0' to use the PCIe interface
4. Reboot

Signed-off-by: Jean Thomas <jean.thomas@wifirst.fr>
2024-03-13 20:47:23 +00:00
Jean Thomas
e1831321de mediatek: mt7981: pinctrl: add additional emmc groups
Add new emmc groups in the pinctrl driver for the
MediaTek MT7981 SoC:
* emmc reset, with pin 15.
* emmc 4-bit bus-width, with pins 16 to 19, and 24 to 25.
* emmc 8-bit bus-width, with pins 16 to 25.

The existing emmc_45 group is kept for legacy reasons, even
if this is the union of emmc_reset and emmc_8 groups.

Signed-off-by: Jean Thomas <jean.thomas@wifirst.fr>
2024-03-13 20:47:23 +00:00
Jean Thomas
80e6e52026 mediatek: mt7981: pinctrl: add additional uart group
Add uart1_3 (pins 26, 27) group to the pinctrl driver for the
MediaTek MT7981 SoC.

Signed-off-by: Jean Thomas <jean.thomas@wifirst.fr>
2024-03-13 20:47:23 +00:00
Daniel Golle
003b9ff61c generic: mtk_eth_soc: fix PPE hanging issue
A patch to resolve an issue was found in MediaTek's GPL-licensed SDK:
In the mtk_ppe_stop() function, the PPE scan mode is not disabled before
disabling the PPE. This can potentially lead to a hang during the process
of disabling the PPE.

Without this patch, the PPE may experience a hang during the reboot test.

Reference: b40da332df

Suggested-by: Bc-bocun Chen <bc-bocun.chen@mediatek.com>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-03-13 19:18:43 +00:00
Daniel Golle
33d6ba5045 generic: 5.15: mtk_eth_soc: backport fix for hang on link up
Backport commit faa5f17fe2 ("kernel: mtk_eth_soc: release
MAC_MCR_FORCE_LINK only when MAC is up") to Linux 5.15 as well.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-03-13 19:18:43 +00:00
Shiji Yang
33c812b639 ath79: add missing kernel config symbols
Refresh kernel configs to add the missing symbols.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
2024-03-13 13:48:42 +01:00
Shiji Yang
0efa91d6ea ath79: remove obsolete 5.15 kernel support
The 5.15 kenel config file, patches and version switches will be
removed in this patch. We will introduce kernel 6.6 support soon.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
2024-03-13 13:48:42 +01:00
Shiji Yang
a437950770 ath79: switch default kernel to 6.1
The 6.1 kernel has been tested for over half a year.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
2024-03-13 13:48:42 +01:00
Mikhail Zhilkin
1d3d6ef826 ramips: add support for Z-ROUTER ZR-2660
This commit adds support for Z-ROUTER ZR-2660 (also known as Routerich
AX1800) wireless WiFi 6 router.

Specification
-------------
- SoC       : MediaTek MT7621AT, MIPS, 880 MHz
- RAM       : 256 MiB
- Flash     : NAND 128 MiB (AMD/Spansion S34ML01G2)
- WLAN      :
  - 2.4 GHz : MediaTek MT7905D/MT7975 (14c3:7916), b/g/n/ax, MIMO 2x2
  - 5 GHz   : MediaTek MT7915E (14c3:7915), a/n/ac/ax, MIMO 2x2
- Ethernet  : 10/100/1000 Mbps x4 (1x WAN, 3x LAN)
- USB       : 1x 2.0
- UART      : 3.3V, 115200n8, pins are silkscreened on the pcb
- Buttons   : 1x Reset
- LEDs      : 1x WiFi 2.4 GHz (green)
              1x WiFi 5 GHz (green)
              1x LAN (green)
              1x WAN (green)
              1x WAN no-internet (red)
- Power     : 12 VDC, 1 A

Installation
------------
1. Run tftp server on your PC (IP: 192.168.2.2) and put OpenWrt initramfs
   image (initramfs.bin) to the tftp root dir
2. Open the following link in the browser to enable telnet:
	http://192.168.2.1/cgi-bin/telnet_ssh
3. Connect to the router (default IP: 192.168.2.1) using telnet shell
   (credentials - user:admin)
4. Run the following commands in the telnet shell (this will install
   OpenWrt initramfs image on nand flash):
	cd /tmp
	tftp -g -r initramfs.bin 192.168.2.2
	mtd write initramfs.bin firmware
	mtd erase firmware_backup
	reboot
5. Copy OpenWrt sysupgrade image (sysupgrade.bin) to the /tmp dir of the
   router
6. Connect to the router (IP: 192.168.1.1) using ssh shell and run
   sysupgrade command:
	sysupgrade -n /tmp/sysupgrade.bin

Return to stock
---------------
1. Copy stock firmware (stock.bin) to the /tmp dir of the router using scp
2. Run following command in the router shell:
	cd /tmp
	mtd write stock.bin firmware
	reboot

Recovery
--------
Connect uart (pins are silkscreened on the pcb), interrupt boot process by
pressing any key, use u-boot menu to flash stock firmware image or OpenWrt
initramfs image.

MAC addresses
-------------
+---------+-------------------+-----------+
|         | MAC               | Algorithm |
+---------+-------------------+-----------+
| LAN     | 24:0f:5e:xx:xx:4c | label     |
| WAN     | 24:0f:5e:xx:xx:4d | label+1   |
| WLAN 2g | 24:0f:5e:xx:xx:4e | label+2   |
| WLAN 5g | 24:0f:5e:xx:xx:4f | label+3   |
+---------+-------------------+-----------+
The WLAN 2.4 MAC was found in 'factory', 0x4
The LAN MAC was found in 'factory', 0xfff4
The WAN MAC was found in 'factory', 0xfffa

Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com>
2024-03-12 23:57:41 +01:00
Robert Marko
532de62e4c kernel: config: 6.6: disable ZSTD debug info compression by default
When kernel 6.6 is being compiled with GCC13 it will prompt for:
Compressed Debug information
> 1. Don't compress debug information (DEBUG_INFO_COMPRESSED_NONE)
  2. Compress debugging information with zlib (DEBUG_INFO_COMPRESSED_ZLIB)
  3. Compress debugging information with zstd (DEBUG_INFO_COMPRESSED_ZSTD) (NEW)

This is because kernel now also has support for compressing debug info
with ZSTD, so add the missing symbol and disable it by default.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-03-12 19:49:56 +01:00
Daniel Golle
65df33fc76 ramips: add support for YunCore G720
The YunCore G720 is a dual band 802.11ax router with 5 GbE ports.

Specs:
- SoC: MediaTek MT7621
- Ethernet: 5x GbE ports (built-in MT7530)
- Wireless 2.4GHz / 5GHz: MediaTek MT7915E
- RAM: 256MiB
- ROM: 16MiB (W25Q128)
- 1 Button (reset)
- 8 LEDs (1x system, 2x wifi, 5x switch ports)

Flash instructions:
The vendor firmware is based on OpenWrt, the sysupgrade image can be
flashed using the '-F' (force) option on the CLI.
Make sure not to keep settings when doing so.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-03-12 16:48:42 +00:00
Nick Hainke
1576474f55 ramips: switch to 6.1 kernel
We have had the testing kernel for several weeks now. Let's switch to 6.1
to have more testers. Additionally, 6.6 is already in the pipeline.

Signed-off-by: Nick Hainke <vincent@systemli.org>
2024-03-12 17:28:52 +01:00
Weijie Gao
4468cae502 kernel: config: add missing symbol for kenrel 6.6
CONFIG_HID_SUPPORT:
Set default value for kmod-hid

CONFIG_USB_CDNS3_IMX:
CONFIG_USB_CDNS3_PCI_WRAP:
CONFIG_USB_CDNSP_PCI:
Introduced by db0d7cf6a1 (usb: add cdns3 support)

Signed-off-by: Weijie Gao <hackpascal@gmail.com>
2024-03-12 22:52:28 +08:00
Robert Marko
645b44d8ff Revert "kernel: config: add symbol introduced with 6.2"
This reverts commit 7ea82bc17d.

This commit does not meet formal requirments, and has been merged due to
my error.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-03-12 13:01:59 +01:00
Robert Marko
a158f9f405 starfive: refresh patches
CI reported that patches need to be refreshed, so lets refresh.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-03-12 10:27:38 +01:00
CharlesMengCA
7ea82bc17d
kernel: config: add symbol introduced with 6.2
CONFIG_DEBUG_INFO_COMPRESSED_ZSTD, required by  GCC 13.0+

Compress the debug information using zstd. This may provide better compression than zlib, for about the same time costs, but requires newer toolchain support. Requires GCC 13.0+ or Clang 16.0+, binutils 2.40+, and zstd.


Signed-off-by: CharlesMengCA <58993776+CharlesMengCA@users.noreply.github.com>
2024-03-12 00:06:14 -04:00
Daniel Golle
448b48c245 mediatek: add Linux 6.6 as testing kernel
Add KERNEL_TESTING_PATCHVER for Linux 6.6.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-03-11 21:22:12 +00:00
Daniel Golle
cd509d739a mediatek: add kernel configs for Linux 6.6
Add config-6.6 for all mediatek subtargets.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-03-11 21:22:12 +00:00
Daniel Golle
3043bd2621 mediatek: fix build of MT7988 clk drivers on Linux 6.6
As shared remove functions now returns void instead of int we need to
use .remove_new instead of .remove.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-03-11 21:22:12 +00:00
Daniel Golle
dcac4a28e6 mediatek: leds-smartrg-system: fix build on Linux 6.6
Adapt to changed function pointer prototypes.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-03-11 21:22:12 +00:00
Daniel Golle
5b4bbd1097 mediatek: 6.6: refresh patches
Refresh patches and fix changed path for 32-bit mediatek boards
'arch/arm/dts' -> 'arch/arm/dts/mediatek'

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-03-11 21:22:12 +00:00
Daniel Golle
f4223abd8f mediatek: 6.6: drop patches backported as fixes
Drop patches backported as fixes in later kernel version.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-03-11 21:22:12 +00:00
Daniel Golle
23a8e28256 mediatek: 6.6: drop backport patches
Drop all backport patches that are now included in kernel 6.6.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-03-11 21:22:12 +00:00
Daniel Golle
95d3d353f8 mediatek: copy patches-6.1 to patches-6.6
Copy patches from patches-6.1 to patches-6.6. No changes.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-03-11 21:22:12 +00:00
Daniel Golle
9cb70f399c mediatek: copy files-6.1 to files-6.6
Copy files from files-6.1 to files-6.6. No changes.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-03-11 21:22:12 +00:00
Daniel Golle
c0e1e7542c generic: 6.6: fix copy & refresh
A new patch was added meanwhile which will go as fix via netdev tree.
Copy & refresh it for Linux 6.6 as well.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-03-11 21:21:45 +00:00
John Audia
d84128658b kernel: config: add symbol introduced with 6.1.81
Add CONFIG_EFI_HANDOVER_PROTOCOL=y to the default config[1] and disable CONFIG_NFSD_V2

1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/diff/arch/x86/Kconfig?id=v6.1.81&id2=v6.1.80

Signed-off-by: John Audia <therealgraysky@proton.me>
2024-03-11 21:51:37 +01:00
John Audia
dd02da54e9 kernel: bump 6.1 to 6.1.81
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.1.81

All 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>
2024-03-11 21:51:37 +01:00
Daniel Golle
f6c27b22f6 generic: 6.6: fix realtek PHY detection patch
Avoid crashing the kernel when trying to detect early versions of
RealTek RTL8221B 2.5G Ethernet PHY.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-03-11 20:17:26 +01:00
Robert Marko
7acb8203c2 generic: 6.6: fix uncompressed kallsyms
Currently, the existing uncompressed kallsym support is causing qualcommax
boards to hang on boot, and only after earlycon and verbose BUG() prints
are enabled the trace is visible:
[    0.000000] ------------[ cut here ]------------
[    0.000000] kernel BUG at kernel/kallsyms.c:340!
[    0.000000] Internal error: Oops - BUG: 00000000f2000800 [#1] SMP

Felix has fixed up the uncompressed kallsyms support so modify the current
patch with the fix.
All credits for the code go to Felix.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-03-11 20:17:26 +01:00
Daniel Golle
d356fb33c3 generic: v6.6: update fitblk driver to work with Linux 6.6
Update fitblk driver which has previously been backported to Linux 6.1
so it can build and work with Linux 6.6.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-03-11 20:17:26 +01:00
Weijie Gao
6be4e487da generic: 6.6: refresh config symbols
Sort generic config for 6.6.

The sort commands:
$ ./scripts/kconfig.pl '+' target/linux/generic/config-6.6 /dev/null > target/linux/generic/config-6.6-new
$ mv target/linux/generic/config-6.6-new target/linux/generic/config-6.6

Signed-off-by: Weijie Gao <hackpascal@gmail.com>
2024-03-11 20:17:26 +01:00
Weijie Gao
7f356a7bd3 generic: 6.6: add missing symbols
Add missing symbols to config for 6.6.

Signed-off-by: Robert Marko <robimarko@gmail.com>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Signed-off-by: Weijie Gao <hackpascal@gmail.com>
2024-03-11 20:17:26 +01:00
Weijie Gao
9a673642a2 generic: 6.6: refresh hack patches
Refresh hack patches with make target/linux/refresh.

Signed-off-by: Weijie Gao <hackpascal@gmail.com>
2024-03-11 20:17:26 +01:00
Weijie Gao
293caa16a0 generic: 6.6: refresh pending patches
Refresh pending patches with make target/linux/refresh.

Signed-off-by: Weijie Gao <hackpascal@gmail.com>
2024-03-11 20:17:26 +01:00
Weijie Gao
6bac820c0f generic: 6.6: refresh backport patches
Refresh backport patches with make target/linux/refresh.

Signed-off-by: Weijie Gao <hackpascal@gmail.com>
2024-03-11 20:17:26 +01:00
Weijie Gao
d9bc5c93de generic: 6.6: manually refresh hack patches
Refresh hack patches for kernel 6.6.

Signed-off-by: Weijie Gao <hackpascal@gmail.com>
2024-03-11 20:17:26 +01:00
Weijie Gao
5b6bca812d generic: 6.6: manually refresh pending patches
Refresh pending patches for kernel 6.6.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Signed-off-by: Weijie Gao <hackpascal@gmail.com>
2024-03-11 20:17:26 +01:00
Weijie Gao
a76397cd47 generic: 6.6: manually refresh backport patches
Refresh backport patches that still needs to be merged for kernel 6.6.

Signed-off-by: Weijie Gao <hackpascal@gmail.com>
2024-03-11 20:17:26 +01:00
Weijie Gao
1057d9b39d generic: 6.6: drop pending patch backported as fixes
Drop pending patch backported as fixes in later kernel version.

Signed-off-by: Weijie Gao <hackpascal@gmail.com>
2024-03-11 20:17:26 +01:00
Weijie Gao
8c3892b1d7 generic: 6.6: drop backport patches
Drop all backport patches that are now included in kernel 6.6.

Signed-off-by: Weijie Gao <hackpascal@gmail.com>
2024-03-11 20:17:26 +01:00
Weijie Gao
8a9273d51e generic: copy backport, hack, pending patch and config from 6.1 to 6.6
Copy backport, hack, pending patch and config from 6.1 to 6.6.

Signed-off-by: Weijie Gao <hackpascal@gmail.com>
2024-03-11 20:17:25 +01:00
Daniel Golle
ecc9d0195b mediatek: mt7988: fix clk for 2nd PCIe port
Due to what seems to be an undocumented oddity in MediaTek's MT7988
SoC design the CLK_INFRA_PCIE_PERI_26M_CK_P2 clock requires
CLK_INFRA_PCIE_PERI_26M_CK_P3 to be enabled.

This currently leads to PCIe port 2 not working in Linux.

Reflect the apparent relationship in the clk driver to make sure PCIe
port 2 of the MT7988 SoC works.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-03-11 19:14:14 +00:00
Daniel Golle
faa5f17fe2 kernel: mtk_eth_soc: release MAC_MCR_FORCE_LINK only when MAC is up
Clearing bit MAC_MCR_FORCE_LINK which forces the link down too early
can result in MAC ending up in a broken/blocked state.

Fix this by handling this bit in the .mac_link_up and .mac_link_down
calls instead of in .mac_finish.

Suggested-by: Mason-cw Chang <Mason-cw.Chang@mediatek.com>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-03-11 19:14:14 +00:00
Daniel Golle
45a2109353 mediatek: mt7622: linksys-e8450: set driving strength for SPI-NAND
Set 12mA driving strength for SPI-NAND pins like the stock firmware's
bootloader does as well.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-03-11 19:14:14 +00:00
Kyle Hendry
1a69543376 bmips: add support for SmartRG SR505n
Specifications:
- SoC: Broadcom BCM63168 dual 400MHz MIPS
- Flash: 16MB SPI NOR W25Q128WFG
- RAM: 128MB DDR3 W631GG6KB-15
- Ethernet: 1x 1000M, 3x 100M
- Wifi: BCM435F
- 1x USB 2.0 port
- 3x Button
- 12x LED

Flashing via serial
- Connect to the 3.3V TTL UART on the board
  (J6 pinout Vcc Rx Tx Gnd) at 115200-8-N-1
- Press any key in the serial console when powering up the board to enter
  the CFE prompt
- Configure an interface on your workstation to static IP 192.168.1.100
  and connect it to the board
- Start a TFTP server with the firmware image
- On the CFE prompt, enter the command
  "f 192.168.1.100:openwrt-bmips-bcm63268-smartrg_sr505n-squashfs-cfe.bin"

Signed-off-by: Kyle Hendry <kylehendrydev@gmail.com>
[Remove unneeded LED labels]
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2024-03-10 20:26:07 +01:00
Zoltan HERPAI
4070e2a64c starfive: add new target for StarFive JH7100/7110 SoC
This target adds support for the StarFive JH7100 and JH7110 SoCs, based on
6.1, as well as a couple boards equipped with these.

Specifications:

SoCs:

JH7100:
 - StarFive JH7100 dual-core RISC-V (U74, RC64GC)
 - additional monitoring (S7) and control (E24) cores
 - 2Mb L2 cache

JH7110:
 - StarFive JH7110 quad-core RISC-V (U74, RV64GC)
 - additional monitoring (S7) and control (E24) cores
 - 2Mb L2 cache

Boards:

VisionFive1:
 - JH7100 @ 1GHz
 - Memory: 8Gb LPDDR4
 - 4x USB3.0
 - 1x GBit ethernet
 - AMPak 6236 wifi / bluetooth
 - audio
 - powered via USB-C

VisionFive2:
 - JH7110 @ 1.5GHz
 - Memory: 2/4/8Gb DDR4
 - 2x Gbit ethernet
 - 2x USB3.0 / 2x USB2.0
 - eMMC / SDIO
 - various multimedia input/outputs (MIPI CSI, HDMI, audio)
 - M.2 key M slot
 - PoE support
 - powered via USB-C

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>
2024-03-10 18:21:46 +01:00
Zoltan HERPAI
db0d7cf6a1 usb: add cdns3 support
CDNS3 is a SuperSpeed (SS) USB 3.0 Dual-Role-Device (DRD) controller from
Cadence. Add support for this device, and add the required symbols into
the generic configs.

Compile-tested: apm821xx, bcm4908, imx, mpc85xx, pistachio, starfive

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2024-03-10 18:21:41 +01:00
Sungbo Eo
261876a067 ramips: improve support for STORYLiNK SAP-G3200U3
* Increase flash SPI frequency to 50MHz

  The maximum SPI frequency of MX25L6406EM2I is 86 MHz,
  but in this patch 50 MHz was chosen as a safe value.

* Update Ethernet MAC addresses

  Till now LAN/WAN MAC addresses were flipped
  compared to stock firmware.

* Fix Wi-Fi LEDs by adding mt76 led nodes

* Fix LAN port order

  LAN ports are in reverse order of switch ports.

* Fix the well-known "LZMA ERROR 1" error by using lzma-loader

* Set uImage name, which enables installation via stock web interface:

  1.  Upload **initramfs** image file to the web page.
  2.  Boot into OpenWrt and perform sysupgrade with sysupgrade image.

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
2024-03-10 16:32:14 +09:00
Sungbo Eo
85a8f58483 ramips: add factory image for ipTIME AX2004M
Unlike the recovery image, this initramfs-factory image can be flashed
using the stock firmware web interface (from any active boot partition),
as well as the bootloader recovery web page. Drop the recovery image in
favor of the factory image.

Installation via stock/recovery web interface:
1.  Flash **initramfs-factory** image through the web page.
2.  Boot into OpenWrt and perform sysupgrade with sysupgrade image.

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
2024-03-10 16:32:14 +09:00
Sungbo Eo
b94ea51819 ramips: mt7621: use variable for relocate-kernel argument
The "0x80001000" address logically comes from "loadaddr-y" variable for
mt7621 subtarget. Let's replace the hardcoded value with the predefined
variable. This change is purely cosmetic.

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
2024-03-10 16:32:14 +09:00
Sungbo Eo
ec45f2f246 ramips: rename mtd partition of ipTIME NAND devices
Contrary to common ipTIME NOR devices, the "Config" partition of T5004
and AX2004M contain normal U-Boot environment variables. Renaming the
partition into "u-boot-env" serves for better description, and it also
conforms to common naming practice in OpenWrt.

This patch might also be extended to A3004T, but its u-boot-env
partition layout has not been confirmed yet.

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
2024-03-10 16:32:14 +09:00
Sungbo Eo
7e04a611bc ramips: add NMBM support for ipTIME AX2004M
AX2004M uses NMBM on its NAND flash, but it was not enabled in DTS as the
device support [1] had been added before NMBM feature in mtk_bmt driver [2].
Let's enable it now.

With this change, there is a low possibility of boot failure after
sysupgrade from older versions. As AX2004M already has gone through
two stable releases in the meantime, it would be safe to warn users
by bumping DEVICE_COMPAT_VERSION.

[1] 37753f34ac ("ramips: add support for ipTIME AX2004M")
[2] 06382d1af7 ("kernel: add support for mediatek NMBM flash mapping support")

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
2024-03-10 16:32:14 +09:00
Sebastian Schaper
ee69f81ca5 ath79: add support for D-Link COVR-C1200 A1
The COVR-C1200 devices are sold as "Whole Home Mesh Wi-Fi"
sets in packs of two (COVR-C1202) and three (COVR-C1203).

Specifications:
 * QCA9563, 16 MiB flash, 128 MiB RAM, 2x3:2 802.11n
 * QCA9886 2x2:2 801.11ac Wave 2
 * AR8337, 2 Gigabit ports (1: WAN; 2: LAN)
 * USB Type-C power connector (5V, 3A)

Installation COVR Point A:
 * In factory reset state: OEM Web UI is at 192.168.0.50
   no DHCP, skip wizard by directly accessing:
     http://192.168.0.50/UpdateFirmware_Simple.html
 * After completing setup wizard: Web UI is at 192.168.0.1
     DHCP enabled, login with empty password
 * Flash factory.bin
 * Perform a factory reset to restore OpenWrt UCI defaults

Installation COVR Points B:
 * OEM Web UI is at 192.168.0.50, no DHCP, empty password
 * Flash factory.bin
 * Perform a factory reset to restore OpenWrt UCI defaults

Recovery:
 * Keep reset button pressed during power on
 * Recovery Web UI is at 192.168.0.50, no DHCP
 * Flash factory.bin
   used to work best with Chromium-based browsers or curl:
     curl -F firmware=@factory.bin \
       http://192.168.0.50/upgrade.cgi
   since this fails to work on modern Linux systems,
   there is also a script dlink_recovery_upload.py

Signed-off-by: Sebastian Schaper <openwrt@sebastianschaper.net>
2024-03-09 20:00:11 +01:00
Sebastian Schaper
6fa2ae30bb ath79: split dtsi for D-Link COVR-P2500
in preparation of adding COVR-C1200

Signed-off-by: Sebastian Schaper <openwrt@sebastianschaper.net>
2024-03-09 20:00:11 +01:00
Christian Lamparter
0671803bc5 Revert "ipq-wifi: fix upstream board-2.bin ZTE M289F snafu"
This reverts commit 75505c5ec7.
The issue has been fixed upstream.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2024-03-09 20:00:11 +01:00
Daniel Golle
330316f056 mediatek: linksys-e8450: improve compat warning
Include a statement about having to run the installer in the
sysupgrade compat warning for the Linksys E8450 (UBI).

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-03-09 14:02:58 +00:00
Daniel Golle
cd4de3251c mediatek: wait for fitblk rootfs
Probing of the fitblk driver in some situations happens after the kernel
attempts to mount rootfs, which then fails.
Always use 'rootwait' when using fitblk for rootfs.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-03-09 14:02:58 +00:00
INAGAKI Hiroshi
8efd1f98a9 ath79: cleanup and enable uart1 on ELECOM WAB-I1750-PS
Cleanup uart1-related node on ELECOM WAB-I1750-PS and enable it for
"SERIAL" port on the case.

"SERIAL" port can be used for OpenWrt console by adding the following
line to /etc/inittab and rebooting:

ttyATH1::askfirst:/usr/libexec/login.sh

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2024-03-08 17:35:01 +01:00
INAGAKI Hiroshi
a9f780a78e ath79: drop unnecessary &uart node from dtsi of QCA955x devices
&uart (uart0) is already enabled in qca955x.dtsi by default.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2024-03-08 17:35:01 +01:00
INAGAKI Hiroshi
bb6d11e534 ath79: add aliases to qca955x.dtsi for uart0/1
Add aliases with "serialN = &uartN;" of uart0/1 on QCA955x SoCs to
qca955x.dtsi, to enable uart1 on Linux Kernel.

without this:

[    0.342915] ar933x-uart 18500000.uart: unable to get alias id, err=-19

Additionally, remove "serial0 = &uart;" alias from QCA955x device
dts/dtsi files.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2024-03-08 17:35:01 +01:00
INAGAKI Hiroshi
35ae18fc06 ath79: add HighSpeed UART (uart1) support for QCA955x
Add HighSpeed UART support to QCA955x series SoCs as a secondary UART
(uart1). This UART is compatible with qca,ar9330-uart.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2024-03-08 17:35:01 +01:00
INAGAKI Hiroshi
e0ee4195fc ath79: rename label of primary UART on QCA955x to "uart0"
Rename the DT label of the primary UART on Qualcomm Atheros QCA955x
series SoCs to "uart0" from "uart" for the preparation to add HighSpeed
UART (uart1) support.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2024-03-08 17:35:01 +01:00
Christian Lamparter
102009f3ea mpc85xx: p1020: convert Aerohive AP330/AP350 to simpleImage
with 6.1, the kernel no longer fitted into the 16 MiB and
kicking down the can and increasing KERNEL_SIZE to 20 MiB
didn't help as the device failed to boot.

Using 'kernel-bin | gzip | uimage gzip' didn't work since the
uboot does not have enough heap to decompress these big kernels.

And finally playing around with uboot was more a hassle than
converting this device to take the simpleImage-boot-route in
the future.

Note: The device now takes even longer on the first boot-up after
the flash due to JFFS2 initializing all the remaining flash.
Be prepared to wait up to 10 minutes before the green status LED
stops blinking and will shine a solid green!

(On the plus site: the device now has ~10 MiB of additional
space for rootfs+rootfs_data).

Note2: This patch includes a kernel patch refresh.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2024-03-08 17:24:14 +01:00
Pawel Dembicki
a99dfd195e mpc85xx: add 6.1 testing kernel
Configure 6.1 testing kernel for mpc85xx target.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2024-03-08 17:24:13 +01:00
Pawel Dembicki
6a8b831593 mpc85xx: p1010: change wrapper address of simple image devices
Kernel and initramfs size grows. Now uncompressed initramfs image and
regular kernel image overlaps configured area:

Initramfs:
  WRAP    arch/powerpc/boot/simpleImage.br200-wp
INFO: Uncompressed kernel (size 0x1428688) overlaps the address of the
wrapper(0x1000000)
INFO: Fixing the link_address of wrapper to (0x1500000)
  WRAP    arch/powerpc/boot/simpleImage.tl-wdr4900-v1
INFO: Uncompressed kernel (size 0x1428688) overlaps the address of the
wrapper(0x1000000)
INFO: Fixing the link_address of wrapper to (0x1500000)
  WRAP    arch/powerpc/boot/simpleImage.ws-ap3715i
INFO: Uncompressed kernel (size 0x1428688) overlaps the address of the
wrapper(0x1000000)
INFO: Fixing the link_address of wrapper to (0x1500000)

Regular image:
  WRAP    arch/powerpc/boot/simpleImage.br200-wp
INFO: Uncompressed kernel (size 0x10e0688) overlaps the address of the
wrapper(0x1000000)
INFO: Fixing the link_address of wrapper to (0x1100000)
  WRAP    arch/powerpc/boot/simpleImage.tl-wdr4900-v1
INFO: Uncompressed kernel (size 0x10e0688) overlaps the address of the
wrapper(0x1000000)
INFO: Fixing the link_address of wrapper to (0x1100000)
  WRAP    arch/powerpc/boot/simpleImage.ws-ap3715i
INFO: Uncompressed kernel (size 0x10e0688) overlaps the address of the
wrapper(0x1000000)
INFO: Fixing the link_address of wrapper to (0x1100000)

Let's change wrapper address to safe value.

Tested on: TL-WDR4900, BR200-WP

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2024-03-08 17:24:13 +01:00
Pawel Dembicki
894ff58067 mpc85xx: kernel: refresh 6.1 config
Kernel config needs to be refreshed after copy from 5.15.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2024-03-08 17:24:13 +01:00
Pawel Dembicki
44ed2dc91c mpc85xx: refresh 6.1 patches
Most changes done by "make target/linux/refresh"

Manually refreshed:
102-powerpc-add-cmdline-override.patch

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2024-03-08 17:24:13 +01:00
Pawel Dembicki
7b01179e62 mpc85xx: copy patches 5.15 to 6.1
Just copy of config.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2024-03-08 17:24:13 +01:00
Pawel Dembicki
123daef93c mpc85xx: copy config 5.15 to 6.1
Simple copy of patches.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2024-03-08 17:24:13 +01:00
Pawel Dembicki
3361ff9572 mpc85xx: Get rid of 'of_flat_dt_is_compatible'
This patch replaces 'of_flat_dt_is_compatible' with 'of_machine_is_compatible'.
The TL-WDR4900 platform file won't compile in the 6.1 kernel. The platform
files for the rest of the routers have been reworked or based on newer
solutions.

Let's make the TL-WDR4900 consistent with them.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2024-03-08 17:24:13 +01:00
Hauke Mehrtens
9cfa5f7417 lantiq: Fix build after kernel 5.15.150
This fixes the following compile problem:
````
  CC      arch/mips/kernel/vpe-mt.o
arch/mips/kernel/vpe-mt.c: In function 'vpe_run':
arch/mips/kernel/vpe-mt.c:32:23: error: unused variable 'physical_memsize' [-Werror=unused-variable]
   32 |         unsigned long physical_memsize = 0L;
      |                       ^~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors
make[6]: *** [scripts/Makefile.build:289: arch/mips/kernel/vpe-mt.o] Error 1
````

physical_memsize was removed from upstream kernel, see:
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-5.15.y&id=5b4f6c5ff65c8551018ccea40c569afd759734c0

Fixes: 387fde0da0 ("kernel: bump 5.15 to 5.15.150")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-03-08 14:49:09 +01:00
Furong Xu
22f24f9107 mediatek: clean duplicated #include in Xiaomi Redmi AX6000's dts
Clean duplication of #include <dt-bindings/leds/common.h>.
Thanks musashino205

Fixes: 1493e8f8cb ("mediatek: convert LED color/function format for Xiaomi Redmi AX6000")
Signed-off-by: Furong Xu <xfr@outlook.com>
2024-03-08 16:51:35 +08:00
Furong Xu
8d355b870a mediatek: filogic: switch to fitblk for Xiaomi Redmi AX6000
Use the new fitblk driver.

Run-tested: filogic/mt7986a-xiaomi-redmi-router-ax6000-ubootmod

Signed-off-by: Furong Xu <xfr@outlook.com>
2024-03-08 15:28:30 +08:00
Furong Xu
1493e8f8cb mediatek: convert LED color/function format for Xiaomi Redmi AX6000
Commit 2d63d42f5e ("mediatek: convert to new LED color/function
format where possible") leaves Xiaomi Redmi AX6000 un-converted,
the two LEDs become dead.
Now, LEDs are alive again.

Fixes: 2d63d42f5e ("mediatek: convert to new LED color/function
format where possible")

Signed-off-by: Furong Xu <xfr@outlook.com>
2024-03-08 15:26:57 +08:00
Tony Ambardar
4adba64156 kernel: 6.1: add missing config symbol for tracing
Add missing option CONFIG_FPROBE to generic config, found building x86_64
arch with tracing enabled.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2024-03-07 21:07:26 +01:00
Hauke Mehrtens
cd450923ab kernel: Remove unused schedulers
These schedulers were removed in kernel 5.15.150 and 6.1.180.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-03-07 19:30:54 +01:00
Hauke Mehrtens
387fde0da0 kernel: bump 5.15 to 5.15.150
Removed because it is upstream:
bcm53xx/patches-5.15/030-v5.16-0019-ARM-dts-BCM53573-Describe-on-SoC-BCM53125-rev-4-swit.patch
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=cb1003c07e746e4e82bdd3959c9ea37018ed41a3

Removed because it is upstream:
bcm53xx/patches-5.15/037-v6.6-0004-ARM-dts-BCM53573-Drop-nonexistent-default-off-LED-tr.patch
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=c65a23e98e38dc991f495d6bdb3cfa6163a88a0c

Removed because it is upstream:
bcm53xx/patches-5.15/037-v6.6-0005-ARM-dts-BCM53573-Drop-nonexistent-usb-cells.patch
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=71475bcee001cae3844644c2787eef93b26489d1

Adapted hack-5.15/650-netfilter-add-xt_FLOWOFFLOAD-target.patch to match
the changes from the upstream flow offload patch:
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=7c71b831220edeab7ce603d818dc1708d9ea4137

Manually Adapted the following patch:
bcm53xx/patches-5.15/035-v6.2-0004-ARM-dts-broadcom-align-LED-node-names-with-dtschema.patch

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-03-07 19:30:54 +01:00
Hauke Mehrtens
26d1d52403 kernel: bump 5.15 to 5.15.149
Removed because it is upstream:
generic/pending-5.15/540-ksmbd-only-v2-leases-handle-the-directory.patch
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=81ea755b8fa57ce186f56f14b709cf491c2a5505

Manually Adapted the following patch:
ath79/patches-5.15/900-unaligned_access_hacks.patch

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-03-07 19:30:54 +01:00
Robert Marko
e247763617 ath25: drop target
ath25 has been on life support for the last couple of releases, eventually
leading to marking it as source-only in 2023.

It has been basically only touched to do a kernel bump so that we can make
the new OpenWrt release which was a challenge due to small RAM amount.

However, with the attempt of kernel 6.1 update it turns out that kernel
cannot even finish booting due to RAM constraints, so its time to let this
target go.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-03-07 12:15:51 +01:00
Dirk Buchwalder
93610492b6 qualcommax: ipq60xx: add support for netgear wax214
Netgear WAX214 is a 802.11 ax dual-band AP
    with PoE. (similar to Engenius EWS357APV3)

    Specifications:

        •     CPU: Qualcomm IPQ6010 Quad core Cortex-A53
        •     RAM: 512MB of DDR3
        •     Storage: 128MB NAND (Macronix MX30UF1G18AC)
        •     Ethernet: 1x 1G RJ45 port (QCA8072) PoE
        •     WIFI:
              2.4GHz: Qualcomm QCN5022 2x2 802.11b/g/n/ax 574 Mbps PHY rate
              5GHz: Qualcomm QCN5052 2x2 802.11a/b/g/n/ac/ax 1201 PHY rate

        •     LEDs:
              4 x GPIO-controlled LEDs
                - 1 Power LED (orange)
                - 1 LAN LED (blue)
                - 1 WIFI 5g LED (blue)
                - 1 WIFI 2g LED (blue)
                black_small_square  Buttons: 1x soft reset
                black_small_square  Power: 12V DC jack or PoE (802.3af )

            An populated serial header is onboard, format is
             1.25mm 4p (DF13A-4P-1.25H)
            RX/TX is working, bootwait is active, secure boot is not
            enabled.

            The root password of the stock firmware is unknown,
            but failsafe mode can be entered to reset the password.

            Installation Instructions:

                - obtain serial access
                - stop auto boot (press "4", Entr boot command line
		  interface)
                - setenv active_fw 0 (to boot from the primary rootfs,
                  or set to 1 to boot from the secondary rootfs
                  partition)
                - saveenv

                - tftpboot the initramfs image
                - bootm

                - copy
		  openwrt-qualcommax-ipq60xx-netgear_wax214-squashfs-factory.ubi
                  to the device
                - write the image to the NAND:
                   - cat /proc/mtd and look for rootfs partition (should
		     be mtd11,
                     or mtd12 if you choose active_fw 1)
                   - ubiformat /dev/mtd11 -f -y
		     openwrt-qualcommax-ipq60xx-netgear_wax214-squashfs-factory.ubi
                - reboot

            Note: the firmware is senao-based. But I was unable to build
                  a valid senao-header into the image.
                  Maybe they changed the header format and senaoFW isn't
                  working any more.

Signed-off-by: Dirk Buchwalder <buchwalder@posteo.de>
2024-03-05 06:34:35 +01:00
John Audia
13cdc8955c kernel: bump 6.1 to 6.1.80
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.1.80

Manually rebased:
	generic/hack-6.1/650-netfilter-add-xt_FLOWOFFLOAD-target.patch[1]

All other patches automatically rebased.

1. Acknowledgement to @heheb and @DragonBluep. Upstream commit for ref: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.1.80&id=9c5662e95a8dcc232c3ef4deb21033badcd260f6

Build system: x86/64
Build-tested: x86/64/AMD Cezanne, ramips/tplink_archer-a6-v3
Run-tested: x86/64/AMD Cezanne, ramips/tplink_archer-a6-v3

Signed-off-by: John Audia <therealgraysky@proton.me>
2024-03-05 00:23:59 +01:00
Álvaro Fernández Rojas
fe0081eecf bcm27xx: use PARTUUID for root in cmdline
This allows booting from USB/NVME while keeping SD compatibility.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2024-03-04 16:28:57 +01:00
Álvaro Fernández Rojas
fb80be6944 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>
2024-03-04 16:27:39 +01:00
Álvaro Fernández Rojas
552c6b2472 bcm27xx: base-files: fix platform_copy_config
/boot/kernel*.img wildcard only works without quotation marks.

Fixes: 1a5e51ab00 ("bcm27xx: base-files: fix platform_copy_config")
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2024-03-04 16:20:55 +01:00
Álvaro Fernández Rojas
5cd8e037b5 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>
2024-03-04 16:12:21 +01:00
Tobias Schramm
336a531c15 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>
2024-03-02 14:21:20 +01:00
Tobias Schramm
1ed01ef606 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>
2024-03-02 14:21:20 +01:00
Paul Geraedts
8256d06933 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>
2024-03-02 14:08:08 +01:00
INAGAKI Hiroshi
b18edb1bfa 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>
2024-03-02 14:08:08 +01:00
INAGAKI Hiroshi
8e72fa8b6f 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>
2024-03-02 14:08:08 +01:00
INAGAKI Hiroshi
2791ee79fa 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>
2024-03-02 14:08:08 +01:00
David Bentham
f5b2b08190 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>
2024-03-02 14:08:08 +01:00
Tim Harvey
c2e32b4886 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>
2024-03-02 14:08:08 +01:00
Christian Lamparter
8b0407d15d 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>
2024-03-02 14:08:07 +01:00
Christian Lamparter
7e53473ee8 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>
2024-03-02 14:08:04 +01:00
Christian Lamparter
625dea6170 apm821xx: remove 5.15 remnants
deletes config-5.15 and patches-5.15/.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2024-03-02 14:08:00 +01:00
Christian Lamparter
d775dc74ee apm821xx: make 6.1 kernel default
6.1 has been available for some time for testing.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2024-03-02 14:07:59 +01:00
Robert Marko
7f13b9f8be 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>
2024-03-01 19:51:24 +01:00
Pawel Dembicki
ff6df9ac9f 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>
2024-03-01 18:29:09 +01:00
Pawel Dembicki
73f99b6849 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>
2024-03-01 18:29:09 +01:00
Daniel Golle
a86ff06d2e 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>
2024-03-01 01:42:36 +00:00
Daniel Golle
7c468e5e64 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>
2024-03-01 01:42:36 +00:00
Daniel Golle
9d7e603f4d 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>
2024-03-01 01:03:42 +00:00
Linus Walleij
ef34f8f5b5 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>
2024-02-29 23:01:38 +01:00
Samuele Longhi
09be63de70 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>
2024-02-29 21:28:47 +01:00
Mieczyslaw Nalewaj
6e37f41e9e 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>
2024-02-29 21:24:56 +01:00
Robert Senderek
e8f7597317 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>
2024-02-29 21:16:27 +01:00
Zoltan HERPAI
99545b4bb1 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>
2024-02-29 16:50:22 +01:00
Felix Fietkau
c6319de48b 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: 6e2962d4c5 ("mediatek: mt7622: skip build for MT7622 rfb1 (UBI)")
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2024-02-28 09:59:43 +01:00
Daniel Huici
9c24a14ffa 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>
2024-02-27 22:27:46 +01:00
Mieczyslaw Nalewaj
ab853e1571 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>
2024-02-27 22:09:07 +01:00
David Bauer
35a5e62da7 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>
2024-02-26 22:17:39 +01:00
David Bauer
0985262fd0 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>
2024-02-26 22:17:13 +01:00
Jan Jasper de Kroon
6f23e92e1c 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>
2024-02-26 21:34:27 +01:00
Tomasz Maciej Nowak
a898a321a2 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>
2024-02-26 18:07:12 +01:00
Lorenzo Bianconi
695ecca5db 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>
2024-02-26 13:19:26 +01:00
Robert Senderek
611a9894b2 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>
2024-02-26 11:26:22 +01:00
Daniel Golle
85f34990d3 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>
2024-02-26 02:13:08 +00:00
Daniel Golle
eab44ec7ea 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>
2024-02-26 01:29:22 +00:00
Daniel Golle
0acf0bc204 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>
2024-02-26 01:29:22 +00:00
Robert Marko
9d9dd518ff 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>
2024-02-25 12:03:44 +01:00
Robert Marko
870e41a1e9 airoha: 6.1: refresh config
Refresh the 6.1 config.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-02-25 12:03:44 +01:00
Robert Marko
d646e4573c 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>
2024-02-25 12:03:44 +01:00
Robert Marko
0122eae6b8 airoha: 6.1: make patches apply
Drop upstreamed patches and refresh the left SPI controller patch.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-02-25 12:03:44 +01:00
Robert Marko
f611209662 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>
2024-02-25 12:03:44 +01:00
Tianling Shen
5ec6c58738
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: afca1236f3 ("rockchip: add NanoPi R4S Enterprise Edition build")
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2024-02-25 12:36:02 +08:00
Daniel Golle
3e8d2f2439 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>
2024-02-25 01:50:31 +00:00
Mieczyslaw Nalewaj
52cd3c74f1
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>
2024-02-24 22:03:57 +01:00
Marcin Gajda
6d8b36bfd8 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>
2024-02-24 19:49:39 +01:00
John Audia
33e72e0b3d 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>
2024-02-24 19:25:02 +01:00
Mieczyslaw Nalewaj
fdd3a05c40 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>
2024-02-24 19:23:03 +01:00
Mieczyslaw Nalewaj
9092fa3a53 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>
2024-02-24 19:23:03 +01:00
Mieczyslaw Nalewaj
4b81eda3c1 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>
2024-02-24 19:20:52 +01:00
Mieczyslaw Nalewaj
dca146cc77 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>
2024-02-24 19:20:52 +01:00
Daniel Golle
79dae14157 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>
2024-02-24 17:02:35 +00:00
Daniel Golle
360d27eb76 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>
2024-02-24 03:34:27 +00:00
Daniel Golle
6368ed1ae5 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>
2024-02-24 03:02:35 +00:00
Marcin Gajda
07b9186e88 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>
2024-02-23 19:46:23 +01:00
Christian Marangi
df3d5fd3f2
ipq806x: refresh Kconfig
Refresh Kconfig due to new changes in ARM decompressor with
kernel_makemenuconfig.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-02-23 18:05:09 +01:00
Christian Marangi
b2bb4b0f0a
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>
2024-02-23 18:04:48 +01:00
Daniel Golle
280b13dc64 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>
2024-02-23 14:37:35 +00:00
Daniel Golle
1794309bb5 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>
2024-02-23 14:35:00 +00:00
Daniel Golle
25c9ebc6d4 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>
2024-02-23 14:35:00 +00:00
Daniel Golle
33197d22f0 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>
2024-02-23 14:35:00 +00:00
Paweł Owoc
70fd815e57 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>
2024-02-23 13:34:59 +01:00
Robert Marko
ac77b45b08 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>
2024-02-23 10:52:52 +01:00
Paweł Owoc
278401e37a qualcommax: ipq807x: reordering, combine the same commands
Reordering, combine the same commands for ipq807x devices

Signed-off-by: Paweł Owoc <frut3k7@gmail.com>
2024-02-23 10:52:52 +01:00
Alan Luck
e222c8054c 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>
2024-02-22 22:53:30 +01:00
Tianling Shen
08e249d43c rockchip: remove LED label hack
Now we support parsing the color and function properties.
Ref: e814acc599 ("base-files: support parse DT LED color and function")

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2024-02-22 17:30:05 +01:00
Mantas Pucka
44168fda78 qualcommax: ipq60xx: Add 8devices Mango DVK
8devices Mango DVK is a single board computer / devkit for 8devices Mango
system-on-module (SoM).

Specifications:
* CPU: Qualcomm IPQ6010 Quad core Cortex-A53 1.8GHz
* RAM: 512 MB
* Storage:
    * 32 MB serial NOR flash (on SoM)
    * 256 MB parallel NAND flash (on DVK)
* Ethernet:
    * 2x1G RJ45 ports(QCA8072 or QCA8075)
    * 1x2.5G RJ45 port (QCA8081)
    * 1xSFP (shares SGMII with QCA8081)
* Switch: Qualcomm Atheros IPQ6010
* WLAN:
    * 2.4GHz: QCN5121 2x2 802.11b/g/n/ax 574 Mbps PHY rate
    * 5GHz: QCN5152 2x2 802.11a/n/ac/ax 1201 Mbps PHY rate
* USB:
    * 1x USB3.0 Type-A port
    * 1x USB2.0 available at mini PCIe slot
* PCIe: 1x mini PCIe slot 1xLane Gen3 (8GT/s)
* SD/eMMC (on a single shared bus - only one can be active):
    * micro SD slot
    * eMMC module connector
* LEDs:
    * Green power led (not controllable)
    * Green 2.4GHz radio led (GPIO 67)
    * Green 5GHz radio led (GPIO 66)
* Buttons:
    * 1x (WPS GPIO79) button
* GPIOs: 2.54mm header brings out 18 GPIOs (1.8V level)
* UART: 4-pin UART header (3.3V level)
    * 115200 8N1, 3.3V-Tx-Rx-GND (3.3V is pin 1 close to boot-switch SW2)
* Power:
    * PoE IN on 2.5G port (passive 24-48V)
    * DC power terminal (12-58V)

Installation instructions:

Vendor image format is compatible with squashfs-sysupgrade image. Run:

sysupgrade -n -F openwrt-qualcommax-ipq60xx-8devices_mango-dvk-squashfs-sysupgrade.bin

Signed-off-by: Mantas Pucka <mantas@8devices.com>
2024-02-21 21:42:23 +01:00
Mantas Pucka
548c5935bf qualcommax: ipq60xx: set correct PHY mode for port 0-4
[port 8ed390a (qualcommax: set correct PHY mode for port 0-4) to ipq60xx]

Port 0-4 have the mode set to SGMII instead of PSGMII. Now that we use
he upstream qca807x driver, this conflicts with the qca SSDK driver
that expects the mode to be PSGMII as for not integrated driver, it does
refer to the real PHY mode.

Update the entry for port 0-4 to PSGMII to solve warning from qca SSDK
in ipq6018-ess.dtsi.

Signed-off-by: Mantas Pucka <mantas@8devices.com>
2024-02-21 21:42:23 +01:00
Paweł Owoc
568f38a56b qualcommax: ipq807x: skip factory.ubi image for MX4200
Skip building not used factory.ubi image

Signed-off-by: Paweł Owoc <frut3k7@gmail.com>
2024-02-21 21:26:57 +01:00
Paweł Owoc
e670a939cd qualcommax: ipq807x: remove duplicated sysupgrade image definitions
Image sysupgrade.bin is defined by default and there is no need to define it.

Signed-off-by: Paweł Owoc <frut3k7@gmail.com>
2024-02-21 21:26:57 +01:00
Paweł Owoc
2b82c87b1f qualcommax: ipq807x: fix variable definition
Fix variable definition, prevent displaying warnings:
- warning: overriding recipe for target
- warning: ignoring old recipe for target

Signed-off-by: Paweł Owoc <frut3k7@gmail.com>
2024-02-21 21:26:57 +01:00
Shiji Yang
01996b785d ramips: clean up useless dts partition labels
The previous NVMEM eeprom conversions[1][2] left a lot of partition
labels that were no longer used. They can be removed now.

[1] https://github.com/openwrt/openwrt/pull/13584
[2] https://github.com/openwrt/openwrt/pull/13587

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
2024-02-21 13:31:18 +01:00
Marius Durbaca
c22c63bce3 rockchip: add Radxa CM3 IO board support
Hardware
--------
RockChip RK3566 ARM64 (4 cores)
- up to 8GB LPDDR4X
- 1x HDMI,
- 2x MIPI DSI
- 2x MIPI CSI2
- 1x eDP
- 1x PCIe card
- 2x SATA
- 2x USB 2.0 Host
- 1x USB 3.0
- 1x USB 2.0 OTG
- 10/100/1000 Base-T
- microSD slot
- 40-pin GPIO expansion header
- 12V DC

Radxa CM3 needs to mount on top of this IO board in order to create
complete Radxa CM3 IO board platform.

Installation
------------
Uncompress the OpenWrt sysupgrade and write it to a micro SD card or
internal eMMC using dd.

Reviewed-by: Tianling Shen <cnsztl@immortalwrt.org>
Signed-off-by: Marius Durbaca <mariusd84@gmail.com>
2024-02-21 13:29:26 +01:00
Christian Marangi
4883e4c04f
generic: replace simple AQR hack patch with upstream version
Simple AQR hack patch has been merged upstream, hence we can drop it from
hack directory and move it to backport.

The patch for 5.15 are correctly reworked to align to outdated API.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-02-21 02:34:32 +01:00
Rafał Miłecki
ae036c26fd mediatek: filogic: fix mt7981 DT nodenames
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2024-02-20 12:42:28 +01:00
Rafał Miłecki
6bda7d2090 mediatek: filogic: improve mt7981 DT coding style
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2024-02-20 12:42:28 +01:00
Rafał Miłecki
388bc4b365 mediatek: filogic: reorder mt7981 DT properties
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2024-02-20 12:42:28 +01:00
Rafał Miłecki
faa7b7dd0a mediatek: filogic: reorder mt7981 DT SoC reg-based nodes
Follow upstream Linux kernel guidelines:
https://www.kernel.org/doc/html/next/devicetree/bindings/dts-coding-style.html#order-of-nodes

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2024-02-20 12:42:28 +01:00
Rafał Miłecki
c094131c1a mediatek: filogic: reorder mt7981 DT name-based nodes
Follow upstream Linux kernel guidelines:
https://www.kernel.org/doc/html/next/devicetree/bindings/dts-coding-style.html#order-of-nodes

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2024-02-20 12:42:28 +01:00
Robert Marko
63f7ced2f0 generic: 6.1: add missing symbol for EN8811H PHY driver
Disable Airoha EN8811H PHY driver by default to avoid individual targets having to
disable it.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-02-19 21:40:06 +01:00
Tianling Shen
afca1236f3 rockchip: add NanoPi R4S Enterprise Edition build
FriendlyElec renamed the NanoPi R4S board with EEPROM (mac address)
to "enterprise" edition, and it was added as a "new" board in upstream
kernel.

This patch switched to use that upstreamed dts and removed local
EEPROM patch.

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2024-02-19 20:52:06 +01:00
Martin Garbe
873b0ed42c ath79: update WA/XC devices UBNT_VERSION to 8.7.4
Ubiquiti WA devices with newer hw version (sold 2023)
require UBNT_VERSION to be at least 8.7.4, otherwise
the image is rejected.

For consistency, also increase version number for XC devices.

Signed-off-by: Martin Garbe <monomartin@opennet-initiative.de>
2024-02-19 16:51:39 +01:00
Tianling Shen
782266473d rockchip: add NanoPi R2C Plus support
The NanoPi R2C Plus is a small variant of NanoPi R2C with a on-board
eMMC flash (8G) included.

Installation
------------
Uncompress the OpenWrt sysupgrade and write it to a micro SD card or
internal eMMC using dd.

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2024-02-19 16:23:32 +01:00
Chukun Pan
4108c0c1b6 qualcommax: backport more changes for ipq6018 and ipq8074
- Mark patches as upstream
 - Backport more upstream changes
 - Handle conflicts and refresh patches

Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
2024-02-19 15:01:12 +01:00
Rafał Miłecki
0ef9274721 mediatek: filogic: move mt7981 on-SoC blocks to "soc" node in DT
It's a standard way of grouping on-SoC hardware blocks and this matches
upstream DTS.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2024-02-19 07:02:49 +01:00
Daniel Golle
fba79f39f2 mediatek: filogic: fix nvmem cell names of the GL.iNet MT-2500
Fix style of nvmem cell names in the device tree of the GL.iNet MT-2500.

Fixes: 49ed52b862 ("mediatek: filogic: convert GL.iNet MT-2500 to use NVMEM-on-MMC)"
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-02-19 03:23:43 +00:00
Koen Vandeputte
a3a33f02ce
imx: remove 5.15 support
Drop all 5.15 files as 6.1 is the default now

Signed-off-by: Koen Vandeputte <koen.vandeputte@citymesh.com>
2024-02-18 11:23:19 +00:00
Koen Vandeputte
dc685cf36e
imx: switch to kernel 6.1
I have this kernel running for weeks some
on a lot of boards in multiple scenarios

Signed-off-by: Koen Vandeputte <koen.vandeputte@citymesh.com>
2024-02-18 11:23:11 +00:00
John Audia
5fe80218f9
kernel: bump 6.1 to 6.1.78
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.1.78

Manually rebased:
	bcm27xx/patches-6.1/950-0865-usb-dwc3-Set-DMA-and-coherent-masks-early.patch
	bcm27xx/patches-6.1/950-0124-Add-support-for-all-the-downstream-rpi-sound-card-dr.patch

All other patches automatically rebased.

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

Signed-off-by: John Audia <therealgraysky@proton.me>
2024-02-18 11:20:27 +00:00
Stefan Kalscheuer
df95595b45
mvebu: drop kernel 5.15 config and patches
With default now being at 6.1 we can remove all 5.15 components.

Signed-off-by: Stefan Kalscheuer <stefan@stklcode.de>
2024-02-18 11:14:13 +00:00
Stefan Kalscheuer
75f713fcc2
mvebu: switch to kernel 6.1
After a few months of testing it's time to move to 6.1 by default.

Signed-off-by: Stefan Kalscheuer <stefan@stklcode.de>
2024-02-18 11:14:12 +00:00
Bjørn Mork
6da308f4de realtek: fix Netgear GS110TPP OEM install
Recent OEM firmware versions test the version number embedded in the uimage
"name" header field. The exact restricton is unknown, but "7.0.8.4" seems
to be the lowest number accepted on a GS110TPPv1 which already has that
version or higher.

A "9.9.9.9" version is accepted as valid by the GS110TPPv1 OEM firmware,
and considered both unique enough to identify an OpenWrt image and
moderately future proof against OEM version bumps.

This change is also boot tested on a GS108Tv3 with

 "BOOT Loader Version 1.0.0.2 (2018-08-31 17:05:26 UTC)"

to verify that it doesn't break boot on older hardware.

Link: https://forum.openwrt.org/t/72510/58
Signed-off-by: Bjørn Mork <bjorn@mork.no>
2024-02-18 09:56:45 +01:00
Daniel Golle
49ed52b862 mediatek: filogic: convert GL.iNet MT-2500 to use NVMEM-on-MMC
Use nvmem-layout in device tree instead of extracting MAC addresses
in userspace.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-02-18 03:36:06 +00:00
Daniel Golle
6077fa2f61 mediatek: mt7981: remove inaccurate compatible strings
Remove more inaccurate compatible strings from various clock controllers
of the MT7981 SoC.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-02-18 03:36:06 +00:00
Daniel Golle
7af3b202d4 mediatek: mt7981: prevent system freezes on boot
Import patch to make sure SGM_REG_SEL clock is always enabled as it
seems that more registers than just SGMIISYS0 and SGMIISYS1 are
depending on that clock being enabled.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-02-18 03:35:28 +00:00
Daniel Golle
bf20585412 mediatek: filogic: convert GL.iNet MT-6000 to NVMEM-on-MMC
Now that we can reference MMC partitions in device tree, use that
to get rid of Wi-Fi EEPROM and MAC address setup in userspace.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-02-18 03:26:15 +00:00
Daniel Golle
3c34a5bf99 kernel: nvmem: correctly assign fwnode to MMC block device
Use device_set_node to make sure OF node gets assigned on block
devices to be used as NVMEM providers. While block partitions were
already working fine as NVMEM providers, bare block devices such as
mmcblk0boot1 will not work without this change.

Fixes: fc153aa8d9 ("kernel: import pending patches adding support for NVMEM on UBI and MMC")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-02-18 03:25:39 +00:00
Robert Marko
3eb8782b49 qualcommax: ipq807x: wax630: correct UNIPHY2 MAC mode
UNIPHY2 on the WAX630 is connected to a QCA8081 PHY which is only 2.5G and
it does not support using USXGMII at all but rather only SGMII or SGMII+.

Tested-by: Kristian Skramstad <kristian+github@83.no>
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-02-17 22:14:17 +01:00
Daniel Golle
8955cadfb5 mediatek: dts: mt7981: fix ethsys clock compatible
Remove inaccurate compatible string 'mediatek,mt7986-ethsys' which
results in the wrong clock driver probing on MT7981 with Linux 6.1 and
ends up freezing the system once WED is used.

Fixes: da970d63fb ("mediatek: switch to Linux version 6.1")
Reported-by: Chen Minqiang <ptpt52@gmail.com>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-02-17 18:54:37 +00:00
Rafał Miłecki
3bd79e6136 mediatek: filogic: replace built-in Aquantia driver with module
Some Aquantia PHYs (e.g. AQR113C) require firmware to be uploaded by
host system. With built-in drivers this doesn't work in OpenWrt /
embeddded as filesystem isn't available during PHY probe. That results
in delays like:
[    1.588068] Aquantia AQR113C mdio-bus:00: Falling back to sysfs fallback for: Rhe-05.06-Candidate9-AQR_Mediatek_23B_P5_ID45824_LCLVER1.cld
[   64.526387] Aquantia AQR113C mdio-bus:00: failed to find FW file Rhe-05.06-Candidate9-AQR_Mediatek_23B_P5_ID45824_LCLVER1.cld (-110)

Switch to module to postpone PHY probe to init state.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2024-02-17 17:54:07 +01:00
Robert Marko
70498cb386 qualcommax: ipq807x: correct PHY mode for AQR
Interfaces that have AQR-s attached to them are using USXGMII and not just
the default SGMII.
This was fine until SSDK added some sanity checking and now on Qnap 301W it
would fail with:
[   24.740197] nss-dp 3a001800.dp5 10g-1 (uninitialized): failed to connect to phy device
[   24.740264] nss-dp: probe of 3a001800.dp5 failed with error -14

Since this is not Qnap 301W specific lets fix it subtarget wide by
declaring the correct PHY mode for 10G AQR-s.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-02-17 17:39:22 +01:00
Robert Marko
b38a1d6c65 qualcommax: ipq807x: 301w: correct PHY mode for AQR
Interfaces that have AQR-s attached to them are using USXGMII and not just
the default SGMII.
This was fine until SSDK added some sanity checking and now on Qnap 301W it
would fail with:
[   24.740197] nss-dp 3a001800.dp5 10g-1 (uninitialized): failed to connect to phy device
[   24.740264] nss-dp: probe of 3a001800.dp5 failed with error -14

So, lets fix 10G AQR ports by declaring the correct PHY mode.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-02-17 17:32:13 +01:00
Daniel Golle
dadad6bb73 mediatek: mt7622: skip build also for Xiaomi AX6S
Also here build fails due to increased kernel size.

Fixes: da970d63fb ("mediatek: switch to Linux version 6.1")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-02-17 14:23:43 +00:00
Daniel Golle
6e2962d4c5 mediatek: mt7622: skip build for MT7622 rfb1 (UBI)
Due to increased kernel size the build currently fails if including
the MT7622 rfb1 (UBI). Skip it for now until there is a better
solution (such as replacing the bootloader and changing the flash
layout).

Fixes: da970d63fb ("mediatek: switch to Linux version 6.1")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-02-17 04:28:52 +00:00
Daniel Golle
016ce30976 mediatek: filogic: bpi-r3-mini: include kmod-phy-airoha-en8811h
Include the needed Ethernet PHY driver module for the BananaPi R3 mini.

Fixes: b03d3644cf ("mediatek: filogic: add BananaPi BPi-R3 mini")
Reported-by: BPI forum user nezar_taima
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-02-17 01:30:25 +00:00
Tianling Shen
667d109d0f mediatek: filogic: bpi-r3-mini: fix power on M.2 slot
One of the pins requiered by M.2 slot is conflict with spi1,
however, spi1 seems unused so simply disable it for now, this
matches the factory behavior [1].

1. 9bd78779f2

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2024-02-16 13:56:01 +00:00
Tianling Shen
eebf865557 mediatek: filogic: bpi-r3-mini: bind WLAN LED-s to phy*-ap0
For showing wlan status.

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2024-02-16 13:56:01 +00:00
Tianling Shen
8798f84cd6 mediatek: filogic: bpi-r3-mini: convert to new LED color/function format
Conversion to new LED color/function format and drop label format.

This was needed previously when the new format wasn't supported by
leds.sh functions script. Now that is supported this property can be
removed in favor of the new format.

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2024-02-16 13:56:01 +00:00
Foica David
b0b8fd436f ath79: generic: fix the alphabetical order in 02_network
This commit fixes the alphabetical order in 02_network.
The 2 deco devices in ath79_setup_interfaces() were in the wrong place.

Signed-off-by: Foica David <superh552@gmail.com>
2024-02-16 14:10:11 +01:00
Chukun Pan
ee047edd2a qualcommax: AW1000: add qca8081 PHY LED configuration
Since we can configure the PHY LED of the qca8081,
add a configuration for this device.

Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
Reviewed-by: Robert Marko <robimarko@gmail.com>
2024-02-16 13:50:19 +01:00
Chukun Pan
c38ffd45b9 qualcommax: AW1000: sync qca807x PHY dts changes
The dts of Arcadyan AW1000 forgot to convert qca807x PHY
to PHY package implementation. This commit fix it.

Fixes: 0ab4b92 ("qualcommax: convert qca807x PHY to PHY package implementation")
Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
Reviewed-by: Robert Marko <robimarko@gmail.com>
2024-02-16 13:50:19 +01:00
Daniel Golle
d5e2177a6b mediatek: filogic: bpi-r3-mini: fix generating ubinized image
Generate ubinized image as ARTIFACT and make use of now available
generic 'ubinize-image' build step intended for that purpose.

Fixes: b03d3644cf ("mediatek: filogic: add BananaPi BPi-R3 mini")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-02-16 05:40:17 +00:00
Daniel Golle
ae1c0f1b15 mediatek: filogic: bpi-r3-mini: fix NAND flash layout
Fix NAND flash layout which was out-of-sync with the definition in
ARM TrustedFirmware-A which expects UBI to start at 0x200000.

Fixes: b03d3644cf ("mediatek: filogic: add BananaPi BPi-R3 mini")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-02-16 05:40:14 +00:00
Daniel Golle
dc0cf0fc50 ramips: mt76x8: fix build due to renamed U-Boot binary
The U-Boot binary for the RAVPower RP-WD009 has been renamed.
In order to be uniform with all other U-Boot binaries generated the SoC type has been prepended.
Set that new name also in the image build recipe for that device in order to fix build.

Fixes: 927334a8f7 ("uboot-mediatek: add basic build for ZBT-WG3526 (MT7621, 16M SPI-NOR)")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-02-16 05:18:47 +00:00
Tim Harvey
4d3f6e1b43 imx: update default network config for ventana
update the default network configuration for Gateworks Ventana boards
such that the left-most front-panel NIC is WAN and any additional are in
LAN bridge

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
2024-02-15 21:21:11 +01:00
Tim Harvey
2a21a69185 imx: add gpio-button-hotplug to ventana images
Add the gpio-button-hotplug to Gateworks ventana images to support
the on-board user pushbutton.

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
2024-02-15 21:21:11 +01:00
Daniel Golle
b03d3644cf mediatek: filogic: add BananaPi BPi-R3 mini
Hardware specification
----------------------
 SoC: MediaTek MT7986A 4x A53
 Flash: 128MB SPI-NAND, 8GB eMMC
 RAM: 2GB DDR4
 Ethernet: 2x 2.5GbE (Airoha EN8811H)
 WiFi: MediaTek MT7976C 2x2 2.4G + 3x3 5G
 Interfaces:
  * M.2 Key-M: PCIe 2.0 x2 for NVMe SSD
  * M.2 Key-B: USB 3.0 with SIM slot
  * front USB 2.0 port
 LED: Power, Status, WLAN2G, WLAN5G, LTE, SSD
 Button: Reset, internal boot switch
 Fan: PWM-controlled 5V fan
 Power: 12V Type-C PD

Installation instructions for eMMC
----------------------------------
0. Set boot switch to boot from SPI-NAND (assuming stock rom or immortalwrt
   running there).
1. Write GPT partition table to eMMC
   Move openwrt-mediatek-filogic-bananapi_bpi-r3-mini-emmc-gpt.bin to
   the device /tmp using scp and write it to /dev/mmcblk0:
    dd if=/tmp/openwrt-*-r3-mini-emmc-gpt.bin of=/dev/mmcblk0
2. Reboot (to reload partition table)
3. Write bootloader and OpenWrt images
   Move files to the device /tmp using scp:
    - openwrt-*-bananapi_bpi-r3-mini-emmc-preloader.bin
    - openwrt-*-bananapi_bpi-r3-mini-emmc-bl31-uboot.fip
    - openwrt-*-bananapi_bpi-r3-mini-initramfs-recovery.itb
    - openwrt-*-bananapi_bpi-r3-mini-squashfs-sysupgrade.itb
   Write them to the appropriate partitions:
    echo 0 > /sys/block/mmcblk0boot0/force_ro
    dd if=/tmp/openwrt-*-bananapi_bpi-r3-mini-emmc-preloader.bin of=/dev/mmcblk0boot0
    dd if=/tmp/openwrt-*-bananapi_bpi-r3-mini-emmc-bl31-uboot.fip of=/dev/mmcblk0p3
    dd if=/tmp/openwrt-*-bananapi_bpi-r3-mini-initramfs-recovery.itb of=/dev/mmcblk0p4
    dd if=/tmp/openwrt-*-bananapi_bpi-r3-mini-squashfs-sysupgrade.itb of=/dev/mmcblk0p5
    sync

4. Remove the device from power, set boot switch to eMMC and boot into
   OpenWrt. The device will come up with IP 192.168.1.1 and assume the
   Ethernet port closer to the USB-C power connector as LAN port.

5. If you like to have Ethernet support inside U-Boot (eg. to boot via
   TFTP) you also need to write the PHY firmware to /dev/mmcblk0boot1:
    echo 0 > /sys/block/mmcblk0boot1/force_ro
    dd if=/lib/firmware/airoha/EthMD32.dm.bin of=/dev/mmcblk0boot1
    dd if=/lib/firmware/airoha/EthMD32.DSP.bin bs=16384 seek=1 of=/dev/mmcblk0boot1

Installation instructions for NAND
----------------------------------
0. Set boot switch to boot from eMMC (assuming OpenWrt is installed there
   by instructions above. Using stock rom or immortalwrt does NOT work!)

1. Write things to NAND
   Move files to the device /tmp using scp:
    - openwrt-*-bananapi_bpi-r3-mini-snand-preloader.bin
    - openwrt-*-bananapi_bpi-r3-mini-snand-bl31-uboot.fip
    - openwrt-*-bananapi_bpi-r3-mini-initramfs-recovery.itb
    - openwrt-*-bananapi_bpi-r3-mini-squashfs-sysupgrade.itb
   Write them to the appropriate locations:
    mtd write /tmp/openwrt-*-bananapi_bpi-r3-mini-snand-preloader.bin /dev/mtd0
    ubidetach -m 1
    ubiformat /dev/mtd1
    ubiattach -m 1
    volsize=$(wc -c < /tmp/openwrt-*-bananapi_bpi-r3-mini-snand-bl31-uboot.fip)
    ubimkvol /dev/ubi0 -N fip -n 0 -s $volsize -t static
    ubiupdatevol /dev/ubi0_0 /tmp/openwrt-*-bananapi_bpi-r3-mini-snand-bl31-uboot.fip
    cd /lib/firmware/airoha
    cat EthMD32.dm.bin EthMD32.DSP.bin > /tmp/en8811h-fw.bin
    ubimkvol /dev/ubi0 -N en8811h-firmware -n 1 -s 147456 -t static
    ubiupdatevol /dev/ubi0_1 /tmp/en8811h-fw.bin
    ubimkvol /dev/ubi0 -n 2 -N ubootenv -s 126976
    ubimkvol /dev/ubi0 -n 3 -N ubootenv2 -s 126976
    volsize=$(wc -c < /tmp/openwrt-*-bananapi_bpi-r3-mini-initramfs-recovery.itb)
    ubimkvol /dev/ubi0 -n 4 -N recovery -s $volsize
    ubiupdatevol /dev/ubi0_4 /tmp/openwrt-*-bananapi_bpi-r3-mini-initramfs-recovery.itb
    volsize=$(wc -c < /tmp/openwrt-*-bananapi_bpi-r3-mini-squashfs-sysupgrade.itb)
    ubimkvol /dev/ubi0 -n 4 -N recovery -s $volsize
    ubiupdatevol /dev/ubi0_4 /tmp/openwrt-*-bananapi_bpi-r3-mini-squashfs-sysupgrade.itb

3. Remove the device from power, set boot switch to NAND, power up and
   boot into OpenWrt.

Partially based on immortalwrt support for the R3 mini, big thanks for
doing the ground work!

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-02-15 19:30:08 +00:00
Daniel Golle
5a2eb8082f kernel: add driver for Airoha EN8811H PHY as module
Add PHY driver for Airoha EN8811H PHY and package it as kernel module.
The PHY needs to load firmware from rootfs, so there is no point in
having the driver built-into the kernel.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-02-15 19:30:08 +00:00
Daniel Golle
ada3b2190a mediatek: update driver for MT7988 built-in 2.5G Ethernet PHY
Sync driver for built-in 2.5G Ethernet PHY with MediaTek SDK.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-02-15 19:30:08 +00:00
Daniel Golle
1e58ce7652 firmware: package firmware for built-in 2.5G PHY on MT7988
Firmware for the built-in 2.5G Ethernet PHY of the MediaTek MT7988 SoC
is now part of linux-firmware, so we can package it.
Only a single file is needed with recent driver.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-02-15 19:30:08 +00:00
Daniel Golle
6aec3c7b5b mediatek: mt7622: modernize Linksys E8450 / Belkin RT3200 UBI build
Move fip and factory into UBI static volumes.
Use fitblk instead of partition parser.

 !! RUN INSTALLER FIRST !!
Existing users of previous OpenWrt releases or snapshot builds will
have to **re-run the updated installer** before upgrading to firmware
after this commit.
DO NOT flash or run even just the initramfs image unless you have
run the updated installer which moves the content of the 'factory'
partition into a UBI volume.

tl;dr: DON'T USE YET!

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-02-15 19:30:08 +00:00
Daniel Golle
41c053141e mediatek: mt7622: convert unifi6lr-v{1,2,3}-ubootmod to fitblk
No bootloader changes needed in this case, smooth transition.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-02-15 19:30:08 +00:00
Daniel Golle
208f6c1232 mediatek: mt7622: convert BPi-R64 to all-UBI layout and fitblk
Modernize bootloader and flash memory layout of the BPi-R64 similar to
how it has also been done for the BPi-R3.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-02-15 19:30:08 +00:00
Daniel Golle
61137a8895 mediatek: BananaPi BPi-R3 bootloader update
* Switch to all-UBI layout on SPI-NAND
 * use fitblk driver instead of uImage.FIT partition parser
 * adapt sysupgrade
 * bump COMPAT_VERSION

Remove BROKEN mark now that all needed changes are done.

Boards running images generated before this commit will require
full reflash of the bootloader, re-install from SD card is the
easiest way to achieve that.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-02-15 19:30:08 +00:00
Daniel Golle
188a1a8d67 mediatek: prepare BananaPi BPi-R3 for upcoming modernization
Mark board as broken until the complete boot stack has been updated.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-02-15 19:30:08 +00:00
Daniel Golle
1192554d56 uboot-envtools: filogic: add support for BananaPi R4
Add environment settings for the BananaPi BPI-R4 router board which
can boot from (and store its bootloader environment on) micro SD card,
SPI-NAND and eMMC.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-02-15 19:30:08 +00:00
Daniel Golle
f16dc4b42f mediatek: add support for BananaPi BPI-R4 board
Hardware
--------
SOC:    MediaTek MT7988A (4x Cortex-A73)
RAM:    4 GiB DDR4
Flash:  128 MiB Winbond SPI-NAND
MMC:    8 GiB eMMC *or* microSD (cannot be used both)
ETH:    4x 1GE (1x WAN, 3x LAN)
        2x SFP+ (10G, 5G, 2.5G, 1G)
USB:    on-board USB 3.2 4-port hub
        1x USB 3.2 port (type A connector)
        1x M.2 for 4G/5G modem
        2x mPCIe for additional modems
WiFi:   optional MediaTek MT7996 Wi-Fi 7 module
        (using 2x PCIe gen3 x2 on the mPCIe slots and 12V power)

Installation
------------
1. Decompress and write the sdcard image to a micro SD card and use that
to boot the R4 (both dip switches in upper position).

2. Use the bootloader menu accessible via the serial console to install
to SPI-NAND.

3. Switch to boot from SPI-NAND and install to eMMC.

Known issues
------------
 - The RST button is hard-wired to the SoC reset and can't be read
   from software. This can be changed by modifying the board (ie.
   moving a 0-ohm resistor). However, in order to maintain compatibility
   with the board as it comes from factory the button isn't used by
   OpenWrt and the WPS button is used as factory/reset button instead.

 - various small things still need to be fixed in DT

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-02-15 19:30:08 +00:00
Daniel Golle
6d76f1c733 mediatek: add patch for xsphy driver to support pcie2 on MT7988
Import patch from MediaTek SDK which allows using the third
PCIe host controller of the MT7988 SoC.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-02-15 19:06:37 +00:00
Daniel Golle
bbd49326c5 mediatek: dts: mt7988: add uart1 and uart2
Add device tree nodes for uart1 and uart2 of the MT7988 SoC.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-02-15 19:06:37 +00:00
Daniel Golle
430a96ed0d mediatek: pinctrl-mt7988: add additional uart1_2_lite group
Add UART pinctrl group for using only pins 80 and 81 for uart1.
This is needed on the BPi-R4 as RTS/CTS signals are used for other
on-board functions.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-02-15 19:06:37 +00:00
Daniel Golle
42cf04dd05 mediatek: pinctrl-mt7988: add pinconf map
Add pull-up/pull-down configuration for pins of MT7988.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-02-15 19:06:36 +00:00
Daniel Golle
4cb6bd9a6d mediatek: switch to pending XFI 10G Ethernet drivers
Replace previous patch adding paths and SerDes modes with patch series
pending upstream adding dedicated drivers for XFI T-PHY and USXGMII PCS,
extends LynxI PCS to be a standalone platform driver and as a consequence
makes much less changes to the actual Ethernet driver mtk_eth_soc.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-02-15 19:06:36 +00:00
Daniel Golle
c36de2e73a mediatek: backport a hell of thermal commits
Backport almost 50 commits from upstream Linux to improve thermal
drivers for MediaTek SoCs and add new LVTS driver for MT7988.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-02-15 19:06:36 +00:00
Daniel Golle
d4b4bc98bb mediatek: replace mt7988 clk files with accepted patches
Replace clock drivers for MT7988 with backported upstream commits.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-02-15 19:06:36 +00:00
Daniel Golle
d40756563c kernel: backport phylink changes from mainline Linux
Let's pick a bunch of useful phylink changes which allow us to keep
drivers in sync with mainline Linux.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-02-15 19:06:36 +00:00
Daniel Golle
da970d63fb mediatek: switch to Linux version 6.1
Drop support for Linux 5.15 and switch to Linux 6.1.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-02-15 19:06:36 +00:00
Daniel Golle
8fc5457869 kernel: add pending fitblk uImage.FIT sub-image block driver
Add 'fitblk' driver to replace the rejected/deprecated uImage.FIT
partition parser.
To use the new driver, add phandle /chosen/rootdisk and point it to
the MTD partition, UBI volume or block device holding the uImage.FIT.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-02-15 19:06:36 +00:00
Daniel Golle
fc153aa8d9 kernel: import pending patches adding support for NVMEM on UBI and MMC
Similar to supporting nvmem-layouts on MTD devices, also allow referencing
UBI and MMC devices in DT.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-02-15 19:06:36 +00:00
Daniel Golle
cff4335245 kernel: allow skipping deprecated uImage.FIT partition parser
In order to allow gradually migrating the boards currently using the
uImage.FIT partition (deprecated/rejected) parser to the new fitblk
driver, skip the partition parser code in case the new fitblk driver
(which serves the same purpose) is used.

As an indicator for the use of the new fitblk driver, check if the
/chosen/rootdisk property is present in the Device Tree.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-02-15 19:06:36 +00:00
Daniel Golle
548c383bdf kernel: move uImage.FIT partition parser to mediatek target
The partition parser approach has been rejected upstream, it will be
replaced by a small block driver which is the solution suggestion by
upstream maintainers.
As the partition parser has only been used by the mediatek target, as
a first step, move it there.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-02-15 19:06:36 +00:00