Commit Graph

31138 Commits

Author SHA1 Message Date
Hauke Mehrtens
6cfa186544 kernel: bump 5.15 to 5.15.159
Removed because they are upstream:
   generic/pending-5.15/778-net-l2tp-drop-flow-hash-on-forward.patch
   https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-5.15.y&id=e97e0051056b6dbcc43ae1862dcfcb05d06517c3

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-07-01 00:22:09 +02:00
Paul Spooren
67e0c5922c
malta: enable VM targets again
These targets are interesting for automated testing. The currently
available targets are from 2017 and either we should enable them again
or delete the remaining files on the download servers.

Signed-off-by: Paul Spooren <mail@aparcar.org>
Link: https://github.com/openwrt/openwrt/pull/15740
Link: https://github.com/openwrt/openwrt/pull/15740
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-06-30 22:00:03 +02:00
Robert Marko
b4069fad02 ipq40xx: habanero-dvk: fix LAN MAC adresses
Currently, only the WAN MAC is being populated on Habanero DVK, and that is
happening via the ethernet1 alias so U-Boot does it, previously ethernet0
was implicitly added in the SoC DTSI so it would populate the LAN MAC-s but
it was dropped(rightly so) so now LAN MAC-s and the GMAC one are random.

So, lets simply switch to using NVMEM to assign the proper MAC adresses.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-30 11:26:23 +02:00
John Thomson
515ad3ce8a ipq40xx: ipqess: do not free ipqess_init
If this function is marked as __init, kernel will splat when driver is
(re)bind
echo "c080000.ethernet">/sys/bus/platform/drivers/ipqess-edma/unbind
echo "c080000.ethernet">/sys/bus/platform/drivers/ipqess-edma/bind

Example with additional print messages, functions at boot:
[    2.039468] ipqess-edma c080000.ethernet: ipqess_axi_probe pre register_netdev
[    2.039530] ipqess-edma c080000.ethernet: *netdev: c27d2000
[    2.045609] ipqess-edma c080000.ethernet: &ipqess_init: c0d1e28c
[    2.051122] ipqess_init
[    2.057338] netdev: c27d2000
[    2.059492] ess = netdev_priv: c27d2500
[    2.062615] ess->pdev: c2138c00
[    2.066174] ess->pdev->dev: c2138c10
[    2.069314] ess->pdev->dev.of_node: ef6f6368
[    2.073120] ess->pdev->dev.of_node: /soc/ethernet@c080000

fails (bind) after unbind:
[   34.987948] ipqess-edma c080000.ethernet: ipqess_axi_probe pre register_netdev
[   34.988012] ipqess-edma c080000.ethernet: *netdev: c27d6000
[   34.994088] ipqess-edma c080000.ethernet: &ipqess_init: c0d1e28c
[   34.999652] 8<--- cut here ---
[   35.005802] Unable to handle kernel paging request at virtual address c0d1e28c when execute
[   35.008676] [c0d1e28c] *pgd=80c1941e(bad)
[   35.016918] Internal error: Oops: 8000000d [#1] SMP ARM

Signed-off-by: John Thomson <git@johnthomson.fastmail.com.au>
Link: https://github.com/openwrt/openwrt/pull/15831
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-30 11:07:02 +02:00
John Thomson
69d0ff5803 ipq40xx: ipqess: pass up ethdev_addr probe defer
Notify via dev_info when a random MAC address is set.
of_get_ethdev_address can return -EPROBE_DEFER for NVMEM devices,
return this up, so that ipqess can defer as well.
Also move this MAC assignment from _init into _probe, so that this defer
can happen earlier.

Before change, with MAC address allocated from a built-in NVMEM layout
driver (mikrotik,routerboot-nvmem) with extra of_get_ethdev_address
result and random MAC printfs:
[    1.197571] ipqess-edma c080000.ethernet: ipqess_init of_get_ethdev_address ret:-517, of_node: /soc/ethernet@c080000
[    1.197690] ipqess-edma c080000.ethernet: generated random MAC address 22:e7:36:e0:e4:a3
[    1.614444] ipqess-edma c080000.ethernet eth0: entered promiscuous mode
[    5.055929] ipqess-edma c080000.ethernet eth0: configuring for fixed/internal link mode

after change:
[    1.173776] ipqess-edma c080000.ethernet: of_get_ethdev_address: -517
[    1.614607] ipqess-edma c080000.ethernet eth0: entered promiscuous mode
[    5.246105] ipqess-edma c080000.ethernet eth0: configuring for fixed/internal link mode
[    5.260754] ipqess-edma c080000.ethernet eth0: Link is Up - 1Gbps/Full - flow control rx/tx

with extra __func__ printf to show _probe and _init:
[    1.173685] ipqess-edma c080000.ethernet: ipqess_axi_probe
[    1.173784] ipqess-edma c080000.ethernet: of_get_ethdev_address: -517
[    1.280347] ipqess-edma c080000.ethernet: ipqess_axi_probe
[    1.304844] ipqess-edma c080000.ethernet: ipqess_init
[    1.614664] ipqess-edma c080000.ethernet eth0: entered promiscuous mode

Signed-off-by: John Thomson <git@johnthomson.fastmail.com.au>
Link: https://github.com/openwrt/openwrt/pull/15831
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-30 11:07:02 +02:00
Daniel Golle
75081235b8 generic: 6.6: (re-)add support multiple PPE to mtk_eth_soc
Now that the issue with WED has been sorted out, re-add support for
multiple PPE to the mtk_eth_soc driver.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-06-28 20:55:11 +01:00
Shiji Yang
007437c225 kernel: mtd: ubi: avoid attaching "linux,ubi" mtd again
"linux,ubi" compatible MTD device can be automatically attached early
since commit fc153aa8d9. Therefore, there is no need to attach MTD
devices named "ubi" or "data" again.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
2024-06-28 20:55:11 +01:00
Christian Marangi
7c9644a7b5 bmips: backport upstreamed RAC patches
Replace downstream bmips RAC fixes with upstream patches.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
[backport upstream patches]
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2024-06-27 17:59:31 +02:00
Bryan Berg
173d59e7dc
ipq806x: 6.6: enable at803x driver
Used by ethernet interfaces on AP3935i.

Signed-off-by: Bryan Berg <bdb@north-eastham.org>
Link: https://github.com/openwrt/openwrt/pull/13629
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-06-27 17:11:40 +02:00
Bryan Berg
bf0602f9c8
ipq806x: ap3935: Use rgmii-id mode for LAN1
Fix issue with LAN1 interface on ap3935 devices, where the LAN
1interface won't come up after boot unless the bootloader has
initialized the network stack. Use of `fixed-link` in the prior code
kept the driver from clobbering PHY settings, but now that the driver
supports rgmii-id phy-mode, we can just use that.

Signed-off-by: Bryan Berg <bdb@north-eastham.org>
Link: https://github.com/openwrt/openwrt/pull/13629
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-06-27 17:11:39 +02:00
Bryan Berg
e27c7e4b9b
ipq806x: ap3935: Use gmac0 mdio controller
Updates ap3935 target to use the mdio controller built-in to gmac0,
rather than having the SoC bit-bang mdio from gpio pins

Signed-off-by: Bryan Berg <bdb@north-eastham.org>
Link: https://github.com/openwrt/openwrt/pull/13629
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-06-27 17:11:39 +02:00
Hang Zhou
f637cf5ef7 bmips: add support for Sagem F@ST3864OP
Specifications:
* SoC: BCM63168
* RAM: NT5CC64M16GP-DI, DDR3 128MiB
* NAND: W29N01HVSINA, 128MiB
* Ethernet: 4x1000M LAN, 1x 1000M WAN
* Serial interface: on board but not populated, 3.3V, 115200, 8N1

Notes:
* Use DSA for VLAN and switches
* Ethernet ports and USB works
* gpio-leds are not working
* WLAN, xDSL, and FXS are not going to work

Signed-off-by: Hang Zhou <929513338@qq.com>
[refactor, reorder, drop unneeded or not working stuff]
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2024-06-26 19:28:13 +02:00
Daniel Golle
646ebbd32c ramips: yuncore_g720: fix buttons
Turns out the device got two buttons, while the currently listed on is
actually WPS, and the other (will hidden) button is intended as RESET.
Update DT accordingly.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-06-25 20:42:54 +01:00
Álvaro Fernández Rojas
713319f779 bmips: sercomm,ad1018: remove unneeded LED default-state
Remove unneeded default-state from led_power_green (led@8) to be in line with
other bmips devices.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2024-06-25 17:43:40 +02:00
Álvaro Fernández Rojas
dc71b91c12 bmips: innacomm,w3400v6: remove unneeded LED default-state
Remove unneeded default-state from led_power_green (led@4) to be in line with
other bmips devices.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2024-06-25 17:43:32 +02:00
Christian Marangi
69f8647608
generic: 6.6: replace Aquantia pending LEDs patch with upstream version
Replace Aquantia pending LEDs patch with upstream version.
Sadly net maintainers didn't like integrated solution hence we still
need to handle LED restore on reset with custom solution.

Link: https://github.com/openwrt/openwrt/pull/15797
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-06-25 14:20:17 +02:00
Christian Marangi
f8cb39183d
qualcommax: fix RAX120v2 PWM Fan controller wrong definition
Fix RAX120v2 PWM Fan controller wrong definition by using a non-existant
kmod and using the wrong compatible for it enabling an external clock
while actually the device use an internal one.

Link: https://github.com/openwrt/openwrt/pull/15796
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-06-25 12:52:44 +02:00
Christian Marangi
be26643e91
generic: 6.6: backport patch for G671 PWM Fan controller support
Backport patch for G761 PWM Fan controller support. This is used by
an ipq807x RAX120v2 and have an internal clock that was currently
unconfigured making the device not working.

Link: https://github.com/openwrt/openwrt/pull/15796
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-06-25 12:52:43 +02:00
Christian Marangi
18e2c65aa9
ipq806x: fix broken line break with Linksys e8350-v1
Fix broken line break for Linksys e8350-v1 pushed with CRLF instead of
LF.

Fixes: 45b3c620e5 ("ipq806x: add support for Linksys e8350-v1")
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-06-25 12:20:14 +02:00
Sergey Filippov
45b3c620e5
ipq806x: add support for Linksys e8350-v1
AC2400 Dual-Band Gigabit Wi-Fi Router base on ipq8064.
https://www.linksys.com/support-product?sku=E8350

Specification:
 - Qualcomm dual-core IPQ8064 @ 1.4 GHz
 - 512 MB of RAM
 - 4 MB of SPI NOR MX25U3235F
 - 128 MB of NAND S34MS01G2
 - Qualcomm QCA9880 2.4GHz 802.11bgn
 - Quantenna QSR1000 5GHz 802.11ac (no support)
 - 4 x 10/100/1000 Mbit/s w/ vlan support Ethernet
 - Qualcomm Atheros QCA8337 switch
 - 1 x 3.0 + 1 x 2.0 (combo with eSata port)
 - 115200, 8N1 internal serial console
 - Power, Reset, WPS and WLAN buttons
 - Power, WPS and WLAN leds
 - 12 VDC, 3 A power

Installation:
The installation must be done using web interface of the router.
To achive this new firmware-utils tool was added to set correct
magic headers for the factory images.

Installation from vendor firmware:
 1. Flash over the native Linksys WEB interface using factory image.

Installation using recovery mode:
 1. Power off the device and disconnect the WAN port.
    (Only LAN port to be connected)
 2. Press & hold the "Reset" button
 3. Power on the device & wait 10 seconds with pressed "Reset" button
 4. Set IP Internet Protocol on your PC from
    192.168.1.0/24 network (Router is on IP 192.168.1.1)
 5. Open the Firmware Recovery page in your browser:
    http://192.168.1.1/index.shtml
    Firmware Recovery -> File Name -> Recovery & Reboot

The device page in inbox:
https://openwrt.org/inbox/toh/linksys/linksys_ea8350_1

Signed-off-by: Sergey Filippov <sergey.filippov@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/15798
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-06-25 11:57:14 +02:00
Álvaro Fernández Rojas
d514213336 bmips: drop kernel 6.1 support
kernel 6.1 can be dropped since 6.6 is the default kernel.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2024-06-25 09:43:07 +02:00
Álvaro Fernández Rojas
e340d4be4b bmips: switch default kernel to 6.6
Update default kernel version to 6.6 for the bmips devices.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2024-06-25 09:40:49 +02:00
Goetz Goerisch
166d28ffea bmips: add 6.6 kernel as testing
enable testing kernel version 6.6 for bmips

Signed-off-by: Goetz Goerisch <ggoerisch@gmail.com>
2024-06-25 09:36:33 +02:00
Álvaro Fernández Rojas
7a14fe0981 bmips: refresh 6.6 kernel config files
Refresh config for kernel 6.6.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2024-06-25 09:36:29 +02:00
Goetz Goerisch
57af1abbb6 bmips: 6.6: refresh kernel patches
refresh 6.6. kernel patches via 'make target/linux/refresh'

Signed-off-by: Goetz Goerisch <ggoerisch@gmail.com>
[refresh patches]
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2024-06-24 22:12:46 +02:00
Goetz Goerisch
9b62791a10 bmips: 6.6: copy patches, config from 6.1
copy the 6.1 config to 6.6

Signed-off-by: Goetz Goerisch <ggoerisch@gmail.com>
2024-06-24 22:12:46 +02:00
Álvaro Fernández Rojas
8e1316f3f6 generic: 6.6: backport mips kexec dependency fix
Backport upstream fix for incorrect ifdeffery and dependency of CONFIG_KEXEC,
which causes compilation errors with the following symbols:
CONFIG_CRASH_CORE=y
CONFIG_KEXEC_CORE=y
CONFIG_CRASH_DUMP=y

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2024-06-24 19:37:37 +02:00
Robert Marko
85d9fd6f0e mvebu: add support for RB5009UG+S+IN
This patch adds support for Mikrotik RB5009UG+S+IN.

Specifications:
  - SoC: Marvell Armada 7040 (88F7040) - 4 cores, ARMv8 Cortex-A72, 1.4GHz, 64bit
  - RAM: 1024MB DDR4
  - Flash: 16MB SPI NOR flash, 1024MB NAND
  - Ethernet:
  	* Marvell 88E6393X - Amethyst:
  	* one 2.5G RJ45 port via Qualcomm QCA8081 PHY
  	* seven 1G RJ45 ports via built-in PHY-s
  	* one 10G SFP+ cage
  	* All ports share the same 10G switch uplink to the CPU
  - LED: User, SFP, Hdr1, Hdr2
  - Buttons: Reset
  - UART: 115200 8n1 on the MikroTik 16 pin header
  - USB: One USB3 port
  - Power: 24-57 V via
  	* DC jack
  	* 802.3af/at PoE on Ethernet 1
  	* 2-pin terminal on the side

16 Pin header pinout:
1   GND Vcc  RX  ?  GND
   #--------------------#
   |.-. .-. .-. .-. .-. |
   |'-' '-' '-' '-' '-' |
   |.-. .-. .-. .-. .-. |
   |'-' '-' '-' '-' '-' |
   #--------------------#
2   CLK  DO /CS  TX  DI

Do note that the default RouterBoot has disabled UART even when the
required hard-config bit is set to indicate UART support.
Patched RouterBoot must be used if UART is desired.

Also, since ARM64 Linux support does not support in any way appending the
DTB to the kernel image we use mainline U-Boot with added RB5009 support
in order to boot OpenWrt.
MikroTik uses YAFFS to store the boot kernel and we use YAFUT to put U-Boot
as the kernel which RouterBoot then simply boots as an ELF.

Install instructions:

NOTE: In case you are using an existing out of tree version of OpenWrt make
sure to reinstall RouterOS via Netinstall to return the expected partition
layout.

1. Prepare FAT or EXT4 formatted USB drive with OpenWrt initramfs:
* Copy bin/targets/mvebu/cortexa72/openwrt-mvebu-cortexa72-mikrotik_rb5009-initramfs-uImage.itb
to the root of FAT or EXT4 formatted USB drive.
* Plug in the drive to the RB5009 USB port

2. Boot the modified OpenWrt built U-Boot ELF:
u-boot.elf from bin/targets/mvebu/cortexa72/u-boot-rb5009/u-boot.elf

Consult OpenWrt wiki for common instructions on switching to boot from
Ethernet once as well as serving the file:
https://openwrt.org/toh/mikrotik/common

Once U-Boot is booted it will attempt to boot in the following order:
1. NAND
2. USB
3. Network

NAND is expected to fail but USB or Networking need to serve the OpenWrt
initramfs image and after booting it will be accessible from LAN ports
on the default 192.168.1.1 IP with default credentials.

3. Flash modified RouterBoot that enables UART (Optional but recommended):
https://public.robimarko.eu/RB5009/70x0-7.15-uart.fwf

* Copy the file over to the booted OpenWrt initramfs to /tmp
* Run: mtd erase RouterBOOT-primary
* Run: mtd write /tmp/70x0-7.15-uart.fwf RouterBOOT-primary

4. Install U-Boot to boot OpenWrt:
* Copy the u-boot.elf from bin/targets/mvebu/cortexa72/u-boot-rb5009/u-boot.elf
to OpenWrt initramfs to /tmp.
* Run: . /lib/functions.sh
* Run: yafut -d /dev/mtd$(find_mtd_index "YAFFS") -w -i /tmp/u-boot.elf -o kernel -T
This will use yafut to copy the U-Boot as kernel in YAFFS so that RouterBoot boots it.

5. Wipe the NAND UBI partition:
* Run: ubiformat /dev/mtd$(find_mtd_index "ubi") -y
This will prepare the existing RouterOS rootfs partition for OpenWrt.

6. Flash OpenWrt:
* Copy the bin/targets/mvebu/cortexa72/openwrt-mvebu-cortexa72-mikrotik_rb5009-squashfs-sysupgrade.bin
to OpenWrt initramfs to /tmp.
* Run: sysupgrade /tmp/openwrt-mvebu-cortexa72-mikrotik_rb5009-squashfs-sysupgrade.bin

Device will reboot, boot U-Boot and then OpenWrt.

Recovery:

In case you need to reinstall OpenWrt if it crashes after U-Boot, there is
a recovery mechanism in OpenWrt to boot the OpenWrt initramfs.
You need to hold the reset button while U-Boot is booting and then it will
boot the OpenWrt initramfs from:
1. USB
2. Networking

In recovery mode U-Boot will light all of the LED-s except for the switch
ones.

In case you want to return to RouterOS, you can simply do that via
Netinstall like on any other MikroTik board.

Credits also go to Serhii Serhieiev <adron@mstnt.com> who origininally
figured out the RouterBoot modification for UART, the missing 10G MVPP2
support in U-Boot as well as the custom aux loader to boot directly via
RouterBoot.

Link: https://github.com/openwrt/openwrt/pull/15765
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-24 09:46:19 +02:00
Robert Marko
b5004bac84 mvebu: cortex-a72: enable MikroTik NVMEM layout driver
RB5009 will take advantage of the driver to get MAC adress.

Link: https://github.com/openwrt/openwrt/pull/15765
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-24 09:46:19 +02:00
Robert Marko
62fa12e3c9 mvebu: cortex-a72: enable U-Boot NVMEM driver
In order to not have to ship envtools configuration per board, we can
instead rely on the kernel U-Boot environment NVMEM driver through which
envtools can read/write the environement.

Since size difference is negligeble and this subtarget has rather large
storage regardless, enable it by default.

Link: https://github.com/openwrt/openwrt/pull/15765
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-24 09:46:19 +02:00
Robert Marko
9f2b2d8dcd mvebu: cortex-a72: enable MikroTik platform drivers and NOR variable erase
MikroTik RB5009 will be using advantage of the MikroTik platform drivers,
RouterBoot partition parser and SPI NOR variable erase support.

Link: https://github.com/openwrt/openwrt/pull/15765
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-24 09:46:19 +02:00
Robert Marko
2b316f4e22 mvebu: cortex-a72: enable ARM SBSA Generic Watchdog
Marvell 70x0 and 80x0 both have ARM SBSA Generic Watchdog built-in,
so lets enable the required driver for them.

Link: https://github.com/openwrt/openwrt/pull/15765
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-24 09:46:19 +02:00
Robert Marko
8be64365c4 mvebu: cortex-a72: enable QCA8081 PHY support
MikroTik RB5009 uses Qualcomm QCA8081 PHY for the 2.5G RJ45 port,
so we need to enable the driver for it.

Link: https://github.com/openwrt/openwrt/pull/15765
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-24 09:46:19 +02:00
Robert Marko
215a3ca2a4 treewide: refresh patches
These need to be refreshed, probably the generic backports affected them.

Link: https://github.com/openwrt/openwrt/pull/15765
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-24 09:46:19 +02:00
Robert Marko
f04e377a50 generic: backport QCA808x possible interfaces fix
QCA808x does not currently fill in the possible_interfaces.

This leads to Phylink not being aware that it supports 2500Base-X as well
so in cases where it is connected to a DSA switch like MV88E6393 it will
limit that port to phy-mode set in the DTS.

That means that if SGMII is used you are limited to 1G only while if
2500Base-X was set you are limited to 2.5G only.

Populating the possible_interfaces fixes this, so lets backport the patches
from kernel 6.9.

This also includes a backport of the Phylink PHY validation series from
kernel 6.8 that allows the use of possible_interfaces.

Link: https://github.com/openwrt/openwrt/pull/15765
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-24 09:46:19 +02:00
Robert Marko
568a3db8ee generic: 6.6: backport Marvell Amethyst SMI GPIO setup
Marvell Amethyst switches use a different SMI GPIO pin setup than other
switches, and since RB5009 uses Amethyst switch and its SMI bus to talk
to QCA8081 lets backport the required fix from kernel 6.9.

Link: https://github.com/openwrt/openwrt/pull/15765
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-24 09:46:19 +02:00
Álvaro Fernández Rojas
6d29378eb5 bcm27xx: drop upstream patch that breaks rpi5 wifi
As reported in the following issue, this patch breaks wifi on the RPi 5.
https://github.com/raspberrypi/linux/issues/6237

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2024-06-24 05:48:44 +02:00
Álvaro Fernández Rojas
ea2ff25d4c generic: 6.6: backport upstream r8169 patches
Backport a bunch of upstream r8169 patches:
- RTL8168/RTL8101 LEDs support.
- RTL8126A support.
- RTL8125/RTL8126 LEDs support.
- RTL8168M support.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2024-06-24 05:36:14 +02:00
Robert Marko
a47650e4cb qualcommax: get rid of custom socinfo.h header
Now that SSDK has been updated to use in-kernel SMEM ID-s to identify
the SoC its running on instead of relying on the downstream socinfo.h
header we can move the read_ipq_soc_version_major() function directly to
cpr3-util.c as its the only user of anything from the header and drop it.

Link: https://github.com/openwrt/openwrt/pull/15786
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-23 23:09:54 +02:00
Shiji Yang
354690ebc9 ath79: remove SPI driver link order hack
This hack is used to make sure that the mfd device starts before the
mtd driver[1]. Now the linux driver framework "struct spi_driver {}"
can always ensure this.

[1] 47f8fd1dde ("ar71xx: rewrite SPI drivers for the RB4xx boards")

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
2024-06-23 21:04:20 +02:00
Shiji Yang
f444dea428 ath79: remove GPIO driver earlier registration hack
After porting the ar71xx target to the new ath79 target, we are now
using the device tree instead of the device mach file. And the
platform drivers already support deferred probe. So there is no need
to keep it.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
2024-06-23 21:04:20 +02:00
Kristian Skramstad
87a45ea432 kernel: qca-ssdk: update 12.5 to 2024-06-13
There are some new commits, so refresh and update patches.
Some build warnings have been fixed upstream too.

Add backport target/linux/generic/backport-6.6/722-v6.10-dt-bindings-arm-qcom-ids-Add-SoC-ID-for-IPQ5321.patch.

Removed upstream:
[-] qca-ssdk/patches/101-hsl_phy-add-support-for-detection-PSGMII-PHY-mode.patch
[-] qca-ssdk/patches/201-fix-compile-warnings.patch

List of changes:
2024-04-16  -c451136b-  qca-ssdk: strip MRPPE code
2024-06-05  -f455a820-  [qca-ssdk]: fix enum-int-mismatch warnings
2024-05-31  -bbfc0fa9-  Merge "[qca-ssdk]: update eee status of phydev"
2024-05-31  -adbe9dc5-  Merge "[qca-ssdk]: support psgmii and uqsxgmii mode of kernel"
2024-05-31  -d06ca777-  Merge "[qca-ssdk]: fix 5G issue with the AQR FW that use 5gbaser for 5G speed"
2024-05-31  -c6f539a5-  Merge "qca-ssdk: support mrppe pktedit padding functions"
2024-04-29  -c321e2a9-  qca-ssdk: support mrppe pktedit padding functions
2024-05-24  -ee6e201e-  qca-ssdk: Fix the big endian compile error
2024-05-15  -8c116bb9-  [qca-ssdk]: update eee status of phydev
2024-05-20  -f0341a2c-  Merge "qca-ssdk: Enable igmp for PPE MINI profile"
2024-05-16  -44a0ce93-  qca-ssdk: Enable igmp for PPE MINI profile
2024-05-15  -8b91bbf6-  [qca-ssdk]: support psgmii and uqsxgmii mode of kernel
2024-05-14  -7eec1658-  [qca-ssdk]: fix 5G issue with the AQR FW that use 5gbaser for 5G speed
2024-05-12  -b9f5ea0e-  [qca-ssdk]: ethtool support, do not change wake-up timer when the requested timer is 0
2024-05-09  -5e2c15ed-  Merge "[qca-ssdk]: remove check when mht clock enable"
2024-05-09  -a1563b90-  Merge "[qca-ssdk] support new sku IPQ5321"
2024-04-23  -f04b7680-  [qca-ssdk]: show unknown status when link down
2024-03-22  -33b91b30-  [qca-ssdk]: remove check when mht clock enable
2024-04-29  -b6362f2b-  Merge "qca-ssdk:fix bug in marina nptv6 iid cal"
2024-04-29  -097033ae-  Merge "[qca-ssdk] support cypress uniphy0 connecting MHT switch port0"
2024-04-24  -d45560fd-  qca-ssdk:fix bug in marina nptv6 iid cal
2024-04-24  -7d7a42af-  qca-ssdk: enable policer counter on low memory profile
2024-04-18  -e36cf6ea-  Merge "[qca-ssdk]: change portvlan egress mode initial value as untouched"
2024-04-18  -27817881-  Merge "[qca-ssdk]: update the aqr phy supported ability"
2024-04-18  -5a3a693c-  Merge "qca-ssdk:support marina nptv6"
2024-04-16  -129fe9b3-  Merge "qca-ssdk: support tunnel fields and innner fields inverse"
2024-01-09  -fc8f6abd-  qca-ssdk:support marina nptv6

Signed-off-by: Kristian Skramstad <kristian+github@83.no>
Link: https://github.com/openwrt/openwrt/pull/15771
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-23 17:42:17 +02:00
Zxl hhyccc
ed6935613e kernel: bump 6.1 to 6.1.95
https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.1.95

Removed upstreamed:
generic/pending-6.1/779-net-vxlan-don-t-learn-non-unicast-L2-destinations.patch
reference:
This patch can be removed. It will never return false. And the upstream commit should fix the same issue:
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.1.95&id=a31d0e5deb1abe7c57c6457ae2502f278063126e

All other patches automatically rebased.

Build system: Kirkwood bcm53xx

Signed-off-by: Zxl hhyccc <zxlhhy@gmail.com>
2024-06-23 16:33:41 +02:00
Mathew McBride
bcbdde00c3 armsr: add realtek and smsc ethernet phy drivers to the default image
This adds two more common PHY brands to the image.
Realtek is used on the Google Coral "Phanbell" board (i.MX8MQ).
SMSC has been used on various Raspberry Pi boards.

Signed-off-by: Mathew McBride <matt@traverse.com.au>
2024-06-23 16:15:28 +02:00
Mathew McBride
8ef5d56121 armsr: armv8: enable NXP i.MX8MQ/P USB phy
Support for 'fsl,imx8mq-usb-phy' is needed for USB to work
on NXP i.MX8MQ and i.MX8MP platforms.

Tested with a Google Coral "Phanbell" board.

Signed-off-by: Mathew McBride <matt@traverse.com.au>
2024-06-23 16:15:28 +02:00
Mathew McBride
ea7383e721 armsr: enable framebuffer emulation for virtio-gpu/drm displays
This was discovered when trying to run OpenWrt on Hetzner Cloud's
Arm-based instances.

Hetzner uses QEMU/KVM with virtio-gpu as the main display device,
together with an ACPI firmware. This was not displaying a console
previously.

This setup can be emulated by qemu using options below:
qemu-system-aarch64 \
    -machine virt \
    -bios QEMU_EFI.fd \
    -device virtio-gpu \
    -usb \
    -device qemu-xhci,id=xhci \
    -device usb-tablet,bus=xhci.0 \
    -device usb-kbd,bus=xhci.0 \
    -vnc :0

Signed-off-by: Mathew McBride <matt@traverse.com.au>
2024-06-23 16:15:28 +02:00
Mathew McBride
4468c2f4bd kernel/armsr: disable NXP i.MX9 PMU related option
This PMU (performance management unit) related kernel option
can appear under certain kernel configurations (such as
KVM being enabled).

Disable them, as we do with other PMU-related options.

Signed-off-by: Mathew McBride <matt@traverse.com.au>
2024-06-23 16:15:28 +02:00
Robert Marko
0ed72c271b uml: fix glibc-static check with GCC14
Running the glibc-static check with GCC14 as the host compiler will fail:
Please install a static glibc package. (Missing libutil.a, librt.a or libpthread.a)

However, this error will get printed even with the required static
libraries installed when GCC14 is used.

Manually running the check exposes the real error:
<stdin>: In function ‘main’:
<stdin>:1:45: error: implicit declaration of function ‘timer_gettime’ [-Wimplicit-function-declaration]

GCC14 now errors on implicit declarations by default, so lets add the
required time.h header to fix compilation and thus the check.

Link: https://github.com/openwrt/openwrt/pull/15778
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-22 22:06:06 +02:00
John Audia
832e2f6dd0 kernel: bump 6.6 to 6.6.35
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.35

Removed upstreamed:
	bcm27xx/patches-6.6/950-1135-ax25-Fix-refcount-imbalance-on-inbound-connections.patch[1]

Removed no longer needed:
	generic/pending-6.6/779-net-vxlan-don-t-learn-non-unicast-L2-destinations.patch[2]

All other patches automatically rebased.

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

1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.35&id=52100fd74ad07b53a4666feafff1cd11436362d3
2. As suggested by @DragonBluep, "This patch can be removed. It will never return false. And the upstream commit should fix the same issue: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit?h=v6.6.35&id=924f7bbfc5cfd029e417c56357ca01eae681fba6"

Signed-off-by: John Audia <therealgraysky@proton.me>
2024-06-22 16:50:57 +02:00
Tim Harvey
5f307b29cd imx: 6.6: add upstream patches for imx8m{m,n,p} venice
Add a set of upstream patches for the imx8m{m,n,p} based Venice
boards.

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Link: https://github.com/openwrt/openwrt/pull/15736
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-22 16:29:39 +02:00
Tim Harvey
176b8df701 imx: coretexa53: fix network configuration for GW74xx
The GW74xx's first RJ45 is eth0 which should be the WAN adapter, not
eth1 which is the CPU uplink port to the switch.

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Link: https://github.com/openwrt/openwrt/pull/15736
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-22 16:29:39 +02:00
Robert Marko
dcc4307205 qoriq: use 6.1 by default and drop 5.15
qoriq has had kernel 6.1 as testing for 2 months now, so lets default to
it and drop 5.15 support.

Link: https://github.com/openwrt/openwrt/pull/15767
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-21 20:27:53 +02:00
Robert Marko
73a9f9f857 generic: platform/mikrotik: add NVMEM layout driver
Currently, information from MikroTik hard_config is only available via
sysfs, meaning that we have to rely on userspace to for example setup MACs.

So, lets provide a basic NVMEM layout based driver to expose the same cells
as sysfs driver exposes.

Do note that the we dont extract the WLAN caldata and BDF-s at this point.

Reviewed-by: Thibaut VARÈNE <hacks@slashdirt.org>
Link: https://github.com/openwrt/openwrt/pull/15665
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-20 15:53:55 +02:00
Robert Marko
6527619395 generic: platform/mikrotik: move hard config tag ID-s to a header
Move the hard config tag ID-s to a separate header so they can be reused
by the NVMEM driver as well.

Link: https://github.com/openwrt/openwrt/pull/15665
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-20 15:53:55 +02:00
Shiji Yang
bc56334428 ath79: trim useless package kmod-leds-reset for some devices
Only NETGEAR WNDR3x00 series devices have reset controller LED.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
2024-06-20 14:02:13 +02:00
Shiji Yang
5901598586 ath79: disable unnecessary driver CONFIG_LEDS_RESET
This driver has already been packed as a software package. There is
no need to build it into the kernel.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
2024-06-20 14:02:13 +02:00
Shiji Yang
66b41c4afd ath79: add back usb LED label for NETGEAR WNDR3x00 devices
The "reset-leds" driver does not support parsing color and function
properties.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
2024-06-20 14:02:13 +02:00
Álvaro Fernández Rojas
0a07a3a13d
bcm27xx: fix malformed upstream arm64 DT patch
This patch was causing buildbot issues when copying arm64 DT files since
bcm283x-rpi-csi1-2lane.dtsi and bcm283x-rpi-lan7515.dtsi were linked to
"../../../../arm/boot/dts/" instead of "../../../../arm/boot/dts/broadcom".
These files aren't needed, so let's remove them instead of fixing them.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/15762
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-06-20 05:55:08 +02:00
Robert Marko
150d0ceab7 ath79: ag71xx: support probe defferal for getting MAC address
Currently, of_get_ethdev_address() return is checked for any return error
code which means that trying to get the MAC from NVMEM cells that is backed
by MTD will fail if it was not probed before ag71xx.

So, lets check the return error code for EPROBE_DEFER and defer the ag71xx
probe in that case until the underlying NVMEM device is live.

Link: https://github.com/openwrt/openwrt/pull/15752
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-20 11:11:36 +02:00
Matthias Schiffer
0b6b54eca9 ipq40xx: net/ipqess: fix outbound port tag computation
Since the introduction of out-of-band tagging, writing the outbound tag
had been completely broken: First, in place of a port mask containing
the port number, just the port number itself was set in the register
value. Just after that, the full port mask 0x3e (all 5 external ports)
was set unconditionally.

This remained unnoticed because the switch would then use the FDB to
decide where to send unicast packets; broadcast and multicast packets
were however sent to every port.

Fix the port tag computation and only use the full port mask as a
fallback for non-DSA mode, as it was done in the older driver patches
used on Linux 5.15.

Fixes: cd9c721124 ("ipq40xx: 6.1: use latest DSA and ethernet patches")
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-20 10:52:26 +02:00
Zxl hhyccc
b004feaafb kernel: bump 6.1 to 6.1.94
https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.1.94

All other patches automatically rebased.

Build system: Kirkwood bcm53xx

Signed-off-by: Zxl hhyccc <zxlhhy@gmail.com>
2024-06-20 10:41:50 +02:00
Martin Schiller
f6fe19ed6d lantiq: fix pci driver once again
In my previous attempt to solve the PCI problems for the lantiq targets,
I did not pay attention to the fact that the original accesses to the
GPIO took place in RAW mode. As a result, the polarity defined in the
device trees (apart from the initial value) was irrelevant.

In addition, the expected name of the GPIO in the dts has changed due to
the upstream change and therefore no RESET is currently performed.

As discussed in [1] on the linux-mips mailing list, we will now adapt
the dts files accordingly instead of patching the driver:

- dts property will be renamed to "reset-gpios"
- Polarity is set to "GPIO_ACTIVE_LOW".

I have verified this with a TP-Link TD-W8980. The PCI device is now
recognized by the system.

[1] https://patchwork.kernel.org/project/linux-mips/patch/20240607090400.1816612-1-ms@dev.tdt.de/

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
Tested-by: Aleksander Jan Bajkowski <olek2@wp.pl> # Tested on AVM 7330 (ar9)
Link: https://github.com/openwrt/openwrt/pull/15731
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-20 09:56:50 +02:00
Daniel Golle
5e7955171c generic: backport pending driver for Winchip CH348 USB serial
Import patch and package kernel module for Winchip CH348
USB-to-8x-UART chip.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-06-20 01:11:09 +01:00
Daniel Golle
c4e6a147a6 generic: 6.6: mt7530: add support for bridge port isolation
Import patches accepted upstream introducing port isolation feature
on MT7530 switches:
  - [net-next,v3,1/2] net: dsa: mt7530: factor out bridge join/leave logic
    https://git.kernel.org/netdev/net-next/c/c25c961fc7f3
  - [net-next,v3,2/2] net: dsa: mt7530: add support for bridge port isolation
    https://git.kernel.org/netdev/net-next/c/3d49ee2127c2

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-06-20 01:11:09 +01:00
John Audia
a09a72d86d kernel: bump 6.6 to 6.6.34
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.34

Removed upstreamed:
	backport-6.6/701-v6.8-net-sfp-bus-fix-SFP-mode-detect-from-bitrate.patch[1]

All other patches automatically rebased.

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

1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.34&id=9399baa02e4b7f101c39fdbc4d681d54bca4465b

Signed-off-by: John Audia <therealgraysky@proton.me>
2024-06-20 01:55:19 +02:00
Álvaro Fernández Rojas
6fdf3a32d9 bcm27xx: base-files: diag: fix LEDs
At some point RPi LEDs were renamed from led0/led1 to PWR/ACT.
This patch fixes this and also automatically detects the status_led without
relying on board_name.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2024-06-19 20:07:08 +02:00
Álvaro Fernández Rojas
68f7ca23fb bcm27xx: drop kernel 6.1 support
kernel 6.1 can be dropped since 6.6 is the default kernel.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2024-06-19 19:36:09 +02:00
Álvaro Fernández Rojas
98cfff4745 bcm27xx: switch default kernel to 6.6
Update default kernel version to 6.6 for the Raspberry Pi devices.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2024-06-19 19:36:09 +02:00
Robert Marko
070b87e7ac ath79: mikrotik: set compat version for NAND devices
Currently, trying to upgrade on a MikroTik NAND device will force you to
use sysupgrade -n due to:
upgrade: The device is supported, but the config is incompatible to the new image (1.0->1.1). Please upgrade without keeping config (sysupgrade -n).
upgrade: NAND images switched to yafut. If running older image, reinstall from initramfs.

So instead of having users manually set the new compat version lets do
what other targets do and set it for all NAND devices after good boot.

Link: https://github.com/openwrt/openwrt/pull/15754
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-19 12:26:19 +02:00
Dave Brand
820823198d bcm27xx: add support for RPI A, A+, 3A+, Zero2 and Zero2W
These devices were already supported. I merely added missing entries to:
1. make them easier to locate in firmware selector
2. allow firmware upgrades to proceed without dire warnings

Sample dire warning contains:
    upgrade: Device raspberrypi,model-zero-2-w not supported by this image
    upgrade: Supported devices: rpi-3-b rpi-3-b-plus rpi-zero-2 \
      raspberrypi,2-model-b-rev2 raspberrypi,3-model-b \
      raspberrypi,3-model-b-plus raspberrypi,3-compute-module \
      raspberrypi,compute-module-3 raspberrypi,model-zero-2

With this patch, the firmware upgrade proceeds normally.

Signed-off-by: Dave Brand <dbrand666@users.noreply.github.com>
2024-06-19 10:24:49 +02:00
Hauke Mehrtens
8e214d48b1 ramips: Fix DOS line endings
Convert line endings from DOS to Unix using dos2unix.

Fixes: 2da2705a44 ("ramips: add support for WINSTARS WS-WN536P3")
Fixes: 5560791bbd ("ramips: add support for OpenFi 5Pro Travel Router")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-06-19 00:01:41 +02:00
Álvaro Fernández Rojas
157c7bd50c bcm27xx: remove 6.6 CONFIG_ARCH_BCM_63XX symbol
This symbol was removed upstream, but it was present on bcm27xx due to a
malformed upstream RPi patch.

Fixes: 8c405cdccc ("bcm27xx: add 6.6 kernel patches")
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2024-06-18 21:58:29 +02:00
Álvaro Fernández Rojas
2cd6da257c bcm27xx: enable 6.6 testing kernel
The bcm27xx now supports 6.6 kernel as testing.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2024-06-18 19:00:51 +02:00
Álvaro Fernández Rojas
670bb13649 bcm27xx: refresh 6.6 kernel config files
Refresh config for kernel 6.6 and add missing symbols.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2024-06-18 19:00:44 +02:00
Álvaro Fernández Rojas
8c405cdccc bcm27xx: add 6.6 kernel patches
The patches were generated from the RPi repo with the following command:
git format-patch v6.6.34..rpi-6.1.y

Some patches needed rebasing and, as usual, the applied and reverted, wireless
drivers, Github workflows, READMEs and defconfigs patches were removed.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2024-06-18 18:52:49 +02:00
Álvaro Fernández Rojas
e8067fa108 bcm27xx: copy kernel config from 6.1 to 6.6
This is preparation for 6.6 kernel support. Copying files makes it easier to
track their git history.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2024-06-18 18:52:49 +02:00
Mieczyslaw Nalewaj
7ccd7dac7e
generic: replace spi Silicon Labs patch with upstream version
Replace Silicon Labs patch with upstream version as they got merged in
kernel 6.3.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
[ rework commit title and description, use better patch ]
Link: https://github.com/openwrt/openwrt/pull/15300
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-06-18 14:14:38 +02:00
Robert Marko
70088a7e4c
mvebu: uDPU/eDPU: mount F2FS with ZSTD compression
Now that we can pass the desired compression via cmdline, pass ZSTD as the
desired compression algorithm for F2FS.

Signed-off-by: Robert Marko <robert.marko@sartura.hr>
2024-06-17 20:16:20 +02:00
Robert Marko
149a1ab273
mvebu: uDPU/eDPU: mount misc partition with ZSTD compression
F2FS requires the compression algorith to be passed as argument while
mounting, so lets do so for the misc partition.

Signed-off-by: Robert Marko <robert.marko@sartura.hr>
2024-06-17 20:16:20 +02:00
Robert Marko
23191b4075
mvebu: uDPU/eDPU: format F2FS partitons with compression support
In order to prolong the eMMC life and utilize ZSTD compression on Methode
devices, we must format the F2FS rootfs and misc partition with xattr and
compression support feature flags first.

This will only happen if partitions are broken currently, but later
commits will add support to convert existing boards to use compression.

Signed-off-by: Robert Marko <robert.marko@sartura.hr>
2024-06-17 20:16:20 +02:00
Robert Marko
793b925f8b
mvebu: cortexa53: include mkfs.f2fs and fdisk for sysupgrade
Methode devices require mkfs.f2fs in order to format rootfs and misc
partitions if they have not already been formatted.
fdisk is required if partition table got broke so it can be regenerated.

Signed-off-by: Robert Marko <robert.marko@sartura.hr>
2024-06-17 20:16:19 +02:00
Robert Marko
ae358b8489
mvebu: cortexa53: enable F2FS ZSTD compression support
We would love to utilize ZSTD compression support in F2FS on the
Methode euroDPU so lets enable the required kernel support.

Signed-off-by: Robert Marko <robert.marko@sartura.hr>
2024-06-17 20:16:19 +02:00
Daniel Golle
e3afc7047b generic: 6.6: refresh patches
Refresh patches as line numbers changed with newer upstream version
since original backport PR was opened.

Fixes: a5c095c453 ("generic: 6.6: replace (broken) downstream patch with upstream solution")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-06-17 15:03:47 +01:00
Daniel Golle
a5c095c453
generic: 6.6: replace (broken) downstream patch with upstream solution
Our downstream patch "net/core: add optional threading for backlog processing"
has been broken with the switch to Linux 6.6.
Replace it by backporting the now available upstream solution.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Link: https://github.com/openwrt/openwrt/pull/15592
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-06-17 13:31:20 +02:00
Christian Lamparter
9328817e75
uml: drop 6.1 kernel support files
Drop config+patches for kernel 6.1.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/15713
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-06-17 12:59:06 +02:00
Christian Lamparter
85f6deb4e8
uml: switch to 6.6 kernel
Switch the uml target to kernel 6.6.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/15713
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-06-17 12:59:06 +02:00
Christian Lamparter
cef30e225d
uml: define "generic" subtarget
UML didn't have a subtarget defined.

While this compiled fine, the patch caused funny filenames
for the generated files to appear:
 - "openwrt-uml--vmlinux"
 - "openwrt-uml--squashfs.img"
 - "openwrt-uml--ext4.img"
 - ...

since "generic" is implied anyway, let's just set it.

Fixes: d997477775 ("treewide: remove implicit SUBTARGET")
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/15713
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-06-17 12:59:05 +02:00
Christian Lamparter
76dabadda8
apm821xx: drop 6.1 kernel support files
Drop config+patches for kernel 6.1.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/15721
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-06-17 12:58:41 +02:00
Christian Lamparter
02d47af19e
apm821xx: switch to 6.6 kernel
Switch the apm821xx targets to kernel 6.6.
no complains received.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/15721
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-06-17 12:58:40 +02:00
Rosen Penev
6ff598306f
treewide: gpio to gpios
gpio is deprecated. Found with dtc's -Wdeprecated_gpio_property

Used git grep -E $'\tgpio = <' to make the changes.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/15681
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-06-17 12:57:06 +02:00
Andrew Smith
9745de82d5 qualcommax: ipq807x: use ath11k_patch_mac for SXK80
Use ath11k_patch_mac and ath11k_set_macflag functions for SXK80

Signed-off-by: Andrew Smith <gul.code@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/15732
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-17 12:35:07 +02:00
John Vincent
531b3f667c kernel: armsr: Renesas: RZ: Ethernet module and ttySC0
Ethernet module enable for Renesas RZ platform
inittab fix for ttySC0

Fixes: #15284
Signed-off-by: John Vincent <john.vincent.xa@bp.renesas.com>
2024-06-17 00:10:53 +02:00
Sven Huang
5560791bbd ramips: add support for OpenFi 5Pro Travel Router
OpenFi 5Pro is a DualBand Travel Router, based on MT7621A.

Specification:
- Type             : Travel Wi-Fi Router(built-in Type-C Power Cable)
- Size             : 63 x 93 x 24mm
- Power            : Internal Type-C Cable PD/DC 5V@2A
- SoC              : MediaTek MT7621A
- RAM              : DDR3 512 MB
- Flash            : SPI-NOR 64MB (W25Q512)
- WLAN             : 2.4/5GHz 2T2R (MediaTek MT7603e/MT7613)
- Ethernet         : 2x 10/100/1000Mbps
- USB              : 1 x USB 2.0
- SDHCI            : 1 x TF Slot (Max 512GB)
- LEDs             : 3 x LEDs  (GPIO#16 gpio#17 gpio#14)
- Button           : 1 x Reset (GPIO#18),  1 x WPS (GPIO#13)
- UART             : 1 x UART for Debug, 115200 8N1 (Pinout: GND TX RX 3.3V)
- UART 2           : 1xUART2  (Pinout: GND TX2 RX2 3.3V )

How to upgrade image in uboot

1. press reset button when boot for 5sec.
2. access 192.168.21.1 in web ui.
3. select image and upload

Signed-off-by: Sven Huang <1036456939@qq.com>
2024-06-17 00:01:51 +02:00
Sven Huang
2da2705a44 ramips: add support for WINSTARS WS-WN536P3
WS-WN536P3 is a 2.4/5 GHz band 11ac router, based on MT7621DA.

Specification:

- SoC               : MediaTek MT7621DA
- RAM               : DDR3 128 MB
- Flash             : SPI-NOR 16MB
- WLAN              : 2.4/5 GHz 2T2R (MediaTek MT7603e/MT7613)
- Ethernet          : 5x 10/100/1000 Mbps
- LEDs              : 1x Sys 1x WIFI 5x Ethernet LEDs(connect to switch)
- Keys              : 1x Reset 1x WPS 1x Turbo
- USB               : x1
- UART              : 1xUART
- settings        : 115200n8

How to upgrade image in uboot

1. press reset button when boot for 5sec.
2. access 192.168.10.1 in web ui.
3. select image and upload

Signed-off-by: Sven Huang <1036456939@qq.com>
2024-06-16 23:42:59 +02:00
Mieczyslaw Nalewaj
098be45d02 kernel: generic: refresh patches
Refresh patches by 'make target/linux/refresh'

Fixes: 487cc3831c ("generic: 6.6: drop patch adding support for multiple MTK PPE")
Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-06-16 23:02:25 +02:00
Shiji Yang
6fd8cca172 ath79: diable some 6 MiB image size TP-Link devices
The max image sizes are too small to generate images.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
2024-06-16 22:10:37 +02:00
Shiji Yang
4309be6bcb ath79: drop factory image for DIR-825 and TEW-673GRU
The max image sizes are too small to generate factory images.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
2024-06-16 22:10:37 +02:00
Milinda Brantini
c95ed79787 rockchip: Add cache information to the SoC dtsi for RK356x
Fix cacheinfo: Unable to detect cache hierarchy for CPU 0.

Signed-off-by: Milinda Brantini <C_A_T_T_E_R_Y@outlook.com>
2024-06-16 21:59:11 +02:00
Mieczyslaw Nalewaj
b0d418035e ramips: tplink_8m: cleaning up nvmem-cells definitions
Move nvmem-cells definitions to dts files for compatibility with other files
in which mt7628an_tplink_8m.dtsi is loaded, to prevent overwriting

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-06-16 21:24:11 +02:00
Mieczyslaw Nalewaj
3ce71a1ead ramips: netgear_r6xxx: cleaning up nvmem-cells definitions
Move nvmem-cells definitions to dts files to prevent overwriting

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-06-16 21:24:11 +02:00
Mieczyslaw Nalewaj
fd610a2083 ramips: elecom_wrc-gs-1pci: cleaning up nvmem-cells definitions
Move nvmem-cells definitions to dts files to prevent overwriting

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-06-16 21:24:11 +02:00
Mieczyslaw Nalewaj
c54ce12a74 ramips: cudy_x6: cleaning up nvmem-cells definitions
Move nvmem-cells definitions to dts files to prevent overwriting

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-06-16 21:24:11 +02:00
Mieczyslaw Nalewaj
e750c22904 ramips: xiaomi,mi-ra75: cleaning up nvmem-cells definitions
Remove nvmem-cells definitions due to duplication
in mt7628an_xiaomi_mi-router-4.dtsi

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-06-16 21:24:11 +02:00
Mieczyslaw Nalewaj
3504667bbe ramips: tplink,archer-c2-v1: cleaning up nvmem-cells definitions
Remove nvmem-cells definitions due to duplication
in mt7620a_tplink_8m.dtsi

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-06-16 21:24:11 +02:00
Mieczyslaw Nalewaj
e125cf5a8c ramips: hiwifi,hc5861: cleaning up nvmem-cells definitions
Remove nvmem-cells definitions due to duplication
in mt7620a_hiwifi_hc5x61.dtsi

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-06-16 21:24:11 +02:00
Daniel Golle
487cc3831c generic: 6.6: drop patch adding support for multiple MTK PPE
Partially revert commit 98ddfbc56a ("generic: 6.6: backport upstream
commits for mtk_eth_soc") as the commit breaks WED. A better solution to
assign PPE units in case of WED has still to be found.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-06-16 18:41:40 +01:00
Daniel Golle
94e0190082 generic: 6.6: update NVMEM-on-MMC series
Allow a wider audience to test this pending series.

Use about to be submitted v3 which factors out block notification support.
Apart from dropping the no longer needed (and problematic) fallback for
for the 'partitions' node being present at the device parent there are
no intended functional changes.

As opening a block device as file is not supported yet in Kernel v6.6,
use the previous method as backporting seems a bit too involving.

Fixes: #15642
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-06-16 13:28:01 +01:00
Daniel Golle
4fd4be6bbe generic: 6.6: move NVMEM-on-UBI patches from pending to backports
The series was merged for Linux v6.9, so move it to backports.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-06-16 13:28:01 +01:00
Daniel Golle
98ddfbc56a generic: 6.6: backport upstream commits for mtk_eth_soc
Backport two commits for mtk_eth_soc:
 * net: ethernet: mtk_eth_soc: handle dma buffer size soc specific
   (torvalds/linux@c57e558194)
 * net: ethernet: mtk_eth_soc: ppe: add support for multiple PPEs
   (torvalds/linux@dee4dd10c7)

Refresh pending patches which require that.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-06-16 13:28:01 +01:00
David Bauer
e321e70ddc mpc85xx: fix label-mac-address for Enterasys WS-AP3710i
The WS-AP3710i does not correctly expose its label-mac on eth0 anymore
since the change to simpleLoader.

Fix this by obtaining the label-mac from the U-Boot environment.

Signed-off-by: David Bauer <mail@david-bauer.net>
2024-06-16 14:02:19 +02:00
Shiji Yang
05aec66d53 ramips: fix MAC address for some devices
1. Remove unused macaddr NVMEM cells.
2. Fix "mac-base" compatible cells references.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
2024-06-15 22:54:52 +02:00
John Audia
f34620f146 kernel: bump 6.6 to 6.6.33 and adjust subarches
This commit accomplishes three goals:
1. bump 6.6 to 6.6.33
2. kernel: modules: video: change package definition for fb for
   upstream changes[1]
3. kernel/multiple subtargets: add CONFIG_FB_IOMEM_FOPS=y to all
   subtargets which also set CONFIG_FB_CORE=y.

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

Removed upstreamed:
	pending-6.6/195-block-fix-and-simplify-blkdevparts-cmdline-parsing.patch[2]
	gemini/patches-6.6/0003-net-ethernet-cortina-Locking-fixes.patch[3]

Manually rebased:
	ramips/patches-6.6/810-uvc-add-iPassion-iP2970-support.patch

All other patches automatically rebased.

1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-6.6.y&id=c00e8fd749502c02085534c60b1edca4fc479c91
2. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.33&id=99bbbd9aea059f8a206736dc601be2ae61d366fb
3. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.33&id=8f6f82d6a205ceb3aba8d279f9ff6eeea0b1689b

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

Tested-by: Stijn Segers <foss@volatilesystems.org>
Signed-off-by: John Audia <therealgraysky@proton.me>
2024-06-15 22:44:06 +02:00
Zxl hhyccc
fc9cb9b609 kernel: bump 6.1 to 6.1.93
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.1.93

Removed upstreamed:
bcm27xx/patches-6.1/950-0081-smsx95xx-fix-crimes-against-truesize.patch
reference: 517e64bcc9

Manually rebased:
bcm27xx/patches-6.1/950-0712-drm-vc4-Use-phys-addresses-for-slave-DMA-config.patch

All other patches automatically rebased.

Build system: bcm53xx ath79

Signed-off-by: Zxl hhyccc <zxlhhy@gmail.com>
2024-06-15 19:55:01 +08:00
David Bauer
22f92cce22 mpc85xx: fix Enterasys WS-AP3710i eth mac-address
With the introduction of the simpleImage loader, the MAC address is not
set by the bootloader anymore.

Fix this by reading the MAC address from the U-Boot environment
partition.

Signed-off-by: David Bauer <mail@david-bauer.net>
2024-06-14 23:33:06 +02:00
Shiji Yang
2db6459ed4 ath79: fix MAC address for senao loader devices
The "mac-base" nvmem-cell-cells size is 1.

Fixes: b2f1c6ed52 ("ath79: qca: remove mac-address-increment")
Signed-off-by: Shiji Yang <yangshiji66@qq.com>
2024-06-14 21:05:19 +02:00
Shiji Yang
4fdc7bb8f1 ath79: switch default kernel to 6.6
We haven't received any bug reports in the past few weeks. So it's
time to set kernel 6.6 as the default and remove kernel 6.1 support.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
2024-06-14 17:38:09 +02:00
Shiji Yang
bcbf666f69 ath79: refresh 6.6 kernel config
Add the missing kernel symbols by
`make kernel_oldconfig CONFIG_TARGET={target,subtarget}`.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
2024-06-14 17:38:09 +02:00
Hauke Mehrtens
99aa86ef85 bcm47xx: Remove profiles for broadcom-wl
The broadcom-wl driver was removed from OpenWrt, remove also the
profiles using it.

Fixes: e772b75d5d ("broadcom-wl: remove package")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-06-14 14:54:16 +02:00
Hauke Mehrtens
2beea2943b bcm47xx: Remove exports for braodcom-wl driver
The braodcom-wl driver was removed from OpenWrt, remove the special
exports it needed.

Fixes: e772b75d5d ("broadcom-wl: remove package")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-06-14 14:54:16 +02:00
Mikhail Zhilkin
ef845675f5 ramips: fix wrong dts file permission
This file is executable:
   target/linux/ramips/dts/mt7621_dlink_dir-2150-a1.dts
Has to be fixed.

Fixes: 30e8fd73ec ("ramips: Add support for D-Link DIR-2150-A1")
Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com>
2024-06-14 14:44:04 +02:00
Mikhail Zhilkin
61dce63c04 ramips: fix random LAN MAC for sercomm dxx devices
This commit fixes random lan mac for sercomm dxx devices.

Fixes: 3395184825 ("ramips: mt7621: nix mac-address-increment")
Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com>
2024-06-14 14:43:07 +02:00
Mikhail Zhilkin
24d2519755 ramips: fix wrong eeprom data for sercomm dxx devices
This commit fixes wrong WiFi eeprom data:
   /sys/kernel/debug/ieee80211/phy0/mt76/eeprom
   /sys/kernel/debug/ieee80211/phy1/mt76/eeprom

Fixes: fb4cea45ec ("ramips: convert MT7603 EEPROM to NVMEM format")
Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com>
2024-06-14 14:41:30 +02:00
Rosen Penev
932808ebde ath79: fix wrong mac address for ecb1xx0
0db4f9785c changed the variable name from
athaddr to ethaddr. Restore.

Fixes: 0db4f9785c ("ath79: convert ath10k calibration data to NVMEM (ASCII MAC)")
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2024-06-14 14:20:27 +02:00
Chukun Pan
0a76244a72 qualcommax: ipq807x: fix sysupgrade for ZBT-Z800AX
This router has two rootfs partitions and dualboot is used.
Vendor firmware may swap the rootfs partition location, u-boot append
'ubi.mtd=rootfs' in the end of cmdline. Since we use fixed-partitions,
force boot from the first rootfs partition to avoid boot failure.

Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
Link: https://github.com/openwrt/openwrt/pull/15700
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-13 18:01:03 +02:00
Tony Ambardar
ce51f27fb0
kernel: 6.6: prevent garbage-cleanup of BPF kfuncs
Backport an upstream Linux fix to prevent BPF kfunc functions from being
removed during linker optimization when building BTF-enabled vmlinux.

The telltale sign of this occurring is build log warnings (e.g. mips64el):

      BTFIDS  vmlinux
    WARN: resolve_btfids: unresolved symbol bpf_verify_pkcs7_signature
    WARN: resolve_btfids: unresolved symbol bpf_lookup_user_key
    WARN: resolve_btfids: unresolved symbol bpf_lookup_system_key
    WARN: resolve_btfids: unresolved symbol bpf_key_put
    WARN: resolve_btfids: unresolved symbol bpf_iter_task_next
    WARN: resolve_btfids: unresolved symbol bpf_iter_css_task_new
    WARN: resolve_btfids: unresolved symbol bpf_get_file_xattr
    WARN: resolve_btfids: unresolved symbol bpf_ct_insert_entry
      NM      System.map
      SORTTAB vmlinux

Link: https://lore.kernel.org/bpf/ZlkoM6%2FPSxVcGM6X@kodidev-ubuntu/
Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/15697
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-06-13 14:16:34 +02:00
Kristian Skramstad
75a76355cb qualcommax: ipq807x: wax620 and wax630: fix wifi mac address
The wifi radios on wax620 and wax630 got a random mac
address on boot. So fix this by using ath11k_patch_mac
and give a static mac address from label-mac-device.

Tested and working on wax620 and wax630.

Signed-off-by: Kristian Skramstad <kristian+github@83.no>
Link: https://github.com/openwrt/openwrt/pull/15597
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-13 11:01:59 +02:00
Robert Marko
169a695280 octeontx: drop target
octeontx is currently stuck on kernel 5.15 since using 6.1 breaks booting,
and unfortunately nobody has stepped up to fix this issue.

Gateworks who were primary users have supported the removal.

Link: https://github.com/openwrt/openwrt/pull/15686
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-12 21:52:41 +02:00
Koen Vandeputte
167b016a21 ipq40xx: fix invalid GPIO numbers since kernel 6.6
The bump to kernel 6.6 increased the GPIO base from
412 to 512 on this target.

We need to compensate for that in the GPIO numbers being passed
to uci to fix following kernel report:

[   24.176183] export_store: invalid GPIO 423

Tested on a Wallys DR40x9 board.

Please note that:

Boards "rtl30vw" and "wpj428" are not being altered here.
They define GPIO numbers which are even below the previous
base of 412 which looks wrong.
Actual testing on these boards should be conducted to validate
and optionally fix GPIO numbering.

Suggested-by: Robert Marko <robimarko@gmail.com>
Signed-off-by: Koen Vandeputte <koen.vandeputte@citymesh.com>
2024-06-12 14:25:56 +02:00
Sebastian Schaper
aa4d63c2da ramips: add support for 7Links WLR-1240
The WLR-1240 (ZX-5434) is an AC1200 Wave 2 outdoor repeater
with omnidirectional antennas for wall or pole mounting.
The device is manufactured by Todaair and meant to be used with
a tuya-based app, there is no webinterface for configuration.

Specifications:
- MT7628AN, 8 MiB SPI NOR flash, 64 MiB RAM, 2x2 802.11n
- MT7613 2x2 802.11ac Wave 2
- 802.3af PoE or 12V 1A 5.5x2.1 power supply (included)
- top RGB LED ring

TFTP installation:
- rename sysupgrade to `firmware_auto.bin`
- provide at 192.168.1.10 during boot

HTTP installation:
- keep reset button pressed for 5 seconds during power on (light blue
  LED flashes slowly, then quickly to confirm, then remains steady on)
- recovery web interface is at 192.168.1.1, upload sysupgrade

Opening the device
- use suction cup to remove top cap within LED ring
- two screws are located in holes underneath silicone sealant
- two further screws are located at the bottom

initramfs boot
- open device, connect serial console (pins are labelled)
- keep pressing `4` during second tftp attempt to enter uboot shell
- run `tftpboot 82000000` to avoid memory overlap, then `bootm`

Signed-off-by: Sebastian Schaper <openwrt@sebastianschaper.net>
2024-06-11 00:09:06 +02:00
Sebastian Schaper
3d6cbe287a ramips: add support for 7Links WLR-1230
The WLR-1230 (ZX-5207) is an AC1200 Wave 2 outdoor repeater
with sector antennas for wall or pole mounting.
The device is manufactured by Todaair and meant to be used with
a tuya-based app, there is no webinterface for configuration.

Specifications:
- MT7628AN, 8 MiB SPI NOR flash, 64 MiB RAM, 2x2 802.11n
- MT7613 2x2 802.11ac Wave 2
- 802.3af PoE or 12V 1A 5.5x2.1 power supply (included)
- 3 LEDs WLAN, LAN, RES; PWR LED is not software-controllable

TFTP installation:
- rename sysupgrade to `firmware_auto.bin`
- provide at 192.168.1.10 during boot

HTTP installation:
- keep reset button pressed for 5 seconds during power on (LEDs
  flash slowly, then quickly to confirm, then remain steady on)
- recovery web interface is at 192.168.1.1, upload sysupgrade

Opening the device
- two screws are located in the bottom left and right corners
  underneath the label, inner tray slides out easily

initramfs boot
- open device, connect serial console (pins are labelled)
- keep pressing `4` during second tftp attempt to enter uboot shell
- run `tftpboot 82000000` to avoid memory overlap, then `bootm`

Signed-off-by: Sebastian Schaper <openwrt@sebastianschaper.net>
2024-06-11 00:09:06 +02:00
Hauke Mehrtens
5be9a8790c mediatek: Ruijie RG-X60 Pro: Add kmod-mt7915e
Add the kmod-mt7915e wifi driver to the default packages for the Ruijie
RG-X60 Pro. kmod-mt7915e has to be added recently and was not done
before merging the support for Ruijie RG-X60 Pro.

Fixes: 3de3c2bdfa ("mediatek: add support for Ruijie RG-X60 Pro")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-06-10 12:42:23 +01:00
Luis Mita
d780d530dd ramips: mt76x8: sync Cudy TR1200 v1 naming
Cudy assigns hardware versions to its devices on its website, and
the Cudy TR1200 router is now Cudy TR1200 v1.
OpenWrt currently uses both variants, and this commit removes
inconsistencies using only the new name.

Signed-off-by: Luis Mita <luis@luismita.com>
2024-06-10 10:13:56 +02:00
Tianling Shen
0397932fdd mediatek: convert eeprom/macaddr to nvmem format for jdcloud re-cp-03
Switch to new nvmem binding.

Also fixes a issue that the MAC address assigned to lan/wan was reversed.

Tested-by: Yangyu Chen <cyy@cyyself.name>
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2024-06-10 10:08:19 +02:00
Sijia Huang
33db914607 mediatek: filogic: Add support for Wavlink WL-WN586X3
Hardware
--------
- SOC: MediaTek MT7981
- ram: 256MB DDR3
- FLASH: 16MB SPI-NOR
- Ethernet: 2x1Gb Lan 1x1Gb Wan
- WIFI: MediaTek MT7981 2x2 DBDC 802.11ax 2T2R (2.4/5)
- LEDs: 2xLan 1x Wan 1x WIFI 1xSTATUS

MAC table, same as stock firmware:
LAN: 80:3F:5D:xx:xx:x1 partition "hw" at 0x44e (ASCII)
WAN: 80:3F:5D:xx:xx:x2 partition "hw" at 0x460 (ASCII)
 2G: 80:3F:5D:xx:xx:x3 partition "factory" at 0x4 (binary), on label
 5G: 80:3F:5D:xx:xx:x3 Same as 2G

Installation Method 1: ssh
--------------------------
1. Connect PC to the lan port. Set the PC IP to 192.168.10.100 if
   required.
2. Navigate to http://192.168.10.1/
3. Log into the Wavlink WebGUI. Default username/password is
   admin/admin.
4. Use WebGUI to upgrade the firmware to
   WAVLINK_WN586X3-A_M86X3A_V240113_WO-GDBYFM-modified.bin
   downloaded from
   https://github.com/themaverickdm/firmware-misc/tree/main/wavlink/wl-wn586x3
   Warning: All settings will be lost!
5. Wait about 5 minutes, and after flashing is completed, log into
   the router using (with admin123 as password):
   ssh root@192.168.10.1
6. scp the openwrt image file onto the router, usually under /tmp
   somewhere.
   openwrt-mediatek-filogic-wavlink_wl-wn586x3-squashfs-sysupgrade.bin
7. Flash openwrt image file like so:
   mtd write \
     openwrt-mediatek-filogic-wavlink_wl-wn586x3-squashfs-sysupgrade.bin \
     firmware
   Warning: Previous firmware will be overwritten!
8. Wait about 5 minutes, and after the flashing is completed, set
   the PC IP to 192.168.1.100 if required and log into the router
   like so:
   ssh root@192.168.1.1

Installation Method 2: u-boot
-----------------------------
1. Connect UART:  TX-> 586X3 RX, RX-> 586X3 TX, GND-> 586 GND.
2. Connect PC to the wan (not lan!) port.
3. Setup the tftp server on PC, set IP to 192.168.10.100,
4. Power on the device. Select '2' to upgrade firmware in Uboot.
5. Input the image name and start to upgrade.

Uboot console log:

CPU:   MediaTek MT7981
Model: mt7981-rfb
DRAM:  256 MiB
Core:  34 devices, 13 uclasses, devicetree: embed
Loading Environment from nowhere... OK
In:    serial@11002000
Out:   serial@11002000
Err:   serial@11002000
Net:
Warning: ethernet@15100000 (eth0) using random MAC address -
02:47:fb:b2:53:2d
eth0: ethernet@15100000
UBOOT WN586X3A
gpio: pin 9 (gpio 9) value is 0
gpio: pin 10 (gpio 10) value is 0
gpio: pin 5 (gpio 5) value is 0
gpio: pin 12 (gpio 12) value is 0
gpio: pin 13 (gpio 13) value is 0

  *** U-Boot Boot Menu ***

      1. Startup system (Default)
      2. Upgrade firmware
      3. Upgrade ATF BL2
      4. Upgrade ATF FIP
      5. Upgrade single image
      6. Load image
      0. U-Boot console

Co-authored-by: R Maru <deviantmaru@gmail.com>
Signed-off-by: R Maru <deviantmaru@gmail.com>
Signed-off-by: Sijia Huang <engineer31@win-star.com>
2024-06-09 14:58:25 +02:00
Rosen Penev
dd6bbbabd3 ath79: 8dev: remove wmac userspace handling
Before the nvmem rework, this was already handled in dts with
mtd-cal-data instead of qca,no-eeprom. No need to duplicate. Also, the
800 size value seems nonsensical. 440 is the standard.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2024-06-09 12:24:15 +02:00
Rosen Penev
74f2df9dbc ath79: mtd-cal-data removals
Replacement can be done with nvmem.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2024-06-09 12:24:15 +02:00
Rosen Penev
79fc4dba60 ath79: convert pcs,cap324 calibration to nvmem
Userspace handling is deprecated.

Also fix a bug with userspace handling where the wrong calibration data
was being used for the PCI card. The dts was correct but userspace was
not.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2024-06-09 12:24:15 +02:00
Rosen Penev
6483615580 ath79: cd-e380ac-v2: remove duplicate eth0
It seems in the transition to nvmem, eth0 was specified twice and was
already converted to use nvmem.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2024-06-09 12:24:15 +02:00
Rosen Penev
85c5c9aa68 ath79: remove unused dts labels
These are not referenced.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2024-06-09 12:24:15 +02:00
Rosen Penev
ff5e8476d9 ath79: fix dtc address warnings
These should match reg values.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2024-06-09 12:24:15 +02:00
Shiji Yang
2d00ed7caa kernel: trim outdated kernel config symbols
These symbols have already been removed from the upstream Linux source
code. They are automatically compared and removed by a kernel config
scanning script[1].

[1] https://github.com/openwrt/openwrt/pull/15324

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
2024-06-09 11:45:34 +02:00
Martin Schiller
6ec7711d00 lantiq: Refresh patches and configuration for linux 6.6
Make all the patches apply. This also refreshes some of the kernel
configurations.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2024-06-08 23:25:35 +02:00
Martin Schiller
c80fa584e5 lantiq: set Linux 6.6 as testing kernel
Add KERNEL_TESTING_PATCHVER for Linux 6.6.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2024-06-08 23:25:35 +02:00
Martin Schiller
5b522e4969 kernel/lantiq: Restore kernel files for v6.1
This is an automatically generated commit which aids following Kernel patch
history, as git will see the move and copy as a rename thus defeating the
purpose.

For the original discussion see:
https://lists.openwrt.org/pipermail/openwrt-devel/2023-October/041673.html

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2024-06-08 23:25:35 +02:00
Martin Schiller
e85c80edcb kernel/lantiq: Create kernel files for v6.6 (from v6.1)
This is an automatically generated commit.

When doing `git bisect`, consider `git bisect --skip`.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2024-06-08 23:25:35 +02:00
David Bauer
c2a5cd110c mpc85xx: only build zImage on required targets
Make the OF-compatible zImage per-board selectable. This allows the
image to only be built with the wrapper if the target actually uses it.

This fixes build-failures for the mpc85xx-p2020 subtarget.

Fixes: 557c094f0579 ("mpc85xx: only build zImage on required targets")

Signed-off-by: David Bauer <mail@david-bauer.net>
2024-06-08 17:30:20 +02:00
Mieczyslaw Nalewaj
df28fe4b59 kernel: rtl8367b: remove unnecessary cpu_port setting
Set the appropriate cpu_port value based on the use of realtek,extif0 to extif2
instead of the additional cpu_port parameter.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/15033
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-08 16:28:37 +02:00
Mieczyslaw Nalewaj
c1a26de1c6 kernel: rtl8367: set the correct cpu_port value
Set the appropriate cpu_port value based on the use of realtek,extif0 or realtek,extif1 parameter.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/15033
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-08 16:28:36 +02:00
Zxl hhyccc
2d6cedab27 kernel: bump 6.1 to 6.1.92
https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.1.92

Removed upstreamed:
 bcm27xx/patches-6.1/950-0270-net-bcmgenet-Reset-RBUF-on-first-open.patch
 generic/backport-6.1/600-v6.9-03-net-gro-add-flush-check-in-udp_gro_receive_segment.patch
 generic/pending-6.1/681-net-bridge-fix-multicast-to-unicast-with-fraglist-GS.patch
 generic/pending-6.1/682-net-core-reject-skb_copy-_expand-for-fraglist-GSO-sk.patch
 generic/pending-6.1/684-net-bridge-fix-corrupted-ethernet-header-on-multicas.patch
 generic/pending-6.1/778-net-l2tp-drop-flow-hash-on-forward.patch
 imx/patches-6.1/002-6.2-phy-freescale-imx8m-pcie-Refine-i.MX8MM-PCIe-PHY-dri.patch

All other patches automatically rebased.

Signed-off-by: Zxl hhyccc <zxlhhy@gmail.com>
2024-06-08 14:16:19 +02:00
David Bauer
de59fc4540 ipq40xx: fix broken image generation for EX6150v2
All NETGEAR EX6150v2 validate the rootfs for which OpenWrt places a
fakeheader at the position, where the bootloader expects it.

Some EX6150v2 bootloaders do however make a broken assumption about
where the rootfs starts. This is due to them calculating the rootfs
start not based upon the kernel-length but the string-offset of the
FIT-image.

We have to be compatible with both this broken as well as the valid
calculation. So we do relocate the FDT string section to a
block-boundary and enlarge the FIT image to end at this boundary +
BLOCKSIZE / 2. This way, both the broken as well as correct calculations
do expect the rootfs-header at the same position.

It is worth noting, that this is a rare edge-case in which only happens
if the image-length as well as the start of the string-section are not
placed in the same erase-block. This is an edge-case which happens very
rarely (thus it was not spotted prior).

Affected:
 - U-Boot 2012.07 (Jun 16 2016 - 11:59:37)

Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit 8f9546f7b0a14f3afa813e39ed45c968ece24464)
2024-06-08 02:09:15 +02:00
Linus Walleij
884bef5d1b kirkwood: Add Marvell RTC to two devices
The recently added D-Link DNS-320L and the Zyxel NSA310S
is missing an RTC module so let's give them the default
Marvell RTC at least.

Reviewed-by: Robert Marko <robimarko@gmail.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2024-06-07 21:48:42 +02:00
Tianling Shen
4edde98768 mediatek: fix wps button for nokia ea0326gmp
The gpio is actually low active, fix it.

Fixes: 40e7fab9e4 ("mediatek: add Nokia EA0326GMP support")
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
Link: https://github.com/openwrt/openwrt/pull/15651
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-07 14:19:39 +02:00
Tim Harvey
0520c45f2f imx: 6.6: update kernel config
added some missing configs needed when building 6.6 with all kmods

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
2024-06-06 22:04:23 +02:00
Tim Harvey
c78c71737b imx: 6.6: refresh kernel patches
refresh 6.6 kernel patches via 'make target/linux/refresh'

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
2024-06-06 22:04:23 +02:00
Tim Harvey
a6d4d369eb imx: add 6.6 kernel as testing
allow to test 6.6 kernel for imx

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
2024-06-06 22:04:23 +02:00
Tim Harvey
368cd88c44 imx: fix cortexa9/cortexa7 image builds due to dts move
The IMX device-tree's for arm moved from arch/arm/boot/dts to
arch/arm/boot/dts/nxp/imx. Use that if using the 6.6 kernel.

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
2024-06-06 22:04:23 +02:00
Tim Harvey
7dfdfac344 imx: copy config from 6.1 to 6.6
Copy the 6.1 config to 6.6

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
2024-06-06 22:04:23 +02:00
Tim Harvey
e4d76cf6ae imx: copy patches from 6.1 to 6.6
copy 6.1 patches to 6.6 and fixup:
 - removed patches already upstream
 - adapted pathnames of dts patches for new kernel

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
2024-06-06 22:04:23 +02:00
Daniel Golle
56bce303ce generic: 6.6: refresh patches
Patch 733-01-net-ethernet-mtk_eth_soc-use-napi_build_skb.patch needs
a refresh as line numbers no longer match.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-06-06 20:08:13 +01:00
Tianling Shen
a568540fd4 mediatek: filogic: move nand-only devices out of bootdev detection
For the first-time installation (mostly migrates from vendor firmware)
the ubiblock is not ready, but bootdev detection relies on it. This
means users must create ubiblock manually otherwise the sysupgrade
will not work.

Now a unique case is added for nand devices which use new fit format,
let's move to it.

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2024-06-06 18:56:32 +01:00
Tianling Shen
40e7fab9e4 mediatek: add Nokia EA0326GMP support
Hardware specification:
  SoC: MediaTek MT7981B 2x A53
  Flash: 128 MB SPI-NAND
  RAM: 256MB
  Ethernet: 4x 10/100/1000 Mbps
  Switch: MediaTek MT7531AE
  WiFi: MediaTek MT7976C
  Button: Reset, WPS/Mesh
  Power: DC 12V 1A

Gain SSH access:
1. Login into web interface, and download the configuration.
2. Download the configration utilities:
   https://firmware.download.immortalwrt.eu.org/cnsztl/mediatek/filogic/openwrt-mediatek-mt7981-nokia-ea0326gmp-config-utils.tar.gz
     These binaries are extraced from the factory firmware, which are
     dynamically linked with aarch64 musl 1.1.24. To use them, you
     must run them under the same runtime environment, otherwise the
     binaries will not work properly!
3. Upload the configuration and utilities to a suitable environment.
4. Uncompress the utilities, move them to '/bin' and give them executable permisison:
   tar -zxf openwrt-mediatek-mt7981-nokia-ea0326gmp-config-utils.tar.gz
   mv mkconfig seama /bin
   chmod +x /bin/mkconfig
   chmod +x /bin/seama
5. Decrypt and uncompress the configuration:
     Enter fakeroot if you are not login as root.
   mkconfig -a de-enca -m EA0326GMP_3FE79221BAAA -i EA0326GMP_3FE79221BAAA-xxxxxxxx-backup.tar.gz -o backup.tar.gz
   tar -zxf backup.tar.gz
6. Edit 'etc/config/dropbear', set 'enable' to '1'.
7. Edit 'etc/passwd', remove root password: 'root::1:0:99999:7:::'.
8. Repack the configuration:
   tar -zcf backup.tar.gz etc/
   mkconfig -a enca -m EA0326GMP_3FE79221BAAA -i backup.tar.gz -o EA0326GMP_3FE79221BAAA-xxxxxxxx-backup.tar.gz
9. Upload new configuration via web interface, now you can SSH to EA0326GMP.

A minimum configuration which enabled SSH access is also provided
to simplify the process:
https://firmware.download.immortalwrt.eu.org/cnsztl/mediatek/filogic/openwrt-mediatek-mt7981-nokia-ea0326gmp-enable-ssh.tar.gz

Flash instructions:
1. SSH to EA0326GMP, backup everything, especially 'Factory' part.
2. Write new BL2:
   mtd write openwrt-mediatek-filogic-nokia_ea0326gmp-preloader.bin BL2
3. Write new FIP:
   mtd write openwrt-mediatek-filogic-nokia_ea0326gmp-bl31-uboot.fip FIP
4. Set static IP on your PC:
   IP 192.168.1.254/24, GW 192.168.1.1
5. Serve OpenWrt initramfs image using TFTP server.
6. Cut off the power and re-engage, wait for TFTP recovery to complete.
7. After OpenWrt has booted, perform sysupgrade.

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2024-06-06 18:56:32 +01:00
Felix Fietkau
f352ca5a8a kernel: use napi_build_skb in mtk_eth_soc
Improves performance

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2024-06-06 11:47:59 +02:00
Robert Marko
458cafd0d0 generic: routerbootpart: fix compilation on 64-bit
Trying to compile routerbootpart parsers on 64-bit platforms will fail:
drivers/mtd/parsers/routerbootpart.c: In function 'routerboot_find_dynparts':
./include/linux/kern_levels.h:5:25: error: format '%X' expects argument of type 'unsigned int', but argument 3 has type 'size_t' {aka 'long unsigned int'} [-Werror=format=]
    5 | #define KERN_SOH        "\001"          /* ASCII Start Of Header */
      |                         ^~~~~~
./include/linux/printk.h:427:25: note: in definition of macro 'printk_index_wrap'
  427 |                 _p_func(_fmt, ##__VA_ARGS__);                           \
      |                         ^~~~
./include/linux/printk.h:498:9: note: in expansion of macro 'printk'
  498 |         printk(KERN_ERR pr_fmt(fmt), ##__VA_ARGS__)
      |         ^~~~~~
./include/linux/kern_levels.h:11:25: note: in expansion of macro 'KERN_SOH'
   11 | #define KERN_ERR        KERN_SOH "3"    /* error conditions */
      |                         ^~~~~~~~
./include/linux/printk.h:498:16: note: in expansion of macro 'KERN_ERR'
  498 |         printk(KERN_ERR pr_fmt(fmt), ##__VA_ARGS__)
      |                ^~~~~~~~
drivers/mtd/parsers/routerbootpart.c:170:25: note: in expansion of macro 'pr_err'
  170 |                         pr_err("%s: mtd_read error while parsing (offset: 0x%X): %d\n",

So, lets simply add the length modifier 'z' to fix compilation.

Link: https://github.com/openwrt/openwrt/pull/15640
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-06 11:45:03 +02:00
Daniel Golle
84a527417d mediatek: improve reliability of Fidelix/Dosilicon SPI-NAND
Prior to performing a PROGRAM LOAD RANDOM DATA operation, a WRITE
ENABLE (06h) command must be issued to change the contents of the
memory array. Following a WRITE ENABLE (06) command, **first a PROGRAM
LOAD (02h or 32h) command must be issued to reset the cache**, then
issue a PROGRAM LOAD RANDOM DATA (84h or 34h) command

This is dirty fix provided to use by MediaTek engineer Sky Huang which
may resolve the "OpenWrt Kiss of Death" issue we've been seeing on the
Linksys E8450 aka. Belkin RT3200. However, it means that everything has
to be re-written with that patch already applied, ie. we need to rebuild
the installer once it is part of snapshot builds to have any effect.

Users already on FIP-in-UBI layout are advised to re-write 'fip' UBI
volume and 'bl2' MTD partition manually once from within Linux after
this fix has been applied.

A similar fix will also be required for U-Boot.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-06-05 21:05:52 +01:00
INAGAKI Hiroshi
1fbfc251c9 ramips: add support for Buffalo WSR-2533DHPL2
Buffalo WSR-2533DHPL2 is a 2.4/5 GHz band 11ac (Wi-Fi 5) router, based
on MediaTek MT7621A.

Specification:

- SoC           : MediaTek MT7621AT
- RAM           : DDR3 128 MiB (Winbond W631GG6MB12J)
- Flash         : RAW-NAND 128 MiB (Winbond W29N01HVSINF)
- WLAN          : 2.4/5 GHz (2x MediaTek MT7615N)
- Ethernet      : 10/100/1000 Mbps x4
  - Switch      : MediaTek MT7530 (SoC)
- LED/keys      : 8x/6x (2x buttons, 1x slide-switch)
- UART          : through-hole on PCB (J4)
  - arrangement : 3.3V, GND, TX, RX from triangle-mark
  - settings    : 57600n8
- Power         : 12VDC 1.5A

Flash instruction using factory.bin image:

1. boot WSR-2533DHPL2 normally with "Router" mode
2. access to the WebI ("http://192.168.11.1/") on the device and open
   firmware update page
   ("管理" -> "ファームウェア更新")
3. select the OpenWrt factory.bin image and click update ("更新実行")
   button
   Attention: do not use "factory-uboot.bin" image
4. Wait ~120 seconds to complete flashing

Flash instruction using initramfs image:

1. prepare the TFTP server with the initramfs image renamed to
   "linux.trx-recovery" and IP address "192.168.11.2"
2. press the "AOSS" button while powering on the WSR-2533DHPL2
3. after 10 seconds, release the "AOSS" button, WSR-2533DHPL2 downloads
   the initramfs image and boot with it automatically
4. on the initramfs image, download the factory-uboot.bin image to the
   device and perform sysupgrade with it and "-F" option
5. wait ~120 seconds to complete flashing

Notes:

- There are 2x factory*.bin images for different purposes.

  - factory.bin      : for flashing on OEM WebUI
  - factory-uboot.bin: for flashing on OEM bootloader or initramfs image

  factory-uboot.bin is useful for recoverying the device, or refreshing
  when the kernel partition is expanded in the future. sysupgrade on
  this device accepts factory-uboot.bin with option "-F", but on that
  situation, user configurations won't be kept, so it's not for normal
  use.

MAC addresses:

LAN    : 18:EC:E7:xx:xx:E0 (board_data, "mac" (text))
WAN    : 18:EC:E7:xx:xx:E0 (board_data, "mac" (text))
2.4 GHz: 18:EC:E7:xx:xx:E1 (Factory, 0x4    (hex))
5 GHz  : 18:EC:E7:xx:xx:E4 (Factory, 0x8004 (hex))

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2024-06-05 21:14:16 +02:00
INAGAKI Hiroshi
ea8d140b25 ramips: add support for Buffalo WSR-2533DHPLS
Buffalo WSR-2533DHPLS is a 2.4/5 GHz band 11ac router, based on MediaTek
MT7621A.

Very similar to Buffalo WSR-2533DHPL, but with NAND, different GPIO
and TRX partitions.

Specification:

- SoC           : MediaTek MT7621AT
- RAM           : DDR3 256 MiB (Samsung K4B2G1646F-BYMA)
- Flash         : RAW-NAND 128 MiB
                  (Winbond W29N01HV or KIOXIA TC58BVG0S3HTAI0)
- WLAN          : 2.4/5 GHz (2x MediaTek MT7615N)
- Ethernet      : 10/100/1000 Mbps
  - Switch      : MediaTek MT7530 (SoC) 4 ports
- LED/keys      : 8x/6x (2x buttons, 1x slide-switch)
- UART          : through-hole on PCB (J4)
  - arrangement : 3.3V, GND, TX, RX from triangle-mark
  - settings    : 115200n8
- Power         : 12VDC 1.5A

Flash instruction using factory.bin image:

1. boot WSR-2533DHPLS normally with "Router" mode
2. access to the WebI ("http://192.168.11.1/") on the device and open
   firmware update page
   ("管理" -> "ファームウェア更新")
3. select the OpenWrt factory.bin image and click update ("更新実行")
   button
   Attention: do not use "factory-uboot.bin" image
4. Wait ~120 seconds to complete flashing

Flash instruction using initramfs image:

1. prepare the TFTP server with the initramfs image renamed to
   "linux.trx-recovery" and IP address "192.168.11.2"
2. press the "AOSS" button while powering on the WSR-2533DHPLS
3. after 10 seconds, release the "AOSS" button, WSR-2533DHPLS downloads
   the initramfs image and boot with it automatically
4. on the initramfs image, download the factory-uboot.bin image to the
   device and perform sysupgrade with it and "-F" option
5. wait ~120 seconds to complete flashing

Notes:

- The embedded addresses in eeprom data in Factory partition have
  Buffalo's OUI, but they don't match with the actual addresses
  assigned to wlan devices. So fixup addresses by the user-space
  script.

  root@localhost:/# hexdump -C /dev/mtdblock3 | grep "^0000[08]000\s"
  00000000  15 76 a0 00 88 57 ee bc  01 a8 15 76 c3 14 00 80  |.v...W.....v....|
  00008000  15 76 a0 00 88 57 ee bc  01 f8 15 76 c3 14 00 80  |.v...W.....v....|

  See "MAC addresses" below for actual addresses.

- There are 2x factory*.bin images for different purposes.

  - factory.bin      : for flashing on OEM WebUI
  - factory-uboot.bin: for flashing on OEM bootloader or initramfs image

  factory-uboot.bin is useful for recoverying the device, or refreshing
  when the kernel partition is expanded in the future. sysupgrade on
  this device accepts factory-uboot.bin with option "-F", but on that
  situation, user configurations won't be kept, so it's not for normal
  use.

MAC addresses:

LAN    : 90:96:F3:xx:xx:30 (board_data, "mac" (text))
WAN    : 90:96:F3:xx:xx:30 (board_data, "mac" (text))
2.4 GHz: 90:96:F3:xx:xx:31
5 GHz  : 90:96:F3:xx:xx:38

[original work]
Signed-off-by: Audun-Marius Gangstø <audun@gangsto.org>
[convert to ubi, fix/improve DT, add sysupgrade support]
Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2024-06-05 21:14:16 +02:00
INAGAKI Hiroshi
d529ac5da8 ramips: mt7621: switch trx parser to parser_trx from mtdsplit
Switch trx parser to parser_trx of Linux Kernel from mtdsplit_trx to
split firmware partition using model-specific trx magic number on
some Buffalo devices.
This change is tested on Buffalo WSR-2533DHPL.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2024-06-05 21:14:16 +02:00
INAGAKI Hiroshi
47d9dcd01a build: move Build/buffalo-trx to image-commands.mk
Move Build/buffalo-trx to image-commands.mk from image/mt7622.mk to use
that definition from ramips as well.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2024-06-05 21:14:16 +02:00
Ashley Lee
3de3c2bdfa mediatek: add support for Ruijie RG-X60 Pro
This pull request ports Ruijie RG-X60 Pro router support to the main branch.

Parameters:
- SoC       : MediaTek MT7986A Quad-core ARM Cortex-A53 2.0GHz
- RAM       : DDR3 512MiB (W634GU6QB)
- Flash     : SPI-NAND 128 MiB (W25N01GVZEIG)
- WLAN      : MediaTek MT7986A integration dual-band WiFi 6
  - 2.4 GHz : b/g/n/ax, MIMO 4x4
  - 5 GHz   : a/n/ac/ax, MIMO 4x4
- Ethernet  : 10/100/1000 Mbps x4 (MediaTek MT7531AE)
                    2500Mbps x 1 (Realtek RTL8221B-VB-CG)
- UART      : through-hole on PCB
  - [J500] GND, TX, RX, 3.3V (115200n1)
- Buttons   : Mesh, Reset
- LEDs      : 1x Power (Blue)
                  1x Turbo (Purple)
- Power     : 12 VDC, 3 A

How to Installation:
1. Remove the case and connect the TTL cable to the corresponding position.
2. Power on the device and quickly press "down" on the keyboard, then
   U-Boot will stay in the menu.
3. Select "1. Upgrade Firmware", select "0. TFTP Client(Default)".
4. Input the IP address, input the Openwrt image file name to be
   flashed, start the TFTP server, and press "Enter".
5. Wait for the flashing to complete.

How return to stock:

1. Remove the case and connect the TTL cable to the corresponding
   position.
2. Power on the device and quickly press "down" on the keyboard, then
   U-Boot will stay in the menu.
3. Select "1. Upgrade Firmware", select "0. TFTP Client(Default)".
4. Input the IP address, input the Stock “E-WEBOS” image file name to
   be flashed, start the TFTP server, and press "Enter".
5. Wait for the flashing to complete.

About recovery:
Connect uart, use u-boot menu to flash stock firmware image or boot
OpenWrt initramfs image.

About MAC Address:
+---------+-------------------+-----------+
|         | MAC               | Algorithm |
+---------+-------------------+-----------+
| WAN     | 10:82:3D:XX:XX:9E | label     |
| LAN     | 10:82:3D:XX:XX:9F | label+1   |
| WLAN 2g | 10:82:3D:XX:XX:A0 | label+2   |
| WLAN 5g | 10:82:3D:XX:XX:A1 | label+3   |
+---------+-------------------+-----------+

Signed-off-by: Ashley Lee <code@emtips.net>
2024-06-05 17:44:11 +01:00
Michał Kępień
a60721f2ed mikrotik: switch to Yafut for building MikroTik NOR images
The Yafut tool now has limited capabilities for working on filesystem
images stored in regular files.  This enables preparing Yaffs2 images
for devices with NOR flash using upstream Yaffs2 filesystem code instead
of the custom kernel2minor tool.

Since minimizing the size of the resulting filesystem image size is
important and upstream Yaffs2 code requires two allocator reserve blocks
to be available when writing a file to the filesystem, a trick is
employed while preparing an OpenWRT image: the blank filesystem image
that Yafut operates on initially contains two extra erase blocks that
are chopped off after the kernel file is written.  This is safe to do
because Yaffs2 has a true log structure and therefore only ever writes
sequentially (and the size of the kernel file is known beforehand).
While the two extra erase blocks are necessary for writes, Yaffs2 code
seems to be perfectly capable of reading back files from a "truncated"
filesystem that does not contain these extra erase blocks.

In terms of image size, this new approach is only marginally worse than
the current kernel2minor-based one: specifically, upstream Yaffs2 code
needs to write three object headers (each of which takes up an entire
data chunk) when the kernel file is written to the filesystem:

  - an object header for the kernel file when it is created,

  - an object header for the root directory when the kernel file is
    created,

  - an updated object header for the kernel file when the latter is
    fully written (so that its new size can be recorded).

kernel2minor only writes two of these headers, which is the absolute
minimum required for reading the file back.  This means that the
Yafut-based approach causes firmware images to be at most one erase
block (64 kB) larger than those created using kernel2minor, but only in
the very unfortunate scenario where the size of the kernel file is
really close to a multiple of the erase block size.

The rest of the calculations performed when the empty filesystem image
is first prepared stems from the Yaffs2 layout used by MikroTik NOR
devices: each 65,536-byte erase block contains 63 chunks, each of which
consists of 1024 bytes of data followed by 16-byte Yaffs tags without
ECC data; each such group of 63 chunks is then followed by 16 bytes of
padding, which translates to "-C 1040 -B 64k -E" in the Yafut
invocation.  Yaffs2 checkpoints and summaries are disabled (using
Yafut's -P and -S switches, respectively) as they are merely performance
optimizations that require extra storage space.  The -L and -M switches
are used to force little-endian or big-endian byte order (respectively)
in the resulting filesystem image, no matter what byte order the build
host uses.  The tr invocation is used to ensure that the filesystem
image is initialized with 0xFF bytes (which are an indicator of unused
space for Yaffs2 code).

Signed-off-by: Michał Kępień <openwrt@kempniu.pl>
Link: https://github.com/openwrt/openwrt/pull/13453
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-05 17:03:24 +02:00
Daniel Golle
683a35098f ipq40xx: use NVMEM-on-UBI for ASUS RT-AC58U
Instead of extracting WiFi precal as well as MAC addresses in userspace
use recently introduced NVMEM-on-UBI instead.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Tested-by: Christian Lamparter <chunkeey@gmail.com>
2024-06-05 13:46:00 +01:00
Luis Mita
f1091ef7ac ramips: mt76x8: add support for Cudy TR1200 v1
Hardware:
 - SoC: MediaTek MT7628AN (MIPS 580MHz)
 - Flash: 16 MiB XMC 25QH128CH10
 - RAM: 128 MiB ESMT M14D1G1664A
 - WLAN: 2.4 GHz (MT7628), 5 GHz (MT7613BEN 802.11ac)
 - Ethernet: 1x 10/100 Mbps WAN, 1x 10/100 LAN (MT7628)
 - USB 2.0 port
 - Buttons: 1 Reset button, 1 slider button
 - LEDs: 1x Red, 1x White
 - Serial console: unpopulated header, 115200 8n1
 - Power: 5 VDC, 2 A

MAC addresses:
+---------+-------------------+-----------+
|         | MAC               | Algorithm |
+---------+-------------------+-----------+
| WAN     | 80:af:ca:xx:xx:x0 | label     |
| LAN     | 80:af:ca:xx:xx:x0 | label     |
| WLAN 2g | 80:af:ca:xx:xx:x0 | label     |
| WLAN 5g | 80:af:ca:xx:xx:x2 | label+2   |
+---------+-------------------+-----------+

Installation:
The installation must be done via TFTP by disassembling the router.
On other occasions Cudy has distributed intermediate firmware to make
installation easier, and so I recommend checking the Wiki for this
device if there is a more convenient solution than the one below.

To install using TFTP:
1. Upgrade to a beta firmware (signed by Cudy) that can be downloaded
from the wiki. This is required in order to use an unlocked u-boot.
2. Connect to UART.
3. While the router is turning on, press 1.
4. Connect to LAN and set your IP to 192.168.1.88/24. Configure a TFTP
server and an OpenWrt initramfs-kernel.bin firmware file as recovery.bin.
5. Press Enter three times. Verify the filename.
6. If you can reach LuCI or SSH now, just use the sysupgrade image with
the 'Keep settings' option turned off.

If you don't want to use the beta firmware nor the unlocked u-boot, you
can install the firmware writing the sysupgrade image on the firmware
partition of the SPI flash.

Signed-off-by: Luis Mita <luis@luismita.com>
2024-06-05 10:44:44 +02:00
Robert Marko
f5df45efa3 airoha: drop kernel 6.1 support
Now that 6.6 is the default, lets remove 6.1.

Link: https://github.com/openwrt/openwrt/pull/15630
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-05 09:34:06 +02:00
Robert Marko
690ec44141 airoha: default to kernel 6.6
Move airoha do kernel 6.6 as the default.

Link: https://github.com/openwrt/openwrt/pull/15630
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-05 09:34:06 +02:00
Shiji Yang
6e51b363e9 ramips: simplify multi-phy support patches
For MT7620, we should always prevent main ethernet interface from
going down due to phy link changes. And the ralink net driver does
not support cable test function, so this patch won't change any
behavior.

Ref:
6fcba5eec3 ("ramips: port 0034-NET-multi-phy-support.patch to 5.4")

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
Link: https://github.com/openwrt/openwrt/pull/15591
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2024-06-04 16:19:41 +08:00
Mieczyslaw Nalewaj
65f34e9928 bcm47xx: 6.6: refresh patches
CI tells us that we need to, so lets refresh them.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/15010
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-03 17:57:54 +02:00
Mieczyslaw Nalewaj
a82b2e79e3 bcm47xx: 6.6: set testing kernel
Select 6.6 as testing kernel on bcm47xx.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/15010
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-03 17:57:54 +02:00
Mieczyslaw Nalewaj
5285a7d2b1 bcm47xx: remove 5.15 support
Since 6.1 is now default, drop 5.15 support.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/15010
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-03 17:57:54 +02:00
Mieczyslaw Nalewaj
f75b530d20 bcm47xx: default to kernel 6.1
Default to kernel 6.1 on bcm47xx.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/15010
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-03 17:57:54 +02:00
Mieczyslaw Nalewaj
29aa1a94c4 bcm47xx: 6.6: refresh patches
Refresh kernel patches. Remove patches already included in the kernel.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/15010
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-03 17:57:54 +02:00
Mieczyslaw Nalewaj
930eedaafe bcm47xx: 6.6: refresh kernel config
Refresh kernel config.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/15010
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-03 17:57:54 +02:00
Mieczyslaw Nalewaj
83647098a1 kernel/bcm47xx: Restore kernel files for v6.1
This is an automatically generated commit which aids following Kernel patch history,
as git will see the move and copy as a rename thus defeating the purpose.

See: https://lists.openwrt.org/pipermail/openwrt-devel/2023-October/041673.html
for the original discussion.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/15010
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-03 17:57:54 +02:00
Mieczyslaw Nalewaj
907c1c5fe1 kernel/bcm47xx: Create kernel files for v6.6 (from v6.1)
This is an automatically generated commit.

When doing `git bisect`, consider `git bisect --skip`.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/15010
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-03 17:57:54 +02:00
Chukun Pan
29faf53b8c qualcommax: use ath11k_patch_mac for ZBT-Z800AX
Use ath11k_patch_mac and ath11k_set_macflag functions
instead of fix_wifi_mac script.

Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
Link: https://github.com/openwrt/openwrt/pull/15580
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-03 13:15:48 +02:00
David Bauer
d4acd05218 mpc85xx: refresh patches
Signed-off-by: David Bauer <mail@david-bauer.net>
2024-06-02 22:43:46 +02:00
David Bauer
63239a939f mpc85xx: fix patch for kernel 6.6
Fixes: af329ec389 ("mpc85xx: add support for Hewlett Packard MSM460")

Signed-off-by: David Bauer <mail@david-bauer.net>
2024-06-02 22:43:46 +02:00
Keith Harrison
6707eba9f0 ramips: add support for D-Link DIR-2055 A1
Add support for D-Link DIR-2055 A1 based on similarities to DIR-1960 A1,
as well as various DIR-8xx A1 models. Existing DIR-1960 A1 openwrt
"factory" firmware installs without modifications via the D-Link Recovery
GUI and has no known incompatibilities with the DIR-2055 A1.

Changes to be committed:
new file:   target/linux/ramips/dts/mt7621_dlink_dir-2055-a1.dts
modified:   target/linux/ramips/image/mt7621.mk
modified:   target/linux/ramips/mt7621/base-files/etc/board.d/01_leds
modified:   target/linux/ramips/mt7621/base-files/lib/upgrade/platform.sh

Specifications:

    Board: Not known
    SoC: MediaTek MT7621 Family (MT7621AT)
    RAM: 256 MB (Micron 9OK17 D9PTK, should be DDR3 MT41K128M16JT-125)
    Flash: 128 MB (Winbond W29N01HVSINA)
    WiFi: MediaTek MT7615 Family (MT7615N x2)
    Switch: 1 WAN, 4 LAN (Gigabit)
    Ports: 1 USB 3.0 (front)
    Buttons: Reset, WiFi Toggle, WPS
    LEDs: Power (white/orange), Internet (white/orange),
          WiFi 2.4G (white), WiFi 5G (white)

Notes:

    Only known difference vs. the DIR-1960 A1 is that the DIR-2055 A1
    doesn't have a USB activity LED

Serial port:

    Tested to be identical to various DIR-8xx A1 models with a similar
    enclosure/pcb design:
        Parameters: 57600, 8N1, 3.3V TTL no flow control
        Location: J1 header (close to the Reset, WiFi and WPS buttons)
        Pinout: 1 - VCC 2 - RXD 3 - TXD 4 - GND
            Did not connect VCC when using

Installation:

    D-Link Recovery GUI: power down the router, press and hold the reset
    button, then re-plug it. Keep the reset button pressed until the power
    LED starts flashing orange, manually assign a static IP address under
    the 192.168.0.xxx subnet (e.g. 192.168.0.2) and go to
    http://192.168.0.1

    Some modern browsers may have problems flashing via the Recovery GUI,
    if that occurs consider uploading the firmware through cURL:

    curl -v -i -F "firmware=@file.bin" 192.168.0.1

Signed-off-by: Keith Harrison <keithh@protonmail.com>
2024-06-02 18:41:17 +02:00
Hauke Mehrtens
21213c8156 tegra: Activate CONFIG_SND_DRIVERS
The option CONFIG_SND_DRIVERS is activated by default in the generic
configuration, do not deactivate it for tegra. This fixes the build of
the kmod-sound-dummy package on tegra.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-06-02 17:56:28 +02:00
Hauke Mehrtens
8647ce0800 kernel: Split kmod-video-dma into two kmods
Split the kmod-video-dma into kmod-video-dma-sg and
kmod-video-dma-contig. The old one contained two kmods, but sometimes
only one of them is build which caused problems. The configuration
options are not manually selectable in the kernel and hidden in OpenWrt.

Currently this causes build failures on some targets.

Fixes: 4d7cbe0a55 ("kernel: video-dma: explicitly state packaged modules")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-06-02 17:38:23 +02:00
Christian Marangi
37ff0ea726 mvebu: disable polling delay for passive trip point for puzzle thermal
We don't have any passive trip point hence we can set the polling delay
for passive trip to 0 effectively disabling this polling.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-06-01 16:40:10 +01:00
Christian Marangi
611413cc3f mvebu: split thermal zone for puzzle chassis
Split thermal zone for puzzle chassis. Thermal platform supports only
one sensor per thermal zone.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-06-01 16:40:10 +01:00
Christian Marangi
e5c7b5ec43 mvebu: fix missing property in puzzle thermal
Fix missing property in puzzle thermal. The thing was never supposed to
work.

Property #thermal-sensor-cells was missing from the puzzle hwmon, making
the entire thermal platform referencing that fail to probe with -EINVAL.

The puzzle hwmon expose 2 termistor but they probably use an userspace
downstream utility to configure and handle thermal. For this reason we
really don't know what they use the sensor for or when it's attached.

We use them to sensor if the Chassis gets too hot due to ambient
temperature and generic components getting too warm.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-06-01 16:40:10 +01:00
Daniel Golle
ac783b419b mvebu: improve thermal management of IEI Puzzle devices
- Make step_wise thermal governor respect hysteresis
   This is done by importing a downstream patch, backporting the same feature
   now present in Linux v6.10+ would be too messy.
 - Introduce thermal zone for the WT61P803 uC (chassis and board sensors)
 - Introduce thermal zones for AQR NBase-T PHYs
 - No longer modify existing SoC thermal zones (which are now only in charge
   for emergency shutdown, and can be interrupt driven instead of polled)

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-06-01 16:40:10 +01:00
David Bauer
dbc9596c7e mpc85xx: add label-mac for HP MSM460
Signed-off-by: David Bauer <mail@david-bauer.net>
2024-06-01 16:53:17 +02:00
David Bauer
af329ec389 mpc85xx: add support for Hewlett Packard MSM460
Hardware
--------
CPU:  Freescale P1020 2xe500 PPC
RAM:  256M DDR3 (Micron MT41J64M16JT-15E:G "D9MNJ")
NAND: 128M (Micron 2CA1)
BTN:  1x Reset
LED:  Power - ETH - Radio1 - Radio2
UART: RJ-45 Cisco Pinout - 115200 8N1

Installation
------------
NOTE: You can find a repo with up-to-date instructions as well as
the required files here:

https://github.com/blocktrron/msm460-flashing

Required files
==============
You need a command-files as well as a U-Boot image.

The command-file has the following content (padded to 131072 bytes).

If you copy paste these, remove the newlines!

```
U-BOOT setenv ethaddr 02:03:04:05:06:07; setenv ipaddr 192.168.1.1;
setenv serverip 192.168.1.66; tftpboot 0x3000000 msm460-uboot.bin;
nand device; nand erase 0 0xC0000; nand write 0x3000000 0x0 0xC0000; reset
```

You can download the required U-Boot from this repository:

https://github.com/blocktrron/u-boot-msm/releases

Preparation
===========
Prepare a TFTP server serving two files:

 - U-Boot NAND image as `msm460-uboot.bin`.
 - OpenWrt factory image as `msm460-factory.bin`
 - Command-file names `commands.tftp`

You can start a TFTP server in the current directory using dnsmasq:

```bash
sudo dnsmasq --no-daemon --listen-address=0.0.0.0 \
    --port=0 --enable-tftp=enxd0 --tftp-root="$(pwd)" \
    --user=root --group=root
```
Replace `enxd0` with the name of your network interface.

Procedure
=========
1. Assign yourself the IP-Address 192.168.1.66/24.
3. Connect the Router to the PC while keeping the reset button
   pressed.
4. The LEDs will eventually begin to flash.
   They will start to flash faster after around 15 seconds.
5. Release the reset button.
6. Start a new shell
7. Make sure you are currently in the directory where the tftp server
   is located.
8. Run the following command:

```bash
tftp 192.168.1.1 -m binary -c put commands.tftp nflashd.cccc9999
```

You get the message "Transfer timed out."
To find out if you have been successful, please check the
blinking LED Pattern.

Signed-off-by: David Bauer <mail@david-bauer.net>
2024-06-01 14:41:11 +02:00
David Bauer
7d768a9ba6 mpc85xx: add compressed zImage for mpc85xx
Add a universal zImage which can be loaded by mpc85xx boards at
load address 0x3000000. This allows boards to boot kernels larger than
16MB even if the image is loaded temporarily from NAND at offset
0x1000000 which some bootloaders do by default.

Signed-off-by: David Bauer <mail@david-bauer.net>
2024-06-01 14:37:43 +02:00
Zoltan HERPAI
8619d7af67 kirkwood: add D-Link DNS-320L support
Dual-slot NAS based on Marvell Kirkwood.

Specifications:
 - Marvell 88F6702 @1GHz
 - 256Mb RAM
 - 128Mb NAND
 - 1x GbE LAN (Marvell 88E1318R)
 - 1x USB 2.0
 - 2x SATA
 - Weltrend WT69P3 ("supervisor" MCU chip)
 - Serial on J2 (115200,8n1)
 - Newer bootROM so kwboot-ing via serial is possible

Notes:
 - The Weltrend MCU is controlled by the package added in utils/dns320l-mcu.
 - The original MAC address is stored in the "mini firmware" image's first
   17 bytes.
 - Compared to the original MTD layout, the uImage+rootfs are now stored in
   a common ubi partition.

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-dns320l/u-boot.kwb /dev/ttyUSB0 -p"
 - Connect to the serial console with minicom
 - tftp 0x0800000 u-boot-dns320l/u-boot.kwb
   (Please note that "PHY reset timed out" seems to be customary
    on kirkwood devices, the egiga0 interface works regardless.)
 - nand erase 0x0 100000
 - nand write 0x0800000 0x0 0x100000
 - reset
3. Install OpenWrt
 - Boot up the initramfs image
 - tftpboot 0x800000 openwrt-kirkwood-generic-dlink_dns320l-initramfs-uImage; bootm 0x800000
 - Download the sysupgrade image and perform sysupgrade

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
Reviewed-by: Pawel Dembicki <paweldembicki@gmail.com>
2024-06-01 01:29:09 +02:00
Christian Marangi
a39d9693e6
imagebuilder: fix broken IB_STANDALONE option
Fix broken IB_STANDALONE option for OPKG due to an error in ifdef logic
where we weren't adding the required entry to reference the local files
in repositories.conf

Rework the ifdef to more explicit and restore original functionality of
this option.

While at it also provide different README for APK or OPKG.

Fixes: d788ab376f ("build: add APK package build capabilities")
Link: https://github.com/openwrt/openwrt/pull/15599
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-05-31 15:48:00 +02:00
Tomasz Maciej Nowak
b1bddb1d35 tegra: enable VDE driver
Upstream commit 83b7f0b8aeab ("ARM: tegra: Add OPP tables and power
domains to Tegra20 device-trees") added power domains to all devices
supporting power management and one of them is Video Decoder Engine.
Because of lacking driver for VDE, its power gate couldn't be driven
which inhibited reboot of the whole device.

Signed-off-by: Tomasz Maciej Nowak <tmn505@gmail.com>
2024-05-31 14:38:17 +02:00
Tomasz Maciej Nowak
192ab0903f tegra: add testing 6.6 kernel
Preliminary support.

Signed-off-by: Tomasz Maciej Nowak <tmn505@gmail.com>
2024-05-31 14:38:17 +02:00
Tomasz Maciej Nowak
4ff770e763 tegra: 6.6: refresh config and patches
Simple refresh to get rid of any fuzz and drop serial patch. With few
bug fixes around tegra serial driver the spurious IRQ didn't appear any
more during test. Let's see how long that'll last.

Signed-off-by: Tomasz Maciej Nowak <tmn505@gmail.com>
2024-05-31 14:38:17 +02:00
Tomasz Maciej Nowak
2f7b5d5472 kernel/tegra: Restore kernel files for v5.15
This is an automatically generated commit which aids following Kernel patch
history, as git will see the move and copy as a rename thus defeating the
purpose.

For the original discussion see:
https://lists.openwrt.org/pipermail/openwrt-devel/2023-October/041673.html

Signed-off-by: Tomasz Maciej Nowak <tmn505@gmail.com>
2024-05-31 14:38:17 +02:00
Tomasz Maciej Nowak
b693eca468 kernel/tegra: Create kernel files for v6.6 (from v5.15)
This is an automatically generated commit.

When doing `git bisect`, consider `git bisect --skip`.

Signed-off-by: Tomasz Maciej Nowak <tmn505@gmail.com>
2024-05-31 14:38:17 +02:00
Tomasz Maciej Nowak
c1a09173ab tegra: refresh 5.15 config
Reduce diffstat in kernel config on new version introduction.

Signed-off-by: Tomasz Maciej Nowak <tmn505@gmail.com>
2024-05-31 14:38:17 +02:00
Daniel Golle
2a25c6ace8 ramips: get rid of downstream network device label patch
Use a simple Shell script like on filogic target to get rid of downstream
patch for the Ethernet driver which was rejected upstream long ago.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-05-31 13:26:54 +01:00
Daniel Golle
983222605c mediatek: filogic: avoid sub-shell invovation in netdev rename loop
Rename network devices to their label set in DT without invocation of
a sub-shell.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-05-31 13:26:54 +01:00
Hauke Mehrtens
77bfe5441e x86: Activate CONFIG_FB_DEVICE
This adds the legacy /dev/fb* device file for kernel 6.6 again.
Linux upstream commit 701d2054fa31 ("fbdev: Make support for
userspace interfaces configurable") made this configurable and we
deactivated this option by default for kernel 6.6. On x86 we are not
space constrained and some users need this legacy interface.

Fixes: #15222
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-05-31 11:25:48 +02:00
Mieczyslaw Nalewaj
50e26e6fd7 x86: drop 6.1 support
Drop configs, files and patches for Linux 6.1.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-05-30 22:47:59 +02:00
Mieczyslaw Nalewaj
06d5d7b7bf x86: use kernel 6.6 by default
Switch to Linux kernel version 6.6.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-05-30 22:47:59 +02:00
Hauke Mehrtens
fd47fdf527 armsr: Remove kernel 6.1 configuration
Armsr is using kernel 6.6 by default now, remove configuration for
kernel 6.1.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-05-30 22:44:57 +02:00
Hauke Mehrtens
00f7b252c5 armsr: Use kernel 6.6 by default
All 2 subtargets are compiling fine and booting up in qemu.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-05-30 22:44:57 +02:00
Daniel Golle
a1a9572f43 generic: 6.6: net: sfp-bus: fix SFP mode detect from bitrate
Backport commit fixing detection of SFP modules which has been broken
since Linux 6.4 for some modules.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-05-30 12:06:26 +01:00
Daniel Golle
f3d2829b51 generic: backport accepted and pending patches for mtk_eth_soc
Backport a bunch of fixes and improvements for WED and PPE, mostly
for MT7988.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-05-30 10:49:59 +01:00
Daniel Golle
8730f9e536 generic: move accepted patches for mtk_eth_soc to backport-6.6
In preparation to update to upcoming Linux 6.6.33 move accepted patches
from mediatek target to backport folder, so moving to newer Linux 6.6
releases becomes easier and also other patches on top can be applied
more easily.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-05-30 10:49:46 +01:00
Daniel Golle
bc59bf2a35 kernel: add missing patch header
Make sure all patches can again be applied using 'git am' on the
corresponding linux-stable git tree.

Fixes: a7ae4ed0a3 ("kernel: fix tools build breakage on macos with x86")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-05-30 10:49:46 +01:00
John Audia
10d77b9bc3 kernel: bump 6.6 to 6.6.31
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.31

Removed upstreamed:
	backport-6.6/600-v6.9-01-net-gro-parse-ipv6-ext-headers-without-frag0-invalid.patch[1]
	backport-6.6/600-v6.9-02-net-gro-fix-udp-bad-offset-in-socket-lookup-by-addin.patch[2]
	backport-6.6/600-v6.9-03-net-gro-add-flush-check-in-udp_gro_receive_segment.patch[3]
	backport-6.6/816-v6.7-0002-nvmem-add-explicit-config-option-to-read-old-syntax-.patch[4]
	pending-6.6/681-net-bridge-fix-multicast-to-unicast-with-fraglist-GS.patch[5]
	pending-6.6/682-net-core-reject-skb_copy-_expand-for-fraglist-GSO-sk.patch[6]
	pending-6.6/684-net-bridge-fix-corrupted-ethernet-header-on-multicas.patch[7]
	pending-6.6/778-net-l2tp-drop-flow-hash-on-forward.patch[8]
	pending-6.6/440-mtd-don-t-look-for-OTP-legacy-NVMEM-cells-if-proper-.patch[9a,b]

All other patches automatically rebased.

1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.31&id=7f7b0ebb37afc5070d122318e3651d7cb8c4f01c
2. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.31&id=af276a5ac8e938c8b058e3e124073cc1e322d98b
3. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.31&id=78b6092d78341e423e5f6afae4d9f401b561aca7
4. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.31&id=26e2fe4cab10e67f116f4a2eecc393824bb294b8
5. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.31&id=65fbc7a11d063236e1f1dcebb38eeaa3ccbe2dbc
6. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.31&id=cfe34d86ef9765c388f145039006bb79b6c81ac6
7. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.31&id=1ce60741d7e17dcf707e3bdebed4442ae30bdd02
8. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.31&id=23e25d2fc777cd0cc77c2f857f93e9b13ee789b9
9a. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.31&id=cce311f8bbbf9d24eacc39af3228cd104e079396
9b. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/diff/drivers/mtd/mtdcore.c?id=v6.6.31&id2=v6.6.30

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

Signed-off-by: John Audia <therealgraysky@proton.me>
2024-05-30 00:04:12 +02:00
Zoltan HERPAI
46ce2a36d8 d1: drop 6.1 support
Now that 6.6 is the default, remove the 6.1 config and patches.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2024-05-29 17:56:28 +02:00
Zoltan HERPAI
745ad016d1 d1: switch default to 6.6
Switch the default kernel to 6.6.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2024-05-29 17:56:28 +02:00
Zoltan HERPAI
e78a0cf3ce d1: 6.6: set testing kernel
Allow selecting 6.6 as testing kernel on d1.

Runtime-tested: Nezha D1

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2024-05-29 17:56:28 +02:00
Zoltan HERPAI
8b1d74371b d1: refresh kernel config
Refresh kernel config, and enable thermal features.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2024-05-29 17:56:28 +02:00
Zoltan HERPAI
2e0b000e0e d1: remove upstreamed patches and add new patchset
Remove patches that were upstreamed, and backport features from
later kernels.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2024-05-29 17:56:28 +02:00
Zoltan HERPAI
766570d60b kernel/d1: Restore kernel files for v6.1
This is an automatically generated commit which aids following Kernel patch
history, as git will see the move and copy as a rename thus defeating the
purpose.

For the original discussion see:
https://lists.openwrt.org/pipermail/openwrt-devel/2023-October/041673.html

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2024-05-29 17:56:28 +02:00
Zoltan HERPAI
99fcc90270 kernel/d1: Create kernel files for v6.6 (from v6.1)
This is an automatically generated commit.

When doing `git bisect`, consider `git bisect --skip`.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2024-05-29 17:56:28 +02:00
Shiji Yang
db49d995bb ramips: modules: remove symbol CONFIG_DW_DMAC_PCI
The DW_DMAC_PCI symbol won't be automatically selected at all.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
2024-05-29 10:41:49 +02:00
Shiji Yang
2240320d7f ramips: gdma: remove slave_id field
Fix compile error:
drivers/dma/ralink-gdma.c: In function 'gdma_dma_config':
drivers/dma/ralink-gdma.c:197:40: error: 'struct dma_slave_config' has no member named 'slave_id'
  197 |                 chan->slave_id = config->slave_id;
      |                                        ^~
drivers/dma/ralink-gdma.c:206:40: error: 'struct dma_slave_config' has no member named 'slave_id'
  206 |                 chan->slave_id = config->slave_id;
      |                                        ^~
make[8]: *** [scripts/Makefile.build:243: drivers/dma/ralink-gdma.o] Error 1

ref: https://lore.kernel.org/all/20211122222203.4103644-1-arnd@kernel.org/

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
2024-05-29 10:41:49 +02:00
Shiji Yang
ccd50abd9f ramips: add back the gdma driver
The gdma driver has been removed from the upstream. Let's move it
to the local files. This patch also removed unsupported compatible
string and sub-target.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
2024-05-29 10:41:49 +02:00
Daniel Golle
4f078bf377 mediatek: add missing ';;' in shell switch case block
Add missing ';;' to the end of shell switch case statement.

Fixes: c71b68acdd ("mediatek: filogic: add Adtran SmartRG Mount Stuart series")
Reported-by: @gl-dude
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-05-28 23:51:38 +01:00
Hauke Mehrtens
3a2706ed10 malta: Remove kernel 6.1 configuration
Malta is using kernel 6.6 by default now, remove configuration for
kernel 6.1.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-05-28 22:10:53 +02:00
Hauke Mehrtens
5f0e591349 malta: Use kernel 6.6 by default
All 4 subtargets are compiling fine and booting up in qemu.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-05-28 22:10:52 +02:00
Nick Hainke
9ec3b11d37 lantiq: disable building of ZyXEL P-2812HNU F1
Disable image building for the board, since the kernel of the main branch
is to big to fit into the kernel partition.

Signed-off-by: Nick Hainke <vincent@systemli.org>
2024-05-28 08:06:10 +02:00
Martin Schiller
7514d9bb6f lantiq: switch to kernel 6.1
Let's switch the lantiq target to use kernel 6.1 by default.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2024-05-27 15:46:13 +02:00
Tomasz Maciej Nowak
f7f8099aa3 ath79: add support for Dell SonicPoint ACe APL26-0AE
Dell/SonicWall APL26-0AE (marketed as SonicPoint ACe) is a dual band
wireless access point. End of life as of 2022-07-31.

Specification
SoC: QualcommAtheros QCA9550
RAM: 256 MB DDR2
Flash: 32 MB SPI NOR
WIFI: 2.4 GHz 3T3R integrated
      5 GHz 3T3R QCA9890 oversized Mini PCIe card
Ethernet: 2x 10/100/1000 Mbps QCA8334
          port labeled lan1 is PoE capable (802.3at)
USB: 1x 2.0
LEDs: LEDs: 6x which 5 are GPIO controlled and two of them are dual color
Buttons: 2x GPIO controlled
Serial: RJ-45 port, SonicWall pinout
        baud: 115200, parity: none, flow control: none

Before flashing, be sure to have a copy of factory firmware, in case You
wish to revert to original firmware.
All described procedures were done in following environment:
ROM Version: SonicROM (U-Boot) 8.0.0.0-11o
SafeMode Firmware Version: SonicOS 8.0.0.0-14o
Firmware Version: SonicOS 9.0.1.0
In case of other versions, following installation instructions might be
ineffective.

Installation
1. Prepare TFTP server with OpenWrt sysupgrade image and rename that
   image to "sp_fw.bin".
2. Connect to one of LAN ports.
3. Connect to serial port.
4. Hold the reset button (small through hole on side of the unit),
   power on the device and when prompted to stop autoboot, hit any key.
   The held button can now be released.
5. Alter U-Boot environment with following commands:
    setenv bootcmd bootm 0x9F110000
    saveenv
6. Adjust "ipaddr" (access point, default is 192.168.1.1) and "serverip"
   (TFTP server, default is 192.168.1.10) addresses in U-Boot
   environment, then run following commands:
    tftp 0x80060000 sp_fw.bin
    erase 0x9F110000 +0x1EF0000
    cp.b 0x80060000 0x9F110000 $filesize
7. After successful flashing, execute:
    boot
8. The access point will boot to OpenWrt. Wait few minutes, until the
    wrench LED will stop blinking, then it's ready for configuration.

Known issues
Initramfs image can't be bigger than specified kernel size, otherwise
bootloader will throw LZMA decompressing error. Switching to lzma-loader
should workaround that.
This device has Winbond 25Q256FVFG and doesn't have reliable reset, which
causes hang on reboot, thus broken-flash-reset needs to be added. This
property addition causes dispaly of "scary" warning on each boot, take
this warnig into consideration.

Signed-off-by: Tomasz Maciej Nowak <tmn505@gmail.com>
2024-05-27 00:32:57 +02:00
Mieczyslaw Nalewaj
1a2fc49b71 ramips: samknows whitebox v8: set wifi frequency
Set the 2.4GHz frequency for WiFi.

Fixes: #15391
Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-05-25 20:20:30 +02:00
Pawel Dembicki
1b24cbeede layerscape: add 6.6 testing kernel
Support is ready. Let's enable 6.6 as testing version.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2024-05-25 20:18:23 +02:00
Pawel Dembicki
d73a66be61 layerscape: adjust dts path in image scripts
After the spliting dts folder of ARM architecture in upstream,
layerscape routines need to be adjusted for new solution.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2024-05-25 20:18:23 +02:00
Pawel Dembicki
ec956af626 layerscape: refresh 6.6 config
Mostly done by 'make kernel_oldconfig'.

armv8_64b has added one entry manually:
CONFIG_CRYPTO_CURVE25519=y

as workaround for error:
aarch64-openwrt-linux-musl-ld: crypto/crypto_engine.o: in function
	`crypto_engine_register_kpp':
crypto_engine.c:687: undefined reference to `crypto_register_kpp'
crypto_engine.c:687:(.text+0x57c): relocation truncated to fit:
	R_AARCH64_CALL26 against undefined symbol `crypto_register_kpp'
aarch64-openwrt-linux-musl-ld: crypto/crypto_engine.o: in function
	`crypto_engine_unregister_kpp':
crypto/crypto_engine.c:693: undefined reference to `crypto_unregister_kpp'
crypto_engine.c:693:(.text+0x5a0): relocation truncated to fit:
	R_AARCH64_CALL26 against undefined symbol `crypto_unregister_kpp'

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2024-05-25 20:18:23 +02:00
Pawel Dembicki
c9ecca141a generic: kernel add 6.6 missing symbols
Found durring works on layerscape.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2024-05-25 20:18:23 +02:00
Pawel Dembicki
347212085b layerscape: kernel: refresh 6.6 patches
Taken refreshed version from Layerscape 6.6 tree:
302-arm64-dts-ls1012a-update-with-ppfe-support.patch
304-arm64-dts-ls1012a-rdb-workaround-by-updating-qspi-fl.patch
400-LF-20-3-mtd-spi-nor-Use-1-bit-mode-of-spansion-s25fs.patch
701-staging-add-fsl_ppfe-driver.patch
702-phy-Add-2.5G-SGMII-interface-mode.patch
704-net-phylink-treat-PHY_INTERFACE_MODE_2500SGMII-in-ph.patch

Removed:
704-net-phylink-treat-PHY_INTERFACE_MODE_2500SGMII-in-ph.patch (meld
into 702)

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2024-05-25 20:18:23 +02:00
Pawel Dembicki
af1fc05cad kernel/layerscape: Restore kernel files for v6.1
This is an automatically generated commit which aids following Kernel patch history,
as git will see the move and copy as a rename thus defeating the purpose.

See: https://lists.openwrt.org/pipermail/openwrt-devel/2023-October/041673.html
for the original discussion.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2024-05-25 20:18:23 +02:00
Pawel Dembicki
0a22ccaad6 kernel/layerscape: Create kernel files for v6.6 (from v6.1)
This is an automatically generated commit.

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

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2024-05-25 20:18:23 +02:00
INAGAKI Hiroshi
34c875cf8b mvebu: add support for Fortinet FortiWiFi 51E
Fortinet FortiWiFi 51E (FWF-51E) is a UTM with 1x WLAN and 1x SSD, based
on Armada 385 (88F6820).

Specification:

- SoC          : Marvell Armada 385 88F6820
- RAM          : DDR3 2 GiB (4x Micron MT41K512M8DA-107, "D9SGQ")
- Flash        : SPI-NOR 128 MiB (Macronix MX66L1G45GMI-10G)
- SSD          : mSATA SSD 32 GB (A-DATA XM21E (AXM21ES3-32GM-B))
  - mode       : SATA III 6Gbps
  - power      : 3.3 VDC, 3.1 W (Max.)
- Ethernet     : 7x 10/100/1000 Mbps
  - LAN 1-5    : Marvell 88E6176
  - WAN 1, 2   : Marvell 88E1512 (2x)
- WLAN         : Fortinet EMP7618-FT (Atheros AR9382 (2T2R))
  - interface  : MiniPCIe
- LEDs/Keys    : 18x/1x
- UART         : "CONSOLE" port (RJ-45, RS-232C level)
  - port       : ttyS0
  - settings   : 9600bps 8n1
  - assignment : 1:NC , 2:NC , 3:TXD, 4:GND,
                 5:GND, 6:RXD, 7:NC , 8:NC
  - note       : compatible with Cisco console cable
- HW Monitoring: nuvoTon NCT7802Y
- Power        : 12 VDC, 2 A
  - plug       : Molex 5557-02R

Flash instruction using initramfs image:

 1. Power on FWF-51E and interrupt to show bootmenu
 2. Call "[I]: System information." -> "[S]: Set serial port baudrate."
    and set baudrate to 9600 bps
 3. Call "[R]: Review TFTP parameters.", check TFTP parameters and
    connect computer to "Image download port" in the parameters
 4. Prepare TFTP server with the parameters obtained above
 5. Rename OpenWrt initramfs image to "image.out" and put to TFTP
    directory
 6. Call "[T]: Initiate TFTP firmware transfer." to download initramfs
    image from TFTP server
 7. Type "R" key when the following message is showed, to boot initramfs
    image without flashing to spi-nor flash

    "Save as Default firmware/Backup firmware/Run image without saving:[D/B/R]?"

 8. On initramfs image, backup mtd if needed

    minimum:

    - "firmware-info"
    - "kernel"
    - "rootfs"

 9. On initramfs image, upload sysupgrade image to the device and perform
    sysupgrade
10. Wait ~200 seconds to complete flashing and rebooting.
    If the device is booted with stock firmware, login to bootmenu and
    call "[B]: Boot with backup firmware and set as default." to set the
    first OS image as default and boot it.

Notes:

- Both colors of Bi-color LEDs on the front panel cannot be turned on at
  the same time.

- "PWR" and "Logo" LEDs are connected to power source directly.

- The following partitions are added for OpenWrt.
  These partitions are contained in "uboot" partition (0x0-0x1fffff) on
  stock firmware.

  - "firmware-info"
  - "dtb"
  - "u-boot-env"
  - "board-info"

Image header for bootmenu tftp:

  0x0 - 0xf  : ?
 0x10 - 0x2f : Image Name
 0x30 - 0x17f: ?
0x180 - 0x183: Kernel Offset*
0x184 - 0x187: Kernel Length*
0x188 - 0x18b: RootFS Offset (ext2)*
0x18c - 0x18f: RootFS Length (ext2)*
0x190 - 0x193: DTB Offset
0x194 - 0x197: DTB Length
0x198 - 0x19b: Data Offset (jffs2)
0x19c - 0x19f: Data Length (jffs2)
0x1a0 - 0x1ff: ?

*: required for initramfs image

MAC addresses:

(eth0): 90:6C:AC:xx:xx:98 (board-info (OpenWrt), 0xd880 (hex))
WAN 1 : 90:6C:AC:xx:xx:99
WAN 2 : 90:6C:AC:xx:xx:9A
LAN 1 : 90:6C:AC:xx:xx:9B
LAN 2 : 90:6C:AC:xx:xx:9C
LAN 3 : 90:6C:AC:xx:xx:9D
LAN 4 : 90:6C:AC:xx:xx:9E
LAN 5 : 90:6C:AC:xx:xx:9F
WLAN  : 88:DC:96:xx:xx:xx (MiniPCIe Card)

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
Tested-by: Raylynn Knight <rayknight@me.com>
2024-05-25 20:03:00 +02:00
INAGAKI Hiroshi
26a2135c6d mvebu: add support for Fortinet FortiWiFi 50E-2R
Fortinet FortiWiFi 50E-2R (FWF-50E-2R) is a UTM with 2x WLAN, based on
Armada 385 (88F6820).

Specification:

- SoC          : Marvell Armada 385 88F6820
- RAM          : DDR3 2 GiB (4x Nanya NT5CC512M8EN-EK)
- Flash        : SPI-NOR 128 MiB (Macronix MX66L1G45GMI-10G)
- Ethernet     : 7x 10/100/1000 Mbps
  - LAN 1-5    : Marvell 88E6176
  - WAN 1, 2   : Marvell 88E1512 (2x)
- WLAN         : Gemtek WMDQ-177ACN (Qualcomm Atheros QCA9892 (2T2R))
                 (2x)
  - interface  : MiniPCIe
- LEDs/Keys    : 18x/1x
- UART         : "CONSOLE" port (RJ-45, RS-232C level)
  - port       : ttyS0
  - settings   : 9600bps 8n1
  - assignment : 1:NC , 2:NC , 3:TXD, 4:GND,
                 5:GND, 6:RXD, 7:NC , 8:NC
  - note       : compatible with Cisco console cable
- HW Monitoring: nuvoTon NCT7802Y
- Power        : 12 VDC, 2.5 A
  - plug       : Molex 5557-02R

Flash instruction using initramfs image:

 1. Power on FWF-50E-2R and interrupt to show bootmenu
 2. Call "[I]: System information." -> "[S]: Set serial port baudrate."
    and set baudrate to 9600 bps
 3. Call "[R]: Review TFTP parameters.", check TFTP parameters and
    connect computer to "Image download port" in the parameters
 4. Prepare TFTP server with the parameters obtained above
 5. Rename OpenWrt initramfs image to "image.out" and put to TFTP
    directory
 6. Call "[T]: Initiate TFTP firmware transfer." to download initramfs
    image from TFTP server
 7. Type "R" key when the following message is showed, to boot initramfs
    image without flashing to spi-nor flash

    "Save as Default firmware/Backup firmware/Run image without saving:[D/B/R]?"

 8. On initramfs image, backup mtd if needed

    minimum:

    - "firmware-info"
    - "kernel"
    - "rootfs"

 9. On initramfs image, upload sysupgrade image to the device and perform
    sysupgrade
10. Wait ~200 seconds to complete flashing and rebooting.
    If the device is booted with stock firmware, login to bootmenu and
    call "[B]: Boot with backup firmware and set as default." to set the
    first OS image as default and boot it.

Notes:

- Both colors of Bi-color LEDs on the front panel cannot be turned on at
  the same time.

- "PWR" and "Logo" LEDs are connected to power source directly.

- The following partitions are added for OpenWrt.
  These partitions are contained in "uboot" partition (0x0-0x1fffff) on
  stock firmware.

  - "firmware-info"
  - "dtb"
  - "u-boot-env"
  - "board-info"

Image header for bootmenu tftp:

  0x0 - 0xf  : ?
 0x10 - 0x2f : Image Name
 0x30 - 0x17f: ?
0x180 - 0x183: Kernel Offset*
0x184 - 0x187: Kernel Length*
0x188 - 0x18b: RootFS Offset (ext2)*
0x18c - 0x18f: RootFS Length (ext2)*
0x190 - 0x193: DTB Offset
0x194 - 0x197: DTB Length
0x198 - 0x19b: Data Offset (jffs2)
0x19c - 0x19f: Data Length (jffs2)
0x1a0 - 0x1ff: ?

*: required for initramfs image

MAC addresses:

(eth0): 90:6C:AC:xx:xx:98 (board-info (OpenWrt), 0xd880 (hex))
WAN 1 : 90:6C:AC:xx:xx:99
WAN 2 : 90:6C:AC:xx:xx:9A
LAN 1 : 90:6C:AC:xx:xx:9B
LAN 2 : 90:6C:AC:xx:xx:9C
LAN 3 : 90:6C:AC:xx:xx:9D
LAN 4 : 90:6C:AC:xx:xx:9E
LAN 5 : 90:6C:AC:xx:xx:9F
WLAN 1: 1C:49:7B:xx:xx:xx (MiniPCIe Card)
WLAN 2: 1C:49:7B:xx:xx:xx (MiniPCIe Card)

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
Tested-by: Raylynn Knight <rayknight@me.com>
2024-05-25 20:03:00 +02:00
INAGAKI Hiroshi
38d6c99dc0 mvebu: add support for Fortinet FortiGate 52E
Fortinet FortiGate 52E (FG-52E) is a UTM, based on Armada 385 (88F6820).

Specification:

- SoC          : Marvell Armada 385 88F6820
- RAM          : DDR3 2 GiB (4x Micron MT41K512M8DA-107, "D9SGQ")
- Flash        : SPI-NOR 128 MiB (Macronix MX66L1G45GMI-10G)
- SSD          : mSATA SSD 64 GB (2x A-DATA XM21E (AXM21ES3-32GM-B))
  - mode       : SATA III 6Gbps
  - power      : 3.3 VDC, 3.1 W (Max.)
- Ethernet     : 7x 10/100/1000 Mbps
  - LAN 1-5    : Marvell 88E6176
  - WAN 1, 2   : Marvell 88E1512 (2x)
- LEDs/Keys    : 18x/1x
- UART         : "CONSOLE" port (RJ-45, RS-232C level)
  - port       : ttyS0
  - settings   : 9600bps 8n1
  - assignment : 1:NC , 2:NC , 3:TXD, 4:GND,
                 5:GND, 6:RXD, 7:NC , 8:NC
  - note       : compatible with Cisco console cable
- HW Monitoring: nuvoTon NCT7802Y
- Power        : 12 VDC, 2.5 A
  - plug       : Molex 5557-02R

Flash instruction using initramfs image:

 1. Power on FG-52E and interrupt to show bootmenu
 2. Call "[I]: System information." -> "[S]: Set serial port baudrate."
    and set baudrate to 9600 bps
 3. Call "[R]: Review TFTP parameters.", check TFTP parameters and
    connect computer to "Image download port" in the parameters
 4. Prepare TFTP server with the parameters obtained above
 5. Rename OpenWrt initramfs image to "image.out" and put to TFTP
    directory
 6. Call "[T]: Initiate TFTP firmware transfer." to download initramfs
    image from TFTP server
 7. Type "R" key when the following message is showed, to boot initramfs
    image without flashing to spi-nor flash

    "Save as Default firmware/Backup firmware/Run image without saving:[D/B/R]?"

 8. On initramfs image, backup mtd if needed

    minimum:

    - "firmware-info"
    - "kernel"
    - "rootfs"

 9. On initramfs image, upload sysupgrade image to the device and perform
    sysupgrade
10. Wait ~200 seconds to complete flashing and rebooting.
    If the device is booted with stock firmware, login to bootmenu and
    call "[B]: Boot with backup firmware and set as default." to set the
    first OS image as default and boot it.

Notes:

- Both colors of Bi-color LEDs on the front panel cannot be turned on at
  the same time.

- "PWR" and "Logo" LEDs are connected to power source directly.

- The following partitions are added for OpenWrt.
  These partitions are contained in "uboot" partition (0x0-0x1fffff) on
  stock firmware.

  - "firmware-info"
  - "dtb"
  - "u-boot-env"
  - "board-info"

Image header for bootmenu tftp:

  0x0 - 0xf  : ?
 0x10 - 0x2f : Image Name
 0x30 - 0x17f: ?
0x180 - 0x183: Kernel Offset*
0x184 - 0x187: Kernel Length*
0x188 - 0x18b: RootFS Offset (ext2)*
0x18c - 0x18f: RootFS Length (ext2)*
0x190 - 0x193: DTB Offset
0x194 - 0x197: DTB Length
0x198 - 0x19b: Data Offset (jffs2)
0x19c - 0x19f: Data Length (jffs2)
0x1a0 - 0x1ff: ?

*: required for initramfs image

MAC addresses:

(eth0): 90:6C:AC:xx:xx:98 (board-info (OpenWrt), 0xd880 (hex))
WAN 1 : 90:6C:AC:xx:xx:99
WAN 2 : 90:6C:AC:xx:xx:9A
LAN 1 : 90:6C:AC:xx:xx:9B
LAN 2 : 90:6C:AC:xx:xx:9C
LAN 3 : 90:6C:AC:xx:xx:9D
LAN 4 : 90:6C:AC:xx:xx:9E
LAN 5 : 90:6C:AC:xx:xx:9F

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2024-05-25 20:03:00 +02:00
INAGAKI Hiroshi
d406498e1b mvebu: add support for Fortinet FortiGate 51E
Fortinet FortiGate 51E (FG-51E) is a UTM, based on Armada 385 (88F6820).

Specification:

- SoC          : Marvell Armada 385 88F6820
- RAM          : DDR3 2 GiB (4x Micron MT41K512M8DA-107, "D9SGQ")
- Flash        : SPI-NOR 128 MiB (Macronix MX66L1G45GMI-10G)
- SSD          : mSATA SSD 32 GB (A-DATA XM21E (AXM21ES3-32GM-B))
  - mode       : SATA III 6Gbps
  - power      : 3.3 VDC, 3.1 W (Max.)
- Ethernet     : 7x 10/100/1000 Mbps
  - LAN 1-5    : Marvell 88E6176
  - WAN 1, 2   : Marvell 88E1512 (2x)
- LEDs/Keys    : 18x/1x
- UART         : "CONSOLE" port (RJ-45, RS-232C level)
  - port       : ttyS0
  - settings   : 9600bps 8n1
  - assignment : 1:NC , 2:NC , 3:TXD, 4:GND,
                 5:GND, 6:RXD, 7:NC , 8:NC
  - note       : compatible with Cisco console cable
- HW Monitoring: nuvoTon NCT7802Y
- Power        : 12 VDC, 2.5 A
  - plug       : Molex 5557-02R

Flash instruction using initramfs image:

 1. Power on FG-51E and interrupt to show bootmenu
 2. Call "[I]: System information." -> "[S]: Set serial port baudrate."
    and set baudrate to 9600 bps
 3. Call "[R]: Review TFTP parameters.", check TFTP parameters and
    connect computer to "Image download port" in the parameters
 4. Prepare TFTP server with the parameters obtained above
 5. Rename OpenWrt initramfs image to "image.out" and put to TFTP
    directory
 6. Call "[T]: Initiate TFTP firmware transfer." to download initramfs
    image from TFTP server
 7. Type "R" key when the following message is showed, to boot initramfs
    image without flashing to spi-nor flash

    "Save as Default firmware/Backup firmware/Run image without saving:[D/B/R]?"

 8. On initramfs image, backup mtd if needed

    minimum:

    - "firmware-info"
    - "kernel"
    - "rootfs"

 9. On initramfs image, upload sysupgrade image to the device and perform
    sysupgrade
10. Wait ~200 seconds to complete flashing and rebooting.
    If the device is booted with stock firmware, login to bootmenu and
    call "[B]: Boot with backup firmware and set as default." to set the
    first OS image as default and boot it.

Notes:

- Both colors of Bi-color LEDs on the front panel cannot be turned on at
  the same time.

- "PWR" and "Logo" LEDs are connected to power source directly.

- The following partitions are added for OpenWrt.
  These partitions are contained in "uboot" partition (0x0-0x1fffff) on
  stock firmware.

  - "firmware-info"
  - "dtb"
  - "u-boot-env"
  - "board-info"

Image header for bootmenu tftp:

  0x0 - 0xf  : ?
 0x10 - 0x2f : Image Name
 0x30 - 0x17f: ?
0x180 - 0x183: Kernel Offset*
0x184 - 0x187: Kernel Length*
0x188 - 0x18b: RootFS Offset (ext2)*
0x18c - 0x18f: RootFS Length (ext2)*
0x190 - 0x193: DTB Offset
0x194 - 0x197: DTB Length
0x198 - 0x19b: Data Offset (jffs2)
0x19c - 0x19f: Data Length (jffs2)
0x1a0 - 0x1ff: ?

*: required for initramfs image

MAC addresses:

(eth0): 70:4C:A5:xx:xx:98 (board-info (OpenWrt), 0xd880 (hex))
WAN 1 : 70:4C:A5:xx:xx:99
WAN 2 : 70:4C:A5:xx:xx:9A
LAN 1 : 70:4C:A5:xx:xx:9B
LAN 2 : 70:4C:A5:xx:xx:9C
LAN 3 : 70:4C:A5:xx:xx:9D
LAN 4 : 70:4C:A5:xx:xx:9E
LAN 5 : 70:4C:A5:xx:xx:9F

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
Tested-by: Raylynn Knight <rayknight@me.com>
2024-05-25 20:03:00 +02:00
INAGAKI Hiroshi
f69d96a8e5 mvebu: separate common parts to new dtsi for FortiGate/FortiWiFi 5xE
Add a new dtsi which contains the common parts of Fortinet
FortiGate/FortiWiFi 5xE series devices.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2024-05-25 20:03:00 +02:00
INAGAKI Hiroshi
77663df754 mvebu: separate common parts to new dtsi for FortiGate/FortiWiFi 3xE
Add a new dtsi which contains the common parts of Fortinet
FortiGate/FortiWiFi 3xE series devices.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2024-05-25 20:03:00 +02:00
INAGAKI Hiroshi
73be4b9e48 mvebu: rename common dtsi of FortiGate 30E/50E
Rename the common dtsi of Fortinet FortiGate 30E/50E for the preparation
of adding support for the other FortiGate/FortiWiFi 3xE/5xE devices.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2024-05-25 20:03:00 +02:00
INAGAKI Hiroshi
0618eae506 mvebu: add common image definition for FortiGate devices
Add a common definition of Fortinet FortiGate devices to
image/cortexa9.mk for a preparation of adding support for
other FortiGate 3xE/5xE devices.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2024-05-25 20:02:59 +02:00
Kristian Skramstad
c5b7ec8cee ath79: qca9563: add support for Amplifi Router HD
Hardware:
    SoC: Qualcomm Atheros QCA956X ver 1 rev 0
    CPU clock: 775.000 MHz
    Memory: 128 MB DDR2
    Flash: 32 MB SPI NOR mx25l25635e
    Switch: Atheros AR8327 rev. 4
    Ethernet: 5x 10/100/1000 Mbps (1 WAN + 4 LAN)
    Buttons: 1x Reset
    Serial: TX, RX, GND, VCC
    Baudrate: 115200
    Wifi: Qualcomm Atheros qca988x 802.11ac/n - 3x3
          Qualcomm Atheros AR9561 802.11b/g/n - 3x3

Not working:
    Leds: 1x via a SPI controller
    Display: ST7789V or ILI9341V
    controlled by stm32f205.

Note:
    DSA changes are ready, but we have an issue with
    ports not working after 20-30 minutes. So for now
    we use swconfig.

Installation: serial connection only
There is a J11 four pin connector. You need to connect TX, RX and GND.
You can find very good information about the device here
https://github.com/alexanderhenne/AFi-R?tab=readme-ov-file#finding-j11

Upgrading via serial port:
1.  Download the kernel initramfs image. Copy the image to a TFTP server
2.  Connect to console on the AP, and connect the LAN1 port to your PC LAN
3.  Stop autoboot to get to U-boot shell
    Interrupt the autoboot process by pressing any key when prompted
4.  Transfer the kernel image with TFTP
    Set your ip address on your TFTP server to 192.168.1.254
    # tftpboot 0x81000000 amplifi-router-hd-initramfs-kernel.bin
5.  Load the image
    # bootm 0x81000000
6.  SCP sysupgrade image from your PC to the Amplifi HD
    (If you use a newer mac use scp -O)
    # scp openwrt-ath79-generic-ubnt_amplifi-router-hd-squashfs-sysupgrade.bin root@192.168.1.1:/tmp/
7.  Write sysupgrade to the firmware partition
    # mtd write /tmp/openwrt-ath79-generic-ubnt_amplifi-router-hd-squashfs-sysupgrade.bin firmware
8.  Reboot your device
    # reboot

Credit to alexanderhenne for all the information.

Signed-off-by: Kristian Skramstad <kristian+github@83.no>
2024-05-25 19:52:42 +02:00
INAGAKI Hiroshi
50ae9337d6 ramips: add support for ELECOM WRC-X1800GS
ELECOM WRC-X1800GS is a 2.4/5 GHz band 11ax (Wi-Fi 6) router, based on
MT7621A.

Specification:

- SoC               : MediaTek MT7621A
- RAM               : DDR3 256 MiB
- Flash             : RAW-NAND 128 MiB (Macronix MX30LF1G28AD-TI)
- WLAN              : 2.4/5 GHz 2T2R (MediaTek MT7915D)
- Ethernet          : 5x 10/100/1000 Mbps
  - switch          : MediaTek MT7530 (SoC)
- LEDs/Keys (GPIO)  : 7x/4x
- UART              : pin-header on PCB ("J5")
  - arrangement     : 3.3V, TX, RX, NC, GND from tri-angle marking
  - settings        : 115200n8
- Power             : 12 VDC, 1 A

Flash instruction using initramfs-factory image:

1. Boot WRC-X1800GS normally with "Router" mode
2. Access to "http://192.168.2.1/" and open firmware update page
   ("ファームウェア更新")
3. Select the OpenWrt initramfs-factory image and click apply ("適用")
   button
4. After flashing initramfs-factory image and reboot, upload the
   sysupgrade image and perform sysupgrade with it
5. Wait ~120 seconds to complete flashing

Notes:

- WRC-X1800GS has 2x os images. Those are switched on every firmware
  updating on stock firmware, but dual-boot feature on this device
  cannot be handled on OpenWrt. So the 1st image is always used on
  OpenWrt.
  This is controlled by "bootnum" variable embedded in "persist"
  partition (addr: 0x4).

- WRC-X1800GS has 2x HW revisions. There are some small changes, but the
  same DeviceTree in stock firmware is used for both revisions.
  On this support of WRC-X1800GS, 2x green:wlan-2g-N LEDs are defined
  for each revision and the same default triggers are set.

MAC addresses:

LAN    : 38:97:A4:xx:xx:38 (Factory, 0x1fdfa (hex) / Ubootenv, ethaddr (text))
WAN    : 38:97:A4:xx:xx:3B (Factory, 0x1fdf4 (hex))
2.4 GHz: 38:97:A4:xx:xx:39
5 GHz  : 38:97:A4:xx:xx:3A

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2024-05-25 19:33:28 +02:00
INAGAKI Hiroshi
cd2a6906da ramips: parameterize some values in Build/znet-header
Parameterize magic number and header length to use the device-specific
values.

example:

On WRC-X1800GS, an additional ELECOM-specific header and a magic number
"COMC" are required.

Stock FW v1.18:

$ hexdump -n $((0x40080)) -C wrc-x1800gs_v1.18.bin
00000000  45 4c 45 43 4f 4d 00 00  57 52 43 2d 58 31 38 30  |ELECOM..WRC-X180|
00000010  30 47 53 00 00 00 00 00  00 00 00 00 00 00 00 00  |0GS.............|
00000020  00 00 00 00 00 00 00 00  31 2e 31 38 00 00 00 00  |........1.18....|
00000030  00 00 00 00 00 00 00 00  43 4f 4d 43 04 00 ac 00  |........COMC....|
00000040  40 f0 49 74 b1 e8 6a ca  e4 20 65 1f 34 2e 30 34  |@.It..j.. e.4.04|
00000050  28 58 56 46 2e 31 29 62  31 37 00 00 00 00 00 00  |(XVF.1)b17......|
00000060  00 00 00 00 00 00 00 00  ff ff ff ff ff ff ff ff  |................|
00000070  ff ff ff ff ff ff ff ff  ff ff ff ff ff ff ff ff  |................|
*
00040000  d0 0d fe ed 00 36 9c c0  00 00 00 38 00 36 9a e0  |.....6.....8.6..|
00040010  00 00 00 28 00 00 00 11  00 00 00 10 00 00 00 00  |...(............|
00040020  00 00 00 6c 00 36 9a a8  00 00 00 00 00 00 00 00  |...l.6..........|
00040030  00 00 00 00 00 00 00 00  00 00 00 01 00 00 00 00  |................|
00040040  00 00 00 03 00 00 00 04  00 00 00 62 65 54 97 8f  |...........beT..|
00040050  00 00 00 03 00 00 00 28  00 00 00 00 4d 49 50 53  |.......(....MIPS|
00040060  20 4f 70 65 6e 57 72 74  20 46 49 54 20 28 46 6c  | OpenWrt FIT (Fl|
00040070  61 74 74 65 6e 65 64 20  49 6d 61 67 65 20 54 72  |attened Image Tr|
00040080

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2024-05-25 19:33:28 +02:00
Ryan Castellucci
85f6f88223 ipq40xx: eap1300: add eap1300ext as alt model
The EnGenius EAP1300 and EAP1300EXT use identical boards and firmware
(as flashed) from the vendor.

As with the EAP1300, the EAP1300EXT requires a specific firmware version
to flash OpenWRT. Unfortunately, the required firmware is truncated on
the vendor's website.

A working file can be created as follows:

```
curl \
https://www.engeniustech.com/wp_firmware/eap1300-all-v3.5.3.5_c1.9.04.bin \
| perl -pe 's/\x09EAP1300_A/\x0cEAP1300EXT_A/' \
> eap1300ext-all-v3.5.3.5_c1.9.04.bin
```

The file should have sha256:
`58a1197a426139a12b03fd432334e677124cbe3384349bd7337f2ee71f1dcfd4`.

Please see commit 2b4ac79 for further
details.

The vendor firmware must be decrypted before it can be flashed from
OpenWRT. A tool able to do that is available from:

https://github.com/ryancdotorg/enfringement/blob/main/decrypt.py

Signed-off-by: Ryan Castellucci <code@ryanc.org>
2024-05-25 18:37:09 +02:00
Leon M. Busch-George
a55ab9e134 mediatek: filogic: prevent faulty mac address assignment
The vendor U-Boot on the Cudy M3000 and the Yuncore AX835 assign random
mac addresses on boot and set the 'local-mac-address' property which
prevents Openwrt from assigning the correct address from evmem.

This patch removes the alias for ethernet0 so that U-Boot doesn't add the
property, removes the workaround from 02_network, and adds back the nvmem
definition for the M3000.

Signed-off-by: Leon M. Busch-George <leon@georgemail.eu>
2024-05-25 12:41:26 +02:00
Linus Walleij
e7661a808e ixp4xx: Add back support for D-Link DSM G600 A
OpenWrt supported the D-Link DSM G600 A in the past. It has
64 MB of RAM and 16 MB of flash so it will run just fine,
and should be quite usable with a rootfs on an external
harddrive.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2024-05-25 09:17:19 +02:00
Linus Walleij
869bbdb8f6 ixp4xx: Add back support for Freecom FSG-3
OpenWrt supported the Freecom FSG-3 in the past. It has
64 MB of RAM so will run fine, but the bare 4 MB of flash
makes it a non-default target. The generated compressed
image is currently below 4MB (just 3.3 MB) though, so it
should be possible to flash just fine with a rootfs on
a harddrive or USB stick, which is what the FSG-3 used
in the past as well.

The device has a WAN port on eth0 and three LAN ports on
eth1. The LAN ports are probably a DSA switch but the
old OpenWrt base never activated that, instead it relies
on boot defaults.

Due to questionable usablity without tweaking and further
work this image is not built by default, but made available
for developers who know what they are doing.

The TAR+CRC image generation is a rewritten version of the
earlier support code.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2024-05-25 09:17:10 +02:00
Linus Walleij
4220f75d1e ixp4xx: Add back support for Iomega NAS100D
OpenWrt supported the Iomega NAS100D in the past and it has
64 MB of RAM so if booted from a harddrive it will probably
work just fine. The APEX boot loader already has a build
variant for this machine that we can just pick up and use.

This device has a single ethernet port so bring this online
with DHCP as expected for a NAS device.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2024-05-25 09:16:45 +02:00
Linus Walleij
e824864ede ixp4xx: Add ext4 and rootfs-part to features
Several of the IXP4xx machines mount root on external harddrives
so add EXT4 and rootfs-part to the featureset so the right
features are always selected.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2024-05-25 09:16:34 +02:00
Daniel Golle
c71b68acdd mediatek: filogic: add Adtran SmartRG Mount Stuart series
Common specifications:
 * Mediatek MT7988A (4x Cortex-A73, up to 1.8 GHz clock speed)
 * 8 GiB eMMC
 * 2 GiB DDR4 RAM
 * 1x 10000M/1000M/100M + 3x 1000M/100M/10M LAN ports
 * MT7996 Tri-band (2.4G, 5G, 6G) 4T4R 802.11be Wi-Fi
 * Airoha AG3352 GPS
 * Renesas DA14531MOD Bluetooth
 * 2 buttons (Reset, Mesh/WPS)
 * uC-controlled RGB LED via I2C
 * 2x LED for each 1G port, 3x LED for each 10G port
 * USB 3.0 type A port
 * 3.3V-level 115200 baud UART console via 4-pin Dupont connector
   exposed at the bottom of the device
 * USB-C PD power input

SDG-8733: 1x 10000M/1000M/100M WAN port
SDG-8734: 1x USXGMII/10GBase-R/5GBase-R/2500Base-X/1000Base-X/SGMII SFP+

Both models are also available in versions including 2x FXS POTS interfaces
for analog phones. Those interfaces are not supported by OpenWrt.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-05-24 18:34:13 +01:00
Daniel Golle
c82e106313 mediatek: fix sysupgrade config backup on Adtran SmartRG devices
Add missing call to emmc_copy_config which either writes the sysupgrade
tar.gz backup file or clears the existing rootfs_data overlay.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-05-24 18:34:13 +01:00
Daniel Golle
cccf98c7e8 generic: 6.6: backports and add LED support for Aquantia PHYs
Backport patch adding support for the AQR114C PHY and add support for
PHY LEDs and polarity setting of Aquantia 3rd and 4th generation PHYs.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-05-24 18:34:13 +01:00
Andrey Bondar
febcfadc80 ath79: add support for 8Devices Carambola3 board
Carambola3 is a WiFi module based on Qualcomm/Atheros QCA4531
http://wiki.8devices.com/carambola3

Specification:

    - 650/600/216 MHz (CPU/DDR/AHB)
    - 128 MB of RAM (DDR2)
    - 32 MB of FLASH
    - 2T2R 2.4 GHz
    - 2x 10/100 Mbps Ethernet
    - 1x USB 2.0 Host socket
    - UART for serial console
    - 12x GPIO

Flash instructions:

    Upgrading from ar71xx target:
    - Upload image into the board:
        scp openwrt-ath79-generic-8dev_carambola3-squashfs-sysupgrade.bin \
          root@192.168.1.1/tmp/
    - Run sysupgrade
        sysupgrade -F /tmp/openwrt-ath79-generic-8dev_carambola3-squashfs-sysupgrade.bin

Upgrading from u-boot:
    - Set up tftp server with openwrt-ath79-generic-8dev_carambola3-initramfs-kernel.bin
    - Go to u-boot (reboot and press ESC when prompted)
    - Set TFTP server IP
        setenv serverip 192.168.1.254
    - Set device ip from the same subnet
        setenv ipaddr 192.168.1.1
    - Copy new firmware to board
        tftpboot 0x82000000 initramfs.bin
    - Boot OpenWRT
        bootm 0x82000000
    - Upload image openwrt-ath79-generic-8dev_carambola3-squashfs-sysupgrade.bin into the board
    - Run sysupgrade.

Signed-off-by: Andrey Bondar <a.bondar@8devices.com>
Link: https://github.com/openwrt/openwrt/pull/15514
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-05-24 11:29:23 +02:00
Lea Teuberth
2a2f53415e ramips: add support for TP-Link Archer MR200v5
Specifications:
	CPU:     MT7628AN 580MHz
	RAM:     64MB DDR2
	FLASH:   8MB EN25QH64 NOR SPI
	WIFI:    2.4GHz 2x2 MT7628 b/g/n internal
	WIFI:    5GHz 1x1 MT7610E ac/n PCI
	LTE:     Qualcomm MDM9207
	ETH:     4xLAN 100base-T integrated
	SWITCH:  RT3050-ESW Port 0,1,2,3: LAN, Port 6: CPU
	LEDS:    LAN, WAN, Power, 3x signal strength, WiFi
	BTNS:    Reset, WiFi toggle
	UART:    Near ETH ports, Vcc-GND-RX-TX, 115200, 8N1

Installation:
	1. Update using recovery mode
        - set your IP to 192.168.0.225, subnet mask: 255.255.255.0
        - start tftp server, rename tftp-recovery.bin to
          tp_recovery.bin and place it into the server's directory
        - while holdig the "reset" button, power on the device
        - keep holding "reset" until the file is being transferred

Notes:
	This board has only one MAC address programmed
        in the "romfile" partition:
        - MAC for phy0 (2.4GHz) at romfile 0xf100 (0)
        - MAC for phy1 (5GHz) at romfile 0xf100 (-1)
        - stock firmware re-uses phy0 MAC for ethernet
        - stock firmware uses romfile 0xf100 (1) for WWAN;
          not used since QMI interface is raw IP

Signed-off-by: Lea Teuberth <lea.teuberth@outlook.com>
2024-05-23 22:46:26 +02:00
Rafał Miłecki
e83a5618d4 mediatek: include "kmod-mt7915e" package per device
mt7915e driver supports MT7915 & MT7916 devices and MT7981 & MT7986
on-SoC wireless controllers. Devices based on MT7988 and possibly other
next chipsets are quite unlikely to need it (MT7988 was designed to be
used with MT7996).

Move kmod-mt7915e to DEVICE_PACKAGES of relevant devices.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2024-05-23 12:24:48 +02:00
Robert Marko
4a78c46cbd ipq40xx: dont panic on PSGMII calibration fail
Currently, in case that PSGMII calibration fails it will panic the kernel
which is not ideal and is preventing any debugging to be done.

So, since PGMII calibration failing only means that wired networking wont
work lets convet the panic() call to dev_error.

Link: https://github.com/openwrt/openwrt/pull/15542
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-05-22 17:24:17 +02:00
Andrew Smith
0f5c28b96b qualcommax: ipq807x support Netgear Orbi Pro SXK80
This commit adds support for Netgear Orbi Pro SXR80 and SXS80 (collectively known as SXK80)

Specifications:
---------------
* CPU: Qualcomm IPQ8074A Quad core Cortex-A53
* RAM: 1024MB
* Storage: SPI-NAND 512 MiB (Winbond W29N04GZ)
* Ethernet: 4x 1G RJ45 ports (QCA8075) 1x 2.5G RJ45 LAN/WAN (QCA8081)
* WLAN:
    - 2.4 GHz: Qualcomm QCN5024 4x4
    - 2x 5 GHz: Qualcomm QCN5054 4x4 (second radio high channels only)
* LEDs:
    - Power: (Green and red)
    - Front: (Blue, green, red and white)
* Buttons:
    - 1x Soft reset
    - 1x Sync/WPS
* Power: 12V DC Jack

Installation instructions (Telnet):
-----------------------------------

*Note, this guide assumes SXR80, for SXS80 change the firmware file name as appropriate

1. Put firmware file openwrt-qualcommax-ipq807x-netgear_sxr80-initramfs-uImage.itb in root of TFTP server available at 192.168.1.10.
2. Enable telnet by going to http://[ip of device]/debug.htm and clicking on the tickbox 'Enable telnet'
3. Telnet into the device and login using the same username and password as the web interface:
4. Run the following command:

`fw_setenv bootcmd 'env default -a; saveenv; reset'`

5. Reboot the router, once the web interface is available again re-enable telnet via http://[ip of device]/debug.htm and telnet into the device.

6. Run the following command:

`fw_printenv`

It should look similar to the below:

```
baudrate=115200
bootargs=console=ttyMSM0,115200n8
bootcmd=mii write 0x0 0x0 0x800; sleep 1; nmrp; bootdni; boot_DNI_secureboot
bootdelay=2
ipaddr=192.168.1.1
netmask=255.255.255.0
serverip=192.168.1.10
soc_version_major=2
soc_version_minor=0
```

**If you see the message:**
`Warning: Bad CRC, using default environment`
**DO NOT CONTINUE, YOU WILL BRICK YOUR DEVICE**

7. Run the following command:

`fw_setenv originalboot 'mii write 0x0 0x0 0x800; sleep 1; nmrp; bootdni; boot_DNI_secureboot'`

(This should match what's in the bootcmd variable displayed in step 6)

8. Run the following commands:
```
fw_setenv wrttftp 'mii write 0x0 0x0 0x800; sleep 1; nmrp; if tftpboot openwrt-qualcommax-ipq807x-netgear_sxr80-initramfs-uImage.itb; then bootm; fi; bootdni; boot_DNI_secureboot'
fw_setenv wrtboot 'mii write 0x0 0x0 0x800; sleep 1; nmrp; nand read 0x40000000 0x1980000 0x06d00000; bootm 0x40000000'
fw_setenv bootcmd 'run wrttftp'
```

9. Ensure SXR/S device is attached via ethernet (LAN port) to the same ethernet segment as the TFTP server.

10. Reboot the device, it should reboot into OpenWrt and be available on 192.168.1.1

11. Once OpenWrt has booted, update the bootcmd using the following command:

`fw_setenv bootcmd 'run wrtboot'`

12. Flash the sysupgrade image

13. It should boot into OpenWrt

References to SXK80 GPL source:
https://www.downloads.netgear.com/files/GPL/SXK80-V3.2.0.108_gpl_src.tar.bz2.zip

Signed-off-by: Flole Systems <flole@flole.de>
Signed-off-by: Andrew Smith <gul.code@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/14939
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-05-22 14:51:36 +02:00
Robert Marko
cd9241db23 qualcommax: ipq807x: sax1v1k: fix QCA8081 reset
It seems that on Spectrum SAX1V1K QCA8081 is being brought out of reset
too quickly and thus causing it to get stuck in an invalid autoneg
register configuration mode.

Setting an deasset delay seems to fix this, so lets set it.

Fixes: #15493
Link: https://github.com/openwrt/openwrt/pull/15541
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-05-21 20:15:03 +02:00
John Crispin
dd58ad968a mediatek/filogic: add OpenWrt One support
Specification:
 - MT7981 CPU using 2.4GHz and 5GHz WiFi (both AX)
 - 1GB RAM
 - 16MB NOR
 - 128MB NAND
 - 3 LEDs (red, green, blue, white)
 - 2 buttons (reset, user defined)
 - 1 2.5Gbit WAN port (Airoha EN8811h)
 - 1 1Gbit LAN ports
 - 1 single lane M.2 SSD slot
 - 1 mikroBus socket
 - externel HW WDT (25s refresh time)
 - i2c RTC (with battery backup)

Serial Interface
 - UBS-C CDC-ACM
 - 3 Pins GND, RX, TX
 - Settings: 115200, 8N1

MAC addresses are not populated on the early samples.

Signed-off-by: John Crispin <john@phrozen.org>
2024-05-21 11:35:38 +02:00
John Crispin
47d308a46c Revert "mediatek/filogic: add OpenWrt One support"
This reverts commit 797904b3cb.

There is a stray line in the commit description

Signed-off-by: John Crispin <john@phrozen.org>
2024-05-21 11:35:28 +02:00
John Crispin
797904b3cb mediatek/filogic: add OpenWrt One support
filogic: Add support for D-Link AQUILA PRO AI M30

Specification:
 - MT7981 CPU using 2.4GHz and 5GHz WiFi (both AX)
 - 1GB RAM
 - 16MB NOR
 - 128MB NAND
 - 3 LEDs (red, green, blue, white)
 - 2 buttons (reset, user defined)
 - 1 2.5Gbit WAN port (Airoha EN8811h)
 - 1 1Gbit LAN ports
 - 1 single lane M.2 SSD slot
 - 1 mikroBus socket
 - externel HW WDT (25s refresh time)
 - i2c RTC (with battery backup)

Serial Interface
 - UBS-C CDC-ACM
 - 3 Pins GND, RX, TX
 - Settings: 115200, 8N1

MAC addresses are not populated on the early samples.

Signed-off-by: John Crispin <john@phrozen.org>
2024-05-21 10:40:20 +02:00
John Crispin
6e060300fc mediatek/filogic: enable led PWM driver by default
Signed-off-by: John Crispin <john@phrozen.org>
2024-05-21 10:26:06 +02:00
John Crispin
27286ed524 mediatek/filogic: fix mt7981.dtsi PCIe support
* the compatible string was wrong
* the pinmux was missing

Signed-off-by: John Crispin <john@phrozen.org>
2024-05-21 10:26:06 +02:00
Linus Walleij
2eef4f7354 ixp4xx: Bump to kernel v6.6
The IXP4xx is well supported upstream and can readily be
supported with kernel v6.6. To simplify things after the
DTS directory was renamed, switch to v6.6 only.

Bring in some outstanding patches.

Tested on the Gateworks GW2348-4.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2024-05-20 21:04:08 +02:00
Linus Walleij
70e81efe93 gemini: In-flight ethernet patches
These patches have partial acceptance upstream and are still
a WIP, now there is merge window for kernel v6.10 so these
will not be reposted until that is over. In the meantime,
let's add the current state to OpenWrt so the ethernet on
Gemini is up and working (tested on several devices).

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2024-05-19 22:06:11 +02:00
Christian Marangi
5d37d8dc82
imagebuilder: fix multiple issue with manifest and sign keys handling
Fix multiple issue with manifest handling where APK was hardcoded
and fix a logic error where (TODO) APK _check_keys was called for the
OPKG codepath instead of correctly calling for the APK codepath.

Fixes: d788ab376f ("build: add APK package build capabilities")
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-05-19 14:58:11 +02:00
Felix Fietkau
ba245d6bca mediatek: add firmware name for AQR PHYs on mt7988a-rfb
Fixes PHY probe in case there is no firmware in a connected EEPROM

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2024-05-19 09:47:04 +02:00
Felix Fietkau
59ac0440b1 mediatek: convert mt7988a-rfb to keep bl31/uboot in UBI
Add ubi volumes for mt7988a-rfb and support for using factory data
for Ethernet MAC addresses and MT7996 WLAN calibration data.
Also add rootdisk handle. Removes the need to keep using nmbm

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2024-05-19 09:47:04 +02:00
Paul Spooren
d788ab376f build: add APK package build capabilities
A new option called `USE_APK` is added which generated APK packages
(.apk) instead of OPKG packages (.ipk).

Some features like fstools `snapshot` command are not yet ported

Signed-off-by: Paul Spooren <mail@aparcar.org>
2024-05-17 23:21:26 +03:00
Tomasz Maciej Nowak
6a29d32d8a tegra: trimslice: enable USB HID driver
Without serial or network access the only option for initial
configuration, is a attached display with USB keyboard, but the keyboard
driver needs to be installed first. So enable keyboard driver by default
to avoid this issue.

Signed-off-by: Tomasz Maciej Nowak <tmn505@gmail.com>
2024-05-17 17:04:24 +03:00
Tomasz Maciej Nowak
6660a15d72 tegra: trimslice: enable GPIO LEDs driver
LEDs are on all the time since boot, until there's driver to claim them.

Signed-off-by: Tomasz Maciej Nowak <tmn505@gmail.com>
2024-05-17 17:04:24 +03:00
Tomasz Maciej Nowak
a0c5efd3f7 tegra: drop console specifiers from kernel commad line
Because recent changes to procd, last "console" argument was used as
primary argument and causing no terminal to be spawned on serial
interface. So drop the hardcoded consoles in boot script, since dts has
already an alias specified, which lets procd decide where to spawn the
terminal.

Signed-off-by: Tomasz Maciej Nowak <tmn505@gmail.com>
2024-05-17 17:04:24 +03:00
Tomasz Maciej Nowak
82353d3e3d tegra: pad rootfs to recreate overlay after upgrade
The old overlay remained after upgrades and would cause failure on first
boot after upgrade, in which no new overlay could be created while old
one was unusable.

Signed-off-by: Tomasz Maciej Nowak <tmn505@gmail.com>
2024-05-17 17:04:24 +03:00
Paweł Owoc
9bdaebaff3 qualcommax: ipq807x: add support for Linksys MX8500
Hardware specification:
========
SoC: Qualcomm IPQ8072A
Flash: 512MB (Fidelix FMND4G08S3J-ID)
RAM: 1GB (2x Kingston DDR3L D2516ECMDXGJD)
Ethernet: 1x 10/100/1000/2500/5000Mbps (Marvell AQR114C)
Ethernet: 4x 10/100/1000Mbps (Qualcomm QCA8075)
WiFi1: 6GHz ax 4x4 (Qualcomm QCN9024 + Skyworks SKY85784-11) - channels 33-229
WiFi2: 5GHz ax 4x4 (Qualcomm QCN5054 + Skyworks SKY85755-11) - channels 36-177
WiFi3: 2.4GHz ax 4x4 (Qualcomm QCN5024 + Skyworks SKY8340-11)
IoT: Bluetooth 5, Zigbee and Thread (NXP K32W041)
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_mx8500-squashfs-factory.bin image.
More details can be found here: https://www.linksys.com/support-article?articleNum=47547
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_mx8500-squashfs-factory.bin kernel
and in case of 1:
- mtd -r -e alt_kernel -n write openwrt-qualcommax-ipq807x-linksys_mx8500-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_mx8500-squashfs-factory.bin
or in case of 1:
- flash_erase /dev/mtd23 0 0
- nandwrite -p /dev/mtd23 openwrt-qualcommax-ipq807x-linksys_mx8500-squashfs-factory.bin
After first boot install firmware on second partition:
- mtd -r -e kernel -n write openwrt-qualcommax-ipq807x-linksys_mx8500-squashfs-factory.bin kernel
or:
- mtd -r -e alt_kernel -n write openwrt-qualcommax-ipq807x-linksys_mx8500-squashfs-factory.bin alt_kernel

3. Installation from initramfs image using USB drive:
Put the initramfs image on the USB drive:
- dd bs=1M if=openwrt-qualcommax-ipq807x-linksys_mx8500-initramfs-uImage.itb of=/dev/sda
Stop u-boot and run:
- usb start && usbboot $loadaddr 0 && bootm $loadaddr
Write firmware to the flash from initramfs:
- mtd -e kernel -n write openwrt-qualcommax-ipq807x-linksys_mx8500-squashfs-factory.bin kernel
and:
- mtd -r -e alt_kernel -n write openwrt-qualcommax-ipq807x-linksys_mx8500-squashfs-factory.bin alt_kernel

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

5. USB recovery:
Put the initramfs image on the USB:
- dd bs=1M if=openwrt-qualcommax-ipq807x-linksys_mx8500-initramfs-uImage.itb of=/dev/sda
Set u-boot env:
- fw_setenv bootusb 'usb start && usbboot $loadaddr 0 && bootm $loadaddr'
- fw_setenv bootcmd 'run bootusb; if test $auto_recovery = no; then bootipq; elif test $boot_part = 1; then run bootpart1; else run bootpart2; fi'

AQR firmware:
========
1. Firmware loading:
To properly load the firmware and initialize AQR PHY, we must use the u-boot aq_load_fw function.
To do this, you need to modify u-boot env:
With USB recovery:
- fw_setenv bootcmd 'aq_load_fw; run bootusb; if test $auto_recovery = no; then bootipq; elif test $boot_part = 1; then run bootpart1; else run bootpart2; fi'
and without:
- fw_setenv bootcmd 'aq_load_fw; if test $auto_recovery = no; then bootipq; elif test $boot_part = 1; then run bootpart1; else run bootpart2; fi'

2. Firmware updating:
Newer firmware (AQR-G4_v5.6.5-AQR_WNC_SAQA-L2_GT_ID45287_VER24005.cld) is available in the latest OEM firmware.
To load this firmware via u-boot, we need to add the MBN header and update 0:ethphyfw partition.
For MBN header we can use script from this repository: https://github.com/testuser7/aqr_mbn_tool
- python aqr_mbn_tool.py AQR-G4_v5.6.5-AQR_WNC_SAQA-L2_GT_ID45287_VER24005.cld
To update partition we need to install kmod-mtd-rw package first:
- insmod mtd-rw.ko i_want_a_brick=1
- mtd -e /dev/mtd26 -n write aqr_fw.mbn /dev/mtd26

Signed-off-by: Paweł Owoc <frut3k7@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/14883
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-05-16 20:27:36 +02:00
Paweł Owoc
7f1c87ebde qualcommax: ipq807x: define common Linksys MX device
Define common Linksys MX device for MX4200v1/v2 and MX5300.

Signed-off-by: Paweł Owoc <frut3k7@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/14883
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-05-16 20:27:36 +02:00
Paweł Owoc
a7c068b935 generic: 6.6: add patch to support AQR114C PHY ID
Add support for AQR114C PHY ID.

Signed-off-by: Paweł Owoc <frut3k7@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/14883
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-05-16 20:27:36 +02:00
Paweł Owoc
b32a17e82d qualcommax: ipq807x: Remove unused gpio from QPIC pins
Remove gpio16 from the default NAND pinctrl configuration
as its unused and only needed for LCD.

Signed-off-by: Paweł Owoc <frut3k7@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/14883
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-05-16 20:27:36 +02:00
Robert Marko
96e402aef7 ipq806x: mr42/mr52: fix PCIe ports
All three PCIe ports are reported non working on Meraki MR42/MR52 boards
since kernel 6.1 with the issue of PCIe PHY link never coming up thus
no WLAN cards are available on the boards.

After debugging it seems that PCIe worked on 5.15 and older purely by
accident as device DTS was using /delete-property/ perst-gpios; in each
of the 3 PCIe nodes but there was no "perst-gpios" property in the SoC DTSI
as it was still using the older "perst-gpio" property so it was not getting
removed from the device DTS.

However, in kernel 6.1 commit ("ARM: dts: qcom-*: replace deprecated
perst-gpio with perst-gpios") updated all Qualcomm DTS-es to use the newer
"perst-gpios" and thus once ipq806x moved to 6.1 PCIe stopped working as
now that property was being dropped from the device DTS.

So, since the removal of PERST pins seems to have been wrong from the start
lets drop the property removal from MR42/MR52.

Fixes: #15408
Link: https://github.com/openwrt/openwrt/pull/15509
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-05-16 19:28:16 +02:00
Robert Marko
f12179fa15 generic: 6.6: remove kernel export stripping patch
Our kernel export stripping has been broken on 6.6 from the start since
upstream kernel really reworked stuff in ("kbuild: generate KSYMTAB entries
by modpost") and other commits as well.

So, until this is either fixed or reworked lets drop the patch as it doesnt
make sense to carry it knowing its broken and it can always be easily
restored.

Link: https://github.com/openwrt/openwrt/pull/15498
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-05-16 15:12:53 +02:00
Hauke Mehrtens
9c84d619fc ramips: Fix use mac-base for TP-Link TL-MR6400 v4 and v5
Use mac-base for mac-base TP-Link TL-MR6400 v4 and v5

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-05-16 13:11:08 +03:00
Hauke Mehrtens
ff3d0de095 ramips: Fix wmac dts definition for TP-Link TL-MR6400 v4 and v5
This code assumed that the mt7628an_tplink_8m.dtsi file defines
mediatek,mtd-eeprom for the wmac and sets status to okay.

The mediatek,mtd-eeprom definition was removed in commit e93f41adee
("ramips: convert MT7628 EEPROM to NVMEM format") but the dts for these
two devices was not adapted to include the eeprom position on its own.

The status = "okay" property was removed in 0a1d15642f ("ramips:
mt7628: use nvmem-layout"), but the property was not added to these dts
files.

Without this change wifi does not work for these devices.

Fixes: e93f41adee ("ramips: convert MT7628 EEPROM to NVMEM format")
Fixes: 0a1d15642f ("ramips: mt7628: use nvmem-layout")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-05-16 13:11:08 +03:00
Martin Schiller
cffd3ad8d7 lantiq: add patch to fix the reset gpio handling in the pci driver
Linux kernel commit 90c2d2eb7ab5 ("MIPS: pci: lantiq: switch to using
gpiod API") not only switched to the gpiod API, but also inverted /
changed the polarity of the GPIO.

According to the PCI specification, the RST# pin is an active-low
signal. However, most of the device trees that have been widely used for
a long time (mainly in the openWrt project) define this GPIO as
active-high and the old driver code inverted the signal internally.

Apparently there are actually boards where the reset gpio must be
operated inverted. For this reason, we cannot use the GPIOD_OUT_LOW/HIGH
flag for initialization. Instead, we must explicitly set the gpio to
value 1 in order to take into account any "GPIO_ACTIVE_LOW" flag that
may have been set.

In order to remain compatible with all these existing device trees, we
should therefore keep the logic as it was before the commit.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2024-05-15 08:54:58 +02:00
Martin Schiller
faaa54161e lantiq: dts: add missing irqs to mei node on AmazonSE, Danube and AR9
This adds to missing DyingGasp and USB OC interrupts to the mei node.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2024-05-15 08:54:58 +02:00
Martin Schiller
ece380cf28 lantiq: vmmc kernel-in-tree driver: use platform_get_irq to get irqs
This is required for linux-6.1 compatibility.

IRQs are not automatically mapped from HW to virtual IRQ numbers when
the IRQ domain is registered. This happens when the IRQ number is read
from the device tree based on the IRQ domain from the device tree now.
In kernel 5.15 it was done when the IRQ domain was registered.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2024-05-15 08:54:58 +02:00
Martin Schiller
83fccc42df lantiq: old gptu timer driver: use platform_get_irq to get irqs
This is required for linux-6.1 compatibility.

IRQs are not automatically mapped from HW to virtual IRQ numbers when
the IRQ domain is registered. This happens when the IRQ number is read
from the device tree based on the IRQ domain from the device tree now.
In kernel 5.15 it was done when the IRQ domain was registered.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2024-05-15 08:54:58 +02:00
Martin Schiller
db4bb19679 lantiq: ifxmips_pcie: use platform_get_irq to get irqs from dts
This is required for linux-6.1 compatibility.

IRQs are not automatically mapped from HW to virtual IRQ numbers when
the IRQ domain is registered. This happens when the IRQ number is read
from the device tree based on the IRQ domain from the device tree now.
In kernel 5.15 it was done when the IRQ domain was registered.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2024-05-15 08:54:58 +02:00
Martin Schiller
1825ea9098 lantiq: dts: vr9: add missing interrupts to pcie node
This adds the missing interrupts to the pcie node.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2024-05-15 08:54:58 +02:00
Martin Schiller
284f12bfa6 lantiq: ifxmips_pcie: use dev_err_probe
Use dev_err_probe() to get rid of the following warning which is
seen when the PCIe PHY has not been probed yet:
pcie-xrx200 1d900000.pcie: failed to get the PCIe PHY

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2024-05-15 08:54:58 +02:00
Hauke Mehrtens
783c3aace2 lantiq: Add some gswip patches
This backports some patches for the gswip switch driver.

I copied them from this repository:
https://github.com/xdarklight/linux/commits/lantiq-gswip-integration-20221022

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
[drop some patches which may break functionality at the moment]
Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2024-05-15 08:54:58 +02:00
Hauke Mehrtens
e79dacd962 lantiq: Fix bug in error handling of timer driver
If the reverted timer driver fails to allocate interrupts handle the
error better.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
[moved printk before the cleanup for-loop]
Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2024-05-15 08:54:58 +02:00
Hauke Mehrtens
a3659b158b lantiq: Refresh patches and configuration
Make all the patches apply and delete the ones already integrated into
upstream Linux kernel. This also refreshes some of the kernel
configurations.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
[refreshed for linux 6.1.89]
Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2024-05-15 08:54:58 +02:00
Martin Schiller
e692742be7 lantiq: set Linux 6.1 as testing kernel
Add KERNEL_TESTING_PATCHVER for Linux 6.1.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2024-05-15 08:54:58 +02:00
Martin Schiller
b704c537cf kernel/lantiq: Restore kernel files for v5.15
This is an automatically generated commit which aids following Kernel patch
history, as git will see the move and copy as a rename thus defeating the
purpose.

For the original discussion see:
https://lists.openwrt.org/pipermail/openwrt-devel/2023-October/041673.html

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2024-05-15 08:54:58 +02:00
Martin Schiller
2196815961 kernel/lantiq: Create kernel files for v6.1 (from v5.15)
This is an automatically generated commit.

When doing `git bisect`, consider `git bisect --skip`.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2024-05-15 08:54:58 +02:00
Hauke Mehrtens
494a10964c lantiq: Refresh kernel configuration
This refreshes the configuration for Linux kernel 5.15.

I first selected the xrx200 subtarget and then refreshed the target
kernel configuration using this command:
  make kernel_oldconfig CONFIG_TARGET=target
Then I selected one subtarget after the other and refreshed their
configuration using this command:
  make kernel_oldconfig CONFIG_TARGET=subtarget

I compared the kernel configuration used to compile the kernel from the
build directory for each subtarget before and after this task and it was
still the same.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
[refreshed config for linux 5.15.158]
Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2024-05-15 08:54:58 +02:00
Rodrigo Balerdi
0868268c9f
ipq806x: rt4230w-rev6: fix status reporting via the LEDs
There is a custom LED controller between the 3 SoC GPIO outputs and
the red and blue LEDs of the device. It implements a strange mapping
that includes fixed, flashing, and breathing modes.

The current DTS configuration causes OpenWrt to flash the LEDs over
the controller's own flashing, resulting in chaotic output in boot,
failsafe, and upgrade modes.

This change fixes the LEDs in the best way possible as long as each
OpenWrt running state is limited to be signaled by a single led.

Signed-off-by: Rodrigo Balerdi <lanchon@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/15440
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-05-14 12:22:59 +02:00
Christophe JAILLET
5ac8cf1eab
ag71xx: Slightly simplify 'ag71xx_rx_packets()'
There is no need to use 'list_for_each_entry_safe' here, as nothing is
removed from the list in the 'for' loop.
Use 'list_for_each_entry' instead, it is slightly less verbose.

Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Link: https://github.com/openwrt/openwrt/pull/15435
Link: https://github.com/openwrt/openwrt/pull/15435
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-05-14 12:21:02 +02:00
Mieczyslaw Nalewaj
1a544dc5ce
generic: 5.15, 6.1: use RTL_8221B_VB_CG_PHYID in Realtek PHY detection
Use the constant RTL_8221B_VB_CG_PHYID instead of a numeric value.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-05-13 20:27:25 +02:00
Mieczyslaw Nalewaj
76584c798a
generic: 6.6: fix realtek PHY detection patch
Fixes the issue of RTL8221B-VB-CG not being detected correctly.
Reverts changes from f6c27b2, leaving only the read_c45 test.

Fixed: #15093
Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-05-13 20:27:17 +02:00
Daniel Golle
fbf6f9da02 airoha: set KERNEL_TESTING_PATCHVER:=6.6
Lets give Linux 6.6 a try.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Link: https://github.com/openwrt/openwrt/pull/15416
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-05-12 12:52:16 +02:00
Daniel Golle
6961d5e9c1 kernel/airoha: refresh config-6.6
Refresh kernel config for Linux 6.6.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Link: https://github.com/openwrt/openwrt/pull/15416
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-05-12 12:52:16 +02:00
Daniel Golle
22efab92f5 kernel/airoha: refresh patch on top of Linux 6.6
Refresh the only remaining downstream patch.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Link: https://github.com/openwrt/openwrt/pull/15416
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-05-12 12:52:16 +02:00
Daniel Golle
577eaa58da kernel/airoha: Restore kernel files for v6.1
This is an automatically generated commit which aids following Kernel patch
history, as git will see the move and copy as a rename thus defeating the
purpose.

For the original discussion see:
https://lists.openwrt.org/pipermail/openwrt-devel/2023-October/041673.html

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Link: https://github.com/openwrt/openwrt/pull/15416
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-05-12 12:52:16 +02:00
Daniel Golle
8ca67645ce kernel/airoha: Create kernel files for v6.6 (from v6.1)
This is an automatically generated commit.

When doing `git bisect`, consider `git bisect --skip`.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Link: https://github.com/openwrt/openwrt/pull/15416
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-05-12 12:52:16 +02:00
Hauke Mehrtens
1fae75ebd9 kernel: bump 5.15 to 5.15.158
Removed because they are upstream:
   generic/backport-5.15/702-v5.19-01-arm64-dts-mediatek-mt7622-add-support-for-coherent-D.patch
   https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-5.15.y&id=506ac5538498717fce699feaddb2ed97ae1c3ca7

   generic/backport-5.15/702-v5.19-04-arm64-dts-mediatek-mt7622-introduce-nodes-for-Wirele.patch
   https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-5.15.y&id=2f83d3d2cc3c0df89f833cd8c09989187f0c3ce1

Manually adapted:
   generic/pending-5.15/680-NET-skip-GRO-for-foreign-MAC-addresses.patch

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-05-12 12:16:18 +02:00
Stefan Kalscheuer
4b30c2ff0f mvebu: switch to kernel 6.6
Update default kernel version to 6.6 and drop configs and patches for
kernel 6.1. We can also omit the conditional to include DTS dir.

Signed-off-by: Stefan Kalscheuer <stefan@stklcode.de>
Link: https://github.com/openwrt/openwrt/pull/15449
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-05-12 11:29:23 +02:00
Robert Marko
dc9220f748 ipq40xx: fixup remaining devices that dont use QCA807x PHY
Like AVM 1200 these devices also do not use QCA807x PHY at all and thus
they disables all of the individual PHY nodes, however this is not enough
anymore since the conversion to PHY package.

Now its now enough to disable the PHY-s in the package alone, but the PHY
package node itself must also be disabled.

Fixes: 1b931c33a2 ("ipq40xx: adapt to new Upstream QCA807x PHY driver")
Link: https://github.com/openwrt/openwrt/pull/15444
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-05-12 10:56:16 +02:00
INAGAKI Hiroshi
61e8728d86 ramips: add support for ELECOM WMC-S1267GS2
ELECOM WMC-S1267GS2 is a 2.4/5 GHz band 11ac (Wi-Fi 5) mesh extender,
based on MT7621A.

This device has almost the same hardware as WMC-M1267GST2.

Specification:

- SoC          : MediaTek MT7621A
- RAM          : DDR3 256 MiB (Nanya NT5CC128M16JR-EK)
- Flash        : SPI-NOR 32 MiB (Winbond W25Q256JVFIQ)
- WLAN         : 2.4/5 GHz 2T2R (MediaTek MT7615D)
- Ethernet     : 10/100/1000 Mbps x4
  - switch     : MediaTek MT7530 (SoC)
- LEDs/Keys    : 6x/6x
- UART         : through-hole on PCB ("J4")
  - arrangement: 3.3V, GND, TX, RX from tri-angle marking
  - settings   : 57600n8
- Power        : 12 VDC, 1 A

Flash instruction using factory image:

1. Boot WMC-S1267GS2 normally
2. Set IP address of the computer to 192.168.2.x
3. Access to "http://192.168.2.1/" and open firmware update page
   ("ファームウェア更新")
4. Select the OpenWrt factory image and click apply ("適用") button
5. Wait ~120 seconds to complete flashing

MAC addresses:

LAN    : 04:AB:18:xx:xx:9E (Factory, 0xFFF4 (hex))
2.4 GHz: 04:AB:18:xx:xx:9F
5 GHz  : 04:AB:18:xx:xx:A0 (Factory, 0x4 (hex))

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2024-05-11 19:33:28 +02:00
INAGAKI Hiroshi
927a77ecff ramips: add support for ELECOM WMC-M1267GST2
ELECOM WMC-M1267GST2 is a 2.4/5 GHz band 11ac (Wi-Fi 5) mesh router,
based on MT7621A.

Specification:

- SoC          : MediaTek MT7621A
- RAM          : DDR3 256 MiB (Nanya NT5CC128M16JR-EK)
- Flash        : SPI-NOR 32 MiB (Winbond W25Q256JVFIQ)
- WLAN         : 2.4/5 GHz 2T2R (MediaTek MT7615D)
- Ethernet     : 10/100/1000 Mbps x5
  - switch     : MediaTek MT7530 (SoC)
- LEDs/Keys    : 6x/6x
- UART         : through-hole on PCB ("J4")
  - arrangement: 3.3V, GND, TX, RX from tri-angle marking
  - settings   : 57600n8
- Power        : 12 VDC, 1 A

Flash instruction using factory image:

1. Boot WMC-M1267GST2 normally with "Router" mode
2. Access to "http://192.168.2.1/" and open firmware update page
   ("ファームウェア更新")
3. Select the OpenWrt factory image and click apply ("適用") button
4. Wait ~120 seconds to complete flashing

MAC addresses:

LAN    : 04:AB:18:xx:xx:61 (Factory, 0xFFF4 (hex))
WAN    : 04:AB:18:xx:xx:62 (Factory, 0xFFFA (hex))
2.4 GHz: 04:AB:18:xx:xx:63
5 GHz  : 04:AB:18:xx:xx:64 (Factory, 0x4 (hex))

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2024-05-11 19:33:28 +02:00
Hauke Mehrtens
84d0b0b925 kernel: bump 5.15 to 5.15.157
Removed because they are upstream:
   generic/backport-5.15/741-v6.9-01-netfilter-flowtable-validate-pppoe-header.patch
   https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-5.15.y&id=d06977b9a4109f8738bb276125eb6a0b772bc433

Removed because they are upstream:
   generic/backport-5.15/741-v6.9-02-netfilter-flowtable-incorrect-pppoe-tuple.patch
   https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-5.15.y&id=e719b52d0c56989b0f3475a03a6d64f182c85b56

Manual adapted the following patches:
   generic/pending-5.15/700-netfilter-nft_flow_offload-handle-netdevice-events-f.patch
   generic/pending-5.15/723-net-mt7531-ensure-all-MACs-are-powered-down-before-r.patch

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-05-11 18:30:30 +02:00
Hauke Mehrtens
1fbe41f489 kernel: bump 5.15 to 5.15.156
No manual changes needed.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-05-11 18:30:30 +02:00
Sheng Huang
985af21123 ramips: add support for JDCloud RE-CP-02
- Soc: MediaTek MT7621AT
- RAM: 512 MB (DDR3)
- Flash: 16 MB (SPI NOR)
- WiFi: MediaTek MT7905DAN, MediaTek MT7975DN
- Ethernet: 1 WAN, 3 LAN (Gigabit)
- Buttons: Reset, Joylink
- LEDs: (red, blue, green), routed to one indicator in the top of the
  device
- Power: DC 12V 1A tip positive
- 1 TF Card Slot

The pins for the serial console are already labeled on the board
J4(V, R, T, G). Serial settings: 3.3V, 115200

MAC addresses:

|         | MAC               | Algorithm |
| ------- | ----------------- | --------- |
| label   | dc:d8:xx:xx:xx:01 | label     |
| LAN     | dc:d8:xx:xx:xx:01 | label     |
| WAN     | dc:d8:xx:xx:xx:02 | label+1   |
| WLAN 2g | dc:d8:xx:xx:xx:03 | label+2   |
| WLAN 5g | de:d8:xx:xx:xx:04 | label+3   |

1. rename the
   openwrt-ramips-mt7621-jdcloud_re-cp-02-squashfs-sysupgrade.bin
   to JDCOS.bin

2. start a TFTP server from IP address 192.168.68.10 and serve the
   image named JDCOS.bin

3. connect your device to the LAN port

4. power up the router and press any key on the console to interrupt
   the boot process.

5. enter the following commands on the router console

   1. setenv bootcount 6

   2. saveenv

   3. reset

      > NOTE: wait for the restart, it will automatically fetch the
      > image named JDCOS.bin from the TFTP server and write it into
      > the flash. After the writing is completed, the router will be
      > automatically restarted.

Unable to recognize large-capacity TF card, see #14042. But the patch
https://github.com/openwrt/openwrt/issues/14042#issuecomment-1910769942
works

Co-Authored-By: Jianti Chen <clbcjt@outlook.com>
Signed-off-by: Sheng Huang <shenghuang147@gmail.com>
2024-05-11 17:24:10 +02:00
Leon M. Busch-George
20e4a18feb mediatek: filogic: add support for Cudy M3000 v1
Hardware:
  SoC:     MT7981b
  RAM:     256 MB
  Flash:   128 MB SPI NAND
  Ethernet:
    1x 2.5Gbps (rtl8221b)
    1x 1Gbps (integrated phy)
  WiFi:    2x2 MT7981
  Buttons: Reset, WPS
  LED:     1x multicolor

Solder on UART:
  - remove rubber ring on the bottom
  - remove screws
  - pull up the cylinder, maybe help by push on an ethernet socket with a screwdriver
  - remove the (3) screws holding the board in the frame
  - remove the board from the frame to get to the screws for the silver, flat heat shield
  - remove the (3) screws holding the heat shield
  - solder UART pins to the back of the board
    - make sure to have the pins point out on side with the black, finned heat spread
    - the markings for the pins are going to be below the silver heat shield
    - Vcc is not needed

If you don't intend on using the UART outside of the installation process, you might not
want to solder:

  - carefully scrape off the thin layer of epoxy on the holes (not the copper)
  - place your pin header with the UART attached in the holes
  - the pins, starting with the one closest to the socket:
    - Vcc (not required)
    - GND
    - RX
    - TX
  - either wedge the header or hold it with your fingers so that the pins stay in contact with the board

Installation (UART):
  - attach an Ethernet cable to the 1Gbps port (black) on the router
  - hold the reset button while powering the router
  - press CTRL-C or wait for the timeout to get to the U-Boot prompt
  - prepare a TFTP server on the network to supply ..-initramfs-kernel.bin
  - use 'tftpboot' in the U-Boot shell to pull the image
  - boot the image using 'bootm'
  - push the ..-sysupgrade to the router using your preferred method
  - perform the upgrade with 'sysupgrade -n'

There is a recovery mechanism that involves fetching a file called 'recovery.bin' but that is not understood yet.

Signed-off-by: Leon M. Busch-George <leon@georgemail.eu>
2024-05-11 17:18:51 +02:00
Kevin Abraham
1045bd4a04 uboot-envtools: ath79: remove env config for Senao Loader devices
uboot-envtools can automatically parse the 'u-boot,env' compatible string from the dts.

Signed-off-by: Kevin Abraham <kevin@westhousefarm.com>
2024-05-11 16:57:28 +02:00
Kevin Abraham
1dd036a659 ath79: add support for Senao Engenius ENS1750
FCC ID: A8J-EWS660AP

Engenius ENS1750 is an outdoor wireless access point with
2 gigabit ethernet ports, dual-band wireless,
internal antenna plates, and 802.3at PoE+

Engenius EWS660AP, ENS1750, and ENS1200 are "electrically identical,
different model names are for marketing purpose" according to docs
provided by Engenius to the FCC.

**Specification:**

  - QCA9558 SOC		2.4 GHz, 3x3
  - QCA9880 WLAN	mini PCIe card, 5 GHz, 3x3, 26dBm
  - AR8035-A PHY	RGMII GbE with PoE+ IN
  - AR8033 PHY		SGMII GbE with PoE+ OUT
  - 40 MHz clock
  - 16 MB FLASH		MX25L12845EMI-10G
  - 2x 64 MB RAM
  - UART at J1		populated, RX grounded
  - 6 internal antenna plates (5 dbi, omni-directional)
  - 5 LEDs, 1 button (power, eth0, eth1, 2G, 5G) (reset)

**MAC addresses:**

  Base MAC addressed labeled as "MAC"
  Only one Vendor MAC address in flash

  eth0 *:d4 MAC art 0x0
  eth1 *:d5 --- art 0x0 +1
  phy1 *:d6 --- art 0x0 +2
  phy0 *:d7 --- art 0x0 +3

**Serial Access:**

  the RX line on the board for UART is shorted to ground by resistor R176
  therefore it must be removed to use the console
  but it is not necessary to remove to view boot log

  optionally, R175 can be replaced with a solder bridge short

  the resistors R175 and R176 are next to the UART RX pin

**Installation:**

  2 ways to flash factory.bin from OEM:

  Method 1: Firmware upgrade page:

    OEM webpage at 192.168.1.1
    username and password "admin"
    Navigate to "Firmware Upgrade" page from left pane
    Click Browse and select the factory.bin image
    Upload and verify checksum
    Click Continue to confirm and wait 3 minutes

  Method 2: Serial to load Failsafe webpage:

    After connecting to serial console and rebooting...
    Interrupt uboot with any key pressed rapidly
    execute `run failsafe_boot` OR `bootm 0x9fd70000`
    wait a minute
    connect to ethernet and navigate to
    "192.168.1.1/index.htm"
    Select the factory.bin image and upload
    wait about 3 minutes

**Return to OEM:**

  If you have a serial cable, see Serial Failsafe instructions
  otherwise, uboot-env can be used to make uboot load the failsafe image

  ssh into openwrt and run
  `fw_setenv rootfs_checksum 0`
  reboot, wait 3 minutes
  connect to ethernet and navigate to 192.168.1.1/index.htm
  select OEM firmware image from Engenius and click upgrade

**TFTP recovery:**

  Requires serial console, reset button does nothing

  rename initramfs.bin to '0101A8C0.img'
  make available on TFTP server at 192.168.1.101
  power board, interrupt boot
  execute tftpboot and bootm 0x81000000

**Format of OEM firmware image:**

  The OEM software of ENS1750 is a heavily modified version
  of Openwrt Kamikaze. One of the many modifications
  is to the sysupgrade program. Image verification is performed
  simply by the successful ungzip and untar of the supplied file
  and name check and header verification of the resulting contents.
  To form a factory.bin that is accepted by OEM Openwrt build,
  the kernel and rootfs must have specific names...

    openwrt-ar71xx-generic-ens1750-uImage-lzma.bin
    openwrt-ar71xx-generic-ens1750-root.squashfs

  and begin with the respective headers (uImage, squashfs).
  Then the files must be tarballed and gzipped.
  The resulting binary is actually a tar.gz file in disguise.
  This can be verified by using binwalk on the OEM firmware images,
  ungzipping then untaring.

  Newer EnGenius software requires more checks but their script
  includes a way to skip them, otherwise the tar must include
  a text file with the version and md5sums in a deprecated format.

  The OEM upgrade script is at /etc/fwupgrade.sh.

  OKLI kernel loader is required because the OEM software
  expects the kernel to be no greater than 1536k
  and the factory.bin upgrade procedure would otherwise
  overwrite part of the kernel when writing rootfs.

Note on PLL-data cells:

  The default PLL register values will not work
  because of the external AR8035 switch between
  the SOC and the ethernet port.

  For QCA955x series, the PLL registers for eth0 and eth1
  can be see in the DTSI as 0x28 and 0x48 respectively.
  Therefore the PLL registers can be read from uboot
  for each link speed after attempting tftpboot
  or another network action using that link speed
  with `md 0x18050028 1` and `md 0x18050048 1`.

  The clock delay required for RGMII can be applied
  at the PHY side, using the at803x driver `phy-mode`.
  Therefore the PLL registers for GMAC0
  do not need the bits for delay on the MAC side.
  This is possible due to fixes in at803x driver
  since Linux 5.1 and 5.3

Tested-by: Kevin Abraham <kevin@westhousefarm.com>
Signed-off-by: Kevin Abraham <kevin@westhousefarm.com>
2024-05-11 16:57:28 +02:00
Daniel Golle
8113169cad mediatek: fix PWM fan on BPi-R4
Add additional PWM fan cooling step and enable fan on BPi-R4.

Suggested-by: Frank Wunderlich <frank-w@public-files.de>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-05-11 00:52:34 +01:00
Álvaro Fernández Rojas
72cdba7b1a kernel: add missing kernel 6.6 symbols
Add missing kernel 6.6 symbols for bcm27xx.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2024-05-10 21:02:24 +02:00
Kevin Jilissen
5a5c52085a realtek: Trap LLDP packets to the CPU
We should setup the registers for trapping LLDP packets to the CPU.
Currently, these packets are forwarded to all ports which is not desired
behaviour.

Signed-off-by: Kevin Jilissen <info@kevinjilissen.nl>
2024-05-10 16:03:51 +02:00
Kevin Jilissen
81ab9ef2d1 realtek: Change LLTP register to LLDP
These registers control the handling of Link Layer Discovery Protocol
(LLDP) packets. This seems to be a typo in the naming.

Signed-off-by: Kevin Jilissen <info@kevinjilissen.nl>
2024-05-10 16:03:51 +02:00
Eros Brigmann
803c00e9b8 ramips: add support for Wavlink WL-WN531G3
This device is similiar to the Wavlink WL-WN531A3.
Hardware
--------
SoC:   Mediatek MT7620A
RAM:   64MB
FLASH: 8MB NOR (GigaDevice GD25Q64CS)
ETH:
  - 2x 10/100/1000 Mbps Ethernet (RTL8211F)
  - 3x 10/100 Mbps Ethernet (integrated in SOC)
WIFI:
  - 2.4GHz: 1x (integrated in SOC) (2x2:2)
  - 5GHz:   1x MT7612E (2x2:2)
  - 4 external antennas
BTN:
  - 1x Reset button
  - 1x Touchlink button
  - 1x Turbo button
  - 1x Wps button
  - 1x ON/OFF switch
LEDS:
  - 1x Red led (system status)
  - 1x Blue led (system status)
  - 5x Blue leds (ethernet ports)
  - 1x Power led
  - 1x Wifi led
UART:
  - 57600-8-N-1
Everything works correctly.

Installation
------------
Flash the initramfs image in the OEM firmware interface
When Openwrt boots, flash the sysupgrade image otherwise you won't be
able to keep configuration between reboots.
In my case the whole device was locked and there was no way
to flash the image, except for flashing directly to the flash
via an spi-flasher. You need to put the sysupgrade image file at
the beginning of 0x60000.

Notes
-----
1) Router mac addresses:
   LAN XX:XX:XX:XX:XX:F0 (factory @ 0x28)
   WAN XX:XX:XX:XX:XX:F1 (factory @ 0x2e)
   WIFI 2G XX:XX:XX:XX:XX:F2 (factory @ 0x04)
   WIFI 5G XX:XX:XX:XX:XX:F3 (factory @ 0x8004)

   LABEL XX:XX:XX:XX:XX:F2

Signed-off-by: Eros Brigmann <erosbrigmann@gmail.com>
2024-05-10 00:05:25 +02:00
Shiji Yang
eb48dae81e ath79: enable 6.6 testing kernel
The ath79 target now supports the vanilla 6.6 kernel. Enjoy it!

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
2024-05-09 23:53:02 +02:00
Shiji Yang
26390b5361 ath79: skip reset control for syscon devices
Fix the issue of exclusive reset controller acquisition failure on
kernel 6.6.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
2024-05-09 23:53:02 +02:00
Shiji Yang
e938d68074 ath79: refresh 6.6 kernel config files
All kernel config files are refreshed by
`make kernel_oldconfig CONFIG_TARGET={subtarget_target,subtarget}`

"CONFIG_SQUASHFS_DECOMP_SINGLE=y" is manually selected as all ath79
SoCs are single core processors.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
2024-05-09 23:53:02 +02:00
Shiji Yang
872fe7e9f9 ath79: refresh 6.6 kernel patches
Some APIs have been changed. Porting them to the new kernel 6.6
version to fix the compile error.

Removed upstreamed:
	010-v6.4-gpio-ath79-Convert-to-immutable-irq_chip.patch[1]

Manually rebased:
	700-phy-add-ath79-usb-phys.patch
	721-phy-mdio-bitbang-prevent-rescheduling-during-command.patch. ref:[2]

[1] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-6.6.y&id=b11ce7e48121a02ceedec9f4dfcab4f2bee8f35f
[2] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-6.6.y&id=002dd3de097c778a74ae9e47e598bea6ad055af0

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
2024-05-09 23:53:02 +02:00
Shiji Yang
d123330aa9 ath79: restore kernel 6.1 config files and patches
Copy patches and kernel configs from kernel 6.6 to restore the
default 6.1 kernel support files.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
2024-05-09 23:53:02 +02:00
Shiji Yang
7d01a0b436 ath79: rename patches directory and kernel config from 6.1 to 6.6
This is preparation for 6.6 kernel support. Renaming files allows
us to better track their git history.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
2024-05-09 23:53:01 +02:00
Shiji Yang
e155e3bd09 ath79: add MikroTik suffix to the local GPIO latch driver
The upcoming 6.6 kernel will introduce a new upstream generic
"gpio-latch" driver. It will conflict with the downstream MikroTik
GPIO latch driver. Let's rename it to avoid any potential issues.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
2024-05-09 23:51:14 +02:00
Shiji Yang
24693ac7e5 ath79: fix build error for downstream gpio drivers
Initialize fwnode instead of the deprecated of_node.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
2024-05-09 23:51:14 +02:00
Luis Mita
63b8d98dd0 mediatek: add support for Cudy TR3000 v1
Hardware:
 - SoC: MediaTek MT7981B
 - CPU: 2x 1.3 GHz Cortex-A53
 - Flash: 128 MiB SPI NAND
 - RAM: 512 MiB
 - WLAN: 2.4 GHz, 5 GHz (MediaTek MT7976CN, 802.11ax)
 - Ethernet: 1x 10/100/1000/2500 Mbps RTL8221B WAN, 1x10/100/1000 Mbps MT7981 LAN
 - USB 3.0 port
 - Buttons: 1 Reset button, 1 slider button
 - LEDs: 1x Red, 1x White
 - Serial console: internal test points, 115200 8n1
 - Power: 5 VDC, 3 A

MAC addresses:
+---------+-------------------+-----------+
|         | MAC               | Algorithm |
+---------+-------------------+-----------+
| WAN     | 80:af:ca:xx:xx:x1 | label+1   |
| LAN     | 80:af:ca:xx:xx:x0 | label     |
| WLAN 2g | 80:af:ca:xx:xx:x0 | label     |
| WLAN 5g | 82:af:ca:xx:xx:x0 |           |
+---------+-------------------+-----------+

Installation:
The installation must be done via TFTP by disassembling the router. On other occasions Cudy has distributed intermediate firmware to make installation easier, and so I recommend checking the Wiki for this device if there is a more convenient solution than the one below.

To install using TFTP:
1. Connect to UART.
2. With the router off, press the RESET button. While the router is turning on, the button should continue to be pressed for at least 5 seconds.
3. A u-boot shell will automatically open.
4. Connect to LAN and set your IP to 192.168.1.88/24. Configure a TFTP server and an OpenWrt initramfs-kernel.bin firmware file.
5. Run these steps in u-boot using the name of your file.

setenv bootfile initramfs-kernel.bin
tftpboot
bootm

6. If you can reach LuCI or SSH now, just use the sysupgrade image with the 'Keep settings' option turned off.

Signed-off-by: Luis Mita <luis@luismita.com>
2024-05-09 23:32:32 +02:00
Alan Luck
30e8fd73ec ramips: Add support for D-Link DIR-2150-A1
Hardware Specification:
SoC: Mediatek MT7621DAT (MIPS1004Kc 880 MHz, dual core)
RAM: 128 MB
Storage: 128 MB NAND flash
Ethernet: 5x 10/100/1000 Mbps LAN1,LAN2,LAN3,LAN4 & WAN
Wireless: 2.4GHz: Mediatek MT7603EN up to 300Mbps (802.11b/g/n MIMO 2x2)
Wireless: 5GHz: Mediatek MT7615N up to 1733Mbps (802.11n/ac MU-MIMO 4x4)
LEDs: Power (white & amber), Internet (white & amber)
LEDs: 2.4G (White), 5Ghz (White)
Buttons: WPS, Reset

MAC Table
Label xx:xx:xx:xx:xx:EB
LAN xx:xx:xx:xx:xx:EB
2.4Ghz xx:xx:xx:xx:xx:EC
5Ghz xx:xx:xx:xx:xx:ED
WAN xx:xx:xx:xx:xx:EE

Flash instructions:
D-Link normal OEM firmware update page
1. upload OpenWRT factory.bin like any D-Link upgrade image

D-Link Recovery GUI:
1. Push and hold reset button (on the bottom of the device) until power led starts flashing (about 10 secs or so) while plugging in the power cable.
2. Give it ~30 seconds, to boot the recovery mode GUI
3. Connect your client computer to LAN1 of the device
4. Set your client IP address manually to 192.168.0.2 / 255.255.255.0
5. Call the recovery page for the device at http://192.168.0.1/
6. Use the provided emergency web GUI to upload the recovery.bin to the device

Firefox on Windows in a Private Window (incognito) works me
Internet Explorer mode in Microsoft Edge works for others
seems to not work in Linux or virtual machine on Linux for most
some see success using 'curl -v -i -F "firmware=@file.bin" 192.168.0.1'

Thanks to @frkca and @rodneyrod for testing and pushing for its creation

Signed-off-by: Alan Luck <luckyhome2008@gmail.com>
2024-05-09 22:28:23 +02:00
Mieczyslaw Nalewaj
474b108dfe ramips: use led, function/color syntax for some tp-link archer routers
Setting the LED name and abandoning the label and using the
function/color syntax for some TP-Link Archer series routers:
Archer C2 v1, Archer C20 v1, Archer C20i and Archer C50 v1

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-05-09 22:24:48 +02:00
Mieczyslaw Nalewaj
d646ea8a00 ramips: use function/color syntax for some dlink dir routers
Abandoning the label and using the function/color syntax for some dlink
dir series routers: dir-1960-a1, dir-2660-a1, dir-2640-a1, dir-3040-a1
and dir-3060-a1

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-05-09 22:24:31 +02:00
Mieczyslaw Nalewaj
8d7fa09181 ramips: rename include file to a more suitable name
Rename from mt7621_dlink_dir-xx60-a1.dtsi to mt7621_dlink_dir_nand_128m.dtsi
and associated group name when creating the mt7621.mk image

Co-authored-by: Alan Luck <luckyhome2008@gmail.com>
Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-05-09 22:21:39 +02:00
Mieczyslaw Nalewaj
9dae0ac0bc mediatek: correct address of MT753x switch IC
Continuation of commit 8b66f1a. Set the switch address on the MDIO bus to 31.
This is required for all boards currently working with the mt7530 DSA driver.

Fixes: #15419
Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-05-09 19:43:54 +02:00
Christian Marangi
9001014a24
generic: 6.6: backport patch adding support for rgmii-id in stmmac-ipq806x
Backport patch merged upstream for rgmii-id support in stmmac-ipq806x.

This is needed for some device that directly connets PHY to the gmac
port and require rgmii-id phy-modes.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-05-09 16:48:34 +02:00
Tianling Shen
0341a06f1f rockchip: switch to kernel 6.6
Switch to Linux kernel version 6.6 and drop configs, files and patches
for Linux 6.1.

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2024-05-09 10:43:37 +02:00
Robert Marko
592b6aabca ipq40xx: wpj419: use existing label for SPI node
WPJ419 is still manually defining SPI node, so lets
convert it to use the existing upstream labels for SPI node.

Link: https://github.com/openwrt/openwrt/pull/15415
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-05-09 10:11:44 +02:00
Robert Marko
c9743030e3 ipq40xx: wpj419: use existing label for pinctrl node
WPJ419 is still manually defining pinctrl node, so lets
convert it to use the existing upstream labels for pinctrl node.

Link: https://github.com/openwrt/openwrt/pull/15415
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-05-09 10:11:44 +02:00
Robert Marko
1f3fe4662e ipq40xx: wpj419: use existing label for PCIe node
WPJ419 is still manually defining PCIe node, so lets
convert it to use the existing upstream labels for PCIe node and while we
are here use the -gpios suffix instead.

Link: https://github.com/openwrt/openwrt/pull/15415
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-05-09 10:11:44 +02:00
Robert Marko
63c5d8bd72 ipq40xx: use existing labels for MDIO node
Some boards are still defining MDIO nodes under soc instead of using the
existing upstream labels to reference them so convert them.

Link: https://github.com/openwrt/openwrt/pull/15415
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-05-09 10:11:44 +02:00
Robert Marko
90f9bc799f ipq40xx: use existing labels for I2C nodes
Some boards are still defininig I2C nodes under soc instead of using the
existing upstream labels to reference them so convert them.

Link: https://github.com/openwrt/openwrt/pull/15415
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-05-09 10:11:44 +02:00
Robert Marko
625e912d75 ipq40xx: use existing labels for UART nodes
Some boards are still defininig UART nodes under soc instead of using the
existing upstream labels to reference them so convert them.

Link: https://github.com/openwrt/openwrt/pull/15415
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-05-09 10:11:43 +02:00
Robert Marko
7359362a2e ipq40xx: ncp-hg100-cellular: drop QPIC BAM node
This device does not have NAND enabled at all and NAND is the only consumer
of QPIC BAM DMA, so drop the node.

Link: https://github.com/openwrt/openwrt/pull/15415
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-05-09 10:11:43 +02:00
Robert Marko
b475e8f717 ipq40xx: wpj419: use existing labels for DMA nodes
WPJ419 is still manually defining dma nodes(And even some labels), so lets
convert it to use the existing upstream labels for DMA nodes.

Link: https://github.com/openwrt/openwrt/pull/15415
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-05-09 10:11:43 +02:00
Robert Marko
e54c9c156b ipq40xx: use existing labels for crypto node
Currently, a lot of boards are still not using the existing label to
reference the crypto node, so lets rectify this.

Link: https://github.com/openwrt/openwrt/pull/15415
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-05-09 10:11:43 +02:00
Robert Marko
22e96cc3ff ipq40xx: use existing labels for prng node
Currently, a lot of boards are still not using the existing label to
reference the prng node, so lets rectify this.

Link: https://github.com/openwrt/openwrt/pull/15415
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-05-09 10:11:43 +02:00
Robert Marko
2e94536fc8 ipq40xx: use existing labels for watchdog node
Currently, a lot of boards are still not using the existing label to
reference the watchdog node, so lets rectify this.

Link: https://github.com/openwrt/openwrt/pull/15415
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-05-09 10:11:43 +02:00
Daniel Golle
3f4347fce0 mediatek: mt7988a.dtsi: add interrupts to GE switch PHYs
The way to register the switch MDIO bus and PHYs on the bus in upstream
Linux is more strict and requires each PHY to explicitely state the
interrupt instead of assuming it in case the 'interrupts' property in DT
is missing.

Add missing interrupts for the PHYs of the build-in 4x1GE switch of the
MT7988 SoC.

Fixes: 4354b34f6f ("generic: 6.6: sync mt7530 DSA driver with upstream")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-05-08 22:19:26 +01:00
Magnus Lindström
54abf1cfc7 mediatek: ASUS TUF-AX6000: fix phy-handle numbering
To fix issue #15304
Correct br-lan ports 1-4 so that phy-handle matches reg nr not port label.

Fixes: eb13076e77 ("mediatek: fix DTS defining mt7530 switch phys but not referencing them")
Signed-off-by: Magnus Lindström <magnus1089@hotmail.com>
2024-05-08 22:19:09 +01:00
Linus Walleij
51e9aa6ace gemini: Bump to kernel v6.6
The Gemini works fine with kernel v6.6.

As per the example for ipq806x, drop support for anything
older than v6.6, there is no point in supporting it,
and the new DTS SoC directory just makes it hard to
maintain.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2024-05-08 16:57:32 +02:00
Daniel Golle
0d74b2a1e5 generic: 6.1, 6.6: replace Airoha EN8811H PHY driver with upstream
Backport driver from upcoming Linux 6.10 and put a pending fix on top
to make sure the netdev trigger offloading behaves as expected.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-05-08 01:54:32 +01:00
Mathew McBride
683355d0a6 armsr: armv8: enable serial console for Renesas platforms
Support for Renesas Arm families was added in commit 1ff4f4df23
("armsr: armv8: enable CONFIG_ARCH_RENESAS"), but this did not
enable the console/tty hardware for these SoCs, which is derived
from the SuperH family (CONFIG_SERIAL_SH_SCI).

Link: https://github.com/openwrt/openwrt/issues/15284
Signed-off-by: Mathew McBride <matt@traverse.com.au>
2024-05-07 13:01:20 +01:00
Mathew McBride
ffbc4c897f base-files: armsr: add script to migrate GPIO switches on Ten64 board
Due to a change in kernel 6.2, the GPIO numbers on certain
architectures (including arm64) have changed. This script
will update any defined GPIO switches to the new numbering.

See https://lists.openwrt.org/pipermail/openwrt-devel/2024-March/042448.html
for more information.

In the future, the GPIO switch mechanism will likely be
replaced with something using libgpiod.

Signed-off-by: Mathew McBride <matt@traverse.com.au>
2024-05-07 13:01:20 +01:00
Mathew McBride
5f609d8960 base-files: armsr: number Ten64 GPIOs according to kernel version
A change in kernel 6.2[1] caused the base numbers of GPIOs to
change significantly on some architectures like aarch64.

We have to number our GPIOs accordingly.
Ideally the board.d scripts should look through sysfs
to find the basenum (like cat "/sys/devices/platform/soc/2000000.i2c/
i2c-0/0-0076/gpio/gpiochip640/base"), but the problem is
that this occurs before modules are loaded, meaning I2C and other
runtime devices may be missing.

Signed-off-by: Mathew McBride <matt@traverse.com.au>

[1] https://lore.kernel.org/lkml/cover.1662116601.git.christophe.leroy@csgroup.eu/T/
2024-05-07 13:01:19 +01:00
Mathew McBride
c8927d7c01 armsr: armv8: add new fsl-enetc-core module for kernel 6.6
From kernel 6.3 onwards, the fsl-enetc driver has restructured
it's common code into a 'core' module[1].

Signed-off-by: Mathew McBride <matt@traverse.com.au>

[1] https://patchwork.kernel.org/project/netdevbpf/patch/20230119160431.295833-2-vladimir.oltean@nxp.com/
2024-05-07 13:01:19 +01:00
Mathew McBride
5744205eb6 armsr: add kernel 6.6 as a testing target
Add kernel 6.6 for testing.

Signed-off-by: Mathew McBride <matt@traverse.com.au>
2024-05-07 13:01:19 +01:00
Mathew McBride
fb29f702af kernel/armsr: add config stubs and changes needed for 6.6
Introduce new configuration options prompted by 6.6 (relative to 6.1).
The kernel arm64 defconfig is used as guide for 'core' options, while
video/camera/other media drivers are turned off by default.

Signed-off-by: Mathew McBride <matt@traverse.com.au>
2024-05-07 13:01:19 +01:00
Mathew McBride
587b8b8e32 kernel/armsr: Restore kernel files for v6.1
This is an automatically generated commit which aids following Kernel patch history,
as git will see the move and copy as a rename thus defeating the purpose.

See: https://lists.openwrt.org/pipermail/openwrt-devel/2023-October/041673.html
for the original discussion.

Signed-off-by: Mathew McBride <matt@traverse.com.au>
2024-05-07 13:01:19 +01:00
Mathew McBride
f125e38ced kernel/armsr: Add configuration files and patches for v6.6
Based on the 6.1 files, but without any 6.6 additions.

Signed-off-by: Mathew McBride <matt@traverse.com.au>
2024-05-07 13:01:19 +01:00
Mieczyslaw Nalewaj
bd6852185b
ipq806x: swap lan leds for Meraki MR52
LAN Leds on Meraki MR52 are wrong and needs to be swapped to actually
reflect real ports (lan1<->lan2).

Fixes: #15388
Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/15410
[ wrap commit to 80 columns and improve commit title ]
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-05-07 13:35:49 +02:00
Daniel Golle
50f7155d57 generic: 6.1, 6.6: move accepted patches to backport folders
Move two accepted patches for the mt7530 DSA driver from pending to
accepted.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-05-07 12:21:12 +01:00
Felix Fietkau
a7ae4ed0a3 kernel: fix tools build breakage on macos with x86
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2024-05-07 12:50:27 +02:00
Felix Fietkau
931b2bafa7 mediatek: fix mt7988a pmu interrupt dts property
Fixes profiling using perf

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2024-05-07 12:50:27 +02:00
Stijn Tintel
a9781a04a1 realtek: add RTL821X_CHIP_ID
According to the Realtek SDK code, the RTL8214FC, RTL8218B and RTL8218FB
all have the same chip ID 0x6276. Let's add a constant for it, as we're
using it in more than one location.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2024-05-07 12:27:33 +03:00
Stijn Tintel
1626b06683 realtek/rtl839x: respect phy-is-integrated property
Respect the phy-is-integrated property on ethernet-phy nodes.

There are RTL8393M switches where the PHYs at address 48 and 49 are
provided by an external RTL8214FC. Hardcoding them to use the internal
SerDes makes it impossible to use the ports connected to such an
external PHY. Respect the phy-is-integrated property on ethernet-phy
nodes as a first step to support such ports.

The potential impact for this should be limited to RTL8393 based
switches, and looking at the commit messages and device tree files of
the supported switches based on this SoC, the SFP and/or combo ports are
either not working (D-Link DGS-1210-52, Netgear GS750E, TP-Link
SG2452P/T1600G-52PS), use PHYs at a different address (Panasonic
SwitchM48EG PN28480K), or already have the phy-is-integrated property
set on the PHYs at address 48 and 49.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
Acked-by: Daniel Golle <daniel@makrotopia.org>
2024-05-07 12:27:30 +03:00
Martin Schiller
3dde786163 mediatek: bpi-r4: fix uci-default script for mac storage
There was a typo in commit 5709254690 ("mediatek: bpi-r4: store random
MAC addresses for the BPi-R4"). Let's fix it and also add support for
the bpi-r4-poe variant.

Fixes: 5709254690 ("mediatek: bpi-r4: store random MAC addresses for the BPi-R4")
Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2024-05-07 09:56:36 +01:00
Martin Schiller
738b427d35 mediatek: bpi-r4: add rootwait to bootargs
In commit cd4de3251c ("mediatek: wait for fitblk rootfs"), the linux
6.6 files and patches has been forgotton to be fixed.

Fixes: cd4de3251c ("mediatek: wait for fitblk rootfs")
Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2024-05-07 09:56:36 +01:00
Martin Schiller
8c1250cb39 mediatek: bpi-r2: add rootwait to bootargs
In commit cd4de3251c ("mediatek: wait for fitblk rootfs"), the linux
6.6 files and patches has been forgotton to be fixed.

Fixes: cd4de3251c ("mediatek: wait for fitblk rootfs")
Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2024-05-07 09:56:36 +01:00
Antonio Flores
ce4da3cf41 rockchip: add kernel 6.6 as testing kernel
Add kernel 6.6 as testing kernel

Signed-off-by: Antonio Flores <antflores627@gmail.com>
2024-05-07 00:17:12 +02:00
Antonio Flores
e18dda0159 kernel: add missing kernel 6.6 symbols
Add missing kernel 6.6 symbols

Signed-off-by: Antonio Flores <antflores627@gmail.com>
2024-05-07 00:17:12 +02:00
Antonio Flores
83edd39db6 rockchip: refresh config 6.6
Refresh config 6.6 (make kernel_oldconfig).

Signed-off-by: Antonio Flores <antflores627@gmail.com>
2024-05-07 00:17:12 +02:00
Antonio Flores
728db5ec05 rockchip: refresh 6.6 patches
Refresh kernel 6.6 patches.
Removed backpored patches.

Signed-off-by: Antonio Flores <antflores627@gmail.com>
2024-05-07 00:17:12 +02:00
Antonio Flores
dcd2367349 kernel/rockchip: Restore kernel files for v6.1
This is an automatically generated commit which aids following Kernel patch history,
as git will see the move and copy as a rename thus defeating the purpose.

See: https://lists.openwrt.org/pipermail/openwrt-devel/2023-October/041673.html
for the original discussion.

Signed-off-by: Antonio Flores <antflores627@gmail.com>
2024-05-07 00:17:12 +02:00
Antonio Flores
ddfd526140 kernel/rockchip: Create kernel files for v6.6 (from v6.1)
This is an automatically generated commit.

When doing `git bisect`, consider `git bisect --skip`.

Signed-off-by: Antonio Flores <antflores627@gmail.com>
2024-05-07 00:17:12 +02:00
Tony Ambardar
708e6b840e kselftests-bpf: update for kernel 6.6
Enable building multiple test programs and related kernel modules, with
initial support for the bpf_testmod.ko module required since kernel 6.4.
Explicitly disable LTO and clean up makefile variables and formatting.

Fix a musl-related build failure by adding a kernel 6.6 patch:

     360-selftests-bpf-portability-of-unprivileged-tests.patch

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2024-05-06 22:39:18 +02:00
Daniel Golle
0b0e3e22f8 mediatek: bpi-r4: add ethernet aliases to DT
Adding the aliases also for Linux 6.6 was forgotten and is required for
U-Boot to hand down persistent MAC addresses to Linux.

Fixes: 5709254690 ("mediatek: bpi-r4: store random MAC addresses for the BPi-R4")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-05-06 16:38:44 +01:00
Corey Minyard
226b15f885
ipq40xx: Enable the Engenius EAP1300
Now that DSA is enabled and the MAC addresses are set properly, we can
use it.

Signed-off-by: Corey Minyard <minyard@acm.org>
Link: https://github.com/openwrt/openwrt/pull/15358
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-05-06 12:45:53 +02:00
Corey Minyard
63b1326575
ipq40xx: Properly set MAC addresses for the EAP1300
The code that was there was just taking whatever was left in the
registers, which was just wrong.  Set the addresses using the value from
the u-boot environment, the same way the OEM firmware does.

Signed-off-by: Corey Minyard <minyard@acm.org>
Link: https://github.com/openwrt/openwrt/pull/15358
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-05-06 12:45:53 +02:00
Corey Minyard
e0567456bf
ipq40xx: convert Engenius EAP1300 to DSA
This commit converts the EAP1300 to DSA setup.

Signed-off-by: Corey Minyard <minyard@acm.org>
Link: https://github.com/openwrt/openwrt/pull/15358
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-05-06 12:45:52 +02:00
Corey Minyard
e51791963e
ipq40xx: Enable NVMEM_U_BOOT_ENV config
It's needed to get the MAC addresses for the Engenius EAP1300.

Signed-off-by: Corey Minyard <minyard@acm.org>
Link: https://github.com/openwrt/openwrt/pull/15358
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-05-06 12:45:51 +02:00
Christian Marangi
f3f3e2c5bb
ipq4019: fix even more wrong reference to USB node
Commit 6136ebabc5 ("ipq40xx: 6.6: fix DTS to use reference for usb
node") fixed only some of the reference to USB node but many others were
still using the old broken usb3/usb2. Fix every reference to those node
and move them on using the tag name.

Fixes: 6136ebabc5 ("ipq40xx: 6.6: fix DTS to use reference for usb node")
Link: https://github.com/openwrt/openwrt/pull/15392
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-05-06 12:40:24 +02:00
Rany Hany
8607372b41 mediatek: fix broken PCIe caused by update to 6.6.30
The patch "710-pci-pcie-mediatek-add-support-for-coherent-DMA.patch"
makes use of "syscon_regmap_lookup_by_phandle" which requires that
"syscon" be in the compatible list.

Without this patch, PCIe probe will fail with the following error:

[    1.287467] mtk-pcie 1a143000.pcie: host bridge /pcie@1a143000 ranges:
[    1.294019] mtk-pcie 1a143000.pcie: Parsing ranges property...
[    1.299901] mtk-pcie 1a143000.pcie:      MEM 0x0020000000..0x0027ffffff -> 0x0020000000
[    1.307954] mtk-pcie 1a143000.pcie: missing hifsys node
[    1.313185] mtk-pcie: probe of 1a143000.pcie failed with error -22

Fixes: 4c6e9a9943 ("kernel: bump 6.6 to 6.6.30")
Signed-off-by: Rany Hany <rany_hany@riseup.net>
2024-05-06 11:05:03 +02:00
Martin Schiller
fa804f7d0e mediatek: bpi-r4: add support for 2.5GE PoE variant
This adds support for the bpi-r4 variant with internal 2.5G PHY and
additional ethernet port instead of second sfp.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2024-05-06 09:12:05 +02:00
Martin Schiller
14955dcb7e mediatek: bpi-r4: dts: move common parts to dtsi file
Move the common parts of the mt7988a-bananapi-bpi-r4.dts to a dtsi file.
This is done to prepare support for the 2.5G Ethernet Variant.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2024-05-06 09:12:05 +02:00
John Audia
485afd4b11 x86: generic: config-6.6: add/remove default syms
Add new default and remove deprecated symbol introduced by 6.6.30[1]

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

Signed-off-by: John Audia <therealgraysky@proton.me>
2024-05-05 21:22:31 +02:00
John Audia
4c6e9a9943 kernel: bump 6.6 to 6.6.30
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.30

Removed upstreamed:
	ipq806x/patches-6.6/130-mtd-rawnand-qcom-Fix-broken-misc_cmd_type-in-exec_op.patch[1]

Manually rebased:
	generic/pending-6.6/760-net-core-add-optional-threading-for-backlog-processi.patch
	mediatek/patches-6.6/941-arm64-dts-mt7986-move-cpuboot-in-a-dedicated-node.patch

All other patches automatically rebased.

1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.30&id=87fc30db0a2bb300de289dae7c5579cc27a3cbbd

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

Signed-off-by: John Audia <therealgraysky@proton.me>
2024-05-05 21:22:31 +02:00
Felix Fietkau
ccb2390d4f kernel: fix corrupted ethernet header on bridge multicast-to-unicast
Fixes: 45a8e962a5 ("kernel: fix crash with multicast-to-unicast and fraglist GRO")
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2024-05-05 20:49:27 +02:00
Robert Marko
d1504a1e76 ath79: refresh patches
CI is telling us that we need to refresh the patches, so lets do so.

Link: https://github.com/openwrt/openwrt/pull/15382
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-05-05 11:27:18 +02:00
Rodrigo Balerdi
6dc751815b ipq40xx: merge DTS for Linksys WHW03 V1 and V2
No changes other than the merging itself are intended in this commit.

Signed-off-by: Rodrigo Balerdi <lanchon@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/15345
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-05-05 10:33:13 +02:00
Rodrigo Balerdi
5ac0615b7e ipq40xx: clean up Linksys WHW03 V2 DTS
Apply stylistic changes to facilitate DTS merging with WHW03 V1.

Signed-off-by: Rodrigo Balerdi <lanchon@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/15345
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-05-05 10:33:13 +02:00
Rodrigo Balerdi
c904875562 ipq40xx: add support for Linksys WHW03 V1
Hardware:
=========
SOC:             Qualcomm IPQ4019
WiFi 1:          QCA4019 IEEE 802.11b/g/n
WiFi 2:          QCA4019 IEEE 802.11a/n/ac
WiFi 3:          QCA9886 IEEE 802.11a/n/ac
Bluetooth:       Qualcomm CSR8510 (A10)
Zigbee:          Silicon Labs EM3581 NCP + Skyworks SE2432L
Ethernet:        Qualcomm Atheros QCA8072 (2-port)
Flash:           Samsung KLM4G1FEPD (4GB eMMC)
RAM (NAND):      512MB
LED Controller:  NXP PCA9633 (I2C)
Buttons:         Single reset button (GPIO).

Ethernet:
=========
The device has 2 ethernet ports, configured as follows by default:
- left port: WAN
- right port: LAN

Wifi:
=====
The Wifi radios are turned off by default. To configure the router,
you will need to connect your computer to the LAN port of the device.

Bluetooth and Zigbee:
=====================
Configuration included but not tested.

Storage:
========
For compatibility with stock firmware, all of OpenWrt runs in a 136 MiB
eMMC partition (of which there are two copies, see below). You can also
use partition /dev/mmcblk0p19 "syscfg" (3.4 GiB) any way you see fit.
During very limited tests, stock firmware did not mount this partition.
However, backing up its stock content before use is recommended anyway.

Firmware:
=========
The device uses a dual firmware mechanism: it automatically reverts to
the previous firmware after 3 failed boot attempts.

You can switch to the inactive firmware copy by changing the "boot_part"
U-Boot environment variable. You can also do it by turning on the device
for a couple of seconds and then back off, 3 times in a row.

Installation:
=============
OpenWrt's "factory" image can be installed via the stock web UI:
1. Login to the UI. (The default password is printed on the label.)
2. Enter support mode by clicking on the "CA" link at the bottom.
3. Click "Connectivity", "Choose file", "Start", and ignore warnings.

This port is based on work done by flipy (https://github.com/flipy).

Signed-off-by: Rodrigo Balerdi <lanchon@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/15345
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-05-05 10:33:13 +02:00
Antonio Flores
4ebcc5375a rockchip: add Bananapi-R2 Pro board support
Hardware spec:

- Rockchip RK3568 Quad-core ARM Cortex-A55 CPU 2GHz
- GPU Mali-G52 1-Core-2EE OpenGL ES3.2 Vu1kn 1.1 OpenCL 2.0
- Memory2G DDR3 SDRAM (option 4G)
- Storage Onboard 16GB eMMC Flash, Micro SD-Card slot, SATA 3.0 Port,SPI flash
- Network 5 x 10/100/1000 Mbit/s Ethernet MT7531
- Display 1 HDMI port, 2 DSI interface(1 DSI can change to LVDS by software)
- Camera 1 CSI camera interface
- Audio Output HDMI & I2S & Speaker & Headphone
- USB port USB 3.0 PORT (x2), micro USB OTG (x1)
- PCIE 1 mini pcie interface & 1 M.2 key-e interface
- Remote IR Receiver (x1)
- GPIO 40 Pin Header : GPIO (x28) and Power (+5V, +3.3V and GND).
- Switches Reset button, Power button, U-boot button
- LED Power Status
- Power Source 12 volt 2A via DC Power

Installation:

Uncompress the OpenWrt sysupgrade and write image to the SD card using dd (dd if=*.img of=/*)
Boot from the SD card
1-hold down the MaskRom button
2-Connect DC power
3-Wait 5 seconds, release the button.

eMMC Installation:

1-Uncompress the OpenWrt sysupgrade image
2-fash to eMMC
dd if=openwrt-rockchip-armv8-sinovoip_bpi-r2-pro-squashfs-sysupgrade.img of=/dev/mmcblk1
sync
3-remove SD card
reboot

Signed-off-by: Antonio Flores <antflores627@gmail.com>
2024-05-05 00:46:48 +02:00
Antonio Flores
298e11e43d rockchip: enable MT7531 and RTC drivers
This patch enable MT7531 switch and RTC drivers for BPI-R2 Pro.

Signed-off-by: Antonio Flores <antflores627@gmail.com>
2024-05-05 00:46:48 +02:00
Daniel Golle
d9d7286279 rockchip: add driver for hardware RNG
Rockchip SoCs used to have a random number generator as part of their
crypto device, and support for it has to be added to the corresponding
driver.

Newer Rockchip SoCs like the RK3568 have an independent True Random
Number Generator device. Import pending patchset which adds a driver for
it, include it in Kconfig and enable it in the device tree.

Doing so significantly reduces the time needed to boot devices based on
those SoCs, from about 27 seconds until Ethernet is up and running to
less than 13 seconds with a minimal snapshot image.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-05-04 13:59:48 +01:00
Weijie Gao
7fcb82665e loongarch64: new target
Add target for Loongson LoongArch64-based boards.

LoongArch is a new RISC ISA developed by Loongson. It's a bit like
MIPS or RISC-V. LoongArch includes both 32-bit and 64-bit versions
(LoongArch32/LoongArch64).

Loongson 3A5000 and 3A6000 are the two existing CPUs of LoongArch64
and is used for PC products. It's BIOS supports ACPI and UEFI-only
boot. These CPUs supports SMP and SMT.

At present only LoongArch64 is supported by linux kernel.

Toolchain requirement:
binutils >= 2.40
gcc >= 13.1

For details, please check the following links:
https://lwn.net/Articles/861951/
https://loongson.github.io/LoongArch-Documentation/README-EN.html

Signed-off-by: Weijie Gao <hackpascal@gmail.com>
2024-05-04 14:14:16 +08:00
Daniel Golle
6bb2551343 Revert "mediatek: backport mt7622 dts fix for mt7531 switch id to 6.1"
This reverts commit 3fe239fcf8.
Now that we switched to Linux 6.6 this is no longer needed, and resulted
in a left-over file because it's removal was not included in the commit
removing all the other files intended for Linux 6.1.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-05-04 00:15:57 +01:00
Zoltan HERPAI
3f7d8e20cd sunxi: add support for Lichee Pi Zero Dock (V3s) board
CPU:     Allwinner V3s single-core Cortex-A7 @ 1.2GHz
Memory:  64Mb DDR2 integrated into SoC package
Storage: 1x SDcard on board, 1x SDcard on dock
Network: 10/100M ethernet
Other:   4x buttons via LRADC, CSI

Flashing instructions:
  Standard sunxi SD card installation procedure - copy image to SD card,
  insert into SD card slot on the device and boot.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2024-05-04 00:41:02 +02:00
Mieczyslaw Nalewaj
263fde5ab8 ramips: remove unnecessary macros for previous kernel versions
Remove unnecessary 'if' macros for previous kernel versions.
After removing kernel 6.1 the kernel is always >= 6.6 so the conditions
are unnecessary.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
[removed some more and also no longer include version.h]
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-05-03 23:02:00 +01:00
Daniel Golle
2967e24d02 ramips: switch to Linux 6.6
Switch to Linux kernel version 6.6 and drop configs, files and patches
for Linux 6.1.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-05-03 21:36:42 +01:00
Daniel Golle
2201d55257 mediatek: remove macros for previous kernel versions
Remove unnecessary 'if' macros for previous kernel versions.
After removing kernel 6.1 the kernel is always >= 6.6 so the conditions
are unnecessary.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-05-03 21:36:42 +01:00
Daniel Golle
6257ea018a mediatek: switch to Linux 6.6
Switch to Linux kernel version 6.6 and drop configs, files and patches
for Linux 6.1.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-05-03 21:32:30 +01:00
Daniel Golle
fb2475e6bd generic: 6.6: fix and simplify blkdevparts= cmdline parsing
Import pending patch to fix the cmdline parsing of the "blkdevparts="
parameter which has been broken somewhen between Linux 6.1 and Linux 6.6.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-05-03 21:32:30 +01:00
Felix Fietkau
a5a941a997 kernel: add missing check for TCP GRO
Need to check if the skb data buffer is linear up to (and including) the TCP
header.

Fixes: https://github.com/openwrt/openwrt/issues/15359
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2024-05-03 18:45:46 +02:00
Felix Fietkau
2f5398588a kernel: backport upstream GRO fixes
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2024-05-03 18:45:46 +02:00
Felix Fietkau
3fe239fcf8 mediatek: backport mt7622 dts fix for mt7531 switch id to 6.1
Fixes: ac8bfe316b ("generic: 6.1, 6.6: mt7530: import accepted patches")
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2024-05-03 18:45:46 +02:00
Zoltan HERPAI
af87e5e9c1 sunxi: drop 6.1 support
Now that 6.6 is the default, remove the 6.1 config and the hack that
was required for the arm32 DTS dir change.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2024-05-03 14:53:45 +02:00
Zoltan HERPAI
e8c7b8a388 sunxi: switch default to 6.6
Switch the default kernel to 6.6.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2024-05-03 14:53:44 +02:00
Robert Marko
ecb3859cc9 ipq40xx: fritzrepeater-1200: fix MDIO and PHY probing
AVM FRITZ!Repeater 1200 does not use QCA807x PHY at all and thus it
disables all of the individual PHY nodes, however this is not enough
anymore since the conversion to PHY package.

Now its now enough to disable the PHY-s in the package alone, but the PHY
package node itself must also be disabled.

Fixes: 1b931c33a2 ("ipq40xx: adapt to new Upstream QCA807x PHY driver")
Fixes: #15355
Link: https://github.com/openwrt/openwrt/pull/15365
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-05-02 22:09:17 +02:00
Linus Walleij
219018185e bmips: Build U-Boot into the XG6846 target
It appears that the CFE boot loader found in the XG6846
cannot load kernels over a certain size, and the old
relocate hack is not working.

What to do? We can build a small U-Boot into the image,
make CFE boot that, place the kernel immediately after
U-Boot, and use U-Boot to boot the system instead.

The compiled u-boot.bin becomes around ~300KB and with
LZMA compression it will swiftly fit into 128KB, so
we use two 64KB erase blocks right after the CFE to
store an imagetag:ed U-Boot.

Reviewed-by: Paul Donald <newtwen+github@gmail.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2024-05-01 21:32:23 +02:00
Linus Walleij
212da4dd48 bmips: Add Inteno XG6846 target
This adds a device tree and build options for the XG6846
switch/router to the BMIPS target.

Hardware:
 - SoC: Broadcom BCM6328
 - CPU: BMIPS4350 V7.5
 - RAM: 64 MB DDR
 - NOR Flash: 16 MB parallel (CFE and OS)
 - Ethernet LAN: 4x 1Gbit
 - Ethernet WAN: 2x 1Gbit, fiber and TP
 - Buttons: reset
 - LEDs: 7 or 8, power and USB LEDs are GPIO-based, the
   LAN LEDs are controlled by the Marvell DSA Switch.
 - USB: on some versions
 - UART: yes

The device ODM (original device manufacturer) is XAVi
http://www.xavi.com.tw/

It is possible to boot the initramfs version
openwrt-bmips-bcm6328-inteno_xg6846-initramfs.elf from
CFE by interrupting the boot on the UART console and downloading
it from a TFTP server e.g.:
CFE> r 192.168.1.2:openwrt-bmips-bcm6328-inteno_xg6846-initramfs.elf

Installation to target flash is not possible using CFE because
the image becomes too big for the CFE version found in these
devices. A separate U-Boot two-stage solution exists for
actually booting the device.

This device is called a "managed ethernet switch" by the vendor
and "media converter" or "fiber modem" by some of the ISPs
using it: the main purpose is to convert fiber connections to
ethernet, most devices just act as switches bridging the
fiber SFP to ethernet TP.

The device has a Marvell MV88E6352 DSA switch managed by
a BCM6328 BMIPS SoC.

This port makes it possible to use the XG6846 to grab an IP
number from the fiber connection and use all four LAN
connections out, turning it into a proper router.

This support is based mostly on the observations by the people on
the forum thread "Help with Inteno XG6846" where users NPeca75,
mrhaav, systemcrash and csom helped out to reverse engineer the
device. Then I made it work on the BMIPS target, figured out
the two-level switch hierarchy and settings.

Link: https://forum.openwrt.org/t/help-with-inteno-xg6846/68276/14
Signed-off-by: Paul Donald <newtwen+github@gmail.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2024-05-01 21:30:26 +02:00
Linus Walleij
79a483843c bmips: bcm6328: Compile in uImage splitter
Since we split the Inteno XG6846 "firmware" partition with the
uImage MTD splitter, we need to compile in support for this
splitting method into the BCM6328.

Reviewed-by: Paul Donald <newtwen+github@gmail.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2024-05-01 21:30:16 +02:00
Elbert Mai
6a05d849e1 bcm27xx: correct cmdline.txt consoles for procd
Commit [ca8c30208d5e][1] updates procd to handle muliple "console=" on the
kernel command line. This affects Raspberry Pi builds because cmdline.txt
specifies a UART console and a virtual console on HDMI, in that order.

When procd finds multiple consoles on the command line, it attempts to
open /dev/console. Linux uses the [last console][2] for /dev/console, so
procd opens the virtual console on Raspberry Pi. This completely disables
the UART console and causes [strange behavior][3] on the virtual console.
Prior to ca8c30208d5e, procd would always open the first console, which is
the UART console.

The simplest fix without reverting ca8c30208d5e is to swap the order of
console options in cmdline.txt. By putting the UART console last, procd
handles the serial console correctly as before.

[1]: https://git.openwrt.org/?p=project/procd.git;a=commit;h=ca8c30208d5e1aaa2c0e3f732c4c9944735e9850
[2]: https://www.kernel.org/doc/html/latest/admin-guide/serial-console.html
[3]: https://forum.openwrt.org/t/rasberry-pi-4-model-b-keyboards-gone-wild/195594

Signed-off-by: Elbert Mai <code@elbertmai.com>
2024-05-01 20:22:42 +02:00
Arınç ÜNAL
3ea6125c50 ramips: mt7621-dts: describe switch PHYs and adjust PHY muxing
Currently, the MT7530 DSA subdriver configures the MT7530 switch to provide
direct access to switch PHYs, meaning, the switch PHYs listen on the MDIO
bus the switch listens on. The PHY muxing feature makes use of this.

This is problematic as the PHY may be attached before the switch is
initialised, in which case, the PHY will fail to be attached.

Since commit 91374ba537bd ("net: dsa: mt7530: support OF-based registration
of switch MDIO bus") on mainline Linux, we can describe the switch PHYs on
the MDIO bus of the switch on the device tree.

When the PHY is described this way, the switch will be initialised first,
then the switch MDIO bus will be registered. Only after these steps, the
PHY will be attached.

Describe the switch PHYs on mt7621.dtsi and remove defining the switch PHY
on the SoC's mdio bus node. When the PHY muxing is in use, the interrupts
for the muxed PHY won't work, therefore delete the "interrupts" property on
the devices where the PHY muxing feature is in use.

Signed-off-by: Arınç ÜNAL <arinc.unal@arinc9.com>
2024-05-01 13:50:54 +01:00
Arınç ÜNAL
6221316711 generic: 6.1, 6.6: mt7530: import pending PHY muxing detection patch
net: dsa: mt7530: detect PHY muxing when PHY is defined on switch MDIO bus

Signed-off-by: Arınç ÜNAL <arinc.unal@arinc9.com>
2024-05-01 13:50:54 +01:00
Arınç ÜNAL
7c9cd43ea2 ramips: mt7621-dts: remove incorrect ethphy4 node for WAVLINK WL-WN573HX1
The ethernet-phy@4 node doesn't exist for WAVLINK WL-WN573HX1. Remove it
and the duplicate gmac0 node.

Signed-off-by: Arınç ÜNAL <arinc.unal@arinc9.com>
2024-05-01 13:50:54 +01:00
Arınç ÜNAL
007414aa70 ramips: mt7621-dts: do not modify ethernet node for MeiG SLT866
Currently, the pinctrl-0 property on the ethernet node is modified to
exclude the rgmii1 and rgmii2 pin groups to be claimed with rgmii1 and
rgmii2 functions, respectively. Remove the modification of this property as
we need these pin groups to be claimed with the said functions for this
device.

Signed-off-by: Arınç ÜNAL <arinc.unal@arinc9.com>
2024-05-01 13:50:54 +01:00
Nick Hainke
d06bcbe5bf zynq: 5.15: remove files
Remove files related to the old 5.15 kernel version as they are no
longer required.

Signed-off-by: Nick Hainke <vincent@systemli.org>
2024-05-01 10:26:41 +02:00
Nick Hainke
ea72316426 zynq: set default kernel version to 6.1
Set default kernel version to 6.1, facilitating simpler testing across
a broader user base.

Signed-off-by: Nick Hainke <vincent@systemli.org>
2024-05-01 10:24:49 +02:00
Shiji Yang
9e86e0b33b kernel: bump 6.1 to 6.1.89
Changelogs:
https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.1.67
https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.1.68
https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.1.69

Upstreamed patches:
target/linux/generic/backport-6.1/740-v6.9-01-netfilter-flowtable-validate-pppoe-header.patch [1]
target/linux/generic/backport-6.1/740-v6.9-02-netfilter-flowtable-incorrect-pppoe-tuple.patch [2]
target/linux/generic/backport-6.1/790-48-STABLE-net-dsa-mt7530-trap-link-local-frames-regardless-of-.patch [3]
target/linux/generic/backport-6.1/790-50-v6.10-net-dsa-mt7530-fix-mirroring-frames-received-on-loca.patch [4]
target/linux/generic/backport-6.1/790-16-v6.4-net-dsa-mt7530-set-all-CPU-ports-in-MT7531_CPU_PMAP.patch [5]
target/linux/generic/backport-6.1/790-46-v6.9-net-dsa-mt7530-fix-improper-frames-on-all-25MHz-and-.patch [6]
target/linux/generic/backport-6.1/790-47-v6.10-net-dsa-mt7530-fix-enabling-EEE-on-MT7531-switch-on-.patch [7]
target/linux/mediatek/patches-6.1/220-v6.3-clk-mediatek-clk-gate-Propagate-struct-device-with-m.patch [8]
target/linux/mediatek/patches-6.1/222-v6.3-clk-mediatek-clk-mtk-Propagate-struct-device-for-com.patch [9]
target/linux/mediatek/patches-6.1/223-v6.3-clk-mediatek-clk-mux-Propagate-struct-device-for-mtk.patch [10]
target/linux/mediatek/patches-6.1/226-v6.3-clk-mediatek-clk-mtk-Extend-mtk_clk_simple_probe.patch [11]

Symbol changes:
MITIGATION_SPECTRE_BHI (new) [12]
SPECTRE_BHI_{ON,OFF} (deprecated) [12]

References:
[1] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.1.89&id=8bf7c76a2a207ca2b4cfda0a279192adf27678d7
[2] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.1.89&id=f1c3c61701a0b12f4906152c1626a5de580ea3d2
[3] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.1.89&id=19643bf8c9b5bb5eea5163bf2f6a3eee6fb5b99b
[4] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.1.89&id=e86c9db58eba290e858e2bb80efcde9e3973a5ef
[5] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.1.89&id=013c787d231188a6408e2991150d3c9bf9a2aa0b
[6] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.1.89&id=41a004ffba9b1fd8a5a7128ebd0dfa3ed39c3316
[7] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.1.89&id=7d51db455ca03e5270cc585a75a674abd063fa6c
[8] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.1.89&id=082b831488a41257b7ac7ffa1d80a0b60d98394d
[9] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.1.89&id=6f5f72a684a2823f21efbfd20c7e4b528c44a781
[10] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.1.89&id=a4fe8813a7868ba5867e42e60de7a2b8baac30ff
[11] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.1.89&id=c1d87d56af063c87961511ee25f6b07a5676d27d
[12] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.1.89&id=d844df110084ef8bd950a52194865f3f63b561ca
Signed-off-by: Shiji Yang <yangshiji66@qq.com>
2024-04-30 20:18:15 +02:00
Shiji Yang
dcdcb9228b generic: MIPS64: fix detect_memory_region() compilation error
1. Enable this feature only for 32-bit CPUs as MIPS64 can not
   access the full range unmapped uncached memory.

2. Backport this fix to the 6.1 old LTS kernel.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
2024-04-30 19:34:02 +02:00
Isaev Ruslan
be37ab6e51 qualcommax: ipq807x: uboot-envtools: yuncore ax880
There was no config in the uboot-envtools package, so there is no
generated /etc/fw_env.config for the fw_printenv and fw_setenv utils.
Since uboot-envtools 2024.01, there is a way to make these utils work
without /etc/fw_env.config if the DT has an env partition with the prop.:

compatible = "u-boot,env";

So, this commit adds the prop. above to the appsblenv:0 partition
in the yuncore ax880 DTS file.

Signed-off-by: Isaev Ruslan <legale.legale@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/15305
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-04-30 13:51:15 +02:00
Ryan Salsbury
47da1786e9 ipq40xx: fix I2C pin config on Aruba AP-303H
Turn on SoC pull-ups on I2C pins, since there are no discrete pull-up
resistors on the bus.

Increase clock to 400 kHz. Both chips on the bus support 400 kHz. I
tested the ISL28022 at 4,000 reads/sec and didn't see any garbled output
or bus hangs, even with SoC drive strength reduced to 2 for the test.

Signed-off-by: Ryan Salsbury <ryanrs@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/15334
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-04-30 12:01:04 +02:00
Zoltan HERPAI
0f5da3977e sifiveu: drop 6.1 support
Now that 6.6 is the default, remove the 6.1 config and patches.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2024-04-30 11:02:48 +02:00
Zoltan HERPAI
81fafec29d sifiveu: switch default to 6.6
Switch the default kernel to 6.6.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2024-04-30 11:02:47 +02:00
Tianling Shen
790082098e
mediatek: switch to fitblk for JDCloud RE-CP-03
Use the new fitblk driver.

Tested-By: Yangyu Chen <cyy@cyyself.name>
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2024-04-30 03:28:13 +01:00
Christian Marangi
284735246c
qualcommax: ipq60xx: mute warning on bootcount enable compile
ipq60xx bootcount script include /lib/functions that produce warning
when the script is enabled on image compilation. This script is already
included by /etc/rc.common hence it's not needed.

While at it also fix the format of the switch case.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-04-29 21:54:39 +02:00
Felix Fietkau
ed29c31972 mediatek: fix remaining invalid MT7531 switch reg IDs
See commit 8b66f1a06d:
"mediatek: correct address of MT753x switch IC"

Fixes: ac8bfe316b ("generic: 6.1, 6.6: mt7530: import accepted patches")
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2024-04-29 12:00:09 +02:00
Mieczyslaw Nalewaj
7d5f7b8b6c generic: 6.6: add kernel missing symbol CONFIG_SPI_BCMBCA_HSSPI
Add missing symbol CONFIG_SPI_BCMBCA_HSSPI causing bcm4908 compilation errors.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/15320
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-04-29 10:20:56 +02:00
David Bauer
eec18118d0 mpc85xx: convert WS-AP3710i to simpleImage wrapper
Convert the Enterasys WS-AP3710i access point to use the simpleImage
wrapper.

This is necessary, as the bootlaoder does not align the DTB correctly
(and does not support altering the FDT loadaddress). Booting images with
kernels 5.15 and later can break depending on the alignment on the DTB
within the FIT image.

Signed-off-by: David Bauer <mail@david-bauer.net>
2024-04-29 03:18:54 +02:00
Hauke Mehrtens
a638d013b1 malta: refresh kernel 6.6 configuration
This refreshes the configuration on top of kernel 6.6 and activates it
as test kernel configuration.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2024-04-29 00:24:02 +02:00
Tony Ambardar
a18920edcc kernel/malta: Restore kernel files for v6.1
This is an automatically generated commit which aids following Kernel patch
history, as git will see the move and copy as a rename thus defeating the
purpose.

For the original discussion see:
https://lists.openwrt.org/pipermail/openwrt-devel/2023-October/041673.html

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2024-04-29 00:24:02 +02:00
Tony Ambardar
3d0bf9091f kernel/malta: Create kernel files for v6.6 (from v6.1)
This is an automatically generated commit.

When doing `git bisect`, consider `git bisect --skip`.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2024-04-29 00:24:02 +02:00
Daniel Golle
5709254690 mediatek: bpi-r4: store random MAC addresses for the BPi-R4
Despite coming with multiple I2C EEPROMs supposedly dedicated for that
purpose, the BPi-R4 does not seem to have factory assigned MAC addresses.
Hence, just like for all other BPi boards, store a randomly generated
MAC address on first boot and derive WAN and Wi-Fi MAC addresses from
that as well. Not perfect, but better than random on every boot.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-04-28 21:46:51 +01:00
Daniel Golle
abbcbb9228 mediatek: bpi-r3-mini: persist WiFi and WAN MAC addresses
Derive WAN and WiFi MAC addresses from the (random) MAC address stored
in the U-Boot environment.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-04-28 21:46:51 +01:00
John Audia
dceb5938f8 kernel: bump 6.6 to 6.6.29
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.29

Removed upstreamed:
	generic/backport-6.6/740-v6.9-01-netfilter-flowtable-validate-pppoe-header.patch[1]
	generic/backport-6.6/740-v6.9-02-netfilter-flowtable-incorrect-pppoe-tuple.patch[2]
	generic/backport-6.6/790-29-v6.9-net-dsa-mt7530-fix-improper-frames-on-all-25MHz-and-.patch[3]
	generic/backport-6.6/790-31-v6.10-net-dsa-mt7530-fix-enabling-EEE-on-MT7531-switch-on-.patch[4]
	generic/backport-6.6/790-34-v6.10-net-dsa-mt7530-fix-mirroring-frames-received-on-loca.patch[5]
	generic/backport-6.6/790-35-v6.10-net-dsa-mt7530-fix-port-mirroring-for-MT7988-SoC-swi.patch[6]
	mediatek/patches-6.6/963-net-ethernet-mtk_eth_soc-fix-WED-wifi-reset.patch[7]

Manually rebased:
	generic/backport-6.6/790-23-v6.9-net-dsa-mt7530-get-rid-of-priv-info-cpu_port_config.patch

All other patches automatically rebased.

1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.29&id=a2471d271042ea18e8a6babc132a8716bb2f08b9
2. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.29&id=4ed82dd368ad883dc4284292937b882f044e625d
3. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.29&id=21b9d89d93422221cdda1b82fd075fa3c94a11d9
4. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.29&id=bd41ee1efd478852a0882ce5f136bc2b5e83eff2
5. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.29&id=d1be3960539249a8690ed09a29d0e3bf34189dd2
6. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.29&id=f8de1b6208bf71bd3102548d33dd8475573ad2ea
7. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.29&id=6855f724f19620c3ddff57c349e0abba797475b1

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

Signed-off-by: John Audia <therealgraysky@proton.me>
2024-04-28 21:51:03 +02:00
Nick Hainke
de976f8fe0 at91: 5.15: remove old config and patch files
6.1 is now default so remove old config and patch files.

Signed-off-by: Nick Hainke <vincent@systemli.org>
2024-04-28 17:50:37 +02:00
Nick Hainke
4088ea0475 at91: set 6.1 as default kernel version
Adjust the kernel version to default 6.1 in order to facilitate testing
for a broader audience.

Signed-off-by: Nick Hainke <vincent@systemli.org>
2024-04-28 17:50:37 +02:00
Nick Hainke
436aa110c6 zynq: 6.1: set testing kernel
Allow selecting 6.1 as testing kernel on zynq.

Tested-by: Luis Araneda <luaraneda@gmail.com> # Zybo Z7-20
Signed-off-by: Nick Hainke <vincent@systemli.org>
2024-04-28 17:45:41 +02:00
Nick Hainke
0227127e79 zynq: 6.1: refresh kernel config
Refresh the kernel config by runnnig make kernel_menuconfig.

Signed-off-by: Nick Hainke <vincent@systemli.org>
2024-04-28 17:45:41 +02:00
Nick Hainke
4fdb5e8dcf kernel/zynq: Restore kernel files for v5.15
This is an automatically generated commit which aids following Kernel patch history,
as git will see the move and copy as a rename thus defeating the purpose.

See: https://lists.openwrt.org/pipermail/openwrt-devel/2023-October/041673.html
for the original discussion.

Signed-off-by: Nick Hainke <vincent@systemli.org>
2024-04-28 17:45:41 +02:00
Nick Hainke
f41bee1788 kernel/zynq: Create kernel files for v6.1 (from v5.15)
This is an automatically generated commit.

When doing `git bisect`, consider `git bisect --skip`.

Signed-off-by: Nick Hainke <vincent@systemli.org>
2024-04-28 17:45:41 +02:00
Robert Marko
2aa6c875f8 ipq40xx: refresh patches again
CI tells us that we need to, so lets refresh them.

Fixes: 4265fe9348 ("ipq40xx: refresh patches")

Link: https://github.com/openwrt/openwrt/pull/15310
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-04-28 11:09:20 +02:00
Robert Marko
4265fe9348 ipq40xx: refresh patches
CI tells us that we need to, so lets refresh them.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-04-27 23:29:14 +02:00
Felix Fietkau
7116d2f2b0 kernel: update fraglist GRO patch to the latest upstream submission
Cosmetic fixes + IPv6 NAT support

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2024-04-27 20:39:07 +02:00
Felix Fietkau
45a8e962a5 kernel: fix crash with multicast-to-unicast and fraglist GRO
Avoid calls to skb_copy, which creates invalid packets that cause a crash
on segmentation

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2024-04-27 20:33:36 +02:00
Daniel Golle
fe9d2ccbc3 generic: v6.1, v6.6: add patch to fix PHY-muxing on MT7530
Move accepted patches to backport folder, re-add previously removed patch
which caused havoc on MT7621 and add the (still pending) fix.

Fixes: d40691a5fb ("generic: 6.1, 6.6: mt7530: import pending patches")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-04-27 16:14:10 +01:00
Antonio Flores
db89030cb2 kernel: generic backport 6.1: rename mistyped .patch file
Rename mistyped file .patc to patch

Fixes: ac8bfe316b ("generic: 6.1, 6.6: mt7530: import accepted patches")
Signed-off-by: Antonio Flores <antflores627@gmail.com>
2024-04-27 16:14:09 +01:00
Mieczyslaw Nalewaj
f3895fd30a bcm4908: set kernel 6.6 as a testing version
Add kernel 6.6 for testing.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-04-27 12:14:00 +02:00
Mieczyslaw Nalewaj
9d8e73656c bcm4908: remove 5.15 support
Now that 6.1 is default, remove 5.15 support.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-04-27 12:14:00 +02:00
Ulrich Stark
7cb161ae84 qualcommax: IPQ807x: ZyXEL NBG7815: Fix random Wifi MAC
For this particualar device we get random MAC's for Wifi on each (re-)boot.
This is because art partition/pre caldata do not contain valid MAC addresses.

As we have now a new/better approach with ath11k_patch_mac we can use it for
this device too.

I'm using this approach for like two weeks and its working flawlessly.

Signed-off-by: Ulrich Stark <pwned-pixel@posteo.de>

qualcommax: IPQ807x: ZyXEL NBG7815: Fix random Wifi MAC
Changing order to 3/phy0/5G-1, 2/phy1/2G, 4/phy2/5G-2.

Signed-off-by: Ulrich Stark <pwned-pixel@posteo.de>
2024-04-27 12:01:07 +02:00
Ryan Salsbury
026fbd650a ipq40xx: fix USB on Aruba AP-303H
Enable USB 3.0 controller, disable USB 2.0 controller.

The USB 2.0 port on the AP-303H is actually connected to the USB 3.0
controller's HS phy. Enable the HS phy only, since the SS lanes are not
brought out to the connector.

Signed-off-by: Ryan Salsbury <ryanrs@gmail.com>
2024-04-27 11:27:32 +02:00
Ryan Salsbury
4c5cb58805
ipq40xx: use nvmem ethernet MACs on Aruba AP-303H
Use NVMEM to assign "factory sticker" MAC address to WAN ethernet
interface. Set LAN address to sticker + 1.

Signed-off-by: Ryan Salsbury <ryanrs@gmail.com>
2024-04-27 11:23:29 +02:00
Daniel Golle
a8dde7e5bd generic: 6.1, 6.6: remove patch which breaks WAN on MT7621
Importing pending patch "net: dsa: mt7530: move MT753X_MTRAP operations
for MT7530" broke WAN connectivity on most MT7621 which use PHY-muxing
to hook up either port 0 or port 4 to GMAC1.

Remove it for now until the author submits a fixed version.

Fixes: https://github.com/openwrt/openwrt/issues/15279
Fixes: https://github.com/openwrt/openwrt/issues/15273
Fixes: d40691a5fb ("generic: 6.1, 6.6: mt7530: import pending patches")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-04-27 03:19:03 +01:00
Stijn Tintel
2c0cec1eb0 kernel: move mv88e6xxx fix to generic backports
The backports introduced in commit d40756563c ("kernel: backport
phylink changes from mainline Linux") broke the mv88e6xxx DSA driver.
A backport to fix this was added to the kirkwood target, but as it is
used in multiple targets, and there's a kmod package for it, the fix
should be in generic backports.

This fixes the switch on the WatchGuard Firebox M300 when running the
6.1 testing kernel.

There is no need to backport the fix for the 6.6 kernel, as it was
included in 6.6.5.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2024-04-26 19:56:19 +03:00
Christian Marangi
0bb8d68de5
ipq40xx: set DEVICE_DTS_DIR to /qcom by default
Set DEVICE_DTS_DIR to /qcom by default instead of limiting it to
TESTING_KERNEL since we moved 6.6 to default version.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-04-26 12:52:31 +02:00
Christian Marangi
b0dae2098a
ipq806x: set DEVICE_DTS_DIR to /qcom by default
Set DEVICE_DTS_DIR to /qcom by default instead of limiting it to
TESTING_KERNEL since we moved 6.6 to default version.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-04-26 12:52:31 +02:00
Felix Fietkau
61c846ea7c bcm53xx: update 600-net-disable-GRO-by-default.patch after recent GRO change
Fixes build error

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2024-04-26 12:42:43 +02:00
Christian Marangi
2d5509f529
ipq40xx: drop 6.1 support
Drop support for ipq40xx for kernel 6.1.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-04-26 12:30:42 +02:00
Christian Marangi
414646ef6c
ipq40xx: switch default to 6.6
Switch default kernel version for ipq40xx to 6.6.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-04-26 12:30:01 +02:00
Christian Marangi
a04b7cbc40
ipq806x: drop 6.1 support
Drop support for ipq806x for kernel 6.1.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-04-26 12:27:21 +02:00
Christian Marangi
fd36d4a7ab
ipq806x: switch default to 6.6
Switch default kernel version for ipq806x to 6.6.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-04-26 12:26:53 +02:00
Felix Fietkau
366544083e ath79: update 900-unaligned_access_hacks.patch after recent GRO change
Fixes build error

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2024-04-26 12:24:46 +02:00
Zoltan HERPAI
4e9f0e5be4 sunxi: update the 6.6 DTS_DIR hack
Update and simplify the 6.1 vs. 6.6 DTS_DIR hack until 6.1 support is gone.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2024-04-26 11:07:43 +02:00
Felix Fietkau
b5c53848c3 kernel: improve GRO performance
For packets not belonging to a local socket, use fraglist GRO instead of
regular GRO. This make segmenting packets very cheap and avoids the need for
selectively disabling GRO

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2024-04-26 06:31:27 +02:00
Felix Fietkau
98834a4c3f kernel: backport flow offload pppoe fix
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2024-04-26 06:31:27 +02:00
Zoltan HERPAI
ee4e69cc35 sunxi: 6.6: set testing kernel
Allow selecting 6.6 as testing kernel on sunxi.

Runtime-tested:
 - Linksprite pcDuino (cortexa8)
 - Olimex A20 Micro (cortexa7)
 - Pine64 SoM (cortexa53)

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2024-04-25 16:34:25 +02:00
Zoltan HERPAI
7de163d58b sunxi: 6.6: refresh patches
Refresh kernel patches.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2024-04-25 16:34:25 +02:00
Zoltan HERPAI
82df12e98a sunxi: update image Makefile to reflect updated DTS structure in 6.6
For the ARM arch on 6.6, DTS files are moved into their vendor directories,
mimicking arm64. Reflect this in the image Makefile.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2024-04-25 16:34:25 +02:00
Zoltan HERPAI
9122474226 sunxi: 6.6: refresh kernel configs
Refresh kernel config.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2024-04-25 16:34:25 +02:00
Zoltan HERPAI
438dc54936 sunxi: 6.6: remove upstreamed patches
Remove patches that have been upstreamed.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2024-04-25 16:34:25 +02:00
Zoltan HERPAI
9e348da477 kernel/sunxi: Restore kernel files for v6.1
This is an automatically generated commit which aids following Kernel patch history,
as git will see the move and copy as a rename thus defeating the purpose.

See: https://lists.openwrt.org/pipermail/openwrt-devel/2023-October/041673.html
for the original discussion.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2024-04-25 16:34:25 +02:00
Zoltan HERPAI
3c69b9a818 kernel/sunxi: Create kernel files for v6.6 (from v6.1)
This is an automatically generated commit.

When doing `git bisect`, consider `git bisect --skip`.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2024-04-25 16:34:25 +02:00
Zoltan HERPAI
2d838f3f93 mxs: drop 6.1 support
Now that 6.6 is the default, remove the 6.1 config and the hack that
was required for the arm32 DTS dir change.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2024-04-25 14:33:22 +02:00
Zoltan HERPAI
dbe9084adb mxs: switch default to 6.6
Switch the default kernel to 6.6.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2024-04-25 14:31:59 +02:00
Martin Kennedy
84a48ce400 mpc85xx: fix address config for ws-ap3825i
In commit 6a8b831593 ("mpc85xx: p1010: change wrapper address of
simple image devices"), we adjusted the wrapper address in the recipe
code for all mpc85xx simpleimage devices, including the Extreme
Networks WS-AP3825i. However, we did not also adjust the
KERNEL_LOADADDR and KERNEL_ENTRY config values for this board. This
broke the simpleimage wrapper loader, causing GitHub issue #15237.

Adjust those config values so we go back to pointing at the right
address. We don't exactly need the memory, but it's also not exactly a
punishment in this case.

Run-tested on a ws-ap3825i.

Fixes: commit 6a8b831593 ("mpc85xx: p1010: change wrapper address of
simple image devices")

Tested-by: Martin Kennedy <hurricos@gmail.com>

Signed-off-by: Martin Kennedy <hurricos@gmail.com>
2024-04-25 03:00:17 +03:00
Daniel Golle
9599a85dc2 mediatek: sync cpufreq support with changed compatible string
The compatible string for the MediaTek MT7988 SoC ended up being
'mediatek,mt7988a' instead of 'mediatek,mt7988' in the now upstream
dtsi. Adapt the cpufreq driver so support for frequency scaling is
again usable.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-04-24 21:05:46 +01:00
Daniel Golle
d40691a5fb generic: 6.1, 6.6: mt7530: import pending patches
net: dsa: mt7530: explain exposing MDIO bus of MT7531AE better
 net: dsa: mt7530: do not pass port variable to mt7531_rgmii_setup()
 net: dsa: mt7530: use priv->ds->num_ports instead of MT7530_NUM_PORTS
 net: dsa: mt7530: get rid of mac_port_validate member of mt753x_info
 net: dsa: mt7530: refactor MT7530_PMEEECR_P()
 net: dsa: mt7530: get rid of function sanity check
 net: dsa: mt7530: define MAC speed capabilities per switch model
 net: dsa: mt7530: return mt7530_setup_mdio & mt7531_setup_common on error
 net: dsa: mt7530: move MT753X_MTRAP operations for MT7530
 net: dsa: mt7530: refactor MT7530_HWTRAP and MT7530_MHWTRAP
 net: dsa: mt7530: refactor MT7530_MFC and MT7531_CFC, add MT7531_QRY_FFP
 net: dsa: mt7530: rename mt753x_bpdu_port_fw enum to mt753x_to_cpu_fw
 net: dsa: mt7530: rename p5_intf_sel and use only for MT7530 switch
 net: dsa: mt7530: refactor MT7530_PMCR_P()
 net: dsa: mt7530: disable EEE abilities on failure on MT7531 and MT7988

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-04-24 21:05:46 +01:00
Daniel Golle
ac8bfe316b generic: 6.1, 6.6: mt7530: import accepted patches
Import patches for the MT7530 DSA driver from net-next tree:
 cae425cb43fe net: dsa: allow DSA switch drivers to provide their own phylink mac ops
 dd0c9855b413 net: dsa: introduce dsa_phylink_to_port()
 7c5e37d7ee78 net: dsa: mt7530: simplify core operations
 868ff5f4944a net: dsa: mt7530-mdio: read PHY address of switch from device tree
 2c606d138518 net: dsa: mt7530: fix port mirroring for MT7988 SoC switch
 d59cf049c837 net: dsa: mt7530: fix mirroring frames received on local port
 62d6d91db98a net: dsa: mt7530: provide own phylink MAC operations

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-04-24 21:05:46 +01:00
Daniel Golle
70853560f8 generic: mt7530: move accepted patches to backport-6.{1,6}
Move two accepted patches for the MT7530 DSA driver from pending-6.{1,6}
to backport-6.{1,6}.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-04-24 21:05:46 +01:00
Daniel Golle
8b66f1a06d mediatek: correct address of MT753x switch IC
For all boards currently working with the mt7530 DSA driver we can
be sure that the address of the switch on the MDIO bus is 31 --
simply because that address is hard-coded in the driver and the
address from the Device Tree is being ignore.

An upcoming patch will add support for MT753x ICs which are programmed
to addresses different from 0x1f using bootstrap pins. As a result the
address from the Device Tree will then be taken into account, which
will break currently working boards which got the address set to
anything else than 31.

While at it also unify the syntax in Device Tree to always us a decimal
value for the 'reg' property.

 * mt7622-buffalo-wsr-3200ax4s.dts
   Cosmetic change 'reg = <0x1f>' -> 'reg = <31>'

 * mt7622-dlink-eagle-pro-ai-ax3200-a1.dtsi
   Wrong address: 0 -> 31

 * mt7622-elecom-wrc-x3200gst3.dts
   Wrong address: 0 -> 31

 * mt7622-linksys-e8450.dtsi
   Wrong address: 0 -> 31

 * mt7622-ruijie-rg-ew3200.dtsi
   Wrong address: 0 -> 31

 * mt7622-xiaomi-redmi-router-ax6s.dts
   Wrong address: 0 -> 31

 * mt7629-iptime-a6004mx.dts
   Wrong address: 2 -> 31

 * mt7981b-zbtlink-zbt-z8102ax.dts
   Cosmetic change 'reg = <0x1f>' -> 'reg = <31>'

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-04-24 21:05:46 +01:00
Nick Hainke
6ca8305598 oxnas: drop target
The Upstream Linux community has discontinued support for the target.
Maintaining support for it downstream would require too much effort.
Moreover, it seems that the supported hardware is no longer deemed worthy
of it.

Signed-off-by: Nick Hainke <vincent@systemli.org>
2024-04-24 14:12:15 +02:00
Daniel Golle
9bc08af753 mediatek: mt7988a: sync dts compatible string
Use 'mediatek,mt7988a' instead of 'mediatek,mt7988' as compatible
string to be in-sync with upstream and no longer break the cpufreq
driver which was also kept in sync with upstream.

Fixes: 56dd6b473b ("mediatek: sync cpufreq support with changed compatible string")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-04-24 00:02:59 +01:00
Robert Marko
a8befdee43 bcm53xx: 6.6: fix ASM cache workaround linking
Kernel 6.6 checks for orphan sections and prints a warning about them,
which in turn will make CI fails as we have Werror enabled there.

Issue is that cache-v7-min.S produces .init.text section which is an
orphan section since it is not being handled by the vmlinux.lds.S linker
script.

So, lets put the generated .init.text section under .text.

Fixes: f0d8ce4f48 ("bcm53xx: add testing support for kernel 6.6")
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-04-23 22:41:11 +02:00
John Audia
5efd41c10b kernel: bump 6.6 to 6.6.28
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.28

Removed upstream:
	pending-6.6/796-net-dsa-mt7530-trap-link-local-frames-regardless-of-.patch

All oither patches automatically rebased.

1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.28&id=8b6c4b62582606c62074a7e7c64156f56d2785f2

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

Signed-off-by: John Audia <therealgraysky@proton.me>
2024-04-23 22:38:05 +02:00
John Audia
80a063156f x86: generic: config-6.6: add/remove default syms
Add new default and remove deprecated symbols introduced by 6.6.28[1]

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

Signed-off-by: John Audia <therealgraysky@proton.me>
2024-04-23 22:38:05 +02:00
Paweł Owoc
48daac25ce qualcommax: ipq807x: use ath11k_patch_mac for RAX120v2
Use ath11k_patch_mac and ath11k_set_macflag functions for RAX120v2 (pre-caldata does not contain valid MAC addresses)

Signed-off-by: Paweł Owoc <frut3k7@gmail.com>
2024-04-23 22:35:57 +02:00
Paweł Owoc
682393cd1a qualcommax: ipq807x: use ath11k_patch_mac and ath11k_remove_regdomain for MX4200
Use ath11k_patch_mac, ath11k_remove_regdomain and ath11k_set_macflag functions for MX4200
(only v2 variant requires MAC patching)

Signed-off-by: Paweł Owoc <frut3k7@gmail.com>
2024-04-23 22:35:57 +02:00
Connor Yoon
3569b37b15 ipq807x: add Spectrum SAX1V1K
Spectrum SAX1V1K is a AX WIFI router with 3 1G and 1 2.5G ports.
The router is provided to Spectrum customers.
It is OEM of Askey RT5010W
https://forum.openwrt.org/t/spectrum-sax1v1k-askey-rt5010w-openwrt-support/149923

It continues the original work by @MeisterLone to get this device supported.

Specifications:
```
  •  CPU: Qualcomm IPQ8072A Quad core Cortex-A53 2.2GHz
  •  RAM: 2048MB of DDR3
  •  Storage: 1024MB eMMC
  •  Ethernet: 3x 1G RJ45 ports (QCA8075) + 1 2.5G Port (QCA8081)
  •  WLAN:
     • 2.4GHz: Qualcomm QCN5024 4x4 802.11b/g/n/ax 1174 Mbps PHY rate
     • 5GHz: Qualcomm QCN5054 4x4 802.11a/b/g/n/ac/ax 2402 PHY rate

  •  LED: 1 gpio-controlled dual color led (blue/red)
  •  Buttons: 1x reset
  •  Power: 12V DC jack
```

Notes:
```
  •  This commit adds only single partition support, that means
     sysupgrade is upgrading the current rootfs partition.
  •  Installation can be done by serial connection only.
  •  A poulated serial header is onboard
     https://forum.openwrt.org/t/spectrum-sax1v1k-askey-rt5010w-openwrt-support/149923/6
  •  RX/TX is working, u-boot bootwait is active, secure boot is enabled.
```

Installation Instructions:

	**Most part of the installation is performed from an initramfs image.**

	Boot initramfs : Using serial connection
	1. Boot up the device and wait till it displays "VERIFY_IB: Success. verify IB ok"
	2. Once that message appears,
	    login with username 'root'
	    password serial number of your router in uppercase.
	3. Use vi to paste the 'open.sh' script from @MeisterLone github on your device
	    https://github.com/MeisterLone/Askey-RT5010W-D187-REV6/blob/master/Patch/open.sh
	4. chmod 755 open.sh
	5. ./open.sh
	6. Set your ip to 192.168.0.1
	7. Run a TFTP server and host the initramfs image on the TFTP server and name it "recovery.img"
	8. Reboot device. On boot it will try TFTP.

	Install OpenWrt from initramfs image:
	1. Use SCP (or other way) to transfer OpenWrt factory image
	2. Connect to device using SSH (on a LAN port)
	3. Flash firmware: sysupgrade
	   # sysupgrade -n -v /tmp/openwrt_sysupgrade.bin
	4. Set U-boot env variable: bootcmd
	   # fw_setenv bootcmd "run fix_uboot; run setup_and_boot"
	5. Reboot the device
	   # reboot
	6. Once device is booted, residue of previous firmware will prevent openwrt to work properly.
	    Factory Reset is MUST required
	    # Once serial console is displaying to login, hold reset button for 10 sec
	7. Now everything should be operational.

        Note: this PR adds only single partition support, that means sysupgrade is
              upgrading the current rootfs partition

Signed-off-by: Connor Yoon <j_connor@taliaent.com>
2024-04-23 21:48:34 +02:00
Christian Marangi
e0363233c9
generic: 5.15: refresh kernel patches
Refresh kernel patches with make target/linux/refresh.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-04-22 11:27:05 +02:00
Christian Marangi
116e8917bf
pistachio: 6.1: refresh kernel patches
Refresh kernel patches with make target/linux/refresh.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-04-22 11:27:05 +02:00
Christian Marangi
e890820579
generic: 5.15: fix broken BoHong bh25q128as patch
Fix broken BoHong bh25q128as patch that used wrong define for kernel
5.15.

Fixes: 4cb814d403 ("generic: 5.15: Make support for BoHong bh25q128as generic")
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-04-22 11:27:05 +02:00
Nick Hainke
f0c215f700 at91: 6.1: set testing kernel
Allow selecting 6.1 as testing kernel on at91.

Tested-by: Claudiu Beznea <claudiu.beznea@tuxon.dev>
Signed-off-by: Nick Hainke <vincent@systemli.org>
2024-04-22 09:51:14 +02:00
Nick Hainke
e2e3ee4137 at91: 6.1: update kernel config
Update the kernel config by running make kernel_oldconfig.

Signed-off-by: Nick Hainke <vincent@systemli.org>
2024-04-22 09:51:14 +02:00
Nick Hainke
b3145f3526 at91: 6.1: import patch to fix pinctrl unused function warning
Fixes error in the form of [0]:
  drivers/pinctrl/pinctrl-at91.c:1668:12: error: 'at91_gpio_resume' defined but not used [-Werror=unused-function]
   1668 | static int at91_gpio_resume(struct device *dev)
        |            ^~~~~~~~~~~~~~~~
  drivers/pinctrl/pinctrl-at91.c:1650:12: error: 'at91_gpio_suspend' defined but not used [-Werror=unused-function]
   1650 | static int at91_gpio_suspend(struct device *dev)
        |            ^~~~~~~~~~~~~~~~~

[0] - https://lore.kernel.org/all/20221215164301.934805-1-arnd@kernel.org/

Signed-off-by: Nick Hainke <vincent@systemli.org>
2024-04-22 09:51:14 +02:00
Nick Hainke
db2c907260 at91: 6.1: remove upstreamed patches
Remove the upstreamed patches.

Signed-off-by: Nick Hainke <vincent@systemli.org>
2024-04-22 09:51:14 +02:00
Nick Hainke
de9ad1e704 kernel/at91: Restore kernel files for v5.15
This is an automatically generated commit which aids following Kernel patch history,
as git will see the move and copy as a rename thus defeating the purpose.

See: https://lists.openwrt.org/pipermail/openwrt-devel/2023-October/041673.html
for the original discussion.

Signed-off-by: Nick Hainke <vincent@systemli.org>
2024-04-22 09:51:14 +02:00
Nick Hainke
db7e28cb98 kernel/at91: Create kernel files for v6.1 (from v5.15)
This is an automatically generated commit.

When doing `git bisect`, consider `git bisect --skip`.

Signed-off-by: Nick Hainke <vincent@systemli.org>
2024-04-22 09:51:14 +02:00
Georgi Valkov
680f8738d0
kernel: backport ipeth CDC NCM support
Fixes no communication with tethered iOS devices in CDC NCM mode.
Freshly booted iOS devices start in legacy mode, but are put into
NCM mode by the official Apple driver.

[1] a2d274c62e

Fixes: #12566
Tested-by: Georgi Valkov <gvalkov@gmail.com>
Signed-off-by: Foster Snowhill <forst@pen.gy>
Signed-off-by: Georgi Valkov <gvalkov@gmail.com>
[ better reference fixed issue ]
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-04-21 22:50:40 +02:00
R Maru
4cb814d403
generic: 5.15: Make support for BoHong bh25q128as generic
Move the patch for BoHong bh25q128as out of ramips to make it
generic. Not including 6.1.y since the mtd subsystem has changed,
and does not need these changes.

Patch was dropped with ramips updating to 6.1, hence we reintroudce it
here for 5.15 generic.

5.15.y functionality was verified on a Wavlink WL-WN586X3 Rev.a.

Signed-off-by: R Maru <deviantmaru@gmail.com>
[ rebase and add extra info in commit description ]
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-04-21 18:06:22 +02:00
Christian Marangi
869d72e988
generic: 6.1: backport support for generic spi-nor from SFDP data
Backport patches for support of generic spi-nor from SFDP data for
kernel 6.1.

Kernel 5.15 have major rework of the info flags and it's not trustable
to backport this amount of changes and expect correct function of it.

All affected patches automatically refreshed using make
target/linux/refresh.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-04-21 18:02:40 +02:00
Zoltan HERPAI
30149ba1ae sunxi: move KERNEL_LOADADDR into subtargets
As preparation for the arm926ej-s support which has a different
load address, move the KERNEL_LOADADDR into the subtargets.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2024-04-19 18:42:05 +02:00
Zoltan HERPAI
01fc454a0c sunxi: move fpu feature flag into the subtargets
As the upcoming arm926ej-s does not have an FPU, move this flag
into the subtargets.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2024-04-19 18:42:05 +02:00
Zoltan HERPAI
2164bd308b sifiveu: 6.6: set testing kernel
Allow selecting 6.6 as testing kernel on sunxi.

Runtime-tested: SiFive Unleashed

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2024-04-19 18:32:50 +02:00
Zoltan HERPAI
7e9dd5d10c sifiveu: 6.6: refresh patches
Refresh kernel patches.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2024-04-19 18:32:50 +02:00
Zoltan HERPAI
bafdd7a67b kernel/sifiveu: Restore kernel files for v6.1
This is an automatically generated commit which aids following Kernel patch history,
as git will see the move and copy as a rename thus defeating the purpose.

See: https://lists.openwrt.org/pipermail/openwrt-devel/2023-October/041673.html
for the original discussion.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2024-04-19 18:32:50 +02:00
Zoltan HERPAI
9905057d7e kernel/sifiveu: Create kernel files for v6.6 (from v6.1)
This is an automatically generated commit.

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

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2024-04-19 18:32:50 +02:00
Zoltan HERPAI
788c781ba6 mxs: add kernel 6.6 as testing
Add new LTS kernel support.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2024-04-19 18:32:42 +02:00
Zoltan HERPAI
38dc19828d mxs: adjust DTS path for 6.6
For the ARM arch on 6.6, DTS files are moved into their vendor directories,
mimicking arm64. Reflect this in the image Makefile.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2024-04-19 18:32:42 +02:00
Daniel Golle
0bba674153 mediatek: backport PWM drivers
* MT7981 and MT7988 backported to Linux 6.1
 * MT7988 backported to Linux 6.6

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-04-19 10:56:52 +01:00
Stijn Tintel
3908b77c9e qoriq: add kernel 6.1 support
Add support for kernel 6.1 as testing kernel for qoriq. Refresh config
using `make kernel_oldconfig`.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2024-04-18 00:30:03 +03:00
Stijn Tintel
3f9a9753f9 kernel/qoriq: Restore kernel files for v5.15
This is an automatically generated commit which aids following Kernel patch history,
as git will see the move and copy as a rename thus defeating the purpose.

See: https://lists.openwrt.org/pipermail/openwrt-devel/2023-October/041673.html
for the original discussion.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2024-04-18 00:23:36 +03:00
Stijn Tintel
fccaffe747 kernel/qoriq: Create kernel files for v6.1 (from v5.15)
This is an automatically generated commit.

When doing `git bisect`, consider `git bisect --skip`.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2024-04-18 00:23:36 +03:00
Stijn Tintel
72afe56430 qoriq: refresh kernel 5.15 config
Done with `make kernel_oldconfig`.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2024-04-18 00:23:30 +03:00
Chukun Pan
9cef2bc224 ipq807x: add support for Zbtlink ZBT-Z800AX
Hardware specifications:
  SoC: Qualcomm IPQ8072A
  RAM: 1GB of DDR4 600MHz
  Flash1: Winbond W25Q64DW 8MB
  Flash2: MX30UF2G28AD 256MB
  WiFi1: QCN5024 2.4GHz AX 4x4
  WiFi2: QCN5054 5GHz AX 4x4
  Ethernet: 5x 1G RJ45 port
  USB: 2x USB 3.0 (1x M.2)
  Button: Reset, WPS

Flash instructions:
  Upload factory.bin in stock firmware's
  upgrade page, do not preserve settings.

Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
2024-04-17 12:08:56 +02:00
Zoltan HERPAI
3ed8927cf5 sunxi: fix network bringup on Olinuxino Micro boards
It's the A13-based Olinuxino Micro which has only wireless interfaces. The
A20-based board is a fully-fledged one which has an ethernet interface.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2024-04-17 01:10:24 +02:00
Hauke Mehrtens
9693ed6a9e kernel: bump 5.15 to 5.15.155
Manual adapted the following patches:
   generic/hack-5.15/221-module_exports.patch
   octeontx/patches-5.15/0004-PCI-add-quirk-for-Gateworks-PLX-PEX860x-switch-with-.patch

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-04-16 23:11:25 +02:00
Rodrigo Balerdi
1c32cee348 ipq40xx: whw03v2: enable additional 5 GHz channels
This device supports channel ranges 36-64 and 100-165, just like
others based on the same reference design, but its current DTS is
unnecessarily restricting these ranges to 36-48 and 149-165.

Signed-off-by: Rodrigo Balerdi <lanchon@gmail.com>
2024-04-16 21:51:48 +02:00
Zoltan HERPAI
bc4342142c sunxi: update a13-olimex-som DTS path
In preparation for supporting kernel 6.6, where the DTS files are grouped into
vendors - similarly to what arm64 has been doing all along -, update the
SUNXI_DTS var of this board to prepend it with SUNXI_DTS_DIR.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2024-04-16 19:41:58 +02:00
Zoltan HERPAI
12137cb460 pistachio: remove 5.15 support
Now that 6.1 is default, remove 5.15 support.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2024-04-16 12:35:05 +02:00
Zoltan HERPAI
20bf7c3ff7 pistachio: default to kernel 6.1
6.1 has been present as testing for some time now, so switch the
default to it.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2024-04-16 12:20:59 +02:00
Hauke Mehrtens
8c3dfdc46b kernel: Add missing config option
Kernel 6.1.83 allows to select CONFIG_GPIO_VF610, deactivate it by
default.

This fixes compilation of the armsr/armv8 target.

Fixes: 2ad898e091 ("kernel: bump 6.1 to 6.1.83")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-04-15 22:50:34 +02:00
Vince McKinsey
cab2e1de0d ramips: Add support for D-Link DIR-3040 A1
This adds support for the A1 hardware revision of the DIR-3040.
It is an exact copy of the DIR-3060 save for some cosmetic changes to the housing.
Even going so far as having the same FCC ID.

Hardware specification:
SoC: MediaTek MT7621AT
Flash: Winbond W29N01HVSINA 128MB
RAM: Micron MT41K128M16JT-125 256MB
Ethernet: 5x 10/100/1000 Mbps
WiFi1: MT7615DN 2.4GHz N 2x2:2
WiFi2: MT7615DN 5GHz AC 2x2:2
WiFi3: MT7615N 5GHz AC 4x4:4
Button: WPS, Reset

Flash instructions:
OpenWrt can be installed via D-Link Recovery GUI:
NOTE: Seems to only work in Firefox on Windows.
Tried with Chrome on Windows, Firefox in Linux, and Chromium in Linux.
None of these other browsers worked.

    1. Push and hold reset button (on the bottom of the device) until power led
	starts flashing (about 10 secs or so) while plugging in the power cable.
    2. Give it ~30 seconds, to boot the recovery mode GUI
    3. Connect your client computer to LAN1 of the device
    4. Set your client IP address manually to 192.168.0.2 / 255.255.255.0.
    5. Call the recovery page for the device at http://192.168.0.1/
    6. Use the provided emergency web GUI to upload and flash a new firmware to the device

Thanks to @Lucky1openwrt and @iivailo for creating the DIR-3060 DTS file and related changes,
so it was possible for me to adapt them to the DIR-3040, build images,
test and fix minor issues.

MAC Addresses:

| use | address | example |
| --- | --- | --- |
| LAN | label | f4:*:61 |
| WAN | label + 4 | f4:*:65 |
| WI1/2g | label + 2 | f4:*:63 |
| WI1/5g | label + 1 | f4:*:62 |
| WI2/5g | label + 3 | f4:*:64 |

The label MAC address was found in Factory, 0xe000

Checklist:

✓ nand
✓ ethernet
✓ button
✓ wifi2g
✓ wifi5g
✓ wifi5g
✓ mac
✓ led

Signed-off-by: Vince McKinsey <vincemckinsey@gmail.com>
2024-04-14 20:34:36 +02:00
INAGAKI Hiroshi
e0cc69bef4 mvebu: fix LEDs on IIJ SA-W2
On IIJ SA-W2, some multiple LEDs have no "function" property and only
"color" property is available for the newer binding of LED on Linux
Kernel.
9d93b6d091 ("mvebu: drop redundant label with new LED color/function
format") removes "label" property from LEDs, then, multiple "<color>:"
(ex.: "green:"/"red:") will be appeared and renamed to "<color>:_<num>"
(ex.: "green:_1", "green:_2", ...) by kernel.

log:

[    1.911118] leds-gpio leds: Led green: renamed to green:_1 due to name collision
[    1.918600] leds-gpio leds: Led red: renamed to red:_1 due to name collision
[    1.925727] leds-gpio leds: Led green: renamed to green:_2 due to name collision
[    1.933202] leds-gpio leds: Led red: renamed to red:_2 due to name collision
[    1.940321] leds-gpio leds: Led green: renamed to green:_3 due to name collision
[    1.947797] leds-gpio leds: Led red: renamed to red:_3 due to name collision
[    1.954939] leds-gpio leds: Led green: renamed to green:_4 due to name collision
[    1.962456] leds-gpio leds: Led green: renamed to green:_5 due to name collision

/sys/class/leds:

root@OpenWrt:/# ls /sys/class/leds/
green:        green:_3      green:status  red:_2
green:_1      green:_4      red:          red:_3
green:_2      green:_5      red:_1        red:status

Fix this issue by adding missing "function" (and "function-enumerator")
property to those LEDs on IIJ SA-W2.

Fixes: 9d93b6d091 ("mvebu: drop redundant label with new LED color/function format")
Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2024-04-14 19:46:30 +02:00
INAGAKI Hiroshi
5038ec5bba mvebu: fix LEDs on Fortinet FortiGate devices
On Fortinet FortiGate 30E/50E, some multiple LEDs have no "function"
property and only "color" property is available for the new binding of
LED on Linux Kernel.
9d93b6d091 ("mvebu: drop redundant label with new LED color/function
format") removes "label" property from LEDs, then, multiple "<color>:"
(ex.: "green:"/"red:"/"amber:") will be appeared as LED names and
renamed to "<color>:_<num>" (ex.: "green:_1", "green:_2", ...) by
kernel.

log:

[   12.425170] leds-gpio gpio-leds: Led green: renamed to green:_1 due to name collision
[   12.520390] leds-gpio gpio-leds: Led amber: renamed to amber:_1 due to name collision
[   12.614931] leds-gpio gpio-leds: Led green: renamed to green:_2 due to name collision
[   12.709895] leds-gpio gpio-leds: Led green: renamed to green:_3 due to name collision
[   12.804439] leds-gpio gpio-leds: Led amber: renamed to amber:_2 due to name collision
[   12.898969] leds-gpio gpio-leds: Led green: renamed to green:_4 due to name collision
[   12.993504] leds-gpio gpio-leds: Led amber: renamed to amber:_3 due to name collision
[   13.088033] leds-gpio gpio-leds: Led green: renamed to green:_5 due to name collision
[   13.182570] leds-gpio gpio-leds: Led green: renamed to green:_6 due to name collision
[   13.277103] leds-gpio gpio-leds: Led amber: renamed to amber:_4 due to name collision
[   13.371636] leds-gpio gpio-leds: Led green: renamed to green:_7 due to name collision

/sys/class/leds:

root@OpenWrt:/# ls /sys/class/leds/
amber:        amber:_4      green:_2      green:_6      red:alarm
amber:_1      amber:alarm   green:_3      green:_7      red:status
amber:_2      green:        green:_4      green:status
amber:_3      green:_1      green:_5      red:

Fix this issue by adding missing "function" (and "function-enumerator")
property those to LEDs on Fortinet FortiGate devices.
Note: there is no appropriate function for "ha" LEDs in
dt-bindings/leds/common.h, so use the hardcoded string for them instead.

Fixes: 9d93b6d091 ("mvebu: drop redundant label with new LED color/function format")
Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2024-04-14 19:46:30 +02:00
INAGAKI Hiroshi
3bdc68279a kernel: add pending patches for new LED_FUNCTION_* definitions
Add pending patches to add LED_FUNCTION_MOBILE and LED_FUNCTION_SPEED_*
definitions for Fortinet FortiGate devices and IIJ SA-W2.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2024-04-14 19:46:30 +02:00
Felix Golatofski
ee3a6adc6c ath79: add support for Comfast CF-EW71 v2
Specifications:
Qualcomm/Atheros QCA9531
2x 10/100 Mbps Ethernet, with 48v PoE
2T2R 2.4 GHz, 802.11b/g/n
128MB RAM
16MB SPI Flash
4x LED (Always On Power, LAN, WAN, WLAN)

Flashing instructions:
The original firmware is based on OpenWrt, so flashing the sysupgrade image over the factory firmware is sufficient.
The bootloader has a built-in recovery web-ui. This is the method I used to flash OpenWrt. You can get to the recovery web-ui by holding down the reset button for a few seconds (~5s) while pluggin in the router. The LEDs should start blinking fast and the router should be available on 192.168.1.1 for the recovery.

Tested: Reset button, WAN LED, LAN LED, Power LED (always on, not much to test), WLAN LED, MAC addresses (same as factory firmware).

Signed-off-by: Felix Golatofski <git@xdfr.de>
2024-04-14 19:20:06 +02:00
Hauke Mehrtens
2909cce1b2 kernel: bump 6.1 to 6.1.86
Removed upstreamed:
   bcm27xx/patches-6.1/950-1235-drm-vc4-don-t-check-if-plane-state-fb-state-fb.patch  [1]

All other patches automatically rebased.

1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.1.86&id=48bfb4b03c5ff6e1fa1dc73fb915e150b0968c40

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-04-14 18:03:37 +02:00
Hauke Mehrtens
1a44a260fe kernel: bump 6.1 to 6.1.84
Removed upstreamed:
   pistachio/patches-6.1/110-pwm-img-fix-clock-lookup.patch [1]

All other patches automatically rebased.

1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.1.84&id=44b6fb6cdedb2c391a2da355521d4610b2645fcc

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-04-14 18:03:37 +02:00
Hauke Mehrtens
2ad898e091 kernel: bump 6.1 to 6.1.83
Removed upstreamed:
   generic/backport-6.1/789-STABLE-01-net-dsa-mt7530-prevent-possible-incorrect-XTAL-frequ.patch [1]
   generic/backport-6.1/789-STABLE-02-net-dsa-mt7530-fix-link-local-frames-that-ingress-vl.patch [2]
   generic/backport-6.1/789-STABLE-03-net-dsa-mt7530-fix-handling-of-all-link-local-frames.patch [3]
   generic/pending-6.1/735-net-mediatek-mtk_eth_soc-release-MAC_MCR_FORCE_LINK-.patch [4]
   generic/pending-6.1/736-net-ethernet-mtk_eth_soc-fix-PPE-hanging-issue.patch [5]

Manual adjusted the following patches:
  mediatek/patches-6.1/100-dts-update-mt7622-rfb1.patch

1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.1.83&id=be4512b9ac6fc53e1ca8daccbda84f643215c547
2. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.1.83&id=f1fa919ea59655f73cb3972264e157b8831ba546
3. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.1.83&id=86c0c154a759f2af9612a04bdf29110f02dce956
4. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.1.83&id=6b62bad2da1b338f452a9380639fc9b093d75a25
5. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.1.83&id=f78807362828ad01db2a9ed005bf79501b620f27

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-04-14 18:03:37 +02:00
Hauke Mehrtens
9ea685d862 kernel: Reorder generic kernel 6.1 config
This reordering was done using these commands:
./scripts/kconfig.pl '+' target/linux/generic/config-6.1 /dev/null > target/linux/generic/config-6.1-new
mv target/linux/generic/config-6.1-new target/linux/generic/config-6.1

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-04-14 18:03:37 +02:00
John Audia
86171d4d6e kernel: bump 6.6 to 6.6.27
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.27

Removed upstreamed:
	pending-6.6/981-gcc-plugins-stackleak-Avoid-.head.txt.section.patch[1]

All patches automatically rebased.

1. 9dff96b8b3

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

Signed-off-by: John Audia <therealgraysky@proton.me>
2024-04-14 17:50:27 +02:00
John Audia
ec97609154 x86: generic: config-6.6: refresh
Ran `make kernel_menuconfig`

Reference to CONFIG_SPECTRE_BHI_ON=y[1]

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

Signed-off-by: John Audia <therealgraysky@proton.me>
2024-04-14 17:50:27 +02:00
John Audia
9d95934289 kernel: bump 6.6 to 6.6.26
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.26

Manually rebased:
	generic/hack-6.6/210-darwin_scripts_include.patch

Added pending:
	generic/pending-6.6/981-gcc-plugins-stackleak-Avoid-.head.txt.section.patch

All other patches automatically rebased.

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

Signed-off-by: John Audia <therealgraysky@proton.me>
2024-04-14 17:50:27 +02:00
Rodrigo Balerdi
c2f52e42b1 ipq40xx: whw03v2: change LED color for 'running' state to blue
Change the RGB indicator LED color for the running state from green to
blue. There are various reasons for this change:

- In stock firmware, green means internet connection is up, red means it
  is down, and blue means indeterminate. To track stock behavior as
  closely as possible, OpenWrt should indicate blue by default.

- In the current 23.x OpenWrt releases for this router, the led glows
  blue all the time -not green- because the bootloader sets it blue
  and there is an OpenWrt bug that makes it unable to control the LED.
  The bug is fixed in master, so without this commit there would be an
  unexpected change of behavior for this device in the next release.

- The ports other closely related Linksys devices (such as EA8300 and
  MR8300) get this right and use blue for the running state.

Signed-off-by: Rodrigo Balerdi <lanchon@gmail.com>
2024-04-13 23:07:54 +02:00
Rodrigo Balerdi
fc62d66c20 ipq40xx: whw03v2: fix handling of RGB LED
The RGB LED should glow green in the 'running' state, but it
was glowing cyan because the blue component defaulted to 'on'.

Signed-off-by: Rodrigo Balerdi <lanchon@gmail.com>
2024-04-13 22:56:04 +02:00
Daniel Golle
eb13076e77 mediatek: fix DTS defining mt7530 switch phys but not referencing them
The upstream solution to define the MDIO bus in DT is a bit
more strict than our previous downstream solution doing the same thing
and now requires switch PHYs to be referenced in DT as well.

Arınç Ünal told us in #15141:
"With [the now upstream patch written by him which we backported], the
switch MDIO bus won't be assigned to ds->user_mii_bus when the switch
MDIO bus is defined on the device tree anymore. This was not the case
with the downstream patch.

When ds->user_mii_bus is populated, DSA will 1:1 map the port with
PHY. Meaning port with address 1 will be mapped to PHY with address 1.
Because that ds->user_mii_bus is not populated when the switch MDIO
bus is defined on the device tree, on every port node, the PHY address
must be supplied by the phy-handle property."

Add those phy-handles to affected devices' DT.

Fixes: 4354b34f6f ("generic: 6.6: sync mt7530 DSA driver with upstream")
Fixes: 401a6ccfaf ("generic: 6.1: sync mt7530 DSA driver with upstream")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-04-13 18:49:30 +01:00
Mieczyslaw Nalewaj
c08f8a4a49 ramips: add support for TP-Link EC220-G5 v2
TP-Link EC220-G5 v2 is a dual band router with 4 GbE ports
Advertised as AC1200 for its 867Mbps (2x2) 5GHz band
and 300 Mbps (2x2) 2.4GHz band.

Specs:
- SoC: MediaTek MT7620A
- Ethernet: 4x GbE ports (Realtek RTL8367S)
- Wireless 2.4GHz: MediaTek MT7620A
- Wireless 5GHz: MediaTek MT7612E
- RAM: 64MiB
- ROM: 8MiB (W25Q64BV)
- 2 Buttons (WPS and reset)
- 7 LEDs

Flash instructions via 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

Flash instructions via TFTP:
1. Update orginal firmware of the router to the latest one.
2. Rename openwrt-ramips-mt7620-tplink_ec220-g5-v2-squashfs-tftp-recovery.bin to tp_recovery.bin
3. Change computer IP to 192.168.0.66
4. Run TFTP serwer
5. Start the router with the reset button pressed, the file will be automatically downloaded and after a while the router will restart.
6. After updating, set your computer's IP to DHCP

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-04-13 17:40:51 +02:00
Mieczyslaw Nalewaj
ada3c41acd ramips: mt7620a_tplink_archer.dtsi rename to mt7620a_tplink_8m.dtsi
Change the name mt7620a_tplink_archer.dtsi to mt7620a_tplink_8m.dtsi because it will also be a base for TP-Link non-Archer routers.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-04-13 17:40:51 +02:00
Mieczyslaw Nalewaj
6258492e1b ramips: TP-Link Archer C2 v1: simplification of the dts definition
Import from the mt7620a_tplink_archer.dtsi file and thus simplify the rest of the definition.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-04-13 17:40:51 +02:00
Mieczyslaw Nalewaj
c97be14c8c ramips: mt7620a_tplink_archer.dtsi - remove unnecessary nvmem-cells definitions
Remove unnecessary nvmem-cells definitions that are being redefined anyway.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-04-13 17:40:51 +02:00
Stijn Tintel
291efaf765 realtek: fix filter_port_list_reverse calls
The function introduced in commit 7cbfe5654d is named
filter_port_list_reverse, not filter_port_list_reversed.

Fixes the following error on hpe,1920-8g-poe-65w and
hpe,1920-8g-poe-180w.

  /bin/board_detect: /etc/board.d/02_network: line 84: filter_port_list_reversed: not found

Fixes: 7cbfe5654d ("realtek: move port filtering out of uci_set_poe()")
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
Acked-by: Sander Vanheule <sander@svanheule.net>
2024-04-13 13:22:11 +03:00
Paul Spooren
2496f436a8
build: use zstd for IB, toolchain, SDK and LLVM compression
Use similar efficient but faster compression algorithm.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2024-04-13 08:05:04 +02:00
Paul Donald
ae192c042c
mediatek: mt7622: rtl8367c: source code spell fixes
Improves indexing and searches

Signed-off-by: Paul Donald <newtwen+github@gmail.com>
2024-04-12 14:46:32 +02:00
Paul Donald
81e4aabac3
mediatek: mt7622: rtl8367c: source comment fixes
Fix also some Chinese -> UTF8 encoding problems

Improves indexing and searches

Signed-off-by: Paul Donald <newtwen+github@gmail.com>
2024-04-12 14:46:32 +02:00
Paul Donald
90488d274e
mediatek: mt7622: rtl8367c: source comment fixes
Fix also some Chinese GB18030 -> UTF-8 encoding problems

(translated the Chinese strings to English):
修改 -> modification
port8~port10的设置在另外一个register ->
 port8~port10 setup is done in a separate register


You are in the correct (UTF-8) encoding when you see:
 * $Date: 2017-03-08 15:13:58 +0800 (週三, 08 三月 2017) $
e.g. week 3, 08 third month, 2017
But not if you see:
 * $Date: 2017-03-08 15:13:58 +0800 (閫变笁, 08 涓夋湀 2017) $


rtl8367c/rtl8367c_asicdrv_lut.c should be read as UTF-8, despite having
some earlier Chinese text lost to GB18030 encoding.

Improves indexing and searches

Signed-off-by: Paul Donald <newtwen+github@gmail.com>
2024-04-12 14:46:32 +02:00
Paul Donald
afad4e8ab6
mediatek: mt7622: rtl8367c: source comment fixes
Fix also some Chinese -> UTF8 encoding problems

Improves indexing and searches

Signed-off-by: Paul Donald <newtwen+github@gmail.com>
2024-04-12 14:46:32 +02:00
Paul Donald
a2b94afc0d
mediatek: mt7622: rtl8367c: source comment fixes
Improves indexing and searches

Signed-off-by: Paul Donald <newtwen+github@gmail.com>
2024-04-12 14:46:28 +02:00
Sean Khan
849ebc905b qualcommax: enhance smp_affinity (log, uci, syntax)
1.) Changed logic of `set_affinity` to now use physical cores rather than
    knowing the bitmask. Rather than having to know a bitmask, users can
    provide a numerical instance of one or more CPU cores
    (numbered 0-63).

    This is done via function `cpus_to_bitmask`.

    Functions Added:

    a.) bitmask_to_cpus - Takes a bitmask of CPUs and returns a
         list of CPU numbers. (i.e. `bitmask_to_cpus "f"` -> 0,1,2,3)

    b.) cpus_to_bitmask - Takes a comma/space or range list of CPUs and returns
         a bitmask.

         Example:
         `cpus_to_bitmask "2,3"`     -> c
         `cpus_to_bitmask "0,1,2,3"` -> f
         `cpus_to_bitmask "1,3"`     -> a

         With or without quotes
         `cpus_to_bitmask "1 3"`     -> a
         `cpus_to_bitmask  1 3`      -> a

2.) Added UCI options:

    enable     - to enable/disable the script from running.   [default 1 (on)]
    enable_log - to enable/disable logging output to `logger`.[default 1 (on)]

    Log output:
```
    Mon Apr  8 23:00:01 2024 user.notice smp_affinity: Pinning IRQ(87) reo2host-destination-ring1    to CPU 0
    Mon Apr  8 23:00:01 2024 user.notice smp_affinity: Pinning IRQ(88) reo2host-destination-ring2    to CPU 1
    Mon Apr  8 23:00:01 2024 user.notice smp_affinity: Pinning IRQ(89) reo2host-destination-ring3    to CPU 2
    Mon Apr  8 23:00:01 2024 user.notice smp_affinity: Pinning IRQ(90) reo2host-destination-ring4    to CPU 3
    Mon Apr  8 23:00:01 2024 user.notice smp_affinity: Pinning IRQ(79) wbm2host-tx-completions-ring1 to CPU 1
    Mon Apr  8 23:00:01 2024 user.notice smp_affinity: Pinning IRQ(83) wbm2host-tx-completions-ring2 to CPU 2
    Mon Apr  8 23:00:01 2024 user.notice smp_affinity: Pinning IRQ(85) wbm2host-tx-completions-ring3 to CPU 3
    Mon Apr  8 23:00:01 2024 user.notice smp_affinity: Pinning IRQ(73) ppdu-end-interrupts-mac1      to CPU 1
    Mon Apr  8 23:00:01 2024 user.notice smp_affinity: Pinning IRQ(77) ppdu-end-interrupts-mac2      to CPU 2
    Mon Apr  8 23:00:01 2024 user.notice smp_affinity: Pinning IRQ(75) ppdu-end-interrupts-mac3      to CPU 3
    Mon Apr  8 23:00:01 2024 user.notice smp_affinity: Pinning IRQ(32) edma_txcmpl                   to CPU 3
    Mon Apr  8 23:00:01 2024 user.notice smp_affinity: Pinning IRQ(33) edma_rxfill                   to CPU 3
    Mon Apr  8 23:00:01 2024 user.notice smp_affinity: Pinning IRQ(35) edma_rxdesc                   to CPU 3
    Mon Apr  8 23:00:01 2024 user.notice smp_affinity: Pinning IRQ(36) edma_misc                     to CPU 3
```

    Output of `/proc/interrupts`:
```
 69:          0          0          0          0 GIC-0 209 Edge      rxdma2host-destination-ring-mac1
 70:          0          0          0          0 GIC-0 211 Edge      rxdma2host-destination-ring-mac3
 71:          0          0          0          0 GIC-0 210 Edge      rxdma2host-destination-ring-mac2
 72:       2435          0          0          0 GIC-0 321 Edge      reo2host-status
 73:     268427       8011          0          0 GIC-0 261 Edge      ppdu-end-interrupts-mac1
 74:          2          0          0          0 GIC-0 255 Edge      rxdma2host-monitor-status-ring-mac1
 75:     176169          0          4      10035 GIC-0 263 Edge      ppdu-end-interrupts-mac3
 76:          2          0          0          0 GIC-0 260 Edge      rxdma2host-monitor-status-ring-mac3
 77:          0          0          0          0 GIC-0 262 Edge      ppdu-end-interrupts-mac2
 78:          0          0          0          0 GIC-0 256 Edge      rxdma2host-monitor-status-ring-mac2
 79:       3428       3123          0          0 GIC-0 189 Edge      wbm2host-tx-completions-ring1
 80:          0          0          0          0 GIC-0 323 Edge      reo2ost-exception
 81:        178          0          0          0 GIC-0 322 Edge      wbm2host-rx-release
 82:          0          0          0          0 GIC-0 212 Edge      host2rxdma-host-buf-ring-mac1
 83:       6524          0      13712          0 GIC-0 190 Edge      wbm2host-tx-completions-ring2
 84:          4          0          0          0 GIC-0 235 Edge      host2rxdma-host-buf-ring-mac3
 85:        560          0          0       1979 GIC-0 191 Edge      wbm2host-tx-completions-ring3
 86:          0          0          0          0 GIC-0 215 Edge      host2rxdma-host-buf-ring-mac2
 87:       4520          0          0          0 GIC-0 267 Edge      reo2host-destination-ring1
 88:       2231       2811          0          0 GIC-0 268 Edge      reo2host-destination-ring2
 89:       2180          0       2512          0 GIC-0 271 Edge      reo2host-destination-ring3
 90:       1990          0          0       2321 GIC-0 320 Edge      reo2host-destination-ring4
```

3.) Added `uci-defaults` script `15_smp_affinity` to configure defaults
    options on first boot.

Signed-off-by: Sean Khan <datapronix@protonmail.com>
2024-04-12 13:22:12 +02:00
Robert Marko
076f945dfb qualcommax: drop 6.1 support
We have defaulted to 6.6 for a while so its time to completely drop 6.1
so new devices dont have to include patches for 6.1.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-04-11 17:26:47 +02:00
Robert Marko
923d7c5531
mediatek: filogic: add support for Edgecore EAP111
HW specifications:
* Mediatek MT7981A
* 256MB SPI-NAND
* 512MB DRAM
* Uplink: 1 x 10/100/1000Base-T Ethernet, Auto MDIX, RJ-45 with 802.3at
PoE (Built-in GBe PHY)
* LAN: 1 x 10/100/1000Base-T Ethernet, Auto MDIX, RJ-45 (Airoha EN8801SC)
* 1 Tricolor LED
* Reset button
* 12V/2.0A DC input

Installation:
Board comes with OpenWifi/TIP which is OpenWrt based, so sysupgrade can
be used directly over SSH.

Signed-off-by: Robert Marko <robert.marko@sartura.hr>
2024-04-11 13:25:11 +02:00
Robert Marko
2dba4308d1
mediatek: add Airoha EN8801SC PHY driver
Airoha EN8801SC PHY is a gigabit PHY used on Edgecore EAP111 so, include
the MTK driver with some cleanups.

Unfortunatelly, there is no specification sheet nor datasheet available
in order to demistify the magic PBUS writes and work on upstreaming
this driver.

Signed-off-by: Robert Marko <robert.marko@sartura.hr>
2024-04-11 13:10:15 +02:00
Daniel Golle
98f9154316 generic: 6.1, 6.6: import two pending patches for mt7530 DSA driver
First patch allows to inquire and modify Energy-Efficient-Ethernet
(EEE) settings via ethtool and thereby override the default setting of
a board done via bootstrap pins.

The second patch fixes a long-standing issue with STP (and similar
protocols) when using boards (or SoCs) governed by the mt7530 DSA
driver.

Both patches could also be (dirty-)applied to Linux 5.15, but I'd
rather just wait for that to happen via linux-stable to avoid the
mess.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-04-10 18:50:32 +01:00
Daniel Golle
4354b34f6f generic: 6.6: sync mt7530 DSA driver with upstream
Backport lots upstream changes, many of them fixes, for the mt7530 DSA
driver, similar to how it was done for Linux 6.1 in the previous commit.

The remaining differences compared to the upstream driver are only
the 'slave' -> 'user', 'master' -> 'conduit' language change in DSA
and the rename of 'struct ethtool_eee' to 'struct ethtool_keee' as
well as tree-wide replacement of ethtool_sprintf with ethtool_puts,
all of them do not have any functional impact.

Apart from some minor bug fixes and style improvements the switch
should now behave more conformant when it comes to link-local frames,
and we will again be able to cleanly pick patches from upstream.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-04-10 18:50:32 +01:00
Daniel Golle
401a6ccfaf generic: 6.1: sync mt7530 DSA driver with upstream
Backport lots upstream changes, many of them fixes, for the mt7530 DSA
driver. Some of them may or may not find they way into Linux 6.1
stable, some certainly won't because they are fixes for backported
commits which aren't even present in Linux 6.1 upstream.

Apart from adding new patches, also remove mutated patch
723-net-mt7531-ensure-all-MACs-are-powered-down-before-r.patch
which should never have been added for Linux 6.1 -- it was applied
already upstream but coincidentally would fuzzy-apply in the wrong
place as well (for MT7530 instead of MT7531). While that didn't really
hurt anyone it is just unneeded.

The other deleted patch
795-mt7530-register-OF-node-for-internal-MDIO-bus.patch
has been replaced by an equivalent commit with a more complete patch
description by upstream maintainer Arınç Ünal.

The remaining differences compared to the upstream driver are:
 * C22/C45 MDIO ops aren't split
   Upstream did that, backporting it would require making changes to
   *all* DSA drivers
 * 'slave' -> 'user', 'master' -> 'conduit' language change in DSA
 * support for selecting preferred CPU port on MT7531
   Also this would require too many DSA framework changes potentially
   affecting other devices. If we ever really use Linux 6.1 in a
   release (I hope not) we can still reconsider to make the effort to
   backport that.

In addition to some minor bug fixes and style improvements the switch
should now behave more conformant when it comes to link-local frames,
and we will again be able to cleanly pick patches from upstream.

MAINTAIERS NOTE:
Three patches are already part of Linux stable and should be removed with
the next minor kernel version bump:
789-STABLE-01-net-dsa-mt7530-prevent-possible-incorrect-XTAL-frequ.patch
789-STABLE-02-net-dsa-mt7530-fix-link-local-frames-that-ingress-vl.patch
789-STABLE-03-net-dsa-mt7530-fix-handling-of-all-link-local-frames.patch

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-04-10 18:50:32 +01:00
Daniel Golle
a68eb99191 generic: add missing patch headers
Make sure all patches can be applied to a git tree using 'git am'
by adding missing patch headers where needed.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-04-09 17:54:08 +01:00
Daniel Golle
1ae3c53466 mediatek: filogic: switch TP-LINK XDR series to fitblk
Instead of using the deprecated FIT partition parser, use the new
fitblk driver instead.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-04-09 15:07:41 +01:00
Daniel Golle
d4e8653e1e mvebu: puzzle-m90x: wipe rootfs_data on sysupgrade
The sysupgrade formware of the Puzzle series is a slightly strange
dual-boot approach while remaining compatible with Marvell's SDK
firmware upgrade binary format -- which happens to be a full-disk
image with GPT partition table. Hence that /lib/upgrade/emmc-puzzle.sh
script is like an exotic disease which results from those decisions,
and as we also want to somehow stay compatible with the IEI-World
stock firmware we got to use it in that same way (we are not
compatible with the QNAP-branded identical hardware device anyway).

Currently, on sysupgrade the result is that one ends up with the old
content of rootfs_data (a GPT partition on those devices) as nothing
ever wipes or in any way re-creates the filesystem there. As a simple
work-around, let's kill the filesystem on rootfs_data so fstools
re-formats it on the next boot.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-04-09 14:59:03 +01:00
Robert Marko
7c39a95a2f sdk: include lib/crtsavres.o for powerpc
Trying to link certain kernel modules like dahdi-linux when building with
the OpenWrt SDK will fail with:
openwrt-sdk-apm821xx-sata_gcc-13.2.0_musl.Linux-x86_64/staging_dir/toolchain-powerpc_464fp_gcc-13.2.0_musl/bin/powerpc-openwrt-linux-musl-ld: cannot find arch/powerpc/lib/crtsavres.o: No such file or directory

Previously this worked with the PowerPC SDK since we carried a hack that
was passing --save-restore-funcs to module LDFLAGS so the linker provided
the required functions automatically as without --save-restore-funcs it
doesnt do so automatically on relocatable links and as a sideffect did not
require the kernel provided crtsaves.o to link against.

Now that hack has been removed as upstream kernel now compiles crtsaves.o
by default so it can be linked against but its not included in the SDK.

So, lets include lib/crtsavres.o when SDK is generated for PowerPC.

Fixes: 99c9d8abd6 ("kernel: bump 5.15 to 5.15.148")
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-04-09 11:13:18 +02:00
Sean Khan
d606b84c4e qualcommax: Skip compiling unnecessary dtbs
Currently the compile phase of the kernel builds `Image dtbs modules`.
However, none of the dtbs that get built are used for the final image.

This ends up unnecessarily taking CPU cycles and produces a lot of
`WARNINGS` that can lead users to believe there's cause for concern. I
believe the same principle can be applied to other targets.

```
DTC     arch/arm64/boot/dts/qcom/msm8996-mtp.dtb
arch/arm64/boot/dts/qcom/msm8996.dtsi:2954.36-2962.5: Warning (clocks_property):
/soc/clock-controller@6400000: Missing property '#clock-cells' in node
/soc/mailbox@9820000 or bad phandle (referred from clocks[2])

DTC     arch/arm64/boot/dts/qcom/msm8996-sony-xperia-tone-dora.dtb
arch/arm64/boot/dts/qcom/msm8996.dtsi:2954.36-2962.5: Warning (clocks_property):
/soc/clock-controller@6400000: Missing property '#clock-cells' in node
/soc/mailbox@9820000 or bad phandle (referred from clocks[2])

DTC     arch/arm64/boot/dts/qcom/msm8996-sony-xperia-tone-kagura.dtb
arch/arm64/boot/dts/qcom/msm8996.dtsi:2954.36-2962.5: Warning (clocks_property):
/soc/clock-controller@6400000: Missing property '#clock-cells' in node
/soc/mailbox@9820000 or bad phandle (referred from clocks[2])

DTC     arch/arm64/boot/dts/qcom/msm8996-sony-xperia-tone-keyaki.dtb
arch/arm64/boot/dts/qcom/msm8996.dtsi:2954.36-2962.5: Warning (clocks_property):
/soc/clock-controller@6400000: Missing property '#clock-cells' in node
/soc/mailbox@9820000 or bad phandle (referred from clocks[2])

DTC     arch/arm64/boot/dts/qcom/msm8996-xiaomi-gemini.dtb
arch/arm64/boot/dts/qcom/msm8996.dtsi:2954.36-2962.5: Warning (clocks_property):
/soc/clock-controller@6400000: Missing property '#clock-cells' in node
/soc/mailbox@9820000 or bad phandle (referred from clocks[2])

DTC     arch/arm64/boot/dts/qcom/msm8996-xiaomi-natrium.dtb
arch/arm64/boot/dts/qcom/msm8996.dtsi:2954.36-2962.5: Warning (clocks_property):
/soc/clock-controller@6400000: Missing property '#clock-cells' in node
/soc/mailbox@9820000 or bad phandle (referred from clocks[2])

DTC     arch/arm64/boot/dts/qcom/msm8996-xiaomi-scorpio.dtb
arch/arm64/boot/dts/qcom/msm8996.dtsi:2954.36-2962.5: Warning (clocks_property):
/soc/clock-controller@6400000: Missing property '#clock-cells' in node
/soc/mailbox@9820000 or bad phandle (referred from clocks[2])
```

Signed-off-by: Sean Khan <datapronix@protonmail.com>
2024-04-08 16:24:12 -04:00
Paul Spooren
d997477775 treewide: remove implicit SUBTARGET
Historically it's possible to leave the `SUBTARGETS` undefined and
automatically fallback to a "generic" subtarget. This however breaks
various downstream scripts which may have expectations around filenames:

While some targets with an explicit generic subtarget contain `generic`
in the filenames of artifacts, implicit "subtargets" don't.

Right now this breaks the CI[1], possibly also scripts using the ImageBuilders.

This commit removes all code that support implicit handling of
subtargets and instead requires every target to define "SUBTARGETS".

[1]: https://github.com/openwrt/openwrt/actions/runs/8592821105/job/23548273630

Signed-off-by: Paul Spooren <mail@aparcar.org>
2024-04-08 21:53:05 +02:00
Paul Spooren
3ce1e4c3d3 d1: define subtarget specifically
Historically it's possible to leave the `SUBTARGETS` undefined and
automatically fallback to a "generic" subtarget. This however breaks
various downstream scripts which may have expectations around filenames:

While some targets with an explicit generic subtarget contain `generic`
in the filenames of artifacts, implicit "subtargets" don't.

Right now this breaks the CI[1], possibly also scripts using the ImageBuilders.

Do to the D1 target what's done to other target, explicitly define the
"generic" subtarget.

[1]: https://github.com/openwrt/openwrt/actions/runs/8592821105/job/23548273630

Signed-off-by: Paul Spooren <mail@aparcar.org>
2024-04-08 21:52:51 +02:00
Mirko Vogt
0688cf5aeb realtek: add support for switch Zyxel GS1900-24EP
This device is very similar to the GS1900-24E switch (added in b515ad1),
except that the first 12 of 24 ethernet ports are capable of PoE and the
physical jacks are in the right order - unlike for the GS1900-24E, where
even and uneven ports are flipped (up <-> down on panel).

Zyxel version code for this device (-24EP) is: ABTO

Signed-off-by: Mirko Vogt <mirko-openwrt@nanl.de>
2024-04-08 21:31:55 +02:00
Álvaro Fernández Rojas
6512333518 bcm27xx: bcm2712: backport RP1 interrupt affinity
Support for setting the CPU affinity on RP1 has been added to RPi linux v6.6

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2024-04-07 22:12:42 +02:00
Álvaro Fernández Rojas
20fe7e687e bcm27xx: update 6.1 patches from RPi foundation
Sync 6.1 patches with the RPi foundation.
Since rpi-6.6.y is now the main branch of the RPi foundation, there won't be
any new patches for linux 6.1.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2024-04-07 22:12:42 +02:00
Christian Marangi
449b5701d7
generic: backport at803x kernel panic fix
Backport at803x kernel panic fix merged upstream for kernel 6.1 and 6.6.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-04-07 16:57:22 +02:00
Robert Marko
153c9f3482 generic: 6.6: backport arm64 swiotlb default size reduction
Kernel 6.6 added dynamic SWIOTLB allocation, but with it also started
allocating 64MB of the SWIOTLB bounce buffer by default which is quite a
lot of memory on most OpenWrt devices.

Luckily in kernel 6.7 arm64 received an optimization that reduces that
default size to 1MB per 1GB of RAM if certain criteria was met.

So in order to reclaim back 63MB of RAM which brought some ipq807x devices
close to OOM under load lets backport the upstream commit.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-04-07 14:28:53 +02:00
Mieczyslaw Nalewaj
2b6fb2dfba x86: geode: 6.6: add missing kernel options
Add options removed by `make kernel_oldconfig CONFIG_TARGET=subtarget', missing which causes compilation to stop and cause an error.

Fixes: 2a86425de1 ("x86: 6.6: refresh kernel config")
Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-04-07 11:29:30 +02:00
John Audia
5c2eca676a kernel: bump 6.6 to 6.6.24
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.24

Removed upstreamed:
	generic/backport-6.6/838-v6.9-leds-trigger-netdev-Fix-kernel-panic-on-interface-re.patch[1]
	generic/backport-6.6/981-mtd-spinand-Add-support-for-5-byte-IDs.patch[2]
	mediatek/patches-6.6/831-thermal-drivers-mediatek-Fix-control-buffer-enablement-on-MT7896.patch[3]

Removed:
	ipq40xx/patches-6.6/110-mtd-limit-OTP-nvmem-to-non-nand-devices.patch[4]

All other patches automatically rebased.

1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.24&id=10f2af1af8ab8a7064f193446abd5579d3def7e3
2. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.24&id=9c74507e6c4382d12a5e418742b81fd441f03313
3. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.24&id=fe750e2744428be6aec7395b13df3b34381ce6b6
4. Acknowledgment to @DragonBlurp for pointing out the redundancy of this patch. dd78a59cd7

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

Signed-off-by: John Audia <therealgraysky@proton.me>
2024-04-05 14:43:44 -04:00
Mieczyslaw Nalewaj
4d3f41130e ipq806x: 6.6: refresh patches
Refresh patches for kernel 6.6.23 with make target/linux/refresh.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-04-05 17:32:21 +02:00
Zoltan HERPAI
5713032fd4 pistachio: add 6.1 testing kernel
Configure 6.1 as testing kernel.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2024-04-05 15:37:38 +02:00
Zoltan HERPAI
91ce93a893 pistachio: refresh 6.1 config
Kernel config needs to be refreshed after copy from 5.15.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2024-04-05 15:37:37 +02:00
Zoltan HERPAI
47dee7be55 pistachio: update and extend 6.1 patches
Add:
110-pwm-img-fix-clock-lookup.patch
 - patch to fix a clock lookup issue from upstream
Update:
401-mtd-nor-support-mtd-name-from-device-tree.patch
 - mtd-name lookup hack to reflect the updated spi_nor_scan function

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2024-04-05 15:37:36 +02:00
Zoltan HERPAI
05fe149486 pistachio: copy config and patches of 5.15 to 6.1
Simple copy of config and patches.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2024-04-05 15:37:34 +02:00
Mieczyslaw Nalewaj
46efc77502 ipq40xx: 6.6: remove redundant patch
Remove file 110-mtd-limit-OTP-nvmem-to-non-nand-devices.patch redundand after adding 440-mtd-don-t-look-for-OTP-legacy-NVMEM-cells-if-proper-.patch in dd78a59

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-04-05 09:28:00 +02:00
Mieczyslaw Nalewaj
c72c35d664 kirkwood: 6.6: refresh patches
Refresh patches for kernel 6.6.23 with make target/linux/refresh.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-04-05 09:27:45 +02:00
Christian Lamparter
bc014392a4 apm821xx: restore 6.1 config+patches
simply attached previous versions of the
config-6.1 and patches-6.1 directory.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2024-04-05 09:26:26 +02:00
Christian Lamparter
56db0210a2 apm821xx: add 6.6 testing kernel
refreshed kernel config + patches

otherwise same as 6.1/5.15.

Tested on: WNDAP620, WNDAP660, MyBook Live Single, MR24, MX60, WNDR4700
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2024-04-05 09:26:26 +02:00
Christian Lamparter
82c8c38a5c apm821xx: prepare WNDR4700 for 6.6 - add preliminary u-boot-env access
With the default BUILD_BOT configuration on a linux 6.6 kernel,
the WNDR4700's kernel no longer fits into the alloted ~3.5MiB,
even with LZMA compression.

Bigger kernels are possible, but there's a problem with Netgear's
"bootcmd":

> if loadn_dniimg 0 0x180000 0x4e0000 && chk_dniimg 0x4e0000; then nand read 0x800000 0x180000 0x20000;bootm 0x500000 - 0x800040;else fw_recovery; fi"

This loads the dni-image starting offset 0x180000 from the NAND
flash (which is the DTB partition) to 0x4e0000 in the RAM. It then
checks whenever the provided image is "valid". If it is then it
reads the DTB again to 0x800000 in the RAM and starts the extraction
and boot process. (If the image wasn't valid then it starts the
automated firmware recovery).

The issues here are that first: the kernel image gets "squeezed"
between 0x500040 and 0x7fffff... And second, the decompressor
only has area 0x0 - 0x500000 for decompression.

Hence the image now requires to update the bootcmd by providing
new values (which have been successfully tested with the original
Netgear WNDR4700 v1.0.0.56 firmware) for the RAM locations and
make full use of the fact that loadn_dniimg loads the DTB as well.

This needs to be done only once. Just connect a serial adapter to
interface with uboot and overwrite (and save) the new bootcmd.

WARNING: The serial port needs a TTL/RS-232 3.3v level converter!

Steps:
 0. Power-off the WNDR4700
 1. Connect the serial interface (you need to open the WNDR4700)
 2. Power-up the WNDR4700
 3. Monitor the boot-sequence and hit "Enter"-key when it says:

  "Hit any key to stop autoboot" (Be quick, you have a ~2 second window)

 4. in the Prompt enter the following commands (copy & paste)

 setenv bootcmd "if loadn_dniimg 0 0x180000 0xce0000 && chk_dniimg 0xce0000; then bootm 0xd00000 - 0xce0040;else fw_recovery; fi"
 saveenv
 run bootcmd

Note: This new bootcmd will also unbrick devices that were bricked
by the bigger 4.19-6.1 kernels.

Note2: This method was tested with a WNDR4700. A big kernel with most
debug features enabled on v6.6.22 measured 4.30 MiB when compressed
with lzma. The uncompressed kernel is 12.34 MiB. This is over the 3 MiB,
the device reserves for the kernel... But it booted! For bigger kernels,
the device needs repartitioning of the the ubi partition due to the
kernel+dtb not fitting into the partition.

Note3: For initramfs development. I would advice to load the initramfs
images to 0x800000 (or higher). i.e.: tftp 800000 wndr4700.bin

Note4: the fw_recovery uboot command to transfer the factory image to
the flash still works.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2024-04-05 09:26:26 +02:00
Mieczyslaw Nalewaj
b7a9007828 ramips: 6.6: set testing kernel
Allow selecting 6.6 as testing kernel on ramips.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-04-05 07:58:15 +02:00
Mieczyslaw Nalewaj
093a5aab40 ramips: 6.6: refresh kernel config
Refresh kernel config.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-04-05 07:58:15 +02:00
Mieczyslaw Nalewaj
359a9295f2 ramips: adjusted pinctrl-aw9523 for kernel 6.6
Compatiblity with kernel 6.6 for Awinic AW9523B i2c pin controller driver.
It follows the kernel patch: i2c: Drop legacy callback .probe_new() (5eb1e6e459)
and kernel patch: gpiolib: Get rid of not used of_node member (70d0fc4288)

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-04-05 07:58:15 +02:00
Mieczyslaw Nalewaj
fddadcae43 ramips: mt7620: alignment with updated snd_soc_dai_driver structure
Fix error: 'struct snd_soc_dai_driver' has no member named 'remove'
It follows the kernel patch: ASoC: soc-dai.h: remove unused call back functions (446b31e894)

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-04-05 07:58:15 +02:00
Shiji Yang
c5dee97d87 generic: fix detect_memory_region() function
This patch fixes the broken detect_memory_region() function on
6.6 kernel.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
2024-04-05 07:58:15 +02:00
Mieczyslaw Nalewaj
7753b143cd ramips: 6.6: fix net drivers compatibility
Fix compatibility of ralink net drivers with kernel 6.6.
It follows the kernel patch: u64_stats: Streamline the implementation (https://github.com/torvalds/linux/commit/44b0c2957adc62b86fcd51adeaf8e993171b)

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-04-05 07:58:15 +02:00
Mieczyslaw Nalewaj
0e5fb421a9 ramips: 6.6: refresh patches
Refresh kernel patches.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-04-05 07:58:15 +02:00
Mieczyslaw Nalewaj
4b8b7438f7 ramips: 6.6: remove old patches
Remove patches for old kernel.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-04-05 07:58:15 +02:00
Mieczyslaw Nalewaj
662e8581ec kernel/ramips: Restore kernel files for v6.1
This is an automatically generated commit which aids following Kernel patch history,
as git will see the move and copy as a rename thus defeating the purpose.

See: https://lists.openwrt.org/pipermail/openwrt-devel/2023-October/041673.html
for the original discussion.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-04-05 07:58:15 +02:00
Mieczyslaw Nalewaj
7bd44e0a30 kernel/ramips: Create kernel files for v6.6 (from v6.1)
This is an automatically generated commit.

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

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-04-05 07:58:15 +02:00
Mieczyslaw Nalewaj
ed57a9f6a8 kernel/ramips: Restore kernel patches for v6.1
This is an automatically generated commit which aids following Kernel patch history,
as git will see the move and copy as a rename thus defeating the purpose.

See: https://lists.openwrt.org/pipermail/openwrt-devel/2023-October/041673.html
for the original discussion.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-04-05 07:58:15 +02:00
Mieczyslaw Nalewaj
f19f8a886b kernel/ramips: Create kernel patches for v6.6 (from v6.1)
This is an automatically generated commit.

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

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-04-05 07:58:15 +02:00
Pawel Dembicki
c7d83d4379 kirkwood: add 6.6 kernel as testing version
This patch introduce kernel 6.6 for kirkwood target as testing version.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2024-04-04 18:31:21 +02:00
Pawel Dembicki
3b5b3d89ed kirkwood: split files into 6.1 and 6.6 version
Upstream change location of kirkwood dts files.
Split downstream files location for better upstream follow.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2024-04-04 18:31:21 +02:00
Pawel Dembicki
4e3093d90a kirkwood: kernel: refresh 6.6 config
Done by 'make kernel_oldconfig'.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2024-04-04 18:31:21 +02:00
Pawel Dembicki
70dd237ebd kirkwood: refresh 6.6 patches
Removed upstream merged:
002-6.2-ARM-dts-kirkwood-Add-Zyxel-NSA310S-board.patch
003-6.5-ARM-dts-kirkwood-Add-Endian-4i-Edge-200-board.patch
004-6.4-ARM-dts-kirkwood-Add-missing-phy-mode-and-fixed-link.patch
005-6.7-net-dsa-mv88e6xxx-fix-marvell-6350-switch-probing.patch

Manually refreshed:
100-ib62x0.patch
101-iconnect.patch
102-dockstar.patch
103-iomega-ix2-200.patch
105-linksys-viper-dts.patch
106-goflexnet.patch
107-01-zyxel-nsa3x0-common-nand-partitions.patch
107-03-nsa325.patch
109-pogoplug_v4.patch
110-pogo_e02.patch
111-l-50.patch
112-sheevaplug.patch
113-readynas_duo_v2.patch
114-ctera-c-200-v1.patch
115-nsa310s.patch
116-4i-edge-200.patch
117-netgear_stora.patch
203-blackarmor-nas220.patch

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2024-04-04 18:31:21 +02:00
Pawel Dembicki
398fa87ef0 kernel/kirkwood: Restore kernel files for v6.1
This is an automatically generated commit which aids following Kernel patch history,
as git will see the move and copy as a rename thus defeating the purpose.

See: https://lists.openwrt.org/pipermail/openwrt-devel/2023-October/041673.html
for the original discussion.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2024-04-04 18:31:21 +02:00
Pawel Dembicki
a1201f9144 kernel/kirkwood: Create kernel files for v6.6 (from v6.1)
This is an automatically generated commit.

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

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2024-04-04 18:31:21 +02:00
Isaev Ruslan
9ef4f7f919 qualcommax: ipq60xx: add yuncore fap650 support
This commit adds support for the Yuncore FAP650 device.

Specifications:
- Qualcomm IPQ6018+QCA8075+QCN5022+QCN5052
- 512 MB of RAM (DDR3)
- 8 MB of serial flash (SPI NOR)
- 128 MB of parallel flash (NAND)
- 2x2 2.4 GHz WiFi (IPQ6010)
- 2x2 5 GHz WiFi (IPQ6010)
- 2x 2dBi 2.4G MIMO antenna
- 2x 3dBi 5.8G MIMO antenna
- 5x 1 Gbps Ethernet (QCA8075)
- POE: 48V (IEEE 802.3af)
- power: 12V (~1.5A)
- 1x passthru port (rj45 - rj45)
- 1x cisco rj45 console port
- size: 160mm*86mm*29mm

BACKUP YOUR STOCK FIRMWARE:
```
export device=fap650
mkdir -p /tmp/fw_dump_$device
cd /tmp/fw_dump_$device
dmesg > dmesg_$device.log
dtc -I fs /sys/firmware/devicetree/base > $device.dts
cat /proc/device-tree/model > model
cat /proc/mtd > proc_mtd
while read p; do
mtd_dev=$(echo $p | cut -d: -f1)
echo $mtd_dev
dd if=/dev/$mtd_dev of=$mtd_dev
done < proc_mtd
md5sum * > md5sum.log
tar -cvzf ../$device.tar.gz .
export sum=$(md5sum /tmp/$device.tar.gz | cut -d' ' -f1)
mv ../$device.tar.gz /tmp/${device}_${sum}.tar.gz
echo fw backup saved to: /tmp/${device}_${sum}.tar.gz
```
Upload your backup via tftp to the safe place.

INSTALLATION:
1. stock firmware web ui
Rename factory.bin fw image file to factory.ubin. Flash this image
like ordinary stock fw upgrade.

2. stock firmware telnet method
Enter telnet cli (login: root, password: 476t*_f0%g09y) and upload
 factory.bin fw image and rename it to factory.ubin
`cd /tmp && wget <your_web_server_ip>/factory.ubin`
`sysupgrade factory.ubin

3. initramfs method
    Put imitramfs image to your TFTP server and rename it for example to fap650.initram
    Enable serial console and enter to the u-boot cli.
    Exec these commands:
    `tftpboot <your_tftp_server_ip>:fap650.initram`
    `dhcp`

    When downloading is finished:
    `bootm`
    After booting the device, you need to upload to the device factory.ubi fw image.
    ```
    cd /tmp && wget <your_web_server_ip>/factory.ubi`
    export rootfs=$(cat /proc/mtd | grep rootfs | cut -d: -f1)
    export rootfs_1=$(cat /proc/mtd | grep rootfs_1 | cut -d: -f1)
    ubiformat /dev/${rootfs} -y -f factory.ubi
    ubiformat /dev/${rootfs_1} -y -f factory.ubi
    reboot
    ```

4. u-boot factory.ubi image method
    Put factory.ubi to your TFTP server
    Enter u-boot cli and exec these commands:
    `tftpboot <your_tftp_server_ip>:factory.ubi`
    `dhcp`
    After downloading is finished:
    `flash rootfs`
    `flash rootfs_1`
    `reset`

STOCK FIRMWARE RECOVERY:
Boot initramfs image.
Upload your rootfs mtd partition to the device using scp or download
it from the device using wget.
Enter device ssh cli and exec:
```
cd /tmp && wget <your_web_server_ip>/rootfs_mtd`
export rootfs=$(cat /proc/mtd | grep rootfs | cut -d: -f1)
export rootfs_1=$(cat /proc/mtd | grep rootfs_1 | cut -d: -f1)
ubiformat /dev/${rootfs} -y -f /tmp/rootfs_mtd
ubiformat /dev/${rootfs_1} -y -f /tmp/rootfs_mtd
reboot
```

Signed-off-by: Isaev Ruslan <legale.legale@gmail.com>
2024-04-04 09:29:17 +02:00
Mieczyslaw Nalewaj
1e7033d188 x86: 6.6: set testing kernel
Allow selecting 6.6 as testing kernel on x86.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-04-04 08:56:10 +02:00
Mieczyslaw Nalewaj
2a86425de1 x86: 6.6: refresh kernel config
Refresh kernel config.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-04-04 08:56:10 +02:00
Mieczyslaw Nalewaj
69b145188f generic: 6.6: Removal of tools_portability.patch already included in kernel 6.6
Removal of tools_portability.patch already included in kernel 6.6

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-04-04 08:56:10 +02:00
Elliott Mitchell
01ff257dce kernel/x86: remove legacy 5.15 kernel config
Missed when removing the other 5.15 kernel configurations.

Fixes: b8ec063b38 ("x86: remove unused 5.15 kernel configs and patches")
Signed-off-by: Elliott Mitchell <ehem+openwrt@m5p.com>
2024-04-04 08:56:10 +02:00
Mieczyslaw Nalewaj
9e6fe7ddd2 x86: 6.6: refresh patches
Refresh kernel patches.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-04-04 08:56:10 +02:00
Mieczyslaw Nalewaj
391c5089be kernel/x86: Restore kernel patches for v6.1
This is an automatically generated commit which aids following Kernel patch history,
as git will see the move and copy as a rename thus defeating the purpose.

See: https://lists.openwrt.org/pipermail/openwrt-devel/2023-October/041673.html
for the original discussion.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-04-04 08:56:10 +02:00
Mieczyslaw Nalewaj
e893ccb2b3 kernel/x86: Create kernel patches for v6.6 (from v6.1)
This is an automatically generated commit.

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

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-04-04 08:56:10 +02:00
Mieczyslaw Nalewaj
19910da69d kernel/x86: Restore kernel files for v6.1
This is an automatically generated commit which aids following Kernel patch history,
as git will see the move and copy as a rename thus defeating the purpose.

See: https://lists.openwrt.org/pipermail/openwrt-devel/2023-October/041673.html
for the original discussion.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-04-04 08:56:10 +02:00
Mieczyslaw Nalewaj
6fce6e1560 kernel/x86: Create kernel files for v6.6 (from v6.1)
This is an automatically generated commit.

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

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-04-04 08:56:10 +02:00
Robert Marko
7a78b22dc8 mvebu: 6.6: refresh patches
Well, it seems that we have a patch that was not refreshed and CI is
complaining, so refresh it.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-04-03 18:42:26 +02:00
Stijn Segers
ed893a3cc1 mvebu: add 6.6 testing kernel
Add 6.6 testing kernel for mvebu target.

Signed-off-by: Stijn Segers <foss@volatilesystems.org>
2024-04-03 17:49:53 +02:00
Stijn Segers
ab2fe43163 mvebu: cortexa9: set DTS dir for 6.6
With 6.6, all DTSes were moved to their vendor subdirectories. ARM64
DTSes already used this scheme, but 32 bit Cortex A9 did not, prior
to 6.6. Introduce a kernel version check to keep backward compatibility
with 6.1.

Suggested-by: Robert Marko <robimarko@gmail.com>
Signed-off-by: Stijn Segers <foss@volatilesystems.org>
2024-04-03 17:49:53 +02:00
Stijn Segers
2260ec4fb7 mvebu: 6.6: refresh patches
Manually refreshed:
 * 309-linksys-status-led.patch
 * 310-linksys-use-eth0-as-cpu-port.patch
 * 320-arm-dts-armada-370-synology-ds213j-mtd-parts.patch
 * 701-mvpp2-read-mac-address-from-nvmem.patch
 * 902-drivers-mfd-Add-a-driver-for-IEI-WT61P803-PUZZLE-MCU.patch

All other patches automatically refreshed.

Signed-off-by: Stijn Segers <foss@volatilesystems.org>
2024-04-03 17:49:53 +02:00
Stijn Segers
ad5e73fe0a mvebu: 6.6: remove upstreamed patches
000-cpufreq-armada-8k-add-ap807-support.patch was upstreamed.

Signed-off-by: Stijn Segers <foss@volatilesystems.org>
2024-04-03 17:49:53 +02:00
Stijn Segers
20024ab7c3 mvebu: 6.6: adjust 32 bit ARM DTS path
As of 6.6, all upstream DTSes are moved to their respective vendor subdir.
OpenWrt already followed this practice for ARM64, but not yet for 32 bit
ARM (Armada 37x/38x).

Signed-off-by: Stijn Segers <foss@volatilesystems.org>
2024-04-03 17:49:53 +02:00
Stijn Segers
4671a92de3 mvebu: 6.6: copy files, patches & configs from 6.1
Copy all mvebu 6.1 specific files, patches and configs to 6.1.

Signed-off-by: Stijn Segers <foss@volatilesystems.org>
2024-04-03 17:49:53 +02:00
Stijn Segers
9abfdc3ada mvebu: move files to files-6.1
DTS paths for 32 bit ARM devices changed with 6.6, move files/ to
files-6.1 to prep for kernel 6.6 introduction.

Signed-off-by: Stijn Segers <foss@volatilesystems.org>
2024-04-03 17:49:53 +02:00
Mieczyslaw Nalewaj
0b10e5a5dc bcm27xx: refresh patches
Refresh patches for kernel 6.1.82 with make target/linux/refresh.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-04-03 11:47:18 +02:00
Christian Marangi
ac0e2194ab
ipq806x: add kernel 6.6 as a testing kernel version
Add and enable kernel 6.6 as a testing kernel version.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-04-02 23:46:02 +02:00
Christian Marangi
75acc621be
ipq806x: 6.6: update config file with missing symbol
Update config file with missing symbol added with kernel 6.6.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-04-02 23:46:01 +02:00
Christian Marangi
224f2fd567
ipq806x: 6.6: refresh kernel patches
Refresh kernel patches using make target/linux/refresh.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-04-02 23:46:01 +02:00
Christian Marangi
4693100b3f
ipq806x: 6.6: add pending patch fixing nandc with new kernel
Add pending patch fixing nandc with new kerenel due to broken convertion
to new nand API. Patch has been sent upstream and will be backported to
stable kernel if accepted.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-04-02 23:46:01 +02:00
Christian Marangi
a0cbf7f5d5
ipq806x: 6.6: rework kernel patches for new kernel
Rework kernel patches for new kernel. Mainly adaptation for patch
related to DTS and changes for the downstream div generalize patch that
now use determine_rate.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-04-02 23:46:01 +02:00
Christian Marangi
a705c8c681
ipq806x: 6.6: drop upstream kernel patches
Drop upstream kernel patches that were straight backport.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-04-02 23:46:00 +02:00
Christian Marangi
d840d1fdf9
ipq806x: split files in 6.1 and 6.6 dedicated directory
Since with recent kernel version DTS moved to a dedicated directory,
it's required to split files to per kernel version to follow kernel
version directory structure.

Also makes use of DEVICE_DTS_DIR to target the correct DTS directory
based on the kernel version.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-04-02 23:46:00 +02:00
Christian Marangi
3bf06ea9b3
kernel/ipq806x: Restore kernel files for v6.1
This is an automatically generated commit which aids following Kernel patch history,
as git will see the move and copy as a rename thus defeating the purpose.

See: https://lists.openwrt.org/pipermail/openwrt-devel/2023-October/041673.html
for the original discussion.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-04-02 23:46:00 +02:00
Christian Marangi
a2bd0a7ef0
kernel/ipq806x: Create kernel files for v6.6 (from v6.1)
This is an automatically generated commit.

When doing `git bisect`, consider `git bisect --skip`.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-04-02 23:45:59 +02:00
Christian Marangi
032dad8818
ipq40xx: add kernel 6.6 as a testing kernel version
Add and enable kernel 6.6 as a testing kernel version.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-04-02 23:45:21 +02:00
Christian Marangi
dbd0bc7cf9
generic: 6.6: add missing config symbol
Add missing config symbol while adding support for kernel 6.6 for target
ipq806x.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-04-02 23:45:21 +02:00
Christian Marangi
f632e92951
ipq40xx: 6.6: update config file with missing symbol
Update config file with missing symbol added with kernel 6.6.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-04-02 23:45:21 +02:00
Christian Marangi
61d1eedc2d
ipq40xx: 6.6: refresh kernel patches
Refresh kernel patches using make target/linux/refresh.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-04-02 23:45:20 +02:00
Christian Marangi
8ec76705d4
ipq806x: 6.6: add pending patch fixing mtdcore with MTD OTP
Add pending patch fixing mtdcore with MTD OTP with a fragile detection
if Nand supports OTP. Patch has been sent upstream and will be backported
to stable kernel if accepted.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-04-02 23:45:20 +02:00
Christian Marangi
82531764fe
ipq40xx: 6.6: rework kernel patches for new kernel
Rework kernel patches for new kernel. Mainly adaptation for patch
related to DTS, OOB Tagger and SDHCI patch.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-04-02 23:45:20 +02:00
Christian Marangi
5323c45d78
ipq40xx: 6.6: drop upstream kernel patches
Drop upstream kernel patches that were straight backport.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-04-02 23:45:19 +02:00
Christian Marangi
6136ebabc5
ipq40xx: 6.6: fix DTS to use reference for usb node
Fix DTS to use reference for usb node instead of redefining
them since upstream usb node names changed from usb2/3 to usb.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-04-02 23:45:19 +02:00
Christian Marangi
68c4678871
ipq40xx: split files in 6.1 and 6.6 dedicated directory
Since with recent kernel version DTS moved to a dedicated directory,
it's required to split files to per kernel version to follow kernel
version directory structure.

Also makes use of DEVICE_DTS_DIR to target the correct DTS directory
based on the kernel version.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-04-02 23:45:19 +02:00
Christian Marangi
2265413bbf
kernel/ipq40xx: Restore kernel files for v6.1
This is an automatically generated commit which aids following Kernel patch history,
as git will see the move and copy as a rename thus defeating the purpose.

See: https://lists.openwrt.org/pipermail/openwrt-devel/2023-October/041673.html
for the original discussion.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-04-02 23:45:19 +02:00
Christian Marangi
9309cfe37a
kernel/ipq40xx: Create kernel files for v6.6 (from v6.1)
This is an automatically generated commit.

When doing `git bisect`, consider `git bisect --skip`.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-04-02 23:45:18 +02:00
Mieczyslaw Nalewaj
5aa63c2b85 generic: 6.1: refresh backport patches
Refresh backport patches for kernel 6.1.82 with make target/linux/refresh.

Fixes: 06cdc07f8c ("ath79: add support for Huawei AP5030DN")
Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-04-01 13:37:52 +02:00
Tianling Shen
cc6c3a6ee8 mediatek: add support for OpenEmbed SOM7981
Hardware specification:
  SoC: MediaTek MT7981B 2x A53
  Flash: 256 MiB SPI-NAND, 32 GB eMMC optional
  RAM: 0.5/1 GB DDR4
  Ethernet: 1x 1GbE, 1x 2.5GbE (RTL8221B)
  WiFi: MediaTek MT7976C
  USB: 1x USB 3.0
  GPIO: 26-Pin header
  UART: 6 GND, 8 TX, 10 RX (in Pin header)
  Button: Reset, WPS
  Power: Type-C PD

Installation:
The board comes with a third-party custom OpenWrt image, you can upload
sysupgrade image via LuCI directly WITHOUT keeping configurations.

Or power on the board with pressing reset button for 5 second, then visit
http://192.168.1.1 and upload -factory.bin firmware.

Signed-off-by: Tianling Shen <cnsztl@gmail.com>
2024-03-31 20:20:59 +02:00
Radito Wahyu
5aca47bca1 ramips: add support for BOLT BL100
BL100 is a router made by Bolt by a provider in Indonesia
The original firmware created using Mediatek SDK and kernel 2.6.36

- Chipset: MediaTek MT7620A ver 2, eco 6
- RAM: 64 MB
- Bootloader: U Boot
- Flash: Winbond W25Q128BV (16 MB)
- Ports: 2x 10/100 Ethernet, 1x RJ-11 VoIP
- Modem: Qualcomm LTE B40 (2300 Mhz) VID:05c6 PID:9026
- Wireless: Internal MT7620A (2.4 Ghz) & Mediatek MT76x2E (5.8 Ghz)
- Switch: MediaTek MT7620A built-in 5-port 10/100M switch
- Voltage: DC 12V 1A
- Antenna Port: 2x External Antenna, 2 LTE U.FL, 2 WiFi U.FL
- Serial Port: Yes, 3.3 V TTL, Baud 57600 8N1
- Buttons: Reset and WPS
- LED: 15 Total
  - 4 blue lte, 2 red lte, 1 reset, 1 power.
  - 1 wps, 1 voip, 1 wlan2, 1 wlan5, 1 lan, 1 wan, 1 wlan.

Installation via stock firmware
1. Unlock Telnet access by downloading the backup .tar.gz file
2. Change the Telnet configuration to LAN_Telnet=1
3. Import backup configuration
4. Restart the router
5. Login to telnet with username and password = admin : db40
6. Download sysupgrade binary and mtd_write to the kernel partition
`mtd_write write openwrt-bolt_bl100-squashfs-sysupgrade.bin Kernel`

Signed-off-by: Radito Wahyu <arditogits@gmail.com>
2024-03-31 20:07:45 +02:00
Roland Reinl
29cca6cfee filogic: Add support for D-Link AQUILA PRO AI M30
Specification:
 - MT7981 CPU using 2.4GHz and 5GHz WiFi (both AX)
 - MT7531 switch
 - 512MB RAM
 - 128MB NAND flash with two UBI partitions with identical size
 - 1 multi color LED (red, green, blue, white) connected via GCA230718
 - 3 buttons (WPS, reset, LED on/off)
 - 1 1Gbit WAN port
 - 4 1Gbit LAN ports

Disassembly:
 - There are four screws at the bottom: 2 under the rubber feets, 2 under the label.
 - After removing the screws, the white plastic part can be shifted out of the blue part.
 - Be careful because the antennas are mounted on the side and the top of the white part.

Serial Interface
 - The serial interface can be connected to the 4 pin holes on the side of the board.
 - Pins (from front to rear):
   - 3.3V
   - RX
   - TX
   - GND
 - Settings: 115200, 8N1

MAC addresses:
 - WAN MAC is stored in partition "Odm" at offset 0x81
 - LAN (as printed on the device) is WAN MAC + 1
 - WLAN MAC (2.4 GHz) is WAN MAC + 2
 - WLAN MAC (5GHz) is WAN MAC + 3

Flashing via Recovery Web Interface:
 - The recovery web interface always flashes to the currently active partition.
 - If OpenWrt is flahsed to the second partition, it will not boot.
 - Ensure that you have an OEM image available (encrypted and decrypted version). Decryption is described in the end.
 - Set your IP address to 192.168.200.10, subnetmask 255.255.255.0
 - Press the reset button while powering on the device
 - Keep the reset button pressed until the LED blinks red
 - Open a Chromium based and goto http://192.168.200.1 (recovery web interface)
 - Download openwrt-mediatek-filogic-dlink_aquila-pro-ai-m30-a1-squashfs-recovery.bin
 - The recovery web interface always reports successful flashing, even if it fails
 - After flashing, the recovery web interface will try to forward the browser to 192.168.0.1 (can be ignored)
 - If OpenWrt was flashed to the first partition, OpenWrt will boot (The status LED will start blinking white and stay white in the end). In this case you're done and can use OpenWrt.
 - If OpenWrt was flashed to the second partition, OpenWrt won't boot (The status LED will stay red forever). In this case, the following steps are reuqired:
   - Start the web recovery interface again and flash the **decrypted OEM image**. This will be flashed to the second partition as well. The OEM firmware web interface is afterwards accessible via http://192.168.200.1.
   - Now flash the **encrypted OEM image** via OEM firmware web interface. In this case, the new firmware is flashed to the first partition. After flashing and the following reboot, the OEM firmware web interface should still be accessible via http://192.168.200.1.
   - Start the web recovery interface again and flash the OpenWrt recovery image. Now it will be flashed to the first partition, OpenWrt will boot correctly afterwards and is accessible via 192.168.1.1.

Flashing via U-Boot:
 - Open the case, connect to the UART console
 - Set your IP address to 192.168.200.2, subnet mask 255.255.255.0. Connect to one of the LAN interfaces of the router
 - Run a tftp server which provides openwrt-mediatek-filogic-dlink_aquila-pro-ai-m30-a1-initramfs-kernel.bin.
 - Power on the device and select "7. Load image" in the U-Boot menu
 - Enter image file, tftp server IP and device IP (if they differ from the default).
 - TFTP download to RAM will start. After a few seconds OpenWrt initramfs should start
 - The initramfs is accessible via 192.168.1.1, change your IP address accordingly (or use multiple IP addresses on your interface)
 - Perform a sysupgrade using openwrt-mediatek-filogic-dlink_aquila-pro-ai-m30-a1-squashfs-sysupgrade.bin
 - Reboot the device. OpenWrt should start from flash now

Revert back to stock using the Recovery Web Interface:
 - Set your IP address to 192.168.200.2, subnetmask 255.255.255.0
 - Press the reset button while powering on the device
 - Keep the reset button pressed until the LED blinks red
 - Open a Chromium based and goto http://192.168.200.1 (recovery web interface)
 - Flash a decrypted firmware image from D-Link. Decrypting an firmware image is described below.

Decrypting a D-Link firmware image:
 - Download https://github.com/RolandoMagico/firmware-utils/blob/M32/src/m32-firmware-util.c
 - Compile a binary from the downloaded file, e.g. gcc m32-firmware-util.c -lcrypto -o m32-firmware-util
 - Run ./m32-firmware-util M30 --DecryptFactoryImage <OriginalFirmware> <OutputFile>
 - Example for firmware M30A1_FW101B05: ./m32-firmware-util M30 --DecryptFactoryImage M30A1_FW101B05\(0725091522\).bin M30A1_FW101B05\(0725091522\)_decrypted.bin

Flashing via OEM web interface is not possible, as it will change the active partition and OpenWrt is only running on the first UBI partition.

Controlling the LEDs:
 - The LEDs are controlled by a chip called "GCA230718" which is connected to the main CPU via I2C (address 0x40)
 - I didn't find any documentation or driver for it, so the information below is purely based on my investigations
 - If there is already I driver for it, please tell me. Maybe I didn't search enough
 - I implemented a kernel module (leds-gca230718) to access the LEDs via DTS
 - The LED controller supports PWM for brightness control and ramp control for smooth blinking. This is not implemented in the driver
 - The LED controller supports toggling (on -> off -> on -> off) where the brightness of the LEDs can be set individually for each on cycle
 - Until now, only simple active/inactive control is implemented (like when the LEDs would have been connected via GPIO)
 - Controlling the LEDs requires three sequences sent to the chip. Each sequence consists of
   - A reset command (0x81 0xE4) written to register 0x00
   - A control command (for example 0x0C 0x02 0x01 0x00 0x00 0x00 0xFF 0x01 0x00 0x00 0x00 0xFF 0x87 written to register 0x03)
 - The reset command is always the same
 - In the control command
   - byte 0 is always the same
   - byte 1 (0x02 in the example above) must be changed in every sequence: 0x02 -> 0x01 -> 0x03)
   - byte 2 is set to 0x01 which disables toggling. 0x02 would be LED toggling without ramp control, 0x03 would be toggling with ramp control
   - byte 3 to 6 define the brightness values for the LEDs (R,G,B,W) for the first on cycle when toggling
   - byte 7 defines the toggling frequency (if toggling enabled)
   - byte 8 to 11 define the brightness values for the LEDs (R,G,B,W) for the second on cycle when toggling
   - byte 12 is constant 0x87

Comparison to M32/R32:
 - The algorithms for decrypting the OEM firmware are the same for M30/M32/R32, only the keys differ
 - The keys are available in the GPL sources for the M32
 - The M32/R32 contained raw data in the firmware images (kernel, rootfs), the R30 uses a sysupgrade tar instead
 - Creation of the recovery image is quite similar, only the header start string changes. So mostly takeover from M32/R32 for that.
 - Turned out that the bytes at offset 0x0E and 0x0F in the recovery image header are the checksum over the data area
 - This checksum was not checked in the recovery web interface of M32/R32 devices, but is now active in R30
 - I adapted the recovery image creation to also calculate the checksum over the data area
 - The recovery image header for M30 contains addresses which don't match the memory layout in the DTS. The same addresses are also present in the OEM images
 - The recovery web interface either calculates the correct addresses from it or has it's own logic to determine where which information must be written

Signed-off-by: Roland Reinl <reinlroland+github@gmail.com>
2024-03-31 19:01:20 +02:00
Roland Reinl
0e2b7e3bd6 mediatek: Moved recovery image creation to include/image-commands.mk
The recovery image is reqired for D-Link M30 as well. So I moved it to include/image-commands.mk to be able to use it for MT7622 and filogic devices.

Signed-off-by: Roland Reinl <reinlroland+github@gmail.com>
2024-03-31 19:01:20 +02:00
Hauke Mehrtens
fb2c6e9d4d kernel: bump 5.15 to 5.15.153
Removed because they are upstream:
generic/backport-5.15/704-15-v5.19-net-mtk_eth_soc-move-MAC_MCR-setting-to-mac_finish.patch
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-5.15.y&id=c5c0760adc260d55265c086b9efb350ea6dda38b

generic/pending-5.15/735-net-mediatek-mtk_eth_soc-release-MAC_MCR_FORCE_LINK-.patch
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-5.15.y&id=448cc8b5f743985f6d1d98aa4efb386fef4c3bf2

generic/pending-5.15/736-net-ethernet-mtk_eth_soc-fix-PPE-hanging-issue.patch
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-5.15.y&id=9fcadd125044007351905d40c405fadc2d3bb6d6

Add new configuration symbols for tegra target.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-03-31 18:34:04 +02:00
John Audia
b04f245c39 kernel: bump 6.6 to 6.6.23
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.23

Removed upstreamed:
  pending-6.6/735-net-mediatek-mtk_eth_soc-release-MAC_MCR_FORCE_LINK-.patch[1]
  pending-6.6/736-net-ethernet-mtk_eth_soc-fix-PPE-hanging-issue.patch[2]
  mediatek/patches-6.6/232-clk-mediatek-mt7981-topckgen-flag-SGM_REG_SEL-as-cri.patch[3]

Manually rebased:
  mediatek/patches-6.6/100-dts-update-mt7622-rfb1.patch

Added:
  generic/backports-6.6/981-mtd-spinand-Add-support-for-5-byte-IDs.patch[4]

All other patches automatically rebased.

1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.23&id=1f32abb474c1c9bdb21d9eda74c325a0b3a162e5
2. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.23&id=943c14ece95eb1cf98d477462aebcbfdfd714633
3. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.23&id=6ff01b314149d1cf59caebc29384f0beed21cba4
4. See comments in https://github.com/openwrt/openwrt/pull/14992 regarding broken flogic/xiaomi_redmi-router-ax6000-ubootmod

Build system: x86/64
Build-tested: x86/64/AMD Cezanne, flogic/xiaomi_redmi-router-ax6000-ubootmod, flogic/glinet_gl-mt6000
Run-tested: x86/64/AMD Cezannei, flogic/xiaomi_redmi-router-ax6000-ubootmod, flogic/glinet_gl-mt6000

Signed-off-by: John Audia <therealgraysky@proton.me>
2024-03-31 18:19:33 +02:00
Marco von Rosenberg
06cdc07f8c ath79: add support for Huawei AP5030DN
Huawei AP5030DN is a dual-band, dual-radio 802.11ac Wave 1 3x3 MIMO
enterprise access point with two Gigabit Ethernet ports and PoE
support.

Hardware highlights:
- CPU: QCA9550 SoC at 720MHz
- RAM: 256MB DDR2
- Flash: 32MB SPI-NOR
- Wi-Fi 2.4GHz: QCA9550-internal radio
- Wi-Fi 5GHz: QCA9880 PCIe WLAN SoC
- Ethernet 1: 10/100/1000 Mbps Ethernet through Broadcom B50612E PHY
- Ethernet 2: 10/100/1000 Mbps Ethernet through Marvell 88E1510 PHY
- PoE: input through Ethernet 1 port
- Standalone 12V/2A power input
- Serial console externally available through RJ45 port
- External watchdog: SGM706 (1.6s timeout)

Serial console:
  9600n8 (9600 baud, no stop bits, no parity, 8 data bits)

MAC addresses:
  Each device has 32 consecutive MAC addresses allocated by
  the vendor, which don't overlap between devices.
  This was confirmed with multiple devices with consecutive
  serial numbers.
  The MAC address range starts with the address on the label.
  To be able to distinguish between the interfaces,
  the following MAC address scheme is used:
    - eth0 = label MAC
    - eth1 = label MAC + 1
    - radio0 (Wi-Fi 5GHz) = label MAC + 2
    - radio1 (Wi-Fi 2.4GHz) = label MAC + 3

Installation:
0. Connect some sort of RJ45-to-USB adapter to "Console" port of the AP

1. Power up the AP

2. At prompt "Press f or F  to stop Auto-Boot in 3 seconds",
   do what they say.
   Log in with default admin password "admin@huawei.com".

3. Boot the OpenWrt initramfs from TFTP using the hidden script
   "run ramboot". Replace IP address as needed:

   > setenv serverip 192.168.1.10
   > setenv ipaddr 192.168.1.1
   > setenv rambootfile
     openwrt-ath79-generic-huawei_ap5030dn-initramfs-kernel.bin
   > saveenv
   > run ramboot

4. Optional but recommended as the factory firmware cannot
   be downloaded publicly:
   Back up contents of "firmware" partition using the web interface or ssh:

   $ ssh root@192.168.1.1 cat /dev/mtd11 > huawei_ap5030dn_fw_backup.bin

5. Run sysupgrade using sysupgrade image. OpenWrt
   shall boot from flash afterwards.

Return to factory firmware (using firmware upgrade package downloaded from
non-public Huawei website):
1. Start a TFTP server in the directory where
   the firmware upgrade package is located

2. Boot to u-boot as described above

3. Install firmware upgrade package and format the config partitions:

   > update system FatAP5X30XN_SOMEVERSION.bin
   > format_fs

Return to factory firmware (from previously created backup):
1. Copy over the firmware partition backup to /tmp,
   for example using scp

2. Use sysupgrade with force to restore the backup:
   sysupgrade -F huawei_ap5030dn_fw_backup.bin

3. Boot AP to U-Boot as described above

Quirks and known issues
-----------------------

- On initial power-up, the Huawei-modified bootloader suspends both
ethernet PHYs (it sets the "Power Down" bit in the MII control
register). Unfortunately, at the time of the initial port, the kernel
driver for the B50612E/BCM54612E PHY behind eth0 doesn't have a resume
callback defined which would clear this bit. This makes the PHY unusable
since it remains suspended forever. This is why the backported kernel
patches in this commit are required which add this callback and for
completeness also a suspend callback.

- The stock firmware has a semi dual boot concept where the primary
kernel uses a squashfs as root partition and the secondary kernel uses
an initramfs. This dual boot concept is circumvented on purpose to gain
more flash space and since the stock firmware's flash layout isn't
compatible with mtdsplit.

- The external watchdog's timeout of 1.6s is very hard to satisfy
during bootup. This is why the GPIO15 pin connected to the watchdog input
is configured directly in the LZMA loader to output the CPU_CLK/4 signal
which keeps the watchdog happy until the wdt-gpio kernel driver takes
over. Because it would also take too long to read the whole kernel image
from flash, the uImage header only includes the loader which then reads
the kernel image from flash after GPIO15 is configured.

Signed-off-by: Marco von Rosenberg <marcovr@selfnet.de>
[fixed 6.6 backport patch naming]
Signed-off-by: David Bauer <mail@david-bauer.net>
2024-03-31 18:09:43 +02:00
Felix Fietkau
0cb3e86557 kernel: fix build issue on macOS
On x86, the build failed while trying to compile tools/lib/string.c because
of a clash with the system provided implementation for strlcpy
Add ifdefs to prevent the conflict.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2024-03-30 21:59:24 +01:00
Shiji Yang
085feb60ad ath79: move D-Link DAP-1720 A1 to tiny sub-target
This device only has 64 MiB RAM and ath10k wireless driver will
consume a lot of memory. Let's move it to the tiny sub-target to
get extra 7 MiB of free space. In this way, we can extend their
lifetime to receive support for the next OpenWrt LTS version. This
patch also trims the duplicate "recovery.bin" image as it's the
same as the "factory.bin".

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
2024-03-30 01:04:17 +01:00
Shiji Yang
8201e402c5 ath79: move D-Link DIR-859 and DIR-869 series to tiny sub-target
These devices only have 64 MiB RAM and ath10k wireless driver will
consume a lot of memory. Let's move them to the tiny sub-target to
get extra 7 MiB of free space. In this way, we can extend their
lifetime to receive support for the next OpenWrt LTS version. This
patch also trims the USB package for the non-existent USB port.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
2024-03-30 01:04:17 +01:00
Shiji Yang
9a6c1846bb ath79: tiny: enable NVMEM u-boot-env driver
The upcoming D-Link devices to the tiny sub-target require it to
parse the u-env MAC address. The kernel size will increase by
about 1 KiB.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
2024-03-30 01:04:17 +01:00
Shiji Yang
82208eb527 ath79: move seama image recipe to the common Makefile
Move seama image recipe to the common Makefile in order for some
tiny sub-target D-Link devices can share it.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
2024-03-30 01:04:17 +01:00
Shiji Yang
60061b5c26 ath79: disable building small Flash EnGenius devices
The buildbot has not successfully built them for a long time due
to small Flash size.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
2024-03-30 01:04:17 +01:00
Chukun Pan
4ae474afbd mediatek: filogic: add Netcore N60 support
Hardware specification:
  SoC: MediaTek MT7986A 4x A53
  Flash: ESMT F50L1G41LB 128MB
  RAM: W632GU6NB DDR3 256MB
  Ethernet: 1x 2.5G + 4x 1G
  WiFi1: MT7975N 2.4GHz 4T4R
  WiFi2: MT7975PN 5GHz 4T4R
  Button: Reset, WPS
  Power: DC 12V 2A

Flash instructions:
  1. Connect to the router using ssh or telnet,
     username: useradmin, password is the web
     login password of the router.
  2. Use scp to upload bl31-uboot.fip and flash:
     "mtd write xxx-preloader.bin spi0.0"
     "mtd write xxx-bl31-uboot.fip FIP"
     "mtd erase ubi"
  3. Connect to the router via the Lan port,
     set a static ip of your PC.
     (ip 192.168.1.254, gateway 192.168.1.1)
  4. Download initramfs image, reboot router,
     waiting for tftp recovery to complete.
  5. After openwrt boots up, perform sysupgrade.

Note:
  1. Back up all mtd partitions before flashing.

Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
2024-03-29 22:54:28 +01:00
Mieczyslaw Nalewaj
362e7103c6 ramips: mt7620a_tplink_archer-c5-v4: use LED_FUNCTION_WLAN_2GHZ and LED_FUNCTION_WLAN_5GHZ
Use LED_FUNCTION_WLAN_2GHZ and LED_FUNCTION_WLAN_5GHZ instead function-enumerator

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-03-29 20:10:42 +01:00
Florian Eckert
a998a12a2f imagebuilder: add check if target is sourced from feed
The image generation would fail, if the target is included from a feed.
To fix this, check if targets is found in the feed directory.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
Tested-by: Thomas Richard <thomas.richard@bootlin.com>
2024-03-29 20:00:27 +01:00
Florian Eckert
27d227b682 imagebuilder: check if BOARD is located in the feeds sub directory
Fixes the regression so that targets that were installed via a feed can
also be build again with the Image Builder.

Fixes: 84ec8c4 ("imagebuilder: copy from buildroot only target/linux")
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
Tested-by: Thomas Richard <thomas.richard@bootlin.com>
2024-03-29 20:00:27 +01:00
Tianling Shen
163c3d0bde rockchip: remove redundant 'console' parameter from boot script
ttyS2 is the default console used for all rockchip boards.
The redundant 'console=tty1' parameter now breaks the console due to
recent procd update.

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2024-03-29 19:34:42 +01:00
Tianling Shen
50e6c8ae8d rockchip: remove 'swiotlb' parameter from boot script
We have hardware IOMMU support and this is totally unnecessary.
The given value is also unreasonable, it's too small and causes
kernel panic in some cases:

[ 5706.856473] sdhci-dwcmshc fe310000.mmc: swiotlb buffer is full (sz: 28672 bytes), total 512 (slots), used 498 (slots)
[ 5706.864451] sdhci-dwcmshc fe310000.mmc: swiotlb buffer is full (sz: 65536 bytes), total 512 (slots), used 464 (slots)

This parameter seems to be added by mistake, so remove it.

Fixes: e35c7ab51f ("rockchip: merge bootscript")
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2024-03-29 19:34:42 +01:00
Robert Marko
5876b4afb9 qualcommax: default to kernel 6.6
6.6 has been in testing on qualcommax for a while so it should be in a
good shape, but lets default to it to get a wider audience.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-03-29 18:56:31 +01:00
Hauke Mehrtens
2ec025d554 kernel: bump 5.15 to 5.15.152
Removed because it is upstream:
generic/backport-5.15/081-v5.17-regmap-allow-to-define-reg_update_bits-for-no-bus.patch
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-5.15.y&id=fbddd48f1456db32b675fad95a902de38345902a

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-03-29 13:44:41 +01:00
Hauke Mehrtens
0307571124 kernel: bump 5.15 to 5.15.151
No manual changes needed.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-03-29 13:44:41 +01:00
Robert Marko
b1d579f174 archs38: remove 5.15 support
Since 6.1 is now default, drop 5.15 support.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-03-29 09:58:45 +01:00
Robert Marko
00c26f4728 archs38: default to kernel 6.1
Default to kernel 6.1 on archs38.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-03-29 09:58:45 +01:00
Mieczyslaw Nalewaj
de8a6ce5ea generic: 6.6: add kernel missing symbol
Add missing symbol CONFIG_SSIF_IPMI_BMC causing bcm53xx compilation errors.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-03-29 09:58:18 +01:00
Rafał Miłecki
eb370ebc5f bcm47xx: refresh kernel 6.1 config
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2024-03-29 00:12:50 +01:00
Rafał Miłecki
8583a97c06 bcm47xx: add testing support for kernel 6.1
Tested on Luxul XWR-1750 (BCM4706). Working: switch (LAN, WAN), LEDs,
sysupgrade.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2024-03-29 00:11:04 +01:00
Rafał Miłecki
d4a40827ba bcm4908: refresh kernel 6.6 config
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2024-03-28 13:29:52 +01:00
Rafał Miłecki
c3dc52fb3c bcm4008: prepare to work on kernel 6.6
Don't add KERNEL_TESTING_PATCHVER yet as there are some issues with it.

On TP-Link Archer C2300 serial console seems to stop working after
preinit:
> Press the [f] key and hit [enter] to enter failsafe mode
> Press the [1], [2], [3] or [4] key and hit [enter] to select the de�

On Netgear R8000P XHCI causes external abort:
[    2.139586] Internal error: synchronous external abort: 0000000096000210 [#1] SMP
[    2.147212] Modules linked in: xhci_plat_hcd(+) xhci_hcd ohci_platform ohci_hcd fsl_mph_dr_of ehci_platform ehci_fsl ehci_hcd gpio_button_hotplug(O) usbcore nls_base usb_common crc32c_generic
[    2.164774] CPU: 0 PID: 358 Comm: kmodloader Tainted: G           O       6.6.22 #0
[    2.172658] Hardware name: Netgear R8000P (DT)
[    2.177229] pstate: 60400005 (nZCv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
[    2.184395] pc : xhci_gen_setup+0x80/0x34c [xhci_hcd]
[    2.189591] lr : xhci_gen_setup+0x74/0x34c [xhci_hcd]
[    2.194788] sp : ffffffc0815d37b0
[    2.198194] x29: ffffffc0815d37b0 x28: ffffff8002000000 x27: ffffff8001172d88
[    2.205540] x26: ffffff8002000000 x25: 0000000000000000 x24: ffffffc078b603c0
[    2.212888] x23: ffffffc078b2a008 x22: ffffff8001172c10 x21: ffffff8002000000
[    2.220235] x20: ffffff8002000000 x19: ffffff8002000250 x18: 0000000000000000
[    2.227582] x17: 626d756e20737562 x16: 2064656e67697373 x15: ffffffffffffffff
[    2.234929] x14: ffffff80019e9915 x13: ffffff80019e9913 x12: 00000000ffffffea
[    2.242276] x11: 00000000ffffefff x10: 0000000000000062 x9 : 00000000ffffffd0
[    2.246760] bcm63138_nand ff801800.nand-controller: timeout waiting for command 0x4
[    2.249623] x8 : 0000000000000073 x7 : ffffffc0815d37c0 x6 : 0000000000000075
[    2.257513] bcm63138_nand ff801800.nand-controller: intfc status c00000e0
[    2.264855] x5 : 0000000000000081 x4 : 0000000000000000 x3 : ffffff8001b61800
[    2.279193] x2 : ffffffc080b5d000 x1 : ffffff80020003a8 x0 : ffffff8002000398
[    2.286540] Call trace:
[    2.289048]  xhci_gen_setup+0x80/0x34c [xhci_hcd]

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2024-03-28 13:29:52 +01:00
Rafał Miłecki
4aff8d0d52 bcm4908: switch to the kernel 6.1
Tested on Netgear R8000P and TP-Link Archer C2300.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2024-03-28 13:29:52 +01:00
Rafał Miłecki
359be94f5e bcm4908: use DT to mark NAND controller WP pin as not connected
Use cleaner and more upstream-fit solution.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2024-03-28 13:29:52 +01:00
Robert Marko
fd58b1a8bc airoha: remove 5.15 support
Now that 6.1 is default, remove 5.15 support.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-03-28 13:06:43 +01:00
Robert Marko
cbc2664d1d airoha: default to kernel 6.1
6.1 has been present as testing for a while now, so default to it.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-03-28 13:06:43 +01:00
Rafał Miłecki
6ddc9fc4b5 kernel: backport brcmnand support for "brcm,wp-not-connected"
It's required to support NAND controllers with WP pin on boards that
don't have it connected to NAND chip.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2024-03-28 08:52:23 +01:00
Rafał Miłecki
2feedab805 bcm53xx: refresh kernel 6.6 config
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2024-03-28 00:11:37 +01:00
Rafał Miłecki
f0d8ce4f48 bcm53xx: add testing support for kernel 6.6
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2024-03-28 00:06:26 +01:00
Rafał Miłecki
67b8ddbe34 bcm53xx: switch to the kernel 6.1
Successfully verified on Luxul XWR-3150 (BCM47094). Tested LAN, WAN,
Wi-Fi, USB, sysupgrade.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2024-03-28 00:05:50 +01:00
Rafał Miłecki
2481aa4a46 bcm53xx: refresh kernel 6.1 config
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2024-03-28 00:05:50 +01:00
Rafał Miłecki
dd78a59cd7 kernel: fix NVMEM looking for OTP NVMEM cells in wrong DT node
It was breaking NAND controllers drivers.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2024-03-28 00:05:50 +01:00
Chukun Pan
29515862ac sunxi: backport h616 thermal sensor support
Backport H616 thermal sensor support from linux-next.
Tested on the Orange Pi Zero 3 (H618 SoC).

Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
2024-03-26 21:56:57 +01:00
Chukun Pan
29b8ba75fa sunxi: add support for Orange Pi Zero 3
Key features:
  Allwinner H618 SoC (Quad core Cortex-A53)
  1/1.5/2/4 GiB LPDDR4 DRAM
  1 USB 2.0 type C port (Power + OTG)
  1 USB 2.0 host port
  1Gbps Ethernet port
  Micro-HDMI port
  MicroSD slot

Installation:
  Write the image to SD Card with dd.

Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
2024-03-26 21:56:57 +01:00
Chukun Pan
85b156c113 generic: 6.1: backport AXP PMIC support
Backport AXP15060, AXP313a and AXP192 support.
The AXP15060 PMIC is used for starfive boards,
and the AXP313a PMIC is used for sunxi boards.
Remove conflicting patches from starfive target.

Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
2024-03-26 21:56:57 +01:00
Daniel Golle
79e9ce354e generic: phy-mediatek-xfi-tphy: fix SGMII issue
Fix issue of transmitting abnormal data which leads to link problems
in 1G and 2.5G SerDes modes (SGMII, 1000Base-X, 2500Base-X) on the
MediaTek MT7988 SoC.

Link: b72d6cba92
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-03-25 22:00:37 +00:00
Goetz Goerisch
71ccb35017 realtek: add Zyxel GS1900-8 v2
The Zyxel GS1900-8 v2 or Rev.B1 is a newer variant of the GS1900-8, but
otherwise similar to the other GS1900 switches.

Differences
------------
* Front Button labeled RESTORE
* NO Power Switch on rear
* Serial Header next to the barrel power connector
* Part Number ends 0102F

Signed-off-by: Goetz Goerisch <ggoerisch@gmail.com>
2024-03-25 21:28:44 +01:00
Allen Zhao
640b0b79ff mediatek: filogic: add Unielec U7981-01 support
Hardware specification:
  SoC: MediaTek MT7981B 2x A53
  Flash: 8GB eMMC or 128 MB SPI-NAND
  RAM: 256MB
  Ethernet: 5x 10/100/1000 Mbps
  Switch: MediaTek MT7531AE
  WiFi: MediaTek MT7976C
  Button: Reset
  USB: M.2(B-key) for 4G/5G Module
  Power: DC 12V 1A
  UART: 3.3v, 115200n8
  --------------------------
  |         Layout         |
  |   -----------------    |
  | 4 | VCC RX TX GND | <= |
  |   -----------------    |
  --------------------------

The U-boot menu will automatically appear at startup, and then select
the required options through UP/DOWN Key.

NAND Flash and eMMC Flash instructions:
1. Set your computers IP adress to 192.168.1.2.
2. Run a TFTP server providing the sysupgrade.bin image.
3. Power on the router, into the U-Boot menu.
4. Select "2. Upgrade firmware"
5. Update sysupgrade.bin file name, input server IP and input device
   IP (if they deviate from the defaults)
6. Wait for automatic startup after burning

Signed-off-by: Allen Zhao <allenzhao@unielecinc.com>
2024-03-25 18:14:19 +00:00
Pawel Dembicki
004eac14ab mpc85xx: add 6.6 testing kernel
This commit adds 6.6 kernel as testing verion.

Run tested:
p2020/p2020-rdb
p1010/TL-WDR4900-V1
p1010/BR200-WP

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2024-03-24 21:20:46 +01:00
Pawel Dembicki
7a43f185c9 mpc85xx: kernel: 6.6: refresh config
config-6.6 refreshed by 'make kernel_oldconfig'
p2020 config-default refreshed manually

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2024-03-24 21:20:46 +01:00
Pawel Dembicki
affdd9eee8 mpc85xx: kernel: 6.6: refresh patches
Manualy refreshed:
101-powerpc-85xx-hiveap-330-support.patch
105-powerpc-85xx-panda-support.patch

Rest done by 'make target/linux/refresh'

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2024-03-24 21:20:46 +01:00
Pawel Dembicki
3146fdfd71 kernel/mpc85xx: Restore kernel files for v6.1
This is an automatically generated commit which aids following Kernel patch history,
as git will see the move and copy as a rename thus defeating the purpose.

See: https://lists.openwrt.org/pipermail/openwrt-devel/2023-October/041673.html
for the original discussion.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2024-03-24 21:20:46 +01:00
Pawel Dembicki
25abc8f4ad kernel/mpc85xx: Create kernel files for v6.6 (from v6.1)
This is an automatically generated commit.

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

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2024-03-24 21:20:46 +01:00
Pawel Dembicki
40abd9555b mpc85xx: refresh kernel config
Done by 'make kernel_oldconfig'.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2024-03-24 21:20:46 +01:00
Pawel Dembicki
ceee14ea3a kernel: generic: add missing symbol
Found durring 'make kernel_oldconfig'.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2024-03-24 21:20:46 +01:00
Pawel Dembicki
2cda7e0e2d mpc85xx: remove 5.15 support
Kernel is switched to 6.1. Lets remove 5.15 support.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2024-03-24 21:20:46 +01:00
Pawel Dembicki
2733831e1c mpc85xx: switch to 6.1 kernel
We need to prepare for 6.6. Switch to 6.1 for wider testing.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2024-03-24 21:20:46 +01:00
Pawel Dembicki
7dbe27e3f7 mpc85xx: copy missing patch from 5.15 to 6.1
patch 150-arch-powerpc-simpleboot-prevent-overwrite-of-CPU1-sp.patch
was missed durring copy from 5.15 to 6.1.

This patch restore it.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2024-03-24 21:20:46 +01:00
Tim Harvey
041fd1c835 imx: kernel: add imx8mp PCI support
IMX8MP PCI support requires a few patches backported from Linux 6.2.

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
2024-03-24 21:19:10 +01:00
Tim Harvey
bd512e368f imx: add Gateworks Venice support
Add support for Gateworks Venice imx8m family of boards:
 - required kernel modules for on-board devices
 - image generation
 - initial network config
 - sysupgrade support

The resulting compressed disk image
(bin/targets/imx/cortexa53/openwrt-imx-cortexa53-gateworks_venice-squashfs-img.gz)
can be installed on a Gateworks venice board via U-Boot:

u-boot=> tftpboot $loadaddr openwrt-imx-cortexa53-gateworks_venice-squashfs-img.gz && \
         gzwrite mmc $dev $loadaddr $filesize

WARNING: this will overwrite any boot firmware on the eMMC user hardware
partition which if being used will brick your board requiring JTAG to
re-program boot firmware and recover

The compressed disk image contains the partition table and filesystems only
and that it is expected that boot firmware is installed properly on the
eMMC boot0 hardware partition. The easiest way to ensure this is to
use the Gateworks JTAG adapter/process to install the latest boot firmware
as follows from a Linux host:
  wget http://dev.gateworks.com/jtag/jtag_usbv4
  chmod +x jtag_usbv4
  wget http://dev.gateworks.com/venice/images/firmware-venice-imx8mm.bin
  sudo ./jtag_usbv4 -p firmware-venice-imx8mm.bin

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
2024-03-24 21:19:10 +01:00
Tim Harvey
ae8bf1a26e imx: add imx8m support
Add imx8m support:
 - add a cortexa53 subtarget to imx
 - move ARCH and KERNELNAME to subtargets
 - account for kernel modules that are not used for cortexa53

No device-specific targets or firmware images are created yet but all
imx8m* dtbs will be built.

enabling CONFIG_TARGET_ROOTFS_INITRAMFS results in
openwrt-imx-cortexa53-imx8m-initramfs-kernel.bin which has been
successfully booted on an imx8mm-evk using the following:

u-boot=> tftpboot $fdt_addr_r image-imx8mm-evk.dtb && \
tftpboot $kernel_addr_r openwrt-imx-cortexa53-imx8m-initramfs-kernel.bin && \
booti $kernel_addr_r - $fdt_addr_r

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
2024-03-24 21:19:10 +01:00
INAGAKI Hiroshi
a5259c237e ath79: register ttyATH1 as OpenWrt console for ELECOM WAB-I1750-PS
Add a hotplug script and add ttyATH1 on ELECOM WAB-I1750-PS to
/etc/inittab while booting for using that console as an OpenWrt console.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2024-03-24 21:10:59 +01:00
INAGAKI Hiroshi
342f55eeb3 ath79: register all ttys as Linux console for ELECOM WAB-I1750-PS
Register ttyS0 and ttyATH1 as Linux console on ELECOM WAB-I1750-PS.
ttyS0 provides "SERVICE" port and internal pin header for debugging and
recoverying by maker, ttyATH1 provides "SERIAL" port for configuration
by users.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2024-03-24 21:10:59 +01:00
Pawel Dembicki
f89bdab832 kirkwood: resize kernel partition for kirkwood devices
The 6.1 kernel has caused another increase in kernel size, and now
it's more than 3MB:

WARNING: Image file iom_ix4-200d-uImage is too big: 3170394 > 3145728
WARNING: Image file iom_ix2-200-uImage is too big: 3171494 > 3145728
WARNING: Image file linksys_e4200-v2-uImage is too big: 3171879 > 3145728
WARNING: Image file linksys_ea4500-uImage is too big: 3171871 > 3145728
WARNING: Image file linksys_ea3500-uImage is too big: 3171651 > 3145728

This causes problems for 5 devices:
  - Iomega StorCenter ix2/ix4
  - Linksys EA3500/EA4200/EA4500

They have enough resources for proper operation with 6.1, but all of
them had a 3MB kernel size limit. Let's keep them alive and
resize kernel partitions to 4MB.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2024-03-24 21:07:17 +01:00
Pawel Dembicki
93b3334a35 kirkwood: 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-24 21:07:17 +01:00
Pawel Dembicki
48f108d46b kirkwood: switch kernel version to 6.1
6.1 testing version was introduced some time ago. Kernel size issues
are resolved now. Time to bump kernel version.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2024-03-24 21:07:17 +01:00
Pawel Dembicki
ccbdb212f3 kirkwood: Add missing package dependency
When build images with the 6.1 kernel for all devices and all kmods,
there is one dependancy error:

  pkg_hash_check_unresolved: cannot find dependency kmod-thermal
  for kmod-hwmon-gpiofan

This commit fix that issue.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2024-03-24 21:07:17 +01:00
Pawel Dembicki
03ffebb6dd kirkwood: 6.1: backport Marvell 88E6171 init fix patch
After commit de5c9bf40c45 ("net: phylink: require supported_interfaces to
be filled") Marvell 88e6171 switches fail to be probed:

[    1.263852] mv88e6085 f1072004.mdio-bus-mii:10: switch 0x1710 detected: Marvell 88E6171, revision 2
[    2.177654] mv88e6085 f1072004.mdio-bus-mii:10: OF node /ocp@f1000000/mdio-bus@72004/switch@10/ports/port@5 of CPU port 5 lacks the required "phy-mode" property
[    2.194230] mv88e6085 f1072004.mdio-bus-mii:10: phylink: error: empty supported_interfaces
[    2.202554] error creating PHYLINK: -22
[    2.214109] mv88e6085: probe of f1072004.mdio-bus-mii:10 failed with error -22

Upstream handled it. Lets backport patch.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2024-03-24 21:07:17 +01:00
Pawel Dembicki
fff9316268 kirkwood: Add missing phy-mode and fixed links
Copied from original Andrew's Lunn commit message:

    The DSA framework has got more picky about always having a phy-mode
    for the CPU port. The Kirkwood Ethernet is an RGMII port. Set the
    switch to impose the RGMII delays.

    Additionally, the cpu label has never actually been used in the
    binding, so remove it.

This commit backport change from upstream and fix downstream EA3500 dts.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2024-03-24 21:07:17 +01:00
Steffen Loley
6e7bc0c243 ramips: add support for TP-Link RE205 v3
TP-Link RE205 v3 is a wireless range extender with Ethernet and 2.4G and 5G
WiFi with external antennas.
It's based on MediaTek MT7628AN+MT7610EN like the RE200 v3/v4 but with
external antennas.

Specifications
--------------

- MediaTek MT7628AN (580 Mhz)
- 64 MB of RAM
- 8 MB of FLASH
- 2T2R 2.4 GHz and 1T1R 5 GHz
- 1x 10/100 Mbps Ethernet
- 5x LED (GPIO-controlled), 2x button
- UART connection holes on PCB (57600 8n1)

There are 2.4G and 5G LEDs in blue which are controlled separately.

Installation
------------

Installation is identical to RE200 v3 devices as described at
https://openwrt.org/toh/tp-link/re200#installation

Web Interface
-------------

It is possible to upgrade to OpenWrt via the web interface. Simply flash
the -factory.bin from OEM. In contrast to a stock firmware, this will not
overwrite U-Boot.

Recovery
--------

U-Boot seems to be locked on newer versions, if not it can be accessed over
the UART as described in the link above.

Signed-off-by: Steffen Loley <slo-src@web.de>
2024-03-23 23:38:33 +01:00
Christian Lamparter
2597dce5f7 uml: restore 6.1 config + patches
keep the main 6.1 files around until they too will be deleted.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2024-03-23 21:38:00 +01:00
Christian Lamparter
bfd1fd5da3 uml: add 6.6 testing kernel config + patches
apart from refreshes to both config and patches, nothing has changed.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2024-03-23 21:37:28 +01:00
Christian Lamparter
7656be978a uml: remove 5.15 config + patches
no longer in use as we migrate to 6.6 shortly.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2024-03-23 21:36:40 +01:00
Christian Lamparter
bbaf6b764e uml: promote to 6.1 kernel
there have been no reports of any problems with 6.1.
let's make it the default kernel.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2024-03-23 21:22:47 +01:00
Christian Lamparter
cf6849a6bf apm821xx: WNDR4700: fix fan-control
This service was unfunctional due to not having its executable bit set.
Furthermore, sysupgrade complains about the file being present in images.

Also, the tc654 driver doesn't provide pwm1_enable sysfs file, instead its
now called pwm1_mode.

Please note that the fan was always spinning. It should now turn off, when
there's enough the thermal headroom.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2024-03-23 21:22:47 +01:00
Qingfang Deng
6b007d2512 treewide: disable spectre mitigation on unaffected Arm64 targets
Cortex-A53 is not vulnerable to any Spectre variants.

Ref: https://developer.arm.com/Arm%20Security%20Center/Speculative%20Processor%20Vulnerability
Signed-off-by: Qingfang Deng <dqfext@gmail.com>
2024-03-23 20:00:49 +01:00
Qingfang Deng
54f9744c82 treewide: disable spectre mitigation on unaffected Arm32 targets
Cortex-A5 and Cortex-A7 are not vulnerable to any Spectre variants.

Ref: https://developer.arm.com/Arm%20Security%20Center/Speculative%20Processor%20Vulnerability
Signed-off-by: Qingfang Deng <dqfext@gmail.com>
2024-03-23 20:00:49 +01:00
Richard Kunze
92c21b2e18 realtek: support common GPIOs on D-Link DGS-1210-16
D-Link DGS-1210-16 hangs when rebooting and has no support for the reset
button.

Fix both by enabling the same GPIOs for reboot and the reset button as
already used for D-Link DGS-1210-20 and D-Link DGS-1210-28.

Signed-off-by: Richard Kunze <kunze@tivano.de>
2024-03-23 18:36:51 +01:00
Qingfang Deng
27ce04a948 kernel: fix iptables offload build without nftables
When rebasing patches on top of 6.1, a change that removed NF_TABLES
from NF_FLOW_TABLE's dependency was dropped accidentally, and iptables
flow offload module can only be built when nftables is selected.
Restore the change to fix it.

Fixes: 19a246bb65 ("generic: 6.1: manually refresh hack patches")
Signed-off-by: Qingfang Deng <dqfext@gmail.com>
2024-03-23 17:33:24 +01:00
Qingfang Deng
686cc58c10 kernel: support RISC-V PMU
Add RISC-V PMU config symbols and enable them for riscv64.

Signed-off-by: Qingfang Deng <dqfext@gmail.com>
2024-03-23 17:28:55 +01:00
Marius Durbaca
f7c732bf9e rockchip: add Radxa E25 board support
Radxa E25 is a network application carrier board for the Radxa CM3
Industrial (CM3I) SoM, which is based on the Rockchip RK3568 SoC.

It has the following features:

- MicroSD card socket, on board eMMC flash
- 2x 2.5GbE Realtek RTL8125B Ethernet transceiver
- 1x USB Type-C port (Power and Serial console)
- 1x USB 3.0 OTG port
- mini PCIe socket (USB or PCIe)
- ngff PCIe socket (USB or SATA)
- 1x User LED and 16x RGB LEDs
- 26-pin expansion header

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

Signed-off-by: Marius Durbaca <mariusd84@gmail.com>
2024-03-23 07:55:43 +01:00
Robert Marko
36acf88fe0 qualcommax: add 6.6 as testing kernel
Provide kernel 6.6 as the testing kernel for qualcommax.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-03-22 21:19:21 +01:00
Robert Marko
4989556a53 qualcommax: ipq807x: add WLAN device path migration
Kernel 6.6 has changed the path of WLAN devices as the soc node was updated
to include an adress as well because according to spec it needed one:
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/arch/arm64/boot/dts/qcom/ipq8074.dtsi?h=v6.6.21&id=da6aa1111a17db11367817ddc10c5a6c188cdc44

So, this will break existing configuration as device path was changed for
example:
"platform/soc/c000000.wifi" to "platform/soc@0/c000000.wifi"
"platform/soc/c000000.wifi+1" to "platform/soc@0/c000000.wifi+1"

PCIe attached devices also have their path changed, so lets add a script
that will migrate the paths based on the detected running kernel version
so returning to kernel 6.1 will work as well.

Co-developed-by: Sean Khan <datapronix@protonmail.com>
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-03-22 21:19:21 +01:00
Robert Marko
cab45db187 qualcommax: 6.6: fix SCM header include path for WCSS
SCM header was moved to <linux/firmware/qcom/qcom_scm.h> so adjust the
WCSS patch accordingly.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-03-22 21:19:21 +01:00
Robert Marko
9b650e1319 qualcommax: 6.6: refresh config
Refresh 6.6 qualcommax kernel config via kernel_menuconfig.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-03-22 21:19:21 +01:00
Robert Marko
d9386dc8e9 qualcommax: 6.6: make patches apply
Drop backported patches already included in 6.6 and refresh the rest to
apply.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-03-22 21:19:21 +01:00
Robert Marko
e8e7b3c106 kernel/qualcommax: Restore kernel files for v6.1
This is an automatically generated commit which aids following Kernel patch history,
as git will see the move and copy as a rename thus defeating the purpose.

See: https://lists.openwrt.org/pipermail/openwrt-devel/2023-October/041673.html
for the original discussion.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-03-22 21:19:21 +01:00
Robert Marko
e28492c81a kernel/qualcommax: Create kernel files for v6.6 (from v6.1)
This is an automatically generated commit.

When doing `git bisect`, consider `git bisect --skip`.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-03-22 21:19:21 +01:00
Robert Marko
6bdea8c7bd mediatek: mt7629: 6.6: disable LEDS_SMARTRG_LED by default
When building MT7629 with ALL_KMODS then we get prompted for
LEDS_SMARTRG_LED and this will break CI and in future buildbot compilation.

It depends on I2C so the symbol is hidden until ALL_KMODS is used and I2C
support is available, so disable the LEDS_SMARTRG_LED symbol in 6.6 config
intentionally as is done in the 6.1 mt7629 config.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-03-22 14:17:50 +01:00
Robert Marko
494c5691c6 kernel: config: 6.6: add missing ARM64 SM4 CE symbols
Disable CONFIG_CRYPTO_SM4_ARM64_CE_CCM and CONFIG_CRYPTO_SM4_ARM64_CE_GCM
in the generic config like we do with similar CE symbols.

This avoids the need to disable them in individual targets.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-03-22 11:37:01 +01:00
Daniel Golle
1a47ce5ff2 mvebu: puzzle-m90x: optimize thermal zone
* have more defined PWM steps similar to the vendor's shell script doing
   the same thing
 * replace PWM values with experiencal values provided by forum users
 * increase hyteresis to prevent changing fan speed every second
   (just because it's annoying to listen to)
 * add 'hot' trip point at 75 deg. to warn users that shutdown is imminent

Tested on Puzzle M902 only for now, PWM values for Puzzle M901 might be
slightly different but should quite certainly also be rised.

Suggested-by: Martin Gierschner <martin_gierschner@gmx.de>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-03-21 21:25:38 +00:00
Chuanhong Guo
a6991fc7d2 mediatek: mt7622: add a second u-boot for redmi-ax6s
The vendor u-boot knows nothing about UBI, and we used to have a
fixed-size kernel partition for vendor u-boot and UBI for rootfs.
However, that fixed partition becomes too small eventually, and
expanding it requires complicated procedure.

This commit changed the flash layout and added a second u-boot
where the kernel supposed to be.
Now the vendor u-boot chainloads our mainline u-boot, and our
u-boot reads kernel+rootfs from UBI, verifies it, and boot
into OpenWrt.

There are two possible ways to convert from the old fw:
Flash the factory image using mtd (provided by @rany2):

mount -o remount,ro /
mount -o remount,ro /overlay
cd /tmp
dd if=factory.bin bs=1M count=4 | mtd write - kernel
dd if=factory.bin bs=1M skip=4 | mtd -r write - ubi

Or, flash the 2nd u-boot via mtd and upload the firmware
to the 2nd u-boot using tftp:

1. prepare a tftp server at 192.168.1.254 to serve the
   sysupgrade image:
   openwrt-mediatek-mt7622-xiaomi_redmi-router-ax6s-squashfs-sysupgrade.itb
2. upload the ubi-loader.itb to OpenWrt /tmp, and flash it to
   the old kernel partition:
   mtd -r write openwrt-mediatek-mt7622-xiaomi_redmi-router-ax6s-ubi-loader.itb
3. The router should reboot and flash the sysupgrade image via TFTP.

Procedure for flashing from vendor firmware shouldn't change.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2024-03-21 16:55:13 +08:00
Robert Marko
362f9c41a4 ramips: mt7621: disable Edgerouter X image generation
With kernel 6.1 image size is too large for Edgerouter X current size
limit and is causing the buildbots to fail building so images for other
devices are not updated as well.

So, disable building Edgerouter X images until a workaround is found.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-03-20 12:06:35 +01:00
John Audia
3cd3afd92e kernel: bump 6.1 to 6.1.82
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.1.82

All patches automatically rebased.

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-19 00:33:51 +01:00
John Audia
1366378dfe kernel: config: add symbol introduced with 6.1.82
Add CONFIG_MITIGATION_RFDS=y to the default config[1]

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

Signed-off-by: John Audia <therealgraysky@proton.me>
2024-03-19 00:33:51 +01:00
Pawel Dembicki
b81f2ab9da generic: kernel: fix libata ledtrig support in 6.6
Upstream commit e298d8a38b23 [0] changed method how to blink delays are pased
to function. Downstream commit must follow it.

[0] https://lore.kernel.org/r/20230510162234.291439-2-hdegoede@redhat.com

Reported-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2024-03-18 22:24:17 +01:00
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