Commit Graph

30517 Commits

Author SHA1 Message Date
Markus Stockhausen
35e13244aa realtek: 5.15: backport VLAN fix
With commit a22d359fa5 VLAN handling was fixed for kernel 6.6.
This restored network connectivity of the devices. For easy testing
backport the fix for 5.15 too.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/16391
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-09-16 10:33:28 +02:00
Markus Stockhausen
9272d99195 realtek: 6.6: Support XGMII attached PHYs
On the XGS1210-12 the RTL8218D is attached via XGMII. Add this to the
supported list in the DSA driver.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/16391
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-09-16 10:33:28 +02:00
Mauri Sandberg
fea2264d9f ramips: mt7621: Add DNA Valokuitu Plus EX400
Specifications:
- Device: DNA Valokuitu Plus EX400
- SoC: MT7621A
- Flash: 256MB NAND
- RAM: 256MB
- Ethernet: Built-in, 2 x 1GbE
- Wifi: MT7603 2.4 GHz, MT7615 5 GHz (4x internal antennas)
- USB: 1x 3.0
- LED: 1x green/red, 1x green
- Buttons: Reset

MAC addresses:
- LAN:     u-boot 'ethaddr' (label)
- WAN:     label + 1
- 2.4 GHz: label + 6
- 5 GHz:   label + 7

Serial:
 There is a black block connector next to the red ethernet connector. It
 is accessible also through holes in the casing.

Pinout (TTL 3.3V)
 +---+---+
 |Tx |Rx |
 +---+---+
 |Vcc|Gnd|
 +---+---+

Firmware:
 The vendor firmware is a fork of OpenWrt (Reboot) with a kernel version
 4.4.93. The flash is arranged as below and there is a dual boot
 mechanism alternating between rootfs_0 and rootfs_1.

 +-------+------+------+-----------+-----------+
 |       | env1 | env2 | rootfs_0  |  rootfs_1 |
 |       +------+------+-----------+-----------+
 |       |         UBI volumes                 |
 +-------+-------------------------------------+
 |U-Boot |             UBI                     |
 +-------+-------------------------------------+
 |mtd0   |             mtd1                    |
 +-------+-------------------------------------+
 |                     NAND                    |
 +---------------------------------------------+

 In OpenWrt rootfs_0 will be used as a boot partition that will contain the
 kernel and the dtb. The squashfs rootfs and overlay are standard OpenWrt
 behaviour.

 +-------+------+------+-----------+--------+------------+
 |       | env1 | env2 | rootfs_0  | rootfs | rootfs_data|
 |       +------+------+-----------+--------+------------+
 |       |         UBI volumes                           |
 +-------+-----------------------------------------------+
 |U-Boot |             UBI                               |
 +-------+-----------------------------------------------+
 |mtd0   |             mtd1                              |
 +-------+-----------------------------------------------+
 |                     NAND                              |
 +-------------------------------------------------------+

U-boot:
 With proper serial access booting can be halted to U-boot by pressing any
 key. TFTP and flash writes are available, but only the first one has been
 tested.

 NOTE: Recovery mode can be accessed by holding down the reset button while
 powering on the device. The led 'Update' will show a solid green light
 once ready. A web server will be running at 192.168.1.1:80 and it will
 allow flashing a firmware package. You can cycle between rootfs_0 and
 rootfs_1 by pressing the reset button once.

Root password:
 With the vendor web UI create a backup of your settings and download the
 archive to your computer. Within the archive in the file
 /etc/shadow replace the password hash for root with that of a password you
 know. Restore the configuration with the vendor web UI and you will have
 changed the root password.

SSH access:
 You might need to enable the SSH service for LAN interface as by default
 it's enabled for WAN only.

Installing OpenWrt:
 With the vendor web UI install the OpenWrt factory image. Alternatively,
 ssh to the device and use sysupgrade -n from cli.

 Finalize by installing the OpenWrt sysupgrade image to get a fully
 functioning system.

Reverting to the vendor firmware:

 Boot with OpenWrt initramfs image
  - Remove volumes rootfs_0, rootfs and rootfs_data and create vendor
    volumes.

    ubirmvol /dev/ubi0 -n 2
    ubirmvol /dev/ubi0 -n 3
    ubirmvol /dev/ubi0 -n 4
    ubimkvol /dev/ubi0 -N rootfs_0 -S 990
    ubimkvol /dev/ubi0 -N rootfs_1 -S 990

 Power off and enter to the U-boot recovery to install the vendor
 firmware.

Known issues:
 - MACs for wifi are stored in currently unknown place but it seems
   to persist over power-off. They might be stored on the chip.

Signed-off-by: Mauri Sandberg <maukka@ext.kapsi.fi>
[rmilecki: try NVMEM for MACs]
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2024-09-16 08:52:55 +02:00
Andre Heider
232cc239b8 omap: remove 6.1 support
We switched to 6.6, so lets remove 6.1 support now.

Signed-off-by: Andre Heider <a.heider@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16099
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-09-16 00:19:49 +02:00
Andre Heider
1822332bc5 omap: switch to kernel 6.6
Switch to Linux 6.6.

Signed-off-by: Andre Heider <a.heider@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16099
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-09-16 00:19:49 +02:00
Andre Heider
c6dbeffd50 omap: refresh kernel 6.6 config
Unset CONFIG_CRYPTO_MANAGER_DISABLE_TESTS and
CONFIG_CRYPTO_MANAGER_EXTRA_TESTS manually to fix these linker errors:
crypto/crypto_engine.o: in function `crypto_engine_register_akcipher': undefined reference to `crypto_register_akcipher'
crypto/crypto_engine.o: in function `crypto_engine_unregister_akcipher': undefined reference to `crypto_unregister_akcipher'
crypto/crypto_engine.o: in function `crypto_engine_register_kpp': undefined reference to `crypto_register_kpp'
crypto/crypto_engine.o: in function `crypto_engine_unregister_kpp': undefined reference to `crypto_unregister_kpp'

Signed-off-by: Andre Heider <a.heider@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16099
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-09-16 00:19:49 +02:00
Andre Heider
4927d0f285 omap: adapt to the new dts directory layout.
.dts files were moved to the 'ti/omap' sub-directory.

Signed-off-by: Andre Heider <a.heider@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16099
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-09-16 00:19:49 +02:00
Andre Heider
401de90874 kernel/omap: 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: Andre Heider <a.heider@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16099
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-09-16 00:19:49 +02:00
Andre Heider
51bc04bbd6 kernel/omap: 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: Andre Heider <a.heider@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16099
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-09-16 00:19:49 +02:00
Andre Heider
f4d3bd90c2 omap: rename kernel patches directory to include the version
Bring it in line with all the other targets.

Signed-off-by: Andre Heider <a.heider@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16099
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-09-16 00:19:49 +02:00
Andreas Böhler
3c152904c2 realtek: add fan controller support to D-Link DGS-1210-28MP
The DGS-1210-28MP has a LM63 fan controller connected via i2c of the
RTL8231. The clock line is always low if the property
i2c-gpio,scl-open-drain is not set; with this property, the GPIO pin is
force-drive and the clock works as expected.

The LM63 is not configured by U-Boot, thus only manual fan control is
possible by settings pwm1_enable to "1" and writing the desired values to
pwm1.

The OEM firmware drives the fan from user mode and sets it up like this:

// PWM LUT/value r/w, PWM Clock = 1.4kHz
0x4a 0x28
// Tachometer spinup disabled, spin-up cycles bypassed
0x4b 0x00
// PWM Frequency = default
0x4d 0x17
// PWM Value (28)
0x4c 0x1c
// If > 0 C, use
0x50 0x00
// PWM = 28
0x51 0x1c
// If > 51 C, use
0x52 0x33
// PWM = 44
0x53 0x2e
// Set hysteresis to 100 = default
0x4f 0x03
// Turn on automatic mode and w/p the LUT values
0x4a 0x08

A thread in the OEM firmware polls the ALERT status register for fan
failures.

Unfortunately, the lm63 kernel driver does not perform any initialization
of the chip and it does not support changing some config registers (like
PWM frequency or LUT). Hence, we are stuck with the defaults and need to do
fan control in software.

Signed-off-by: Andreas Böhler <dev@aboehler.at>
Link: https://github.com/openwrt/openwrt/pull/15616
Signed-off-by: Sander Vanheule <sander@svanheule.net>
2024-09-15 16:40:54 +02:00
Andreas Böhler
257a356b20 realtek: add full SFP support to D-Link DGS-1210-28 series
The DGS-1210-28 series was lacking full SFP support due to missing GPIOs.
Fortunately, the existing GPIO definitions of DGS-1210-52 match, this adds
the required i2c-gpio nodes to the DTS and allows hotplug SFP support.

Signed-off-by: Andreas Böhler <dev@aboehler.at>
Link: https://github.com/openwrt/openwrt/pull/15616
Signed-off-by: Sander Vanheule <sander@svanheule.net>
2024-09-15 16:40:40 +02:00
John Audia
01d8e41c16 kernel: bump 6.6 to 6.6.51
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.51

Removed upstreamed:
	generic/backport-6.6/200-regmap-maple-work-around-false-positive-warning.patch
	generic/backport-6.6/822-v6.11-0012-nvmem-Fix-return-type-of-devm_nvmem_device_get-in-ke.patch
	bcm27xx/patches-6.6/950-1018-drivers-mmc-apply-SD-quirks-earlier-during-probe.patch

Manually rebased:
	bcm27xx/patches-6.6/950-0993-drivers-mmc-cqhci-clear-CQHCI_CTL-if-halt-fails.patch
	ramips/patches-6.6/311-MIPS-use-set_mode-to-enable-disable-the-cevt-r4k-irq.patch[4]

All other patches automatically rebased.

1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.51&id=e42ea96d6d36a16526cb82b8aa2e5422814c3250
2. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.51&id=3d1baf322a3a69b38b6b2d511cfe0d611d1b5462
3. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.51&id=115a755bb38db5a1175be44e6a9a93a0a8233885
4. Adapted the changes from Hauke Mehrtens' modification in PR#16366 to 5.15.167

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>
Link: https://github.com/openwrt/openwrt/pull/16370
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-09-15 16:32:48 +02:00
Rosen Penev
8d302f5ebc apm821xx: meraki: fix mac addresses in dts
The one for the mx60 was wrong. The LAN MAC is offset by one.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/14037
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-09-15 13:16:44 +02:00
Rosen Penev
5815884c3a apm821xx: migrate to DSA
The qca8k driver is upstream, unlike swconfig. This applies to the mx60
and wndr4700 only. Fixed up LED definitions as well.

RTL83xx DSA for WNDAP62300/660 is not working.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/14037
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-09-15 13:16:44 +02:00
Markus Stockhausen
2ff67f297d realtek: 6.6: enable testing kernel
Allow to build the new kernel.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 20:21:44 +02:00
Markus Stockhausen
a22d359fa5 realtek: 6.6: fix VLAN handling
The CPU port of realtek switches needs some proper PVID set to handle
untagged packets. Because the ethernet driver does no special VLAN
handling (see CPU tag RVID/RVID_SEL) as of now we can only steer
untagged packets by setting PVID for the CPU port. VLAN handling has
never been perfect but 3 events made things worse.

- Commit a376508216 ("rtl83xx: dsa: Do nothing when vid 0")
- Commit e691e2b302 ("rtl83xx: dsa: reset PVID to 1 instead of 0")
- Upgrade to kernel 6.6

Reasons are:

- Rejecting VID 0 disabled Linux initialization routines
- Initialization for PVID forgot to set priv->ports[port].pvid
- Kernel 6.6 does no longer clarify CPU port as untagged

To fix this prepare the VID 0 setup inside the driver. Join all ports
to VID 0 and let no one from outsinde interfere with this setup.
Especially ignore PVID settings for the CPU port for all further
VLAN commands.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Suggested-by: Bjørn Mork <bjorn@mork.no>
2024-09-14 20:14:47 +02:00
Markus Stockhausen
cd958d945b realtek: 6.6: refactor mac config and link up for RTL83xx
Since kernel commit c5714f68a76bcad3d ("net: phylink: explicitly invalidate
link_state members in mac_config") it should be clear that link data can
only be used in mac_link_up(). Refactor that for the RTL83xx targets.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 20:08:57 +02:00
Markus Stockhausen
dc9fca1fd1 realtek: 6.6: harden fw_init_cmdline()
Some devices (e.g. HP JG924A) hand over other than expected kernel boot
arguments. Looking at these one can see:

fw_init_cmdline: fw_arg0=00020000
fw_init_cmdline: fw_arg1=00060000
fw_init_cmdline: fw_arg2=fffdffff
fw_init_cmdline: fw_arg3=0000416c

Especially fw_arg2 should be the pointer to the environment and it looks
very suspicous. It is not aligned and the address is outside KSEG0 and
KSEG1. Booting the device will result in a hang. Do better at verifying
the address.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Suggested-by: Bjørn Mork <bjorn@mork.no>
2024-09-14 20:08:57 +02:00
Markus Stockhausen
9f8570b0dd realtek: 6.6: set phylink supported_interfaces
The supported_interfaces bitmap cannot be empty since mainline kernel
commit de5c9bf40c45 ("net: phylink: require supported_interfaces to
be filled"). Fix the dsa and ethernet driver accordingly.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 20:08:41 +02:00
Markus Stockhausen
3772cc7ebe realtek: 6.6: adapt message to 64 bit variable
used_keys has been changed from 32 to 64 bits.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 20:08:41 +02:00
Markus Stockhausen
86deef6158 realtek: 6.6: change to current dsa structures
The DSA framework has changed a bit since 6.1, lets adapt to match.
Currently there is no one-patch-fits-all solution to directly fix
all errors up to 6.6. So cover the final differences with this
second patch.

Most notable upstream changes are:
  - a88dd7538461 ("net: dsa: remove legacy_pre_march2020 detection")
  - 53d04b981110 ("net: dsa: remove phylink_validate() method")

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
[Minor checkpatch.pl cleanups]
Signed-off-by: Sander Vanheule <sander@svanheule.net>
2024-09-14 20:08:24 +02:00
Markus Stockhausen
94f8eedfd9 realtek: 6.6: change to 6.1 dsa structures
The DSA framework has changed a bit since 5.15, lets adapt to match.
Currently there is no one-patch-fits-all solution to directly fix
all errors up to 6.6. So at least take all the already known changes
that cover differences between 5.15 and 6.1

Most notable upstream changes are:
  - d3eed0e57d5d ("net: dsa: keep the bridge_dev and bridge_num as part
    of the same structure")
    Update of port_bridge_{join,leave}: use same helper as upstream
  - c26933639b54 ("net: dsa: request drivers to perform FDB isolation")
    Update of port_fdb_{add,del}, port_mdb_{add,del}
  - dedd6a009f41 ("net: dsa: create a dsa_lag structure")
    Update of port_lag_{join,leave}

Signed-off-by: Olliver Schinagl <oliver@schinagl.nl>
[align updates with upstream, add references to upstream commits]
Signed-off-by: Sander Vanheule <sander@svanheule.net>
Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 20:02:52 +02:00
Markus Stockhausen
15c17e6f74 realtek: 6.6: refresh patch net-dsa-add-rtl838x-support-for-tag-trailer
No content changes. Only take over the new patch locations.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 20:02:52 +02:00
Markus Stockhausen
c5c1874327 realtek: 6.6: copy patch net-dsa-add-rtl838x-support-for-tag-trailer
Copy the patch file to 6.6. Reorder it in the 7xx range.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 20:02:52 +02:00
Markus Stockhausen
0389a24a73 realtek: 6.6: refresh patch add-rtl-phy
No content changes. Only take over the new patch locations. All errors
that wil arise from compiling with the phy driver will be covered by
follow up patches.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 20:02:52 +02:00
Markus Stockhausen
9eb5637c31 realtek: 6.6: copy patch add-rtl-phy.patch
Copy the patch file to 6.6. Reorder it in the 7xx range.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 20:02:52 +02:00
Markus Stockhausen
2820657206 realtek: 6.6: refresh patch net-dsa-add-support-for-rtl838x-switch
No content changes. Only adapt the failing hooks and take over the
new patch locations. All errors that wil arise from compiling with
the dsa driver will be covered by follow up patches.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 20:02:52 +02:00
Markus Stockhausen
4742c7dfef realtek: 6.6: copy patch net-dsa-add-support-for-rtl838x-switch
Copy the patch file to 6.6. Reorder it in the 7xx range.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 20:02:52 +02:00
Markus Stockhausen
7435f2cd5a realtek: 6.6: convert ethernet driver to phylink_pcs_ops
A lot of stuff has been converted to the phylink_pcs_ops structure.
Adapt the ethernet driver to make use of it.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 20:02:52 +02:00
Markus Stockhausen
211925d054 realtek: 6.6: drop netif_napi_add weight
We no longer are required to pass the weight to netif_napi_add.

See commit b48b89f9c189 ("net: drop the weight argument from netif_napi_add").

Signed-off-by: Olliver Schinagl <oliver@schinagl.nl>
Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 20:00:22 +02:00
Markus Stockhausen
a5420c22b7 realtek: 6.6: rework mdio bus driver
This is not a surprise. Before upgrade to 6.6 we refactored the mdio part of
the ethernet driver and knew that changes will come. Drop all unnecessary
stuff from the old world and adapt to the new kernel.

- remove legacy functions
- directly link new functions
- adapt to new shared base address
- remove references to old MDIO bus capabilities

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 19:59:48 +02:00
Markus Stockhausen
3f04b8d5d5 realtek: 6.6: refresh patch net-ethernet-add-support-for-rtl838x-ethernet
No content changes. Only take over the new patch locations. All errors
that will arise from compiling with the ethernet driver will be covered
by follow up patches.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 19:58:55 +02:00
Markus Stockhausen
10ff92a315 realtek: 6.6: copy patch net-ethernet-add-support-for-rtl838x-ethernet
Copy the patch file to 6.6. Reorder it in the 7xx range.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 19:58:55 +02:00
Markus Stockhausen
b34d048a62 realtek: 6.6: rework patch net-phy-sfp-add-support-for-SMBus
With the new kernel the MDIO bus gets created after the smbus
read/write functions are used. Make use of native functions.
Relocate bus initialization into a separate function to make
patch easier to read.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 19:58:55 +02:00
Markus Stockhausen
acfa72afef realtek: 6.6: copy patch net-phy-sfp-add-support-for-SMBus
Copy the patch file to 6.6. Reorder it in th 7xx range.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 19:58:55 +02:00
Markus Stockhausen
b13c0b57b2 realtek: 6.6: refresh patch net-phy-add-an-MDIO-SMBus-library
No content changes. Two hooks had to be adapted to take over the
new patch locations.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 19:58:55 +02:00
Markus Stockhausen
850d64da96 realtek: 6.6: copy patch net-phy-add-an-MDIO-SMBus-library
Copy the patch file to 6.6. Reorder it in the 7xx range.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 19:58:55 +02:00
Markus Stockhausen
cbffb2ddfb realtek: 6.6: refresh patch net-phy-sfp-re-probe-modules-on-DEV_UP-event
No content changes. Only take over the new patch locations.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 19:58:55 +02:00
Markus Stockhausen
ff151636d2 realtek: 6.6: copy patch net-phy-sfp-re-probe-modules-on-DEV_UP-event
Copy the patch file to 6.6. Reorder it in the 7xx range.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 19:58:55 +02:00
Markus Stockhausen
ca61a28d48 realtek: 6.6: refresh patch drivers-net-phy-eee-support-for-rtl838x
No content changes. One hook had to be adapted.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 19:58:55 +02:00
Markus Stockhausen
a8bf6c25bf realtek: 6.6: copy patch drivers-net-phy-eee-support-for-rtl838x
Copy the patch file to 6.6. Reorder it in the 7xx range.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 19:58:55 +02:00
Markus Stockhausen
f86c166e0f realtek: 6.6: refresh patch include-linux-add-phy-ops-for-rtl838x
No content changes. Hook failed and had to be adapted.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 19:58:55 +02:00
Markus Stockhausen
cf07d43f66 realtek: 6.6: copy patch include-linux-add-phy-ops-for-rtl838x
Copy the patch file to 6.6. Reorder it in the 7xx range.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 19:58:55 +02:00
Markus Stockhausen
1a92cdc091 realtek: 6.6: refresh patch include-linux-phy-increase-phy-address-number-for-rtl839x
No content changes. Only take over the new patch locations.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 19:58:55 +02:00
Markus Stockhausen
51c85f4874 realtek: 6.6: copy patch include-linux-phy-increase-phy-address-number-for-rtl839x
Copy the patch file to 6.6. Reorder it in the 7xx range.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 19:58:55 +02:00
Markus Stockhausen
6a340ded82 realtek: 6.6: rework patch include-linux-add-phy-hsgmii-mode
Take over the new patch locations and add references to the link mode into
phylink_sfp_interface_preference[] and phylink_get_capabilities().

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 19:58:55 +02:00
Markus Stockhausen
15f7ee463e realtek: 6.6: copy patch include-linux-add-phy-hsgmii-mode
Copy the patch file to 6.6. Reorder it in the 7xx range.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 19:58:55 +02:00
Markus Stockhausen
068d6f01c1 realtek: 6.6 copy patch net-dsa-increase-dsa-max-ports-for-rtl838x
No content changes. As the order of the 7xx patch files seems very
strange reorder all of them according to the realtek 6.6 kernel upgrade
effort.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 19:58:55 +02:00
Markus Stockhausen
1bbd5fdab6 realtek: 6.6: refresh patch 318-add-rtl83xx-clk-support
No content changes. Only take over the new patch locations.

With this patch all platform specific changes for kernel 6.6 are in place.
Realtek devices are bootable from serial console. VPE is fully functional
on devices that support it. The switch functions (ethernet and DSA) are
not enabled yet.

Boot tested on RTL8380 (Linksys LGS310C) and RTL8393 (Zyxel GS1920-24).

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 19:58:55 +02:00
Markus Stockhausen
4e5ea8fcc4 realtek: 6.6: copy patch 318-add-rtl83xx-clk-support
Copy the patch file to 6.6

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 19:58:55 +02:00
Markus Stockhausen
1eac02b60d realtek: 6.6: rework VPE patches
VPE in mainline kernel has changed a lot. This patch wraps up the 5.15
patch files and rebases them in one single patch on top of kernel 6.6.
Former patches are

315-irqchip-irq-realtek-rtl-add-VPE-support.patch
319-irqchip-irq-realtek-rtl-fix-VPE-affinity.patch

Submitted-by: Birger Koblitz <git@birger-koblitz.de>
Submitted-by: INAGAKI Hiroshi <musashino.open@gmail.com>
Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 19:58:55 +02:00
Markus Stockhausen
943638d5cc realtek: 6.6: copy VPE patches 315/319
Copy the patch files to 6.6. Both target drivers/irqchip/irq-realtek-rtl.c
and are additions and fixes for IRQ VPE handling.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 19:58:55 +02:00
Markus Stockhausen
0066d75eb6 realtek: 6.6: copy patch 311-add-i2c-mux-rtl9300-support
Copy the patch file to 6.6. No further processing required as
it applies cleanly to the new kernel

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 19:58:55 +02:00
Markus Stockhausen
7735190395 realtek: 6.6: refresh patch 310-add-i2c-rtl9300-support
No content changes. Due to kernel changes the patch hooks totally failed
and had to be fixed manually.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 19:58:55 +02:00
Markus Stockhausen
d999a02fd8 realtek: 6.6: copy patch 310-add-i2c-rtl9300-support
Copy the patch file to 6.6

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 19:58:55 +02:00
Markus Stockhausen
564161463b realtek: 6.6: refresh patch 307-wdt-update-dependency-for-realtek-otto-wdt
No content changes. Only take over the new patch locations.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 19:58:55 +02:00
Markus Stockhausen
4a52040d22 realtek: 6.6: copy patch 307-wdt-update-dependency-for-realtek-otto-wdt
Copy the patch file to 6.6

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 19:58:55 +02:00
Markus Stockhausen
35a9285ea8 realtek: 6.6: refresh patch 305-irqchip-update-dependency-for-irq-realtek-rtl
No content changes. Only take over the new patch locations.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 19:58:55 +02:00
Markus Stockhausen
ee5096cb74 realtek: 6.6: copy patch 305-irqchip-update-dependency-for-irq-realtek-rtl
Copy the patch file to 6.6

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 19:58:55 +02:00
Markus Stockhausen
22f616af7f realtek: 6.6: refresh patch 304-spi-update-dependency-for-spi-realtek-rtl
No content changes. Only take over the new patch locations.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 19:58:55 +02:00
Markus Stockhausen
4fd4274f68 realtek: 6.6: copy patch 304-spi-update-dependency-for-spi-realtek-rtl
Copy the patch file to 6.6

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 19:58:55 +02:00
Markus Stockhausen
2abd2b54bc ealtek: 6.6: refresh patch 303-gpio-update-dependencies-for-gpio-realtek-otto
No content changes. Only take over the new patch locations.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 19:58:55 +02:00
Markus Stockhausen
8bbe9e9fc5 realtek: 6.6: copy patch 303-gpio-update-dependencies-for-gpio-realtek-otto
Copy the patch file to 6.6

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 19:58:55 +02:00
Markus Stockhausen
13391465ba realtek: 6.6: refresh patch 302-clocksource-add-otto-driver
No content changes. Only take over the new patch locations.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 19:58:55 +02:00
Markus Stockhausen
955d6b41f1 realtek: 6.6: copy patch 302-clocksource-add-otto-driver
Copy the patch file to 6.6

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 19:58:55 +02:00
Markus Stockhausen
82732d2ebe realtek: 6.6: refresh patch 301-gpio-add-rtl8231-driver
No content changes. Only take over the new patch locations.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 19:58:55 +02:00
Markus Stockhausen
badf1c960a realtek: 6.6: copy patch 301-gpio-add-rtl8231-driver
Copy the patch file to 6.6

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 19:58:54 +02:00
Markus Stockhausen
d81d0d503d realtek: 6.6: refresh patch 300-mips-add-rtl838x-platform
No content changes. Only take over the new patch locations.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 19:58:54 +02:00
Markus Stockhausen
416006a6d1 realtek: 6.6: copy patch 300-mips-add-rtl838x-platform
Copy the patch file to 6.6

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 19:58:54 +02:00
Markus Stockhausen
91eaa76909 realtek: 6.6: fix rtl931x kernel config
The CONFIG_CLOCKSOURCE_WATCHDOG_MAX_SKEW_US is missing. Avoid
complaints and add it with its default 125.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 19:58:54 +02:00
Markus Stockhausen
325d79f0f9 realtek: 6.6: copy files and config from 5.15
Copy files and config from 5.15 kernel version. Because of the big version jump
leave out the patches for now so we can treat them individually later on.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 19:58:54 +02:00
Markus Stockhausen
0f7131baf3 realtek: rework hardware-assisted indirect mdio access
With commit b53202a8c3 ("realtek: switch to use generic MDIO accessor functions")
the phy access logic was enhanced. A quite big kernel patch was introduced that
allowed to make use of hardware-assisted page access like we have in the realtek
target. Basically it works the following way

- The enhanced bus intercepts page write accesses
- Currently selected pages are stored in internal vars.
- Finally only all-in-one-consistent bus/register accesses are issued
- It intercepted page changes and ensured that only a complete bus call

For the details see https://github.com/openwrt/openwrt/pull/16172

Switching over to newer kernels this patch is really hard to maintain. Its heavy
modifcations exist only in the realtek target. So it does not matter if we keep
it as an kernel modification or directly include it in our driver. To make it the
future brighter we drop this patch and take over its logic. Thus the kernel will
stay totally modification-free. What do we do?

1. Up to now the bus->priv structure directly pointed to ethernet->priv. Create an
explicit private structure rtl838x_bus_priv that not only holds the ethernet->priv
pointer but also space for some bus status tracking vars as well.

2. Wherever we use a reference to ethernet->priv directly replace that by an
additional indirection over the new rtl838x_bus_priv structure.

3. Up to now the phy flag PHY_HAS_REALTEK_PAGES identified that we can use the
alternative paged access from the patch. As this will be no longer available
remove it and provide read_page/write_page functions for each possible PHY.
These functions will be pretty standard as for other Realtek PHYs.

4. The existing mdio bus read/write function rely on the classic MII_ADDR_C45
flag - one interface for two access types. This mixup will be removed on the way
to kernel 6.6. In the future there will be two pairs of access functions. One for
classic access one for c45 style access. Rewrite our functions into 3 parts:

- a classic read/write function: ready for kernel 6.6
- a new c45 read/write function: ready for kernel 6.6
- a legacy read/write wrapper: for current 5.15 for the time being

When we switch to 6.6 we only need to remove the legacy wrappers and link the
new functions. Life can be so easy.

5. The classic read/write functions will incorporate the interception logic that
was originally in the patch.

6. The package convenience functions that were embedded in the patch get lost as
well. Rewrite them inside our phy driver.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
[Minor checkpatch.pl cleanups]
Signed-off-by: Sander Vanheule <sander@svanheule.net>
2024-09-14 19:58:21 +02:00
Markus Stockhausen
0b078f2ecf realtek: normalize dts directory
There is no need to keep a version specific dts directory.
Rename the folder to its standard location.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2024-09-14 16:56:37 +02:00
Daniel Golle
c4a9265160 mediatek: apply pending PHY driver fixes
Apply changes suggested by SkyLake Huang for pending series improving
MediaTek Ethernet PHY drivers.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-09-12 15:43:05 +02:00
Rafał Miłecki
e39ae96f88 kernel: backport nvmem changes from v6.12
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2024-09-12 08:59:36 +02:00
David Bauer
c7ba5574f5 ipq40xx: define config-names for Aruba boards
Aruba boards now ship with multiple DTS and image-configurations per
image. Newer apboot revs expect a configuration for their hardware to be
present.

Signed-off-by: David Bauer <mail@david-bauer.net>
2024-09-11 00:37:34 +02:00
David Bauer
8d7676dfba treewide: update contact information
Change contact information of comitter as requested.

Reviewed-by: Sarah Mädel <openwrt@tbspace.de>
Signed-off-by: David Bauer <mail@david-bauer.net>
2024-09-11 00:37:34 +02:00
Daniel Golle
ab25600c65 ramips: mt76x8: add missing model string to Yuncore M300
Add missing 'model' string to DT, so /tmp/sysinfo/model gets populated.

Fixes: e497c975d3 ("ramips: mt76x8: add support for Yuncore M300")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-09-11 00:17:05 +02:00
Daniel Golle
f625d9b31c ramips: mt76x8: add missing model string to Yuncore CPE200
Add missing 'model' string to DT, so /tmp/sysinfo/model gets populated.

Fixes: 64dae1052b ("ramips: mt76x8: add support for Yuncore CPE200")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-09-11 00:17:05 +02:00
John Crispin
ee798653f3 mediatek: fix OpenWrt One NAND size
The final version of the PCB has 256MB NAND instead of 128MB.

Signed-off-by: John Crispin <john@phrozen.org>
2024-09-10 17:23:04 +02:00
John Crispin
f5c42670d2 mediatek: fix OpenWrt One MACs
* Ignore the MACs passed by the bootloader.
* fix nvmem-cell-cells warning
* fix the node names
* add dbdc wifi MACs

Signed-off-by: John Crispin <john@phrozen.org>
2024-09-10 17:23:04 +02:00
Rafał Miłecki
7d3789de99 kernel: backport nvmem changes from v6.11
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2024-09-10 13:43:03 +02:00
Rafał Miłecki
8616d9db34 kernel: backport nvmem changes from v6.10
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2024-09-10 13:42:59 +02:00
Rafał Miłecki
944dfb1ed6 kernel: backport nvmem changes from v6.9
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2024-09-10 13:42:55 +02:00
Zoltan HERPAI
a66f6c1bfb starfive: 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-09-10 12:04:09 +02:00
Zoltan HERPAI
fc582aa049 starfive: switch default to 6.6
Switch the default kernel to 6.6.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2024-09-10 12:04:07 +02:00
Rui Salvaterra
2cfcb90882 octeon: set Linux 6.6 as the default kernel
And remove support for 6.1 while at it.

Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/15838
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-09-09 18:24:34 +02:00
Rui Salvaterra
c366f63c40 octeon: add support for testing kernel 6.6
A rather trivial addition. Patches automatically rebased. Also add the new
CONFIG_USB_DWC3_OCTEON (disabled) to the generic 6.6 config and sort it, while
at it.

Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/15838
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-09-09 18:24:34 +02:00
Mieczyslaw Nalewaj
5eb8b7793d bcm53xx: drop 6.1 support
Drop config and files for Linux 6.1.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/16103
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-09-09 14:29:58 +02:00
Mieczyslaw Nalewaj
6babd1cc12 bcm53xx: drop 5.15 support
Drop config and files for Linux 5.15.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/16103
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-09-09 14:29:58 +02:00
Mieczyslaw Nalewaj
a1559e9d1b bcm53xx: use kernel 6.6 by default
Switch to Linux kernel version 6.6.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/16103
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-09-09 14:29:58 +02:00
John Audia
15280316fa kernel: bump 6.6 to 6.6.50
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.50

All patch automatically rebased.

Test version: r27317-8e6543fae5
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>
Link: https://github.com/openwrt/openwrt/pull/16351
Signed-off-by: Nick Hainke <vincent@systemli.org>
2024-09-08 21:29:13 +02:00
Tianling Shen
317076d257 rockchip: backport pcie update for rock 5a
This enables the M.2 E-key on ROCK 5A board.
Reorder rk356x patch while at it.

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
Link: https://github.com/openwrt/openwrt/pull/16340
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-09-08 18:31:11 +02:00
George Witt
9b33645566 ipq807x: add support for TP-Link EAP660 HD v1
Specifications:
* SoC: Qualcomm IPQ8072A (64-bit Quad-core Arm Cortex-A53 @ 2200MHz)
* Memory: 2x ESMT M15T4G16256A-DEBG2G (1 GiB DDR3-1866 13-13-13)
* Serial Port: 3v3 TTL 115200n8
* Wi-Fi: QCN5054 (4x4 5 GHz 802.11ax)
* Wi-Fi: QCN5024 (4x4 2.4 GHz 802.11b/g/n/ax)
* Ethernet: QCA8081 (10/100/1000/2.5GBASE-T)
* Flash: Winbond W29N01HZSINF (128 MiB)
* LEDs: 1x Blue Status (GPIO 42 Active High)
* Buttons: 1x Reset (GPIO 50 Active Low)

Installation Instructions (Serial+TFTP):
1. Solder 4 pin header to JP1 and bridge pads of R58 and R62.
2. Connect 3V3 TTL port to TX, RX, and GND, which are positions 1, 2,
   and 3 respectively. Be sure to crossover TX and RX.
3. Copy RAM firmware image
   openwrt-qualcommax-ipq807x-tplink_eap660hd-v1-initramfs-uImage.itb
   to TFTP server root, available at 192.168.10.1.
4. Connect PoE ethernet cable to the RJ45 port and hold Ctrl+B in the
   serial console (115200 baud) until autoboot is halted.
5. Run the following commands in the U-boot prompt:
   # tftpboot 0x44000000 openwrt-qualcommax-ipq807x-tplink_eap660hd-v1-initramfs-uImage.itb
   # bootm
   You may need to type Ctrl+C and Enter before running these commands
   to clear invisible characters from the buffer.
6. Run the following command in a terminal to copy the sysupgrade image
   to be installed (check IP address):
   $ scp openwrt-qualcommax-ipq807x-tplink_eap660hd-v1-squashfs-sysupgrade.bin root@192.168.1.1:/tmp/
7. Activate the OpenWrt serial console and run the following commands:
   # cd /tmp
   # sysupgrade -n openwrt-qualcommax-ipq807x-tplink_eap660hd-v1-squashfs-sysupgrade.bin
8. The AP will reboot and OpenWrt will be successfully installed.

Signed-off-by: George Witt <george.witt@nltsproject.org>
Link: https://github.com/openwrt/openwrt/pull/15832
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-09-08 12:01:19 +02:00
Zoltan HERPAI
1fa28dd899 starfive: 6.6: add serial1 alias for JH7100
This alias was present in 6.1. Add back to restore a fully working console after
sbi0 (earlycon) gets disabled during the boot process.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2024-09-08 09:57:53 +02:00
Rosen Penev
8e6543fae5 ramips: pinctrl-aw9523: update to current upstream
Various cleanups and bugfixes were applied.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16215
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-09-07 22:27:01 +02:00
Rosen Penev
39d0fd6a36 mpc85xx: add static to init functions
No reason for them not to be so. Matches various upstream commits for
PPC.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16345
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-09-07 22:24:07 +02:00
Rosen Penev
5f3a7f7bad mpc85xx: remove calibrate_decr
With upstream commit 0aafbdf35c75cbfec82636d01e6dc7950bc1507c , this is
now default. No need to override.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16345
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-09-07 22:24:07 +02:00
Rosen Penev
078cade9f8 mpc85xx: replace probe with compatible
Upstream commit does this for simple cases, which all of these are.

Commit: 1c96fcdef8c7492ecf34ed70102a1ae5253ef9d1

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16345
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-09-07 22:24:07 +02:00