From aea1baaedf1675bf116d705d11ffb10098213d10 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mattias=20Walstr=C3=B6m?= Date: Mon, 12 Oct 2026 16:20:16 +0200 Subject: [PATCH 1/9] board: Enable IPv6 on the LAN bridge in the router factory configs MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The ports in the bridge had an ipv6 container but the bridge, which carries the LAN address, had none, so the router had no link-local address on the LAN side. Add it on every static factory config with a LAN bridge. Signed-off-by: Mattias Walström --- .../share/product/acer,connect-vero-w/etc/factory-config.cfg | 3 ++- .../usr/share/product/bananapi,bpi-r3/etc/factory-config.cfg | 3 ++- .../share/product/bananapi,bpi-r3mini/etc/factory-config.cfg | 3 ++- .../share/product/bananapi,bpi-r4-2g5/etc/factory-config.cfg | 3 ++- .../usr/share/product/bananapi,bpi-r4/etc/factory-config.cfg | 3 ++- .../usr/share/product/bananapi,bpi-r64/etc/factory-config.cfg | 3 ++- .../product/friendlyarm,nanopi-r2s/etc/factory-config.cfg | 3 ++- doc/ChangeLog.md | 3 +++ 8 files changed, 17 insertions(+), 7 deletions(-) diff --git a/board/aarch64/acer-connect-vero-w6m/rootfs/usr/share/product/acer,connect-vero-w/etc/factory-config.cfg b/board/aarch64/acer-connect-vero-w6m/rootfs/usr/share/product/acer,connect-vero-w/etc/factory-config.cfg index eb1e5b9da..8226e163e 100644 --- a/board/aarch64/acer-connect-vero-w6m/rootfs/usr/share/product/acer,connect-vero-w/etc/factory-config.cfg +++ b/board/aarch64/acer-connect-vero-w6m/rootfs/usr/share/product/acer,connect-vero-w/etc/factory-config.cfg @@ -59,7 +59,8 @@ "prefix-length": 24 } ] - } + }, + "ietf-ip:ipv6": {} }, { "name": "lan1", diff --git a/board/aarch64/bananapi-bpi-r3/rootfs/usr/share/product/bananapi,bpi-r3/etc/factory-config.cfg b/board/aarch64/bananapi-bpi-r3/rootfs/usr/share/product/bananapi,bpi-r3/etc/factory-config.cfg index c018183b3..bc16d8245 100644 --- a/board/aarch64/bananapi-bpi-r3/rootfs/usr/share/product/bananapi,bpi-r3/etc/factory-config.cfg +++ b/board/aarch64/bananapi-bpi-r3/rootfs/usr/share/product/bananapi,bpi-r3/etc/factory-config.cfg @@ -51,7 +51,8 @@ "prefix-length": 24 } ] - } + }, + "ietf-ip:ipv6": {} }, { "name": "lan1", diff --git a/board/aarch64/bananapi-bpi-r3/rootfs/usr/share/product/bananapi,bpi-r3mini/etc/factory-config.cfg b/board/aarch64/bananapi-bpi-r3/rootfs/usr/share/product/bananapi,bpi-r3mini/etc/factory-config.cfg index 182c6f535..4357d620a 100644 --- a/board/aarch64/bananapi-bpi-r3/rootfs/usr/share/product/bananapi,bpi-r3mini/etc/factory-config.cfg +++ b/board/aarch64/bananapi-bpi-r3/rootfs/usr/share/product/bananapi,bpi-r3mini/etc/factory-config.cfg @@ -51,7 +51,8 @@ "prefix-length": 24 } ] - } + }, + "ietf-ip:ipv6": {} }, { "name": "lan", diff --git a/board/aarch64/bananapi-bpi-r4/rootfs/usr/share/product/bananapi,bpi-r4-2g5/etc/factory-config.cfg b/board/aarch64/bananapi-bpi-r4/rootfs/usr/share/product/bananapi,bpi-r4-2g5/etc/factory-config.cfg index c95c464d5..5aa69df31 100644 --- a/board/aarch64/bananapi-bpi-r4/rootfs/usr/share/product/bananapi,bpi-r4-2g5/etc/factory-config.cfg +++ b/board/aarch64/bananapi-bpi-r4/rootfs/usr/share/product/bananapi,bpi-r4-2g5/etc/factory-config.cfg @@ -25,7 +25,8 @@ "prefix-length": 24 } ] - } + }, + "ietf-ip:ipv6": {} }, { "name": "lan0", diff --git a/board/aarch64/bananapi-bpi-r4/rootfs/usr/share/product/bananapi,bpi-r4/etc/factory-config.cfg b/board/aarch64/bananapi-bpi-r4/rootfs/usr/share/product/bananapi,bpi-r4/etc/factory-config.cfg index 7b6d66926..9e643858c 100644 --- a/board/aarch64/bananapi-bpi-r4/rootfs/usr/share/product/bananapi,bpi-r4/etc/factory-config.cfg +++ b/board/aarch64/bananapi-bpi-r4/rootfs/usr/share/product/bananapi,bpi-r4/etc/factory-config.cfg @@ -25,7 +25,8 @@ "prefix-length": 24 } ] - } + }, + "ietf-ip:ipv6": {} }, { "name": "lan1", diff --git a/board/aarch64/bananapi-bpi-r64/rootfs/usr/share/product/bananapi,bpi-r64/etc/factory-config.cfg b/board/aarch64/bananapi-bpi-r64/rootfs/usr/share/product/bananapi,bpi-r64/etc/factory-config.cfg index 632787cbd..fe9643df0 100644 --- a/board/aarch64/bananapi-bpi-r64/rootfs/usr/share/product/bananapi,bpi-r64/etc/factory-config.cfg +++ b/board/aarch64/bananapi-bpi-r64/rootfs/usr/share/product/bananapi,bpi-r64/etc/factory-config.cfg @@ -36,7 +36,8 @@ "prefix-length": 24 } ] - } + }, + "ietf-ip:ipv6": {} }, { "name": "lan0", diff --git a/board/aarch64/friendlyarm-nanopi-r2s/rootfs/usr/share/product/friendlyarm,nanopi-r2s/etc/factory-config.cfg b/board/aarch64/friendlyarm-nanopi-r2s/rootfs/usr/share/product/friendlyarm,nanopi-r2s/etc/factory-config.cfg index 3ef1d99aa..fc9df6bba 100644 --- a/board/aarch64/friendlyarm-nanopi-r2s/rootfs/usr/share/product/friendlyarm,nanopi-r2s/etc/factory-config.cfg +++ b/board/aarch64/friendlyarm-nanopi-r2s/rootfs/usr/share/product/friendlyarm,nanopi-r2s/etc/factory-config.cfg @@ -25,7 +25,8 @@ "prefix-length": 24 } ] - } + }, + "ietf-ip:ipv6": {} }, { "name": "lan", diff --git a/doc/ChangeLog.md b/doc/ChangeLog.md index e585de412..667ad257e 100644 --- a/doc/ChangeLog.md +++ b/doc/ChangeLog.md @@ -9,6 +9,9 @@ All notable changes to the project are documented in this file. ### Changes - Upgrade Linux kernel to 6.18.56 (LTS) +- The LAN bridge in the factory config of the Banana Pi R3, R3 mini, R4, + R64, NanoPi R2S and Vero W6M now has IPv6 enabled, so the router has a + link-local address on the LAN side like its ports already had - Boards without a VPD EEPROM can be given a fixed identity, base MAC included, by writing an ONIE TLV to a disk partition labelled `factory`, see [VPD documentation](vpd.md#factory-partition) From 8d6c573bc325975e3c3bf6efab21bebc34b015a0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mattias=20Walstr=C3=B6m?= Date: Tue, 13 Oct 2026 13:43:17 +0200 Subject: [PATCH 2/9] patches/linux: Do not defer forever on a cell missing from a layout A bound nvmem layout has added all the cells it will ever have, so a missing one is -ENOENT, not -EPROBE_DEFER. Lets a board with an empty VPD come up with random port addresses instead of no Ethernet at all. --- ...0g-Support-firmware-loading-on-88X33.patch | 2 +- ...0g-Fix-power-up-when-strapped-to-sta.patch | 2 +- ...rvell10g-Add-LED-support-for-88X3310.patch | 2 +- ...0g-Support-LEDs-tied-to-a-single-med.patch | 2 +- ...phy-Do-not-resume-PHY-when-attaching.patch | 2 +- ...-classifying-unknown-multicast-as-mr.patch | 2 +- ...e-router-ports-when-forwarding-L2-mu.patch | 2 +- ...delay-for-applying-strict-multicast-.patch | 2 +- ...rentiate-MDB-additions-from-modifica.patch | 2 +- ...ie-tlv-Let-device-probe-even-when-TL.patch | 2 +- ...d-r8153b-support-for-link-activity-L.patch | 2 +- ...ek-mt7986a-rename-BPi-R3-ports-to-ma.patch | 2 +- ...-Add-a-timing-for-the-Raspberry-Pi-7.patch | 4 +-- ...uchscreen-edt-ft5x06-Add-polled-mode.patch | 2 +- ...e6xxx-Fix-timeout-on-waiting-for-PPU.patch | 2 +- ...x-Improve-indirect-register-access-p.patch | 2 +- ...x-Honor-ports-being-managed-via-in-b.patch | 2 +- ...x-Limit-rsvd2cpu-policy-to-user-port.patch | 2 +- ...Use-tag-priority-as-initial-skb-prio.patch | 2 +- ...MDB-memberships-whose-L2-addresses-o.patch | 2 +- ...t-EtherType-based-priority-overrides.patch | 2 +- ...x-Support-EtherType-based-priority-o.patch | 2 +- ...a-mv88e6xxx-Add-mqprio-qdisc-support.patch | 2 +- ...x-Use-VLAN-prio-over-IP-when-both-ar.patch | 2 +- ...8e6xxx-Trap-locally-terminated-VLANs.patch | 2 +- ...x-collapse-disabled-state-into-block.patch | 2 +- ...x-Only-activate-LAG-offloading-when-.patch | 4 +-- ...-mv88e6xxx-Add-LED-support-for-6393X.patch | 2 +- ...eck-connection-state-before-querying.patch | 4 +-- ...ppress-log-spam-for-regulatory-restr.patch | 2 +- ...duce-log-noise-during-AP-to-station-.patch | 2 +- ...11h-add-OF-device-table-for-auto-loa.patch | 2 +- ...le-video-and-then-retry-failed-trans.patch | 2 +- ...locks-should-be-running-before-reset.patch | 2 +- ...nsure-DSI-is-enabled-for-FIFO-resets.patch | 2 +- ...036-drm-vc4-Reset-DSI-AFE-on-disable.patch | 2 +- ...le-the-different-command-FIFO-widths.patch | 3 +- ...762-Program-the-DPI-mode-into-the-ch.patch | 2 +- ...e-tc358762-revert-move-ops-to-enable.patch | 2 +- ...762-Set-pre_enabled-on-pre_enable-to.patch | 4 +-- ...dalone-PCS-registration-infrastructu.patch | 3 +- ...d-MediaTek-MT7988-USXGMII-PCS-driver.patch | 2 +- ...iatek-add-USXGMII-support-for-MT7988.patch | 3 +- ...diatek-mt7988a-add-USXGMII-PCS-nodes.patch | 2 +- ...ek-bananapi-bpi-r4-enable-SFP-ports-.patch | 2 +- ...et-phy-sfp-add-OEM-SFP-10G-T-I-quirk.patch | 2 +- ...x-Trap-PTP-frames-on-timestamping-po.patch | 2 +- ...-add-MODULE_DEVICE_TABLE-for-mt7622-.patch | 4 +-- ...3-Fix-PERST-control-timing-during-sy.patch | 2 +- ...xx-Derive-LED-names-from-device-name.patch | 3 +- ...s-make-it-selectable-for-ARCH_LAN969.patch | 3 +- ...arx5-fix-wrong-chip-ids-for-TSN-SKUs.patch | 2 +- ...gure-serdes-for-1000BASE-X-in-sparx5.patch | 2 +- ...atmel-sama5d2-sdhci-add-microchip-la.patch | 2 +- ...mc-sdhci-of-at91-add-LAN969x-support.patch | 2 +- ...1-stop-SDCLK-on-reset-and-add-eMMC-h.patch | 2 +- ...arx5-lan969x-populate-netdev-of_node.patch | 2 +- ...rochip-add-LAN969x-clock-header-file.patch | 2 +- ...64-dts-microchip-add-LAN969x-support.patch | 2 +- ...m64-dts-microchip-add-EV23X71A-board.patch | 2 +- ...4-dts-microchip-lan969x-add-OTP-node.patch | 2 +- ...ts-microchip-lan969x-add-SDMMC-nodes.patch | 2 +- ...4-dts-microchip-ev23x71a-enable-eMMC.patch | 2 +- ...rvey-the-requested-interface-not-the.patch | 4 +-- ...nor-caller-s-rtnl-lock-when-stopping.patch | 4 +-- ...t-cfg_to_ndev-return-NULL-and-harden.patch | 2 +- ...pport-deletion-and-recreation-of-the.patch | 4 +-- ...port-port-authorized-after-offloaded.patch | 4 +-- ...m-AT91-document-Novarq-Tactical-1000.patch | 2 +- ...s-microchip-add-Novarq-Tactical-1000.patch | 2 +- ...crochip-tactical-1000-add-port-names.patch | 2 +- ...icrochip-tactical-1000-adapt-to-6.18.patch | 2 +- ...ngs-arm-AT91-document-EV23X71A-board.patch | 2 +- ...-default-priority-init-on-unsupporte.patch | 4 +-- ...se-the-global-DCB-APP-mirroring-help.patch | 2 +- ...net-dsa-Support-the-PCP-APP-selector.patch | 2 +- ...net-dsa-Support-DCB-priority-rewrite.patch | 2 +- ...-Support-the-IEEE-ETS-managed-object.patch | 2 +- ...leep-in-atomic-context-in-MAC-table-.patch | 2 +- ...ymreg-symreg-debugfs-driver-DBB-1045.patch | 2 +- ..._wed-map-WO-memory-regions-without-r.patch | 2 +- ...-fix-kernel-panic-on-non-DBDC-MT7986.patch | 2 +- ...-set-up-WPDMA-RX-ring-0-for-WED-on-a.patch | 4 +-- ...-add-WDS-support-when-WED-is-enabled.patch | 3 +- ..._wed-increase-WED-v2-WDMA-RESV_BUFF-.patch | 4 +-- ...-publish-wcid-before-MCU-add-command.patch | 2 +- ...acemit-add-UART-pinctrl-combinations.patch | 4 +-- ...dts-spacemit-enable-the-i2c8-adapter.patch | 8 ++--- ...dts-spacemit-define-fixed-regulators.patch | 4 +-- ...pacemit-define-regulator-constraints.patch | 4 +-- ...it-pinctrl-update-register-and-IO-po.patch | 4 +-- ...it-Update-PMIC-supply-properties-for.patch | 4 +-- ...it-k1-add-SD-card-controller-and-pin.patch | 6 ++-- ...it-k1-bananapi-f3-add-SD-card-suppor.patch | 4 +-- ...95-mmc-sdhci-of-k1-add-reset-support.patch | 4 +-- ...enable-essential-clock-infrastructur.patch | 4 +-- ...add-regulator-and-pinctrl-voltage-sw.patch | 4 +-- ...add-comprehensive-SDR-tuning-support.patch | 4 +-- ...cemit-p1-add-driver-for-poweroff-reb.patch | 8 ++--- ...2c-Add-a-reboot-cell-for-the-Spacemi.patch | 4 +-- ...t-defer-on-a-cell-missing-from-a-bou.patch | 36 +++++++++++++++++++ 101 files changed, 173 insertions(+), 131 deletions(-) create mode 100644 patches/linux/6.18.56/0101-nvmem-core-do-not-defer-on-a-cell-missing-from-a-bou.patch diff --git a/patches/linux/6.18.56/0001-net-phy-marvell10g-Support-firmware-loading-on-88X33.patch b/patches/linux/6.18.56/0001-net-phy-marvell10g-Support-firmware-loading-on-88X33.patch index 63f024651..ef4310244 100644 --- a/patches/linux/6.18.56/0001-net-phy-marvell10g-Support-firmware-loading-on-88X33.patch +++ b/patches/linux/6.18.56/0001-net-phy-marvell10g-Support-firmware-loading-on-88X33.patch @@ -1,7 +1,7 @@ From ca34ebe2b40b53b52a5ea6fb00b7bb36eeeabb5f Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Tue, 19 Sep 2023 18:38:10 +0200 -Subject: [PATCH 01/86] net: phy: marvell10g: Support firmware loading on +Subject: [PATCH 001/101] net: phy: marvell10g: Support firmware loading on 88X3310 When probing, if a device is waiting for firmware to be loaded into diff --git a/patches/linux/6.18.56/0002-net-phy-marvell10g-Fix-power-up-when-strapped-to-sta.patch b/patches/linux/6.18.56/0002-net-phy-marvell10g-Fix-power-up-when-strapped-to-sta.patch index 9a48713b7..2e3fbb206 100644 --- a/patches/linux/6.18.56/0002-net-phy-marvell10g-Fix-power-up-when-strapped-to-sta.patch +++ b/patches/linux/6.18.56/0002-net-phy-marvell10g-Fix-power-up-when-strapped-to-sta.patch @@ -1,7 +1,7 @@ From 59532ff26cccf476b4e6f8eeaf2e733c93106a78 Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Tue, 21 Nov 2023 20:15:24 +0100 -Subject: [PATCH 02/86] net: phy: marvell10g: Fix power-up when strapped to +Subject: [PATCH 002/101] net: phy: marvell10g: Fix power-up when strapped to start powered down On devices which are hardware strapped to start powered down (PDSTATE diff --git a/patches/linux/6.18.56/0003-net-phy-marvell10g-Add-LED-support-for-88X3310.patch b/patches/linux/6.18.56/0003-net-phy-marvell10g-Add-LED-support-for-88X3310.patch index 1b45c4c0a..7236465eb 100644 --- a/patches/linux/6.18.56/0003-net-phy-marvell10g-Add-LED-support-for-88X3310.patch +++ b/patches/linux/6.18.56/0003-net-phy-marvell10g-Add-LED-support-for-88X3310.patch @@ -1,7 +1,7 @@ From 2881f5a7008a4b7a214f63960f1d199f55a7a78a Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Wed, 15 Nov 2023 20:58:42 +0100 -Subject: [PATCH 03/86] net: phy: marvell10g: Add LED support for 88X3310 +Subject: [PATCH 003/101] net: phy: marvell10g: Add LED support for 88X3310 Pickup the LEDs from the state in which the hardware reset or bootloader left them, but also support further configuration via diff --git a/patches/linux/6.18.56/0004-net-phy-marvell10g-Support-LEDs-tied-to-a-single-med.patch b/patches/linux/6.18.56/0004-net-phy-marvell10g-Support-LEDs-tied-to-a-single-med.patch index 13027abff..f7301fb31 100644 --- a/patches/linux/6.18.56/0004-net-phy-marvell10g-Support-LEDs-tied-to-a-single-med.patch +++ b/patches/linux/6.18.56/0004-net-phy-marvell10g-Support-LEDs-tied-to-a-single-med.patch @@ -1,7 +1,7 @@ From 67a62752bdb5e1e45982289b2eda1f5df4ca6f47 Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Tue, 12 Dec 2023 09:51:05 +0100 -Subject: [PATCH 04/86] net: phy: marvell10g: Support LEDs tied to a single +Subject: [PATCH 004/101] net: phy: marvell10g: Support LEDs tied to a single media side In a combo-port setup, i.e. where both the copper and fiber interface diff --git a/patches/linux/6.18.56/0005-net-phy-Do-not-resume-PHY-when-attaching.patch b/patches/linux/6.18.56/0005-net-phy-Do-not-resume-PHY-when-attaching.patch index 370ff0d79..f2405277f 100644 --- a/patches/linux/6.18.56/0005-net-phy-Do-not-resume-PHY-when-attaching.patch +++ b/patches/linux/6.18.56/0005-net-phy-Do-not-resume-PHY-when-attaching.patch @@ -1,7 +1,7 @@ From a60255d4ba8ea888ecb86e92a2c65334a26f6384 Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Wed, 27 Mar 2024 10:10:19 +0100 -Subject: [PATCH 05/86] net: phy: Do not resume PHY when attaching +Subject: [PATCH 005/101] net: phy: Do not resume PHY when attaching The PHY should not start negotiating with its link-partner until explicitly instructed to do so. diff --git a/patches/linux/6.18.56/0006-net-bridge-avoid-classifying-unknown-multicast-as-mr.patch b/patches/linux/6.18.56/0006-net-bridge-avoid-classifying-unknown-multicast-as-mr.patch index 722348bd3..ba9c50980 100644 --- a/patches/linux/6.18.56/0006-net-bridge-avoid-classifying-unknown-multicast-as-mr.patch +++ b/patches/linux/6.18.56/0006-net-bridge-avoid-classifying-unknown-multicast-as-mr.patch @@ -1,7 +1,7 @@ From 3fc8e2a80589a5a5ae02fac7b3f97f195cb90930 Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Mon, 4 Mar 2024 16:47:28 +0100 -Subject: [PATCH 06/86] net: bridge: avoid classifying unknown multicast as +Subject: [PATCH 006/101] net: bridge: avoid classifying unknown multicast as mrouters_only Unknown multicast, MAC/IPv4/IPv6, should always be flooded according to diff --git a/patches/linux/6.18.56/0007-net-bridge-Ignore-router-ports-when-forwarding-L2-mu.patch b/patches/linux/6.18.56/0007-net-bridge-Ignore-router-ports-when-forwarding-L2-mu.patch index ac60d4c16..607c3f547 100644 --- a/patches/linux/6.18.56/0007-net-bridge-Ignore-router-ports-when-forwarding-L2-mu.patch +++ b/patches/linux/6.18.56/0007-net-bridge-Ignore-router-ports-when-forwarding-L2-mu.patch @@ -1,7 +1,7 @@ From 8f5cf3a448d6e7a1d00043debd0bf1fcaf706680 Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Tue, 5 Mar 2024 06:44:41 +0100 -Subject: [PATCH 07/86] net: bridge: Ignore router ports when forwarding L2 +Subject: [PATCH 007/101] net: bridge: Ignore router ports when forwarding L2 multicast Multicast router ports are either statically configured or learned from diff --git a/patches/linux/6.18.56/0008-net-bridge-drop-delay-for-applying-strict-multicast-.patch b/patches/linux/6.18.56/0008-net-bridge-drop-delay-for-applying-strict-multicast-.patch index 46e829866..70d7141d6 100644 --- a/patches/linux/6.18.56/0008-net-bridge-drop-delay-for-applying-strict-multicast-.patch +++ b/patches/linux/6.18.56/0008-net-bridge-drop-delay-for-applying-strict-multicast-.patch @@ -1,7 +1,7 @@ From a42722822b7ff8ea8ac5e65a8449bb72b1ef8c05 Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Thu, 4 Apr 2024 16:36:30 +0200 -Subject: [PATCH 08/86] net: bridge: drop delay for applying strict multicast +Subject: [PATCH 008/101] net: bridge: drop delay for applying strict multicast filtering This *local* patch drops the initial delay before applying strict multicast diff --git a/patches/linux/6.18.56/0009-net-bridge-Differentiate-MDB-additions-from-modifica.patch b/patches/linux/6.18.56/0009-net-bridge-Differentiate-MDB-additions-from-modifica.patch index 6a3937d3a..dffcc8029 100644 --- a/patches/linux/6.18.56/0009-net-bridge-Differentiate-MDB-additions-from-modifica.patch +++ b/patches/linux/6.18.56/0009-net-bridge-Differentiate-MDB-additions-from-modifica.patch @@ -1,7 +1,7 @@ From 2722df35856114c70f9896452d155b660f804ed8 Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Thu, 16 May 2024 14:51:54 +0200 -Subject: [PATCH 09/86] net: bridge: Differentiate MDB additions from +Subject: [PATCH 009/101] net: bridge: Differentiate MDB additions from modifications Before this change, the reception of an IGMPv3 report (and analogously diff --git a/patches/linux/6.18.56/0010-nvmem-layouts-onie-tlv-Let-device-probe-even-when-TL.patch b/patches/linux/6.18.56/0010-nvmem-layouts-onie-tlv-Let-device-probe-even-when-TL.patch index 1e5f830a6..39c12f5eb 100644 --- a/patches/linux/6.18.56/0010-nvmem-layouts-onie-tlv-Let-device-probe-even-when-TL.patch +++ b/patches/linux/6.18.56/0010-nvmem-layouts-onie-tlv-Let-device-probe-even-when-TL.patch @@ -1,7 +1,7 @@ From 17f03931f23a3ed1dbe6f77a7e48bfdc11f17140 Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Fri, 24 Nov 2023 23:29:55 +0100 -Subject: [PATCH 10/86] nvmem: layouts: onie-tlv: Let device probe even when +Subject: [PATCH 010/101] nvmem: layouts: onie-tlv: Let device probe even when TLV is invalid Before this change, probing an NVMEM device, expected to contain a diff --git a/patches/linux/6.18.56/0011-net-usb-r8152-add-r8153b-support-for-link-activity-L.patch b/patches/linux/6.18.56/0011-net-usb-r8152-add-r8153b-support-for-link-activity-L.patch index 55dfcebe6..1916e21ee 100644 --- a/patches/linux/6.18.56/0011-net-usb-r8152-add-r8153b-support-for-link-activity-L.patch +++ b/patches/linux/6.18.56/0011-net-usb-r8152-add-r8153b-support-for-link-activity-L.patch @@ -1,7 +1,7 @@ From cbc993b90307a45db570d20bce5e651100bafaa7 Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Sun, 11 Aug 2024 11:27:35 +0200 -Subject: [PATCH 11/86] net: usb: r8152: add r8153b support for link/activity +Subject: [PATCH 011/101] net: usb: r8152: add r8153b support for link/activity LEDs This patch adds support for the link/activity LEDs on the NanoPi R2S diff --git a/patches/linux/6.18.56/0012-arm64-dts-mediatek-mt7986a-rename-BPi-R3-ports-to-ma.patch b/patches/linux/6.18.56/0012-arm64-dts-mediatek-mt7986a-rename-BPi-R3-ports-to-ma.patch index 5726a3f79..9af3c7e28 100644 --- a/patches/linux/6.18.56/0012-arm64-dts-mediatek-mt7986a-rename-BPi-R3-ports-to-ma.patch +++ b/patches/linux/6.18.56/0012-arm64-dts-mediatek-mt7986a-rename-BPi-R3-ports-to-ma.patch @@ -1,7 +1,7 @@ From 0c1a54359f6989eedad98678e030fc1d8fb44da0 Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Sun, 10 Aug 2025 18:52:54 +0200 -Subject: [PATCH 12/86] arm64: dts: mediatek: mt7986a: rename BPi R3 ports to +Subject: [PATCH 012/101] arm64: dts: mediatek: mt7986a: rename BPi R3 ports to match case For ref. see: https://wiki.banana-pi.org/File:Bpi-r3_Metal_case.jpg diff --git a/patches/linux/6.18.56/0013-drm-panel-simple-Add-a-timing-for-the-Raspberry-Pi-7.patch b/patches/linux/6.18.56/0013-drm-panel-simple-Add-a-timing-for-the-Raspberry-Pi-7.patch index 1068b1f89..89088b610 100644 --- a/patches/linux/6.18.56/0013-drm-panel-simple-Add-a-timing-for-the-Raspberry-Pi-7.patch +++ b/patches/linux/6.18.56/0013-drm-panel-simple-Add-a-timing-for-the-Raspberry-Pi-7.patch @@ -1,8 +1,8 @@ From 2cbb47d51538a83315595715405a328552b9a753 Mon Sep 17 00:00:00 2001 From: Mattias Walström Date: Wed, 20 Aug 2025 21:38:24 +0200 -Subject: [PATCH 13/86] drm/panel-simple: Add a timing for the Raspberry Pi 7" - panel +Subject: [PATCH 013/101] drm/panel-simple: Add a timing for the Raspberry Pi + 7" panel The Raspberry Pi 7" 800x480 panel uses a Toshiba TC358762 DSI to DPI bridge chip, so there is a requirement for the timings diff --git a/patches/linux/6.18.56/0014-input-touchscreen-edt-ft5x06-Add-polled-mode.patch b/patches/linux/6.18.56/0014-input-touchscreen-edt-ft5x06-Add-polled-mode.patch index 70094938d..9079787ca 100644 --- a/patches/linux/6.18.56/0014-input-touchscreen-edt-ft5x06-Add-polled-mode.patch +++ b/patches/linux/6.18.56/0014-input-touchscreen-edt-ft5x06-Add-polled-mode.patch @@ -1,7 +1,7 @@ From fed97704c224902b2d79c81492c5a50ccd97793b Mon Sep 17 00:00:00 2001 From: Mattias Walström Date: Thu, 21 Aug 2025 11:20:23 +0200 -Subject: [PATCH 14/86] input:touchscreen:edt-ft5x06: Add polled mode +Subject: [PATCH 014/101] input:touchscreen:edt-ft5x06: Add polled mode Not all hardware has interrupts therefore we need to poll the touchscreen. diff --git a/patches/linux/6.18.56/0015-FIX-net-dsa-mv88e6xxx-Fix-timeout-on-waiting-for-PPU.patch b/patches/linux/6.18.56/0015-FIX-net-dsa-mv88e6xxx-Fix-timeout-on-waiting-for-PPU.patch index 0d8c07724..5c8ef5a2d 100644 --- a/patches/linux/6.18.56/0015-FIX-net-dsa-mv88e6xxx-Fix-timeout-on-waiting-for-PPU.patch +++ b/patches/linux/6.18.56/0015-FIX-net-dsa-mv88e6xxx-Fix-timeout-on-waiting-for-PPU.patch @@ -1,7 +1,7 @@ From 11f9f49b62a6eb3a73a523541b3f26f6958e0d49 Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Tue, 12 Mar 2024 10:27:24 +0100 -Subject: [PATCH 15/86] [FIX] net: dsa: mv88e6xxx: Fix timeout on waiting for +Subject: [PATCH 015/101] [FIX] net: dsa: mv88e6xxx: Fix timeout on waiting for PPU on 6393X In a multi-chip setup, delays of up to 750ms are observed before the diff --git a/patches/linux/6.18.56/0016-net-dsa-mv88e6xxx-Improve-indirect-register-access-p.patch b/patches/linux/6.18.56/0016-net-dsa-mv88e6xxx-Improve-indirect-register-access-p.patch index aef78ec81..f726f5d40 100644 --- a/patches/linux/6.18.56/0016-net-dsa-mv88e6xxx-Improve-indirect-register-access-p.patch +++ b/patches/linux/6.18.56/0016-net-dsa-mv88e6xxx-Improve-indirect-register-access-p.patch @@ -1,7 +1,7 @@ From 6aed16ecedd6e8d3594474b00b4f80a6a75372c1 Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Wed, 27 Mar 2024 15:52:43 +0100 -Subject: [PATCH 16/86] net: dsa: mv88e6xxx: Improve indirect register access +Subject: [PATCH 016/101] net: dsa: mv88e6xxx: Improve indirect register access perf on 6393 When operating in multi-chip mode, the 6393 family maps a subset of diff --git a/patches/linux/6.18.56/0017-net-dsa-mv88e6xxx-Honor-ports-being-managed-via-in-b.patch b/patches/linux/6.18.56/0017-net-dsa-mv88e6xxx-Honor-ports-being-managed-via-in-b.patch index 914a05225..e0119b6fa 100644 --- a/patches/linux/6.18.56/0017-net-dsa-mv88e6xxx-Honor-ports-being-managed-via-in-b.patch +++ b/patches/linux/6.18.56/0017-net-dsa-mv88e6xxx-Honor-ports-being-managed-via-in-b.patch @@ -1,7 +1,7 @@ From 627e2902f0b11f9994e5c8c92627791b60069cdb Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Mon, 22 Apr 2024 23:18:01 +0200 -Subject: [PATCH 17/86] net: dsa: mv88e6xxx: Honor ports being managed via +Subject: [PATCH 017/101] net: dsa: mv88e6xxx: Honor ports being managed via in-band-status Keep all link parameters in their unforced states when the port is diff --git a/patches/linux/6.18.56/0018-net-dsa-mv88e6xxx-Limit-rsvd2cpu-policy-to-user-port.patch b/patches/linux/6.18.56/0018-net-dsa-mv88e6xxx-Limit-rsvd2cpu-policy-to-user-port.patch index 25c027ed6..af07f7ae9 100644 --- a/patches/linux/6.18.56/0018-net-dsa-mv88e6xxx-Limit-rsvd2cpu-policy-to-user-port.patch +++ b/patches/linux/6.18.56/0018-net-dsa-mv88e6xxx-Limit-rsvd2cpu-policy-to-user-port.patch @@ -1,7 +1,7 @@ From 1ad63ed23d72ed2429bcb7393aac0e82affde9e3 Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Wed, 24 Apr 2024 22:41:04 +0200 -Subject: [PATCH 18/86] net: dsa: mv88e6xxx: Limit rsvd2cpu policy to user +Subject: [PATCH 018/101] net: dsa: mv88e6xxx: Limit rsvd2cpu policy to user ports on 6393X For packets with a DA in the IEEE reserved L2 group range, originating diff --git a/patches/linux/6.18.56/0019-net-dsa-tag_dsa-Use-tag-priority-as-initial-skb-prio.patch b/patches/linux/6.18.56/0019-net-dsa-tag_dsa-Use-tag-priority-as-initial-skb-prio.patch index 51365c7dc..b0f7a8a86 100644 --- a/patches/linux/6.18.56/0019-net-dsa-tag_dsa-Use-tag-priority-as-initial-skb-prio.patch +++ b/patches/linux/6.18.56/0019-net-dsa-tag_dsa-Use-tag-priority-as-initial-skb-prio.patch @@ -1,7 +1,7 @@ From 29b6583d7463dfddbfbb0e30a70de7707f5c86b0 Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Tue, 28 May 2024 10:38:42 +0200 -Subject: [PATCH 19/86] net: dsa: tag_dsa: Use tag priority as initial +Subject: [PATCH 019/101] net: dsa: tag_dsa: Use tag priority as initial skb->priority Use the 3-bit priority field from the DSA tag as the initial packet diff --git a/patches/linux/6.18.56/0020-net-dsa-Support-MDB-memberships-whose-L2-addresses-o.patch b/patches/linux/6.18.56/0020-net-dsa-Support-MDB-memberships-whose-L2-addresses-o.patch index ffeed9746..ae79d3d73 100644 --- a/patches/linux/6.18.56/0020-net-dsa-Support-MDB-memberships-whose-L2-addresses-o.patch +++ b/patches/linux/6.18.56/0020-net-dsa-Support-MDB-memberships-whose-L2-addresses-o.patch @@ -1,7 +1,7 @@ From 6cebfb46fd0a75b04f2481dcbd43cb9442bb1e12 Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Tue, 16 Jan 2024 16:00:55 +0100 -Subject: [PATCH 20/86] net: dsa: Support MDB memberships whose L2 addresses +Subject: [PATCH 020/101] net: dsa: Support MDB memberships whose L2 addresses overlap Multiple IP multicast groups (32 for v4, 2^80 for v6) map to the same diff --git a/patches/linux/6.18.56/0021-net-dsa-Support-EtherType-based-priority-overrides.patch b/patches/linux/6.18.56/0021-net-dsa-Support-EtherType-based-priority-overrides.patch index c4d543ad5..d5810785d 100644 --- a/patches/linux/6.18.56/0021-net-dsa-Support-EtherType-based-priority-overrides.patch +++ b/patches/linux/6.18.56/0021-net-dsa-Support-EtherType-based-priority-overrides.patch @@ -1,7 +1,7 @@ From 2b39a3958e00546ff1c6f0cc523970d19355d796 Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Thu, 21 Mar 2024 19:12:15 +0100 -Subject: [PATCH 21/86] net: dsa: Support EtherType based priority overrides +Subject: [PATCH 021/101] net: dsa: Support EtherType based priority overrides --- include/net/dsa.h | 4 ++++ diff --git a/patches/linux/6.18.56/0022-net-dsa-mv88e6xxx-Support-EtherType-based-priority-o.patch b/patches/linux/6.18.56/0022-net-dsa-mv88e6xxx-Support-EtherType-based-priority-o.patch index fa0860976..c34a791db 100644 --- a/patches/linux/6.18.56/0022-net-dsa-mv88e6xxx-Support-EtherType-based-priority-o.patch +++ b/patches/linux/6.18.56/0022-net-dsa-mv88e6xxx-Support-EtherType-based-priority-o.patch @@ -1,7 +1,7 @@ From 3769055203bee35077c685d850f0debbac52459e Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Fri, 22 Mar 2024 16:15:43 +0100 -Subject: [PATCH 22/86] net: dsa: mv88e6xxx: Support EtherType based priority +Subject: [PATCH 022/101] net: dsa: mv88e6xxx: Support EtherType based priority overrides --- diff --git a/patches/linux/6.18.56/0023-net-dsa-mv88e6xxx-Add-mqprio-qdisc-support.patch b/patches/linux/6.18.56/0023-net-dsa-mv88e6xxx-Add-mqprio-qdisc-support.patch index ade6f51f6..3e86f8b90 100644 --- a/patches/linux/6.18.56/0023-net-dsa-mv88e6xxx-Add-mqprio-qdisc-support.patch +++ b/patches/linux/6.18.56/0023-net-dsa-mv88e6xxx-Add-mqprio-qdisc-support.patch @@ -1,7 +1,7 @@ From bf8849ce4ee5e95f33c435914a5d7c8e6e16e416 Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Tue, 28 May 2024 11:04:22 +0200 -Subject: [PATCH 23/86] net: dsa: mv88e6xxx: Add mqprio qdisc support +Subject: [PATCH 023/101] net: dsa: mv88e6xxx: Add mqprio qdisc support Add support for attaching mqprio qdisc's to mv88e6xxx ports and use the packet's traffic class as the outgoing priority when no PCP bits diff --git a/patches/linux/6.18.56/0024-net-dsa-mv88e6xxx-Use-VLAN-prio-over-IP-when-both-ar.patch b/patches/linux/6.18.56/0024-net-dsa-mv88e6xxx-Use-VLAN-prio-over-IP-when-both-ar.patch index 11cf8db9d..a963f0d8f 100644 --- a/patches/linux/6.18.56/0024-net-dsa-mv88e6xxx-Use-VLAN-prio-over-IP-when-both-ar.patch +++ b/patches/linux/6.18.56/0024-net-dsa-mv88e6xxx-Use-VLAN-prio-over-IP-when-both-ar.patch @@ -1,7 +1,7 @@ From 73b39094d7cdd592ec6fb18164590678789ab37a Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Wed, 29 May 2024 13:20:41 +0200 -Subject: [PATCH 24/86] net: dsa: mv88e6xxx: Use VLAN prio over IP when both +Subject: [PATCH 024/101] net: dsa: mv88e6xxx: Use VLAN prio over IP when both are available Switch the priority sourcing precdence to prefer VLAN PCP over IP diff --git a/patches/linux/6.18.56/0025-FIX-net-dsa-mv88e6xxx-Trap-locally-terminated-VLANs.patch b/patches/linux/6.18.56/0025-FIX-net-dsa-mv88e6xxx-Trap-locally-terminated-VLANs.patch index a8da9951c..2dbd50b46 100644 --- a/patches/linux/6.18.56/0025-FIX-net-dsa-mv88e6xxx-Trap-locally-terminated-VLANs.patch +++ b/patches/linux/6.18.56/0025-FIX-net-dsa-mv88e6xxx-Trap-locally-terminated-VLANs.patch @@ -1,7 +1,7 @@ From 320983cf57f27f4138a4736388ad384ea9754d37 Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Tue, 26 Nov 2024 19:45:59 +0100 -Subject: [PATCH 25/86] [FIX] net: dsa: mv88e6xxx: Trap locally terminated +Subject: [PATCH 025/101] [FIX] net: dsa: mv88e6xxx: Trap locally terminated VLANs Before this change, in a setup like the following, packets assigned to diff --git a/patches/linux/6.18.56/0026-net-dsa-mv88e6xxx-collapse-disabled-state-into-block.patch b/patches/linux/6.18.56/0026-net-dsa-mv88e6xxx-collapse-disabled-state-into-block.patch index e3cd5c084..5005c3c72 100644 --- a/patches/linux/6.18.56/0026-net-dsa-mv88e6xxx-collapse-disabled-state-into-block.patch +++ b/patches/linux/6.18.56/0026-net-dsa-mv88e6xxx-collapse-disabled-state-into-block.patch @@ -1,7 +1,7 @@ From 95d919b20d95e7d33432d450e2caafa42105d645 Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Thu, 16 Jan 2025 12:35:12 +0100 -Subject: [PATCH 26/86] net: dsa: mv88e6xxx: collapse disabled state into +Subject: [PATCH 026/101] net: dsa: mv88e6xxx: collapse disabled state into blocking This patch changes the behavior of switchcore ports wrt. the port state. diff --git a/patches/linux/6.18.56/0027-net-dsa-mv88e6xxx-Only-activate-LAG-offloading-when-.patch b/patches/linux/6.18.56/0027-net-dsa-mv88e6xxx-Only-activate-LAG-offloading-when-.patch index ec77c2f60..9641286a2 100644 --- a/patches/linux/6.18.56/0027-net-dsa-mv88e6xxx-Only-activate-LAG-offloading-when-.patch +++ b/patches/linux/6.18.56/0027-net-dsa-mv88e6xxx-Only-activate-LAG-offloading-when-.patch @@ -1,8 +1,8 @@ From 4a67cefaa3e4d69034afee21162133191863e841 Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Wed, 12 Feb 2025 22:03:14 +0100 -Subject: [PATCH 27/86] net: dsa: mv88e6xxx: Only activate LAG offloading when - bridged +Subject: [PATCH 027/101] net: dsa: mv88e6xxx: Only activate LAG offloading + when bridged The current port isolation scheme for mv88e6xxx is detailed here: https://lore.kernel.org/netdev/20220203101657.990241-1-tobias@waldekranz.com/ diff --git a/patches/linux/6.18.56/0028-net-dsa-mv88e6xxx-Add-LED-support-for-6393X.patch b/patches/linux/6.18.56/0028-net-dsa-mv88e6xxx-Add-LED-support-for-6393X.patch index ba7c735f1..941117584 100644 --- a/patches/linux/6.18.56/0028-net-dsa-mv88e6xxx-Add-LED-support-for-6393X.patch +++ b/patches/linux/6.18.56/0028-net-dsa-mv88e6xxx-Add-LED-support-for-6393X.patch @@ -1,7 +1,7 @@ From de1f05b6ee9af9d4f7deb7cde43e28d81e1b7f7f Mon Sep 17 00:00:00 2001 From: Mattias Walström Date: Wed, 14 Jan 2026 18:22:41 +0100 -Subject: [PATCH 28/86] net: dsa: mv88e6xxx: Add LED support for 6393X +Subject: [PATCH 028/101] net: dsa: mv88e6xxx: Add LED support for 6393X Original commit: commit 462277b926140ee2d231317e92afb6cabf640268 diff --git a/patches/linux/6.18.56/0029-wifi-brcmfmac-check-connection-state-before-querying.patch b/patches/linux/6.18.56/0029-wifi-brcmfmac-check-connection-state-before-querying.patch index 61a591407..8d7fa0d08 100644 --- a/patches/linux/6.18.56/0029-wifi-brcmfmac-check-connection-state-before-querying.patch +++ b/patches/linux/6.18.56/0029-wifi-brcmfmac-check-connection-state-before-querying.patch @@ -1,8 +1,8 @@ From 5ba4ebc2cbcc3efdb8c68e64de2e3e1d36f700ca Mon Sep 17 00:00:00 2001 From: Mattias Walström Date: Mon, 19 Jan 2026 13:06:53 +0100 -Subject: [PATCH 29/86] wifi: brcmfmac: check connection state before querying - station info +Subject: [PATCH 029/101] wifi: brcmfmac: check connection state before + querying station info MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/patches/linux/6.18.56/0030-wifi-brcmfmac-suppress-log-spam-for-regulatory-restr.patch b/patches/linux/6.18.56/0030-wifi-brcmfmac-suppress-log-spam-for-regulatory-restr.patch index 2749a592e..f909313d0 100644 --- a/patches/linux/6.18.56/0030-wifi-brcmfmac-suppress-log-spam-for-regulatory-restr.patch +++ b/patches/linux/6.18.56/0030-wifi-brcmfmac-suppress-log-spam-for-regulatory-restr.patch @@ -1,7 +1,7 @@ From e714d2bb8736f8befb0e223b4de054981125010e Mon Sep 17 00:00:00 2001 From: Mattias Walström Date: Tue, 20 Jan 2026 20:12:10 +0100 -Subject: [PATCH 30/86] wifi: brcmfmac: suppress log spam for +Subject: [PATCH 030/101] wifi: brcmfmac: suppress log spam for regulatory-restricted channels MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 diff --git a/patches/linux/6.18.56/0031-wifi-brcmfmac-reduce-log-noise-during-AP-to-station-.patch b/patches/linux/6.18.56/0031-wifi-brcmfmac-reduce-log-noise-during-AP-to-station-.patch index 30aecd068..4fa7e0a25 100644 --- a/patches/linux/6.18.56/0031-wifi-brcmfmac-reduce-log-noise-during-AP-to-station-.patch +++ b/patches/linux/6.18.56/0031-wifi-brcmfmac-reduce-log-noise-during-AP-to-station-.patch @@ -1,7 +1,7 @@ From 09696680be45dbeb24e8a722c3d4030b7737e11a Mon Sep 17 00:00:00 2001 From: Mattias Walström Date: Tue, 20 Jan 2026 20:18:45 +0100 -Subject: [PATCH 31/86] wifi: brcmfmac: reduce log noise during AP to station +Subject: [PATCH 031/101] wifi: brcmfmac: reduce log noise during AP to station transition MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 diff --git a/patches/linux/6.18.56/0032-net-phy-air_en8811h-add-OF-device-table-for-auto-loa.patch b/patches/linux/6.18.56/0032-net-phy-air_en8811h-add-OF-device-table-for-auto-loa.patch index 145a6655e..94cfdc0f3 100644 --- a/patches/linux/6.18.56/0032-net-phy-air_en8811h-add-OF-device-table-for-auto-loa.patch +++ b/patches/linux/6.18.56/0032-net-phy-air_en8811h-add-OF-device-table-for-auto-loa.patch @@ -1,7 +1,7 @@ From 28322c174df66701c2f4283bf338a3032a8121bc Mon Sep 17 00:00:00 2001 From: Mattias Walström Date: Tue, 17 Feb 2026 21:59:59 +0100 -Subject: [PATCH 32/86] net: phy: air_en8811h: add OF device table for +Subject: [PATCH 032/101] net: phy: air_en8811h: add OF device table for auto-loading mdio_uevent() only emits an OF-style MODALIAS via diff --git a/patches/linux/6.18.56/0033-drm-vc4-dsi-enable-video-and-then-retry-failed-trans.patch b/patches/linux/6.18.56/0033-drm-vc4-dsi-enable-video-and-then-retry-failed-trans.patch index d2717e199..5d5af4901 100644 --- a/patches/linux/6.18.56/0033-drm-vc4-dsi-enable-video-and-then-retry-failed-trans.patch +++ b/patches/linux/6.18.56/0033-drm-vc4-dsi-enable-video-and-then-retry-failed-trans.patch @@ -1,7 +1,7 @@ From 53aba25643ef8e41021eab9b61242f3151fa3a56 Mon Sep 17 00:00:00 2001 From: Dave Stevenson Date: Fri, 20 Sep 2024 12:05:18 +0100 -Subject: [PATCH 33/86] drm: vc4: dsi: enable video and then retry failed +Subject: [PATCH 033/101] drm: vc4: dsi: enable video and then retry failed transfers The DSI block appears to be able to come up stuck in a condition where diff --git a/patches/linux/6.18.56/0034-drm-vc4-dsi-Clocks-should-be-running-before-reset.patch b/patches/linux/6.18.56/0034-drm-vc4-dsi-Clocks-should-be-running-before-reset.patch index 128b97ca5..fa646ea30 100644 --- a/patches/linux/6.18.56/0034-drm-vc4-dsi-Clocks-should-be-running-before-reset.patch +++ b/patches/linux/6.18.56/0034-drm-vc4-dsi-Clocks-should-be-running-before-reset.patch @@ -1,7 +1,7 @@ From b145fb6117a42c835d69cee8d01b7679396541e6 Mon Sep 17 00:00:00 2001 From: Dave Stevenson Date: Wed, 8 Jun 2022 17:23:47 +0100 -Subject: [PATCH 34/86] drm: vc4: dsi: Clocks should be running before reset +Subject: [PATCH 034/101] drm: vc4: dsi: Clocks should be running before reset The initialisation sequence differs slightly from the documentation in that the clocks are meant to be running before resets and diff --git a/patches/linux/6.18.56/0035-drm-vc4-Ensure-DSI-is-enabled-for-FIFO-resets.patch b/patches/linux/6.18.56/0035-drm-vc4-Ensure-DSI-is-enabled-for-FIFO-resets.patch index d1130efce..720f9275a 100644 --- a/patches/linux/6.18.56/0035-drm-vc4-Ensure-DSI-is-enabled-for-FIFO-resets.patch +++ b/patches/linux/6.18.56/0035-drm-vc4-Ensure-DSI-is-enabled-for-FIFO-resets.patch @@ -1,7 +1,7 @@ From 394a21d586f7f13a5cb822ed95ef986dfb17ca87 Mon Sep 17 00:00:00 2001 From: Dave Stevenson Date: Fri, 5 Apr 2024 17:51:55 +0100 -Subject: [PATCH 35/86] drm/vc4: Ensure DSI is enabled for FIFO resets +Subject: [PATCH 035/101] drm/vc4: Ensure DSI is enabled for FIFO resets The block must be enabled for the FIFO resets to be actioned, so ensure this is the case. diff --git a/patches/linux/6.18.56/0036-drm-vc4-Reset-DSI-AFE-on-disable.patch b/patches/linux/6.18.56/0036-drm-vc4-Reset-DSI-AFE-on-disable.patch index de5adcbf3..fc99423cd 100644 --- a/patches/linux/6.18.56/0036-drm-vc4-Reset-DSI-AFE-on-disable.patch +++ b/patches/linux/6.18.56/0036-drm-vc4-Reset-DSI-AFE-on-disable.patch @@ -1,7 +1,7 @@ From 5b807e23d91f3d90697f74d484276e574670aa2c Mon Sep 17 00:00:00 2001 From: Dave Stevenson Date: Thu, 26 May 2022 18:56:19 +0100 -Subject: [PATCH 36/86] drm: vc4: Reset DSI AFE on disable +Subject: [PATCH 036/101] drm: vc4: Reset DSI AFE on disable vc4_dsi_bridge_disable wasn't resetting things during shutdown, so add that in. diff --git a/patches/linux/6.18.56/0037-drm-vc4-dsi-Handle-the-different-command-FIFO-widths.patch b/patches/linux/6.18.56/0037-drm-vc4-dsi-Handle-the-different-command-FIFO-widths.patch index 742c69a38..db9fc80ba 100644 --- a/patches/linux/6.18.56/0037-drm-vc4-dsi-Handle-the-different-command-FIFO-widths.patch +++ b/patches/linux/6.18.56/0037-drm-vc4-dsi-Handle-the-different-command-FIFO-widths.patch @@ -1,7 +1,8 @@ From 1610998f5338234b29c335d18ffeb00c2dcec73a Mon Sep 17 00:00:00 2001 From: Dave Stevenson Date: Wed, 20 Nov 2024 13:58:08 +0000 -Subject: [PATCH 37/86] drm: vc4: dsi: Handle the different command FIFO widths +Subject: [PATCH 037/101] drm: vc4: dsi: Handle the different command FIFO + widths DSI0 and DSI1 have different widths for the command FIFO (24bit vs 32bit), but the driver was assuming the 32bit width of DSI1 diff --git a/patches/linux/6.18.56/0038-drm-bridge-tc358762-Program-the-DPI-mode-into-the-ch.patch b/patches/linux/6.18.56/0038-drm-bridge-tc358762-Program-the-DPI-mode-into-the-ch.patch index fc94b38fc..445cdba63 100644 --- a/patches/linux/6.18.56/0038-drm-bridge-tc358762-Program-the-DPI-mode-into-the-ch.patch +++ b/patches/linux/6.18.56/0038-drm-bridge-tc358762-Program-the-DPI-mode-into-the-ch.patch @@ -1,7 +1,7 @@ From 0c2f36c6efa65abc8d2c5179903c3fb5afac9874 Mon Sep 17 00:00:00 2001 From: Dave Stevenson Date: Tue, 9 Jan 2024 17:37:00 +0000 -Subject: [PATCH 38/86] drm/bridge: tc358762: Program the DPI mode into the +Subject: [PATCH 038/101] drm/bridge: tc358762: Program the DPI mode into the chip The autodetection of resolution/timing by the TC358762 can lead diff --git a/patches/linux/6.18.56/0039-drm-bridge-tc358762-revert-move-ops-to-enable.patch b/patches/linux/6.18.56/0039-drm-bridge-tc358762-revert-move-ops-to-enable.patch index 168a87fe3..96dd51ce7 100644 --- a/patches/linux/6.18.56/0039-drm-bridge-tc358762-revert-move-ops-to-enable.patch +++ b/patches/linux/6.18.56/0039-drm-bridge-tc358762-revert-move-ops-to-enable.patch @@ -1,7 +1,7 @@ From 91f9e48ff0405e6b8ec9d046b7f37d96f99483c5 Mon Sep 17 00:00:00 2001 From: Dave Stevenson Date: Tue, 9 Jan 2024 18:44:49 +0000 -Subject: [PATCH 39/86] drm/bridge: tc358762: revert move ops to enable +Subject: [PATCH 039/101] drm/bridge: tc358762: revert move ops to enable Reverts 8a4b2fc9c91a ("drm/bridge: tc358762: Split register programming from pre-enable to enable") as we want the config commands sent before video starts. diff --git a/patches/linux/6.18.56/0040-drm-bridge-tc358762-Set-pre_enabled-on-pre_enable-to.patch b/patches/linux/6.18.56/0040-drm-bridge-tc358762-Set-pre_enabled-on-pre_enable-to.patch index a4d092208..ee4aedf36 100644 --- a/patches/linux/6.18.56/0040-drm-bridge-tc358762-Set-pre_enabled-on-pre_enable-to.patch +++ b/patches/linux/6.18.56/0040-drm-bridge-tc358762-Set-pre_enabled-on-pre_enable-to.patch @@ -1,8 +1,8 @@ From 18d15d554c004a795771c8adb8abb6ef54f22985 Mon Sep 17 00:00:00 2001 From: Mattias Walström Date: Sat, 4 Apr 2026 18:04:19 +0200 -Subject: [PATCH 40/86] drm/bridge: tc358762: Set pre_enabled on pre_enable to - prevent regulator imbalance +Subject: [PATCH 040/101] drm/bridge: tc358762: Set pre_enabled on pre_enable + to prevent regulator imbalance MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/patches/linux/6.18.56/0041-net-pcs-add-standalone-PCS-registration-infrastructu.patch b/patches/linux/6.18.56/0041-net-pcs-add-standalone-PCS-registration-infrastructu.patch index acc2764e2..3a7c1e1b8 100644 --- a/patches/linux/6.18.56/0041-net-pcs-add-standalone-PCS-registration-infrastructu.patch +++ b/patches/linux/6.18.56/0041-net-pcs-add-standalone-PCS-registration-infrastructu.patch @@ -1,7 +1,8 @@ From a2fc20fe20ad386cff232905d1858f9af21ecaf2 Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Sun, 5 Apr 2026 11:33:00 +0200 -Subject: [PATCH 41/86] net/pcs: add standalone PCS registration infrastructure +Subject: [PATCH 041/101] net/pcs: add standalone PCS registration + infrastructure Add a simple registration mechanism that allows platform PCS drivers to register their phylink_pcs instances, and consumers (e.g. Ethernet MAC diff --git a/patches/linux/6.18.56/0042-net-pcs-add-MediaTek-MT7988-USXGMII-PCS-driver.patch b/patches/linux/6.18.56/0042-net-pcs-add-MediaTek-MT7988-USXGMII-PCS-driver.patch index 07a19f206..74230715f 100644 --- a/patches/linux/6.18.56/0042-net-pcs-add-MediaTek-MT7988-USXGMII-PCS-driver.patch +++ b/patches/linux/6.18.56/0042-net-pcs-add-MediaTek-MT7988-USXGMII-PCS-driver.patch @@ -1,7 +1,7 @@ From 6c0e1262a95027d0ef8fb263353e5a4382529437 Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Mon, 6 Apr 2026 14:14:23 +0200 -Subject: [PATCH 42/86] net/pcs: add MediaTek MT7988 USXGMII PCS driver +Subject: [PATCH 042/101] net/pcs: add MediaTek MT7988 USXGMII PCS driver Add a PCS driver for the USXGMII subsystem found in the MediaTek MT7988 SoC (usxgmiisys0 at 0x10080000, usxgmiisys1 at 0x10081000). The hardware diff --git a/patches/linux/6.18.56/0043-net-ethernet-mediatek-add-USXGMII-support-for-MT7988.patch b/patches/linux/6.18.56/0043-net-ethernet-mediatek-add-USXGMII-support-for-MT7988.patch index 50c0ae6e6..cee80580b 100644 --- a/patches/linux/6.18.56/0043-net-ethernet-mediatek-add-USXGMII-support-for-MT7988.patch +++ b/patches/linux/6.18.56/0043-net-ethernet-mediatek-add-USXGMII-support-for-MT7988.patch @@ -1,7 +1,8 @@ From 7a3a934b66b5a38e732f6c28f76c45b43cea4e15 Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Mon, 6 Apr 2026 14:15:43 +0200 -Subject: [PATCH 43/86] net: ethernet: mediatek: add USXGMII support for MT7988 +Subject: [PATCH 043/101] net: ethernet: mediatek: add USXGMII support for + MT7988 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/patches/linux/6.18.56/0044-arm64-dts-mediatek-mt7988a-add-USXGMII-PCS-nodes.patch b/patches/linux/6.18.56/0044-arm64-dts-mediatek-mt7988a-add-USXGMII-PCS-nodes.patch index 366630365..1c3a37774 100644 --- a/patches/linux/6.18.56/0044-arm64-dts-mediatek-mt7988a-add-USXGMII-PCS-nodes.patch +++ b/patches/linux/6.18.56/0044-arm64-dts-mediatek-mt7988a-add-USXGMII-PCS-nodes.patch @@ -1,7 +1,7 @@ From d320f311c3e132191b319db4d7f7e3e3f5ed58df Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Mon, 6 Apr 2026 14:15:56 +0200 -Subject: [PATCH 44/86] arm64: dts: mediatek: mt7988a: add USXGMII PCS nodes +Subject: [PATCH 044/101] arm64: dts: mediatek: mt7988a: add USXGMII PCS nodes Add device nodes for the two USXGMII subsystem blocks (usxgmiisys0 at 0x10080000 and usxgmiisys1 at 0x10081000), each referencing its clock, diff --git a/patches/linux/6.18.56/0045-arm64-dts-mediatek-bananapi-bpi-r4-enable-SFP-ports-.patch b/patches/linux/6.18.56/0045-arm64-dts-mediatek-bananapi-bpi-r4-enable-SFP-ports-.patch index 51a2e9c26..cd9f332a6 100644 --- a/patches/linux/6.18.56/0045-arm64-dts-mediatek-bananapi-bpi-r4-enable-SFP-ports-.patch +++ b/patches/linux/6.18.56/0045-arm64-dts-mediatek-bananapi-bpi-r4-enable-SFP-ports-.patch @@ -1,7 +1,7 @@ From d83185ab2d0bc45de5c33b6fc50006e166f39417 Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Mon, 6 Apr 2026 14:16:11 +0200 -Subject: [PATCH 45/86] arm64: dts: mediatek: bananapi-bpi-r4: enable SFP+ +Subject: [PATCH 045/101] arm64: dts: mediatek: bananapi-bpi-r4: enable SFP+ ports and WPS button Enable the SFP+ cages wired to gmac1 and gmac2. The USXGMII PCS nodes diff --git a/patches/linux/6.18.56/0046-net-phy-sfp-add-OEM-SFP-10G-T-I-quirk.patch b/patches/linux/6.18.56/0046-net-phy-sfp-add-OEM-SFP-10G-T-I-quirk.patch index 59cc38f06..bfc814545 100644 --- a/patches/linux/6.18.56/0046-net-phy-sfp-add-OEM-SFP-10G-T-I-quirk.patch +++ b/patches/linux/6.18.56/0046-net-phy-sfp-add-OEM-SFP-10G-T-I-quirk.patch @@ -1,7 +1,7 @@ From fa401f49e78eeefa6ef1752733c87b1d67655125 Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Tue, 7 Apr 2026 07:34:52 +0200 -Subject: [PATCH 46/86] net: phy: sfp: add OEM SFP-10G-T-I quirk +Subject: [PATCH 046/101] net: phy: sfp: add OEM SFP-10G-T-I quirk MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/patches/linux/6.18.56/0047-net-dsa-mv88e6xxx-Trap-PTP-frames-on-timestamping-po.patch b/patches/linux/6.18.56/0047-net-dsa-mv88e6xxx-Trap-PTP-frames-on-timestamping-po.patch index 169a5b9e4..9c9e61ed1 100644 --- a/patches/linux/6.18.56/0047-net-dsa-mv88e6xxx-Trap-PTP-frames-on-timestamping-po.patch +++ b/patches/linux/6.18.56/0047-net-dsa-mv88e6xxx-Trap-PTP-frames-on-timestamping-po.patch @@ -1,7 +1,7 @@ From 79c898ca16e60f10eafaf89110b5d2c24bd9ac2c Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Fri, 17 Apr 2026 09:13:04 +0000 -Subject: [PATCH 47/86] net: dsa: mv88e6xxx: Trap PTP frames on timestamping +Subject: [PATCH 047/101] net: dsa: mv88e6xxx: Trap PTP frames on timestamping ports, on 6393X Similar to the Peridot (6390), the designation of PTP frames as diff --git a/patches/linux/6.18.56/0048-wifi-mt76-mt7615-add-MODULE_DEVICE_TABLE-for-mt7622-.patch b/patches/linux/6.18.56/0048-wifi-mt76-mt7615-add-MODULE_DEVICE_TABLE-for-mt7622-.patch index 7feb07b15..b12072287 100644 --- a/patches/linux/6.18.56/0048-wifi-mt76-mt7615-add-MODULE_DEVICE_TABLE-for-mt7622-.patch +++ b/patches/linux/6.18.56/0048-wifi-mt76-mt7615-add-MODULE_DEVICE_TABLE-for-mt7622-.patch @@ -1,8 +1,8 @@ From 0f8cdee2b15e4d5c36520e274ebc74371ec8de68 Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Tue, 28 Apr 2026 15:30:01 +0200 -Subject: [PATCH 48/86] wifi: mt76: mt7615: add MODULE_DEVICE_TABLE for mt7622 - wmac +Subject: [PATCH 048/101] wifi: mt76: mt7615: add MODULE_DEVICE_TABLE for + mt7622 wmac Without MODULE_DEVICE_TABLE(of, ...) the OF compatible alias is never exported to modules.alias, so udev cannot autoload mt7615e when the diff --git a/patches/linux/6.18.56/0049-PCI-mediatek-gen3-Fix-PERST-control-timing-during-sy.patch b/patches/linux/6.18.56/0049-PCI-mediatek-gen3-Fix-PERST-control-timing-during-sy.patch index 46fa15d0d..48691f72e 100644 --- a/patches/linux/6.18.56/0049-PCI-mediatek-gen3-Fix-PERST-control-timing-during-sy.patch +++ b/patches/linux/6.18.56/0049-PCI-mediatek-gen3-Fix-PERST-control-timing-during-sy.patch @@ -1,7 +1,7 @@ From 5f9aa8845b841fcada5fa58f92ceaa9bb9fabcb4 Mon Sep 17 00:00:00 2001 From: Mattias Walström Date: Wed, 22 Apr 2026 10:24:43 +0200 -Subject: [PATCH 49/86] PCI: mediatek-gen3: Fix PERST# control timing during +Subject: [PATCH 049/101] PCI: mediatek-gen3: Fix PERST# control timing during system startup MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 diff --git a/patches/linux/6.18.56/0050-net-dsa-mv88e6xxx-Derive-LED-names-from-device-name.patch b/patches/linux/6.18.56/0050-net-dsa-mv88e6xxx-Derive-LED-names-from-device-name.patch index cf0df843b..022c8b6b0 100644 --- a/patches/linux/6.18.56/0050-net-dsa-mv88e6xxx-Derive-LED-names-from-device-name.patch +++ b/patches/linux/6.18.56/0050-net-dsa-mv88e6xxx-Derive-LED-names-from-device-name.patch @@ -1,7 +1,8 @@ From 024fb8fd29a48bb85f355b5a4a558c8ab6875b3c Mon Sep 17 00:00:00 2001 From: Mattias Walström Date: Wed, 12 Aug 2026 10:08:53 +0200 -Subject: [PATCH 50/86] net: dsa: mv88e6xxx: Derive LED names from device name +Subject: [PATCH 050/101] net: dsa: mv88e6xxx: Derive LED names from device + name MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/patches/linux/6.18.56/0051-phy-sparx5-serdes-make-it-selectable-for-ARCH_LAN969.patch b/patches/linux/6.18.56/0051-phy-sparx5-serdes-make-it-selectable-for-ARCH_LAN969.patch index 449a6df46..8b1461cad 100644 --- a/patches/linux/6.18.56/0051-phy-sparx5-serdes-make-it-selectable-for-ARCH_LAN969.patch +++ b/patches/linux/6.18.56/0051-phy-sparx5-serdes-make-it-selectable-for-ARCH_LAN969.patch @@ -1,7 +1,8 @@ From f42698c6d686cabca0fced226a63e09c438fbc78 Mon Sep 17 00:00:00 2001 From: Robert Marko Date: Fri, 31 Oct 2025 13:18:12 +0100 -Subject: [PATCH 51/86] phy: sparx5-serdes: make it selectable for ARCH_LAN969X +Subject: [PATCH 051/101] phy: sparx5-serdes: make it selectable for + ARCH_LAN969X LAN969x uses the SparX-5 SERDES driver, so make it selectable for ARCH_LAN969X. diff --git a/patches/linux/6.18.56/0052-net-sparx5-fix-wrong-chip-ids-for-TSN-SKUs.patch b/patches/linux/6.18.56/0052-net-sparx5-fix-wrong-chip-ids-for-TSN-SKUs.patch index 745d75541..7d5d4577b 100644 --- a/patches/linux/6.18.56/0052-net-sparx5-fix-wrong-chip-ids-for-TSN-SKUs.patch +++ b/patches/linux/6.18.56/0052-net-sparx5-fix-wrong-chip-ids-for-TSN-SKUs.patch @@ -1,7 +1,7 @@ From da55a0660bc7a764abd39b28d1b588d58cfafcf7 Mon Sep 17 00:00:00 2001 From: Daniel Machon Date: Wed, 6 May 2026 09:25:38 +0200 -Subject: [PATCH 52/86] net: sparx5: fix wrong chip ids for TSN SKUs +Subject: [PATCH 052/101] net: sparx5: fix wrong chip ids for TSN SKUs The TSN SKUs in enum spx5_target_chiptype have incorrect IDs: diff --git a/patches/linux/6.18.56/0053-net-sparx5-configure-serdes-for-1000BASE-X-in-sparx5.patch b/patches/linux/6.18.56/0053-net-sparx5-configure-serdes-for-1000BASE-X-in-sparx5.patch index 0d8dfbf32..41d4eef53 100644 --- a/patches/linux/6.18.56/0053-net-sparx5-configure-serdes-for-1000BASE-X-in-sparx5.patch +++ b/patches/linux/6.18.56/0053-net-sparx5-configure-serdes-for-1000BASE-X-in-sparx5.patch @@ -1,7 +1,7 @@ From 13292f9168073d35dfa05f2c3e8402e18bf3f9ce Mon Sep 17 00:00:00 2001 From: Daniel Machon Date: Wed, 6 May 2026 09:25:39 +0200 -Subject: [PATCH 53/86] net: sparx5: configure serdes for 1000BASE-X in +Subject: [PATCH 053/101] net: sparx5: configure serdes for 1000BASE-X in sparx5_port_init() sparx5_port_init() only invokes sparx5_serdes_set() and the associated diff --git a/patches/linux/6.18.56/0054-dt-bindings-mmc-atmel-sama5d2-sdhci-add-microchip-la.patch b/patches/linux/6.18.56/0054-dt-bindings-mmc-atmel-sama5d2-sdhci-add-microchip-la.patch index bd6b3e02a..8f24ab15a 100644 --- a/patches/linux/6.18.56/0054-dt-bindings-mmc-atmel-sama5d2-sdhci-add-microchip-la.patch +++ b/patches/linux/6.18.56/0054-dt-bindings-mmc-atmel-sama5d2-sdhci-add-microchip-la.patch @@ -1,7 +1,7 @@ From 704c64713d2d2d34a22e0d2f8066996bc62d9120 Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Wed, 19 Aug 2026 11:35:29 +0200 -Subject: [PATCH 54/86] dt-bindings: mmc: atmel,sama5d2-sdhci: add +Subject: [PATCH 054/101] dt-bindings: mmc: atmel,sama5d2-sdhci: add microchip,lan969x-sdhci The LAN969x SDMMC controller has its own base clock divider and, unlike diff --git a/patches/linux/6.18.56/0055-mmc-sdhci-of-at91-add-LAN969x-support.patch b/patches/linux/6.18.56/0055-mmc-sdhci-of-at91-add-LAN969x-support.patch index fb62bbd5c..8c8948465 100644 --- a/patches/linux/6.18.56/0055-mmc-sdhci-of-at91-add-LAN969x-support.patch +++ b/patches/linux/6.18.56/0055-mmc-sdhci-of-at91-add-LAN969x-support.patch @@ -1,7 +1,7 @@ From ae98994e45aaa55ecff09321aa65601561aefab4 Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Wed, 19 Aug 2026 11:35:44 +0200 -Subject: [PATCH 55/86] mmc: sdhci-of-at91: add LAN969x support +Subject: [PATCH 055/101] mmc: sdhci-of-at91: add LAN969x support The LAN969x SDMMC controller is an Atmel SDMMC IP block, but the driver has no compatible for it, so the eMMC on LAN969x boards never probes. diff --git a/patches/linux/6.18.56/0056-mmc-sdhci-of-at91-stop-SDCLK-on-reset-and-add-eMMC-h.patch b/patches/linux/6.18.56/0056-mmc-sdhci-of-at91-stop-SDCLK-on-reset-and-add-eMMC-h.patch index 36f60a3d2..03603d525 100644 --- a/patches/linux/6.18.56/0056-mmc-sdhci-of-at91-stop-SDCLK-on-reset-and-add-eMMC-h.patch +++ b/patches/linux/6.18.56/0056-mmc-sdhci-of-at91-stop-SDCLK-on-reset-and-add-eMMC-h.patch @@ -1,7 +1,7 @@ From 4a50546ae4abb37070703d1ce20149b65fdd1a51 Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Wed, 19 Aug 2026 11:37:48 +0200 -Subject: [PATCH 56/86] mmc: sdhci-of-at91: stop SDCLK on reset and add eMMC +Subject: [PATCH 056/101] mmc: sdhci-of-at91: stop SDCLK on reset and add eMMC hardware reset The controller is reset, and its signaling mode changed, with SDCLK diff --git a/patches/linux/6.18.56/0057-net-sparx5-lan969x-populate-netdev-of_node.patch b/patches/linux/6.18.56/0057-net-sparx5-lan969x-populate-netdev-of_node.patch index 3b692f39f..2957c53cd 100644 --- a/patches/linux/6.18.56/0057-net-sparx5-lan969x-populate-netdev-of_node.patch +++ b/patches/linux/6.18.56/0057-net-sparx5-lan969x-populate-netdev-of_node.patch @@ -1,7 +1,7 @@ From ba2f77ed48aae661eed6cb213162a612f4792931 Mon Sep 17 00:00:00 2001 From: Robert Marko Date: Mon, 10 Nov 2025 13:42:53 +0100 -Subject: [PATCH 57/86] net: sparx5/lan969x: populate netdev of_node +Subject: [PATCH 057/101] net: sparx5/lan969x: populate netdev of_node Populate of_node for the port netdevs, to make the individual ports of_nodes available in sysfs. diff --git a/patches/linux/6.18.56/0058-arm64-dts-microchip-add-LAN969x-clock-header-file.patch b/patches/linux/6.18.56/0058-arm64-dts-microchip-add-LAN969x-clock-header-file.patch index d0fa8eb3c..d508f83f8 100644 --- a/patches/linux/6.18.56/0058-arm64-dts-microchip-add-LAN969x-clock-header-file.patch +++ b/patches/linux/6.18.56/0058-arm64-dts-microchip-add-LAN969x-clock-header-file.patch @@ -1,7 +1,7 @@ From b8f745bf145aed656a87edcf2cee16caef2950e2 Mon Sep 17 00:00:00 2001 From: Robert Marko Date: Mon, 2 Mar 2026 12:20:11 +0100 -Subject: [PATCH 58/86] arm64: dts: microchip: add LAN969x clock header file +Subject: [PATCH 058/101] arm64: dts: microchip: add LAN969x clock header file LAN969x uses hardware clock indexes, so document theses in a header to make them humanly readable. diff --git a/patches/linux/6.18.56/0059-arm64-dts-microchip-add-LAN969x-support.patch b/patches/linux/6.18.56/0059-arm64-dts-microchip-add-LAN969x-support.patch index 835c902c4..aab3ea7af 100644 --- a/patches/linux/6.18.56/0059-arm64-dts-microchip-add-LAN969x-support.patch +++ b/patches/linux/6.18.56/0059-arm64-dts-microchip-add-LAN969x-support.patch @@ -1,7 +1,7 @@ From c3fc7872ff9176197161d2695a4d3fbbe2d90f90 Mon Sep 17 00:00:00 2001 From: Robert Marko Date: Mon, 2 Mar 2026 12:20:12 +0100 -Subject: [PATCH 59/86] arm64: dts: microchip: add LAN969x support +Subject: [PATCH 059/101] arm64: dts: microchip: add LAN969x support Add support for Microchip LAN969x switch SoC series by adding the SoC DTSI. diff --git a/patches/linux/6.18.56/0060-arm64-dts-microchip-add-EV23X71A-board.patch b/patches/linux/6.18.56/0060-arm64-dts-microchip-add-EV23X71A-board.patch index cf54bc54f..a6eeade8c 100644 --- a/patches/linux/6.18.56/0060-arm64-dts-microchip-add-EV23X71A-board.patch +++ b/patches/linux/6.18.56/0060-arm64-dts-microchip-add-EV23X71A-board.patch @@ -1,7 +1,7 @@ From b10c04d81bb96ab0b09484ee2a2373482b56f26d Mon Sep 17 00:00:00 2001 From: Robert Marko Date: Mon, 2 Mar 2026 12:20:14 +0100 -Subject: [PATCH 60/86] arm64: dts: microchip: add EV23X71A board +Subject: [PATCH 060/101] arm64: dts: microchip: add EV23X71A board Microchip EV23X71A is an LAN9696 based evaluation board. diff --git a/patches/linux/6.18.56/0061-arm64-dts-microchip-lan969x-add-OTP-node.patch b/patches/linux/6.18.56/0061-arm64-dts-microchip-lan969x-add-OTP-node.patch index 1a593defe..e7c1130b9 100644 --- a/patches/linux/6.18.56/0061-arm64-dts-microchip-lan969x-add-OTP-node.patch +++ b/patches/linux/6.18.56/0061-arm64-dts-microchip-lan969x-add-OTP-node.patch @@ -1,7 +1,7 @@ From c6af26aff045284fc98aae066d46385e74ab82c8 Mon Sep 17 00:00:00 2001 From: Robert Marko Date: Fri, 15 May 2026 13:59:09 +0200 -Subject: [PATCH 61/86] arm64: dts: microchip: lan969x: add OTP node +Subject: [PATCH 061/101] arm64: dts: microchip: lan969x: add OTP node Add the required OTP on LAN969x. diff --git a/patches/linux/6.18.56/0062-arm64-dts-microchip-lan969x-add-SDMMC-nodes.patch b/patches/linux/6.18.56/0062-arm64-dts-microchip-lan969x-add-SDMMC-nodes.patch index 5a143e36d..8400f050a 100644 --- a/patches/linux/6.18.56/0062-arm64-dts-microchip-lan969x-add-SDMMC-nodes.patch +++ b/patches/linux/6.18.56/0062-arm64-dts-microchip-lan969x-add-SDMMC-nodes.patch @@ -1,7 +1,7 @@ From 7df6f654874cc48a7bea2d8d2d78fe8e9c1c90c7 Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Wed, 19 Aug 2026 11:38:37 +0200 -Subject: [PATCH 62/86] arm64: dts: microchip: lan969x: add SDMMC nodes +Subject: [PATCH 062/101] arm64: dts: microchip: lan969x: add SDMMC nodes The SoC has two SDMMC controllers, neither of which is described, so boards with eMMC have no way to enable it. Add both, disabled by diff --git a/patches/linux/6.18.56/0063-arm64-dts-microchip-ev23x71a-enable-eMMC.patch b/patches/linux/6.18.56/0063-arm64-dts-microchip-ev23x71a-enable-eMMC.patch index 7e5db38be..1eca85dc6 100644 --- a/patches/linux/6.18.56/0063-arm64-dts-microchip-ev23x71a-enable-eMMC.patch +++ b/patches/linux/6.18.56/0063-arm64-dts-microchip-ev23x71a-enable-eMMC.patch @@ -1,7 +1,7 @@ From b41259b09f91a140bc0350d7f473d9fee3fbe8b3 Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Wed, 19 Aug 2026 11:38:37 +0200 -Subject: [PATCH 63/86] arm64: dts: microchip: ev23x71a: enable eMMC +Subject: [PATCH 063/101] arm64: dts: microchip: ev23x71a: enable eMMC The board has an 8-bit eMMC on SDMMC0, and defines the emmc_sd pinctrl group for it, but nothing enables the controller. diff --git a/patches/linux/6.18.56/0064-wifi-brcmfmac-survey-the-requested-interface-not-the.patch b/patches/linux/6.18.56/0064-wifi-brcmfmac-survey-the-requested-interface-not-the.patch index bd1609210..b69cfd9e0 100644 --- a/patches/linux/6.18.56/0064-wifi-brcmfmac-survey-the-requested-interface-not-the.patch +++ b/patches/linux/6.18.56/0064-wifi-brcmfmac-survey-the-requested-interface-not-the.patch @@ -1,8 +1,8 @@ From 54b38afac5c46299c8a7ebe594b35774d134389b Mon Sep 17 00:00:00 2001 From: Mattias Walström Date: Tue, 30 Jun 2026 15:42:48 +0200 -Subject: [PATCH 64/86] wifi: brcmfmac: survey the requested interface, not the - primary +Subject: [PATCH 064/101] wifi: brcmfmac: survey the requested interface, not + the primary MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/patches/linux/6.18.56/0065-wifi-brcmfmac-honor-caller-s-rtnl-lock-when-stopping.patch b/patches/linux/6.18.56/0065-wifi-brcmfmac-honor-caller-s-rtnl-lock-when-stopping.patch index a4b45e637..2b40ddd87 100644 --- a/patches/linux/6.18.56/0065-wifi-brcmfmac-honor-caller-s-rtnl-lock-when-stopping.patch +++ b/patches/linux/6.18.56/0065-wifi-brcmfmac-honor-caller-s-rtnl-lock-when-stopping.patch @@ -1,8 +1,8 @@ From b2c521013e15b485455469fa4a263de2cf04dd02 Mon Sep 17 00:00:00 2001 From: Mattias Walström Date: Tue, 30 Jun 2026 15:43:14 +0200 -Subject: [PATCH 65/86] wifi: brcmfmac: honor caller's rtnl lock when stopping - primary interface +Subject: [PATCH 065/101] wifi: brcmfmac: honor caller's rtnl lock when + stopping primary interface MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/patches/linux/6.18.56/0066-wifi-brcmfmac-let-cfg_to_ndev-return-NULL-and-harden.patch b/patches/linux/6.18.56/0066-wifi-brcmfmac-let-cfg_to_ndev-return-NULL-and-harden.patch index 30f45c859..bbec5c81b 100644 --- a/patches/linux/6.18.56/0066-wifi-brcmfmac-let-cfg_to_ndev-return-NULL-and-harden.patch +++ b/patches/linux/6.18.56/0066-wifi-brcmfmac-let-cfg_to_ndev-return-NULL-and-harden.patch @@ -1,7 +1,7 @@ From 0e082428a5013b6d35567cf122119af2772f909f Mon Sep 17 00:00:00 2001 From: Mattias Walström Date: Tue, 30 Jun 2026 15:46:25 +0200 -Subject: [PATCH 66/86] wifi: brcmfmac: let cfg_to_ndev() return NULL and +Subject: [PATCH 066/101] wifi: brcmfmac: let cfg_to_ndev() return NULL and harden its callers MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 diff --git a/patches/linux/6.18.56/0067-wifi-brcmfmac-support-deletion-and-recreation-of-the.patch b/patches/linux/6.18.56/0067-wifi-brcmfmac-support-deletion-and-recreation-of-the.patch index c31f3cb56..ff50ca5f5 100644 --- a/patches/linux/6.18.56/0067-wifi-brcmfmac-support-deletion-and-recreation-of-the.patch +++ b/patches/linux/6.18.56/0067-wifi-brcmfmac-support-deletion-and-recreation-of-the.patch @@ -1,8 +1,8 @@ From 102750f26d8cbf5d58936b4c9c6da801433c4314 Mon Sep 17 00:00:00 2001 From: Mattias Walström Date: Tue, 30 Jun 2026 16:05:17 +0200 -Subject: [PATCH 67/86] wifi: brcmfmac: support deletion and recreation of the - primary interface +Subject: [PATCH 067/101] wifi: brcmfmac: support deletion and recreation of + the primary interface MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/patches/linux/6.18.56/0068-wifi-brcmfmac-report-port-authorized-after-offloaded.patch b/patches/linux/6.18.56/0068-wifi-brcmfmac-report-port-authorized-after-offloaded.patch index cf1ee0196..a74649a5f 100644 --- a/patches/linux/6.18.56/0068-wifi-brcmfmac-report-port-authorized-after-offloaded.patch +++ b/patches/linux/6.18.56/0068-wifi-brcmfmac-report-port-authorized-after-offloaded.patch @@ -1,8 +1,8 @@ From b965ae0c551ae3e2df6937933b6bdd1c42753a43 Mon Sep 17 00:00:00 2001 From: Mattias Walström Date: Thu, 10 Sep 2026 08:29:47 +0200 -Subject: [PATCH 68/86] wifi: brcmfmac: report port authorized after offloaded - PSK/SAE handshake +Subject: [PATCH 068/101] wifi: brcmfmac: report port authorized after + offloaded PSK/SAE handshake MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/patches/linux/6.18.56/0069-dt-bindings-arm-AT91-document-Novarq-Tactical-1000.patch b/patches/linux/6.18.56/0069-dt-bindings-arm-AT91-document-Novarq-Tactical-1000.patch index e1668444d..56c2eb566 100644 --- a/patches/linux/6.18.56/0069-dt-bindings-arm-AT91-document-Novarq-Tactical-1000.patch +++ b/patches/linux/6.18.56/0069-dt-bindings-arm-AT91-document-Novarq-Tactical-1000.patch @@ -1,7 +1,7 @@ From f5f7599f8af9db56b09f26d22b20ee75defe1717 Mon Sep 17 00:00:00 2001 From: Robert Marko Date: Fri, 9 Jan 2026 13:27:00 +0100 -Subject: [PATCH 69/86] dt-bindings: arm: AT91: document Novarq Tactical 1000 +Subject: [PATCH 069/101] dt-bindings: arm: AT91: document Novarq Tactical 1000 Novarq Tactical 1000 is a Microchip LAN9696 based 24x1G + 4x10G SFP switch. diff --git a/patches/linux/6.18.56/0070-arm64-dts-microchip-add-Novarq-Tactical-1000.patch b/patches/linux/6.18.56/0070-arm64-dts-microchip-add-Novarq-Tactical-1000.patch index e6e34024e..4b511ced9 100644 --- a/patches/linux/6.18.56/0070-arm64-dts-microchip-add-Novarq-Tactical-1000.patch +++ b/patches/linux/6.18.56/0070-arm64-dts-microchip-add-Novarq-Tactical-1000.patch @@ -1,7 +1,7 @@ From 8b4b41c449758451c7dbcdd9092b9bd0e0a2b082 Mon Sep 17 00:00:00 2001 From: Robert Marko Date: Tue, 30 Sep 2025 13:37:49 +0200 -Subject: [PATCH 70/86] arm64: dts: microchip: add Novarq Tactical 1000 +Subject: [PATCH 070/101] arm64: dts: microchip: add Novarq Tactical 1000 Novarq Tactical 1000 is a LAN9696 based switch featuring 24x1G and 4x10G SFP ports. diff --git a/patches/linux/6.18.56/0071-arm64-dts-microchip-tactical-1000-add-port-names.patch b/patches/linux/6.18.56/0071-arm64-dts-microchip-tactical-1000-add-port-names.patch index bbef8699f..79213b7a0 100644 --- a/patches/linux/6.18.56/0071-arm64-dts-microchip-tactical-1000-add-port-names.patch +++ b/patches/linux/6.18.56/0071-arm64-dts-microchip-tactical-1000-add-port-names.patch @@ -1,7 +1,7 @@ From f973058544e1b44fd551db6a230659dbce67313e Mon Sep 17 00:00:00 2001 From: Robert Marko Date: Tue, 30 Jun 2026 11:23:47 +0200 -Subject: [PATCH 71/86] arm64: dts: microchip: tactical-1000: add port names +Subject: [PATCH 071/101] arm64: dts: microchip: tactical-1000: add port names Now that driver supports parsing the "label" property, populate port names as they are physically wired up. diff --git a/patches/linux/6.18.56/0072-arm64-dts-microchip-tactical-1000-adapt-to-6.18.patch b/patches/linux/6.18.56/0072-arm64-dts-microchip-tactical-1000-adapt-to-6.18.patch index 5c5071bfd..60c39db99 100644 --- a/patches/linux/6.18.56/0072-arm64-dts-microchip-tactical-1000-adapt-to-6.18.patch +++ b/patches/linux/6.18.56/0072-arm64-dts-microchip-tactical-1000-adapt-to-6.18.patch @@ -1,7 +1,7 @@ From d49813a338d7c9b9d69e38e1fcc1c937c588a071 Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Sun, 20 Sep 2026 12:22:43 +0200 -Subject: [PATCH 72/86] arm64: dts: microchip: tactical-1000: adapt to 6.18 +Subject: [PATCH 072/101] arm64: dts: microchip: tactical-1000: adapt to 6.18 Novarq develop against 7.3, which has three things 6.18 does not: a QSPI controller node, a tmon that also provides the fan PWM, and hence a SoC diff --git a/patches/linux/6.18.56/0073-dt-bindings-arm-AT91-document-EV23X71A-board.patch b/patches/linux/6.18.56/0073-dt-bindings-arm-AT91-document-EV23X71A-board.patch index 66b1c907b..dee61265a 100644 --- a/patches/linux/6.18.56/0073-dt-bindings-arm-AT91-document-EV23X71A-board.patch +++ b/patches/linux/6.18.56/0073-dt-bindings-arm-AT91-document-EV23X71A-board.patch @@ -1,7 +1,7 @@ From b5afb74688659804bbed4bca3928c98975daf2c8 Mon Sep 17 00:00:00 2001 From: Robert Marko Date: Mon, 2 Mar 2026 12:20:13 +0100 -Subject: [PATCH 73/86] dt-bindings: arm: AT91: document EV23X71A board +Subject: [PATCH 073/101] dt-bindings: arm: AT91: document EV23X71A board Microchip EV23X71A board is an LAN9696 based evaluation board. diff --git a/patches/linux/6.18.56/0074-net-dsa-Skip-DCB-default-priority-init-on-unsupporte.patch b/patches/linux/6.18.56/0074-net-dsa-Skip-DCB-default-priority-init-on-unsupporte.patch index e696bec02..48607dcc4 100644 --- a/patches/linux/6.18.56/0074-net-dsa-Skip-DCB-default-priority-init-on-unsupporte.patch +++ b/patches/linux/6.18.56/0074-net-dsa-Skip-DCB-default-priority-init-on-unsupporte.patch @@ -1,8 +1,8 @@ From 45fd43a305c595ea24b0de5cf090affeffc4029f Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Wed, 9 Sep 2026 17:04:21 +0200 -Subject: [PATCH 74/86] net: dsa: Skip DCB default priority init on unsupported - switches +Subject: [PATCH 074/101] net: dsa: Skip DCB default priority init on + unsupported switches A driver serving several chip generations has one dsa_switch_ops for all of them, so port_get_default_prio is set even for chips that have diff --git a/patches/linux/6.18.56/0075-net-dsa-Generalise-the-global-DCB-APP-mirroring-help.patch b/patches/linux/6.18.56/0075-net-dsa-Generalise-the-global-DCB-APP-mirroring-help.patch index 33b956935..8adc05ddf 100644 --- a/patches/linux/6.18.56/0075-net-dsa-Generalise-the-global-DCB-APP-mirroring-help.patch +++ b/patches/linux/6.18.56/0075-net-dsa-Generalise-the-global-DCB-APP-mirroring-help.patch @@ -1,7 +1,7 @@ From cb31150945889f02373febe89f618afee36c6e62 Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Tue, 22 Sep 2026 13:51:07 +0200 -Subject: [PATCH 75/86] net: dsa: Generalise the global DCB APP mirroring +Subject: [PATCH 075/101] net: dsa: Generalise the global DCB APP mirroring helper A switch with one classification table for all its ports programs it diff --git a/patches/linux/6.18.56/0076-net-dsa-Support-the-PCP-APP-selector.patch b/patches/linux/6.18.56/0076-net-dsa-Support-the-PCP-APP-selector.patch index 605823822..19d5b2ef1 100644 --- a/patches/linux/6.18.56/0076-net-dsa-Support-the-PCP-APP-selector.patch +++ b/patches/linux/6.18.56/0076-net-dsa-Support-the-PCP-APP-selector.patch @@ -1,7 +1,7 @@ From e1a8005d2fc1813b71e65c79e700da5635e639e0 Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Wed, 9 Sep 2026 17:04:22 +0200 -Subject: [PATCH 76/86] net: dsa: Support the PCP APP selector +Subject: [PATCH 076/101] net: dsa: Support the PCP APP selector Add port_add_pcp_prio, port_del_pcp_prio and port_get_pcp_prio switch ops and route the DCB_APP_SEL_PCP selector to them, mirroring the DSCP diff --git a/patches/linux/6.18.56/0077-net-dsa-Support-DCB-priority-rewrite.patch b/patches/linux/6.18.56/0077-net-dsa-Support-DCB-priority-rewrite.patch index e3760a847..4cacf29b0 100644 --- a/patches/linux/6.18.56/0077-net-dsa-Support-DCB-priority-rewrite.patch +++ b/patches/linux/6.18.56/0077-net-dsa-Support-DCB-priority-rewrite.patch @@ -1,7 +1,7 @@ From fb3ca7803ea876f7d96514696615143835bc78f9 Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Wed, 9 Sep 2026 17:10:32 +0200 -Subject: [PATCH 77/86] net: dsa: Support DCB priority rewrite +Subject: [PATCH 077/101] net: dsa: Support DCB priority rewrite The DCB rewrite table maps a priority back to the PCP and DEI, or the DSCP, that frames are remarked with on egress. DSA has no diff --git a/patches/linux/6.18.56/0078-net-dsa-Support-the-IEEE-ETS-managed-object.patch b/patches/linux/6.18.56/0078-net-dsa-Support-the-IEEE-ETS-managed-object.patch index a6cd10f78..61d11a40d 100644 --- a/patches/linux/6.18.56/0078-net-dsa-Support-the-IEEE-ETS-managed-object.patch +++ b/patches/linux/6.18.56/0078-net-dsa-Support-the-IEEE-ETS-managed-object.patch @@ -1,7 +1,7 @@ From 46e44f7a4aba62dc94958e01638e8e93ea62e59b Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Tue, 22 Sep 2026 13:53:23 +0200 -Subject: [PATCH 78/86] net: dsa: Support the IEEE ETS managed object +Subject: [PATCH 078/101] net: dsa: Support the IEEE ETS managed object A switch port's transmission selection is configured today through the ets queuing discipline, which numbers its bands the other way round diff --git a/patches/linux/6.18.56/0079-net-sparx5-fix-sleep-in-atomic-context-in-MAC-table-.patch b/patches/linux/6.18.56/0079-net-sparx5-fix-sleep-in-atomic-context-in-MAC-table-.patch index 1de8c4805..9771efa0b 100644 --- a/patches/linux/6.18.56/0079-net-sparx5-fix-sleep-in-atomic-context-in-MAC-table-.patch +++ b/patches/linux/6.18.56/0079-net-sparx5-fix-sleep-in-atomic-context-in-MAC-table-.patch @@ -1,7 +1,7 @@ From 308c9dbab764bef06cceb03e412b491ea57234b5 Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Wed, 7 Oct 2026 11:42:12 +0200 -Subject: [PATCH 79/86] net: sparx5: fix sleep in atomic context in MAC table +Subject: [PATCH 079/101] net: sparx5: fix sleep in atomic context in MAC table access Adding or removing a multicast address on an unbridged switch port diff --git a/patches/linux/6.18.56/0080-misc-sparx5-symreg-symreg-debugfs-driver-DBB-1045.patch b/patches/linux/6.18.56/0080-misc-sparx5-symreg-symreg-debugfs-driver-DBB-1045.patch index 91e66a5b8..237a52907 100644 --- a/patches/linux/6.18.56/0080-misc-sparx5-symreg-symreg-debugfs-driver-DBB-1045.patch +++ b/patches/linux/6.18.56/0080-misc-sparx5-symreg-symreg-debugfs-driver-DBB-1045.patch @@ -1,7 +1,7 @@ From c6f8b6a050e69c951ce0ce56467b6e9fd9a638f1 Mon Sep 17 00:00:00 2001 From: Steen Hegelund Date: Wed, 21 Jan 2026 10:09:45 +0100 -Subject: [PATCH 80/86] misc: sparx5-symreg; symreg debugfs driver (DBB-1045) +Subject: [PATCH 080/101] misc: sparx5-symreg; symreg debugfs driver (DBB-1045) Expose the switch register space of Microchip Sparx5 family SoCs through /sys/kernel/debug/symreg/mem, for the symreg tool, which diff --git a/patches/linux/6.18.56/0081-net-ethernet-mtk_wed-map-WO-memory-regions-without-r.patch b/patches/linux/6.18.56/0081-net-ethernet-mtk_wed-map-WO-memory-regions-without-r.patch index 4119c93b2..642ec9ca8 100644 --- a/patches/linux/6.18.56/0081-net-ethernet-mtk_wed-map-WO-memory-regions-without-r.patch +++ b/patches/linux/6.18.56/0081-net-ethernet-mtk_wed-map-WO-memory-regions-without-r.patch @@ -1,7 +1,7 @@ From e0e6e024e5e5866ff61b68bf9790fd24e542d7e2 Mon Sep 17 00:00:00 2001 From: Mattias Walström Date: Mon, 5 Oct 2026 14:37:56 +0200 -Subject: [PATCH 81/86] net: ethernet: mtk_wed: map WO memory regions without +Subject: [PATCH 081/101] net: ethernet: mtk_wed: map WO memory regions without requesting them MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 diff --git a/patches/linux/6.18.56/0082-wifi-mt76-wed-fix-kernel-panic-on-non-DBDC-MT7986.patch b/patches/linux/6.18.56/0082-wifi-mt76-wed-fix-kernel-panic-on-non-DBDC-MT7986.patch index e9b8b07da..cbb4dbbc0 100644 --- a/patches/linux/6.18.56/0082-wifi-mt76-wed-fix-kernel-panic-on-non-DBDC-MT7986.patch +++ b/patches/linux/6.18.56/0082-wifi-mt76-wed-fix-kernel-panic-on-non-DBDC-MT7986.patch @@ -1,7 +1,7 @@ From 8c40b743cd6f8117c177291988ffe1980e9595cd Mon Sep 17 00:00:00 2001 From: Zhi-Jun You Date: Wed, 15 Jul 2026 23:21:12 +0800 -Subject: [PATCH 82/86] wifi: mt76: wed: fix kernel panic on non-DBDC MT7986 +Subject: [PATCH 082/101] wifi: mt76: wed: fix kernel panic on non-DBDC MT7986 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/patches/linux/6.18.56/0083-wifi-mt76-mt7915-set-up-WPDMA-RX-ring-0-for-WED-on-a.patch b/patches/linux/6.18.56/0083-wifi-mt76-mt7915-set-up-WPDMA-RX-ring-0-for-WED-on-a.patch index e91a7477f..7daa73b75 100644 --- a/patches/linux/6.18.56/0083-wifi-mt76-mt7915-set-up-WPDMA-RX-ring-0-for-WED-on-a.patch +++ b/patches/linux/6.18.56/0083-wifi-mt76-mt7915-set-up-WPDMA-RX-ring-0-for-WED-on-a.patch @@ -1,8 +1,8 @@ From 9b5a788cc9a12f1b23ad0e84dfaa78008a399b49 Mon Sep 17 00:00:00 2001 From: Mattias Walström Date: Wed, 7 Oct 2026 22:20:00 +0200 -Subject: [PATCH 83/86] wifi: mt76: mt7915: set up WPDMA RX ring 0 for WED on a - band1-only device +Subject: [PATCH 083/101] wifi: mt76: mt7915: set up WPDMA RX ring 0 for WED on + a band1-only device MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/patches/linux/6.18.56/0084-wifi-mt76-mt7915-add-WDS-support-when-WED-is-enabled.patch b/patches/linux/6.18.56/0084-wifi-mt76-mt7915-add-WDS-support-when-WED-is-enabled.patch index e390eb26d..4b44daceb 100644 --- a/patches/linux/6.18.56/0084-wifi-mt76-mt7915-add-WDS-support-when-WED-is-enabled.patch +++ b/patches/linux/6.18.56/0084-wifi-mt76-mt7915-add-WDS-support-when-WED-is-enabled.patch @@ -1,7 +1,8 @@ From a39e22f32c005cb7096e66789000b2a9209444d0 Mon Sep 17 00:00:00 2001 From: Felix Fietkau Date: Mon, 20 Oct 2025 15:59:12 +0200 -Subject: [PATCH 84/86] wifi: mt76: mt7915: add WDS support when WED is enabled +Subject: [PATCH 084/101] wifi: mt76: mt7915: add WDS support when WED is + enabled The current WED only supports 256 wcid, whereas mt7986 can support up to 512 entries, so firmware provides a rule to get sta_info by DA when wcid diff --git a/patches/linux/6.18.56/0085-net-ethernet-mtk_wed-increase-WED-v2-WDMA-RESV_BUFF-.patch b/patches/linux/6.18.56/0085-net-ethernet-mtk_wed-increase-WED-v2-WDMA-RESV_BUFF-.patch index cceaca7b9..64c28ca10 100644 --- a/patches/linux/6.18.56/0085-net-ethernet-mtk_wed-increase-WED-v2-WDMA-RESV_BUFF-.patch +++ b/patches/linux/6.18.56/0085-net-ethernet-mtk_wed-increase-WED-v2-WDMA-RESV_BUFF-.patch @@ -1,8 +1,8 @@ From 3d86eb80be2c4367e3293e783d26b6b452840287 Mon Sep 17 00:00:00 2001 From: Shiji Yang Date: Wed, 19 Aug 2026 21:07:07 +0800 -Subject: [PATCH 85/86] net: ethernet: mtk_wed: increase WED v2 WDMA RESV_BUFF - to 0x80 +Subject: [PATCH 085/101] net: ethernet: mtk_wed: increase WED v2 WDMA + RESV_BUFF to 0x80 Change WDMA RESV_BUFF from 0x40 to 0x80 to avoid CDM TX FIFO overflow. Without this patch mt7986 and mt7981 may have WDMA TX hang issue. This diff --git a/patches/linux/6.18.56/0086-wifi-mt76-mt7915-publish-wcid-before-MCU-add-command.patch b/patches/linux/6.18.56/0086-wifi-mt76-mt7915-publish-wcid-before-MCU-add-command.patch index 6a67d8d83..4acc0b38f 100644 --- a/patches/linux/6.18.56/0086-wifi-mt76-mt7915-publish-wcid-before-MCU-add-command.patch +++ b/patches/linux/6.18.56/0086-wifi-mt76-mt7915-publish-wcid-before-MCU-add-command.patch @@ -1,7 +1,7 @@ From 57ac316f70b79c0e2709e6221aca6b9026f8ce1c Mon Sep 17 00:00:00 2001 From: Ryan Leung Date: Fri, 21 Aug 2026 09:00:01 +0000 -Subject: [PATCH 86/86] wifi: mt76: mt7915: publish wcid before MCU add +Subject: [PATCH 086/101] wifi: mt76: mt7915: publish wcid before MCU add commands mt7915_add_interface() enables the BSS/STA in firmware via diff --git a/patches/linux/6.18.56/0087-riscv-dts-spacemit-add-UART-pinctrl-combinations.patch b/patches/linux/6.18.56/0087-riscv-dts-spacemit-add-UART-pinctrl-combinations.patch index 2eb2d12a3..9e3f4617e 100644 --- a/patches/linux/6.18.56/0087-riscv-dts-spacemit-add-UART-pinctrl-combinations.patch +++ b/patches/linux/6.18.56/0087-riscv-dts-spacemit-add-UART-pinctrl-combinations.patch @@ -1,7 +1,7 @@ From 48c77340af8c65ca397f9566482107efcaf6e438 Mon Sep 17 00:00:00 2001 From: Hendrik Hamerlinck Date: Wed, 17 Sep 2025 08:59:07 +0200 -Subject: [PATCH 087/100] riscv: dts: spacemit: add UART pinctrl combinations +Subject: [PATCH 087/101] riscv: dts: spacemit: add UART pinctrl combinations Add UART pinctrl configurations based on the SoC datasheet and the downstream Bianbu Linux tree. The drive strength values were taken from @@ -20,7 +20,7 @@ Signed-off-by: Yixun Lan 1 file changed, 428 insertions(+), 2 deletions(-) diff --git a/arch/riscv/boot/dts/spacemit/k1-pinctrl.dtsi b/arch/riscv/boot/dts/spacemit/k1-pinctrl.dtsi -index 48c4b4131164..09a4f1dca4f1 100644 +index 48c4b41311646..09a4f1dca4f1a 100644 --- a/arch/riscv/boot/dts/spacemit/k1-pinctrl.dtsi +++ b/arch/riscv/boot/dts/spacemit/k1-pinctrl.dtsi @@ -75,11 +75,437 @@ gmac1-clk-ref-pins { diff --git a/patches/linux/6.18.56/0088-riscv-dts-spacemit-enable-the-i2c8-adapter.patch b/patches/linux/6.18.56/0088-riscv-dts-spacemit-enable-the-i2c8-adapter.patch index cdf644c7a..89569623e 100644 --- a/patches/linux/6.18.56/0088-riscv-dts-spacemit-enable-the-i2c8-adapter.patch +++ b/patches/linux/6.18.56/0088-riscv-dts-spacemit-enable-the-i2c8-adapter.patch @@ -1,7 +1,7 @@ From 068107e84a2ca23f5a3b5f21406dcf42e4ebed8a Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Mon, 25 Aug 2025 12:20:54 -0500 -Subject: [PATCH 088/100] riscv: dts: spacemit: enable the i2c8 adapter +Subject: [PATCH 088/101] riscv: dts: spacemit: enable the i2c8 adapter Define properties for the I2C adapter that provides access to the SpacemiT P1 PMIC. Enable this adapter on the Banana Pi BPI-F3. @@ -17,7 +17,7 @@ Signed-off-by: Yixun Lan 3 files changed, 32 insertions(+) diff --git a/arch/riscv/boot/dts/spacemit/k1-bananapi-f3.dts b/arch/riscv/boot/dts/spacemit/k1-bananapi-f3.dts -index b2c40bae6094..a3644606d8b6 100644 +index b2c40bae60945..a3644606d8b60 100644 --- a/arch/riscv/boot/dts/spacemit/k1-bananapi-f3.dts +++ b/arch/riscv/boot/dts/spacemit/k1-bananapi-f3.dts @@ -92,6 +92,18 @@ &pdma { @@ -40,7 +40,7 @@ index b2c40bae6094..a3644606d8b6 100644 pinctrl-names = "default"; pinctrl-0 = <&uart0_2_cfg>; diff --git a/arch/riscv/boot/dts/spacemit/k1-pinctrl.dtsi b/arch/riscv/boot/dts/spacemit/k1-pinctrl.dtsi -index 09a4f1dca4f1..7c87811b3ecd 100644 +index 09a4f1dca4f1a..7c87811b3ecd5 100644 --- a/arch/riscv/boot/dts/spacemit/k1-pinctrl.dtsi +++ b/arch/riscv/boot/dts/spacemit/k1-pinctrl.dtsi @@ -75,6 +75,13 @@ gmac1-clk-ref-pins { @@ -58,7 +58,7 @@ index 09a4f1dca4f1..7c87811b3ecd 100644 uart0_0_cfg: uart0-0-cfg { uart0-0-pins { diff --git a/arch/riscv/boot/dts/spacemit/k1.dtsi b/arch/riscv/boot/dts/spacemit/k1.dtsi -index 6cdcd80a7c83..3de35077731c 100644 +index 6cdcd80a7c83b..3de35077731c7 100644 --- a/arch/riscv/boot/dts/spacemit/k1.dtsi +++ b/arch/riscv/boot/dts/spacemit/k1.dtsi @@ -459,6 +459,19 @@ pwm7: pwm@d401bc00 { diff --git a/patches/linux/6.18.56/0089-riscv-dts-spacemit-define-fixed-regulators.patch b/patches/linux/6.18.56/0089-riscv-dts-spacemit-define-fixed-regulators.patch index 90ebf139b..6167a5c38 100644 --- a/patches/linux/6.18.56/0089-riscv-dts-spacemit-define-fixed-regulators.patch +++ b/patches/linux/6.18.56/0089-riscv-dts-spacemit-define-fixed-regulators.patch @@ -1,7 +1,7 @@ From 043fcd090f07cc71f957fd928f37687674d928eb Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Mon, 25 Aug 2025 12:20:55 -0500 -Subject: [PATCH 089/100] riscv: dts: spacemit: define fixed regulators +Subject: [PATCH 089/101] riscv: dts: spacemit: define fixed regulators Define the DC power input and the 4v power as fixed supplies in the Banana Pi BPI-F3. @@ -15,7 +15,7 @@ Signed-off-by: Yixun Lan 1 file changed, 19 insertions(+) diff --git a/arch/riscv/boot/dts/spacemit/k1-bananapi-f3.dts b/arch/riscv/boot/dts/spacemit/k1-bananapi-f3.dts -index a3644606d8b6..db73207d9c27 100644 +index a3644606d8b60..db73207d9c276 100644 --- a/arch/riscv/boot/dts/spacemit/k1-bananapi-f3.dts +++ b/arch/riscv/boot/dts/spacemit/k1-bananapi-f3.dts @@ -30,6 +30,25 @@ led1 { diff --git a/patches/linux/6.18.56/0090-riscv-dts-spacemit-define-regulator-constraints.patch b/patches/linux/6.18.56/0090-riscv-dts-spacemit-define-regulator-constraints.patch index bf82c8bfa..4086a66d1 100644 --- a/patches/linux/6.18.56/0090-riscv-dts-spacemit-define-regulator-constraints.patch +++ b/patches/linux/6.18.56/0090-riscv-dts-spacemit-define-regulator-constraints.patch @@ -1,7 +1,7 @@ From cacb7418c46d57155175e52b436805fed4aa20bb Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Mon, 25 Aug 2025 12:20:56 -0500 -Subject: [PATCH 090/100] riscv: dts: spacemit: define regulator constraints +Subject: [PATCH 090/101] riscv: dts: spacemit: define regulator constraints Define basic constraints for the regulators in the SpacemiT P1 PMIC, as implemented in the Banana Pi BPI-F3. @@ -15,7 +15,7 @@ Signed-off-by: Yixun Lan 1 file changed, 104 insertions(+) diff --git a/arch/riscv/boot/dts/spacemit/k1-bananapi-f3.dts b/arch/riscv/boot/dts/spacemit/k1-bananapi-f3.dts -index db73207d9c27..371ce71a4985 100644 +index db73207d9c276..371ce71a49855 100644 --- a/arch/riscv/boot/dts/spacemit/k1-bananapi-f3.dts +++ b/arch/riscv/boot/dts/spacemit/k1-bananapi-f3.dts @@ -120,6 +120,110 @@ pmic@41 { diff --git a/patches/linux/6.18.56/0091-riscv-dts-spacemit-pinctrl-update-register-and-IO-po.patch b/patches/linux/6.18.56/0091-riscv-dts-spacemit-pinctrl-update-register-and-IO-po.patch index 228495b68..0938e6b81 100644 --- a/patches/linux/6.18.56/0091-riscv-dts-spacemit-pinctrl-update-register-and-IO-po.patch +++ b/patches/linux/6.18.56/0091-riscv-dts-spacemit-pinctrl-update-register-and-IO-po.patch @@ -1,7 +1,7 @@ From 5bae9efff65c6f9dc84e4fbd2fa791e390faa782 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Thu, 8 Jan 2026 14:42:40 +0800 -Subject: [PATCH 091/100] riscv: dts: spacemit: pinctrl: update register and IO +Subject: [PATCH 091/101] riscv: dts: spacemit: pinctrl: update register and IO power Change the size of the reg register to 0x1000 to match the hardware. @@ -26,7 +26,7 @@ Signed-off-by: Yixun Lan 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/arch/riscv/boot/dts/spacemit/k1.dtsi b/arch/riscv/boot/dts/spacemit/k1.dtsi -index 3de35077731c..9c13e4dc9f3c 100644 +index 3de35077731c7..9c13e4dc9f3c4 100644 --- a/arch/riscv/boot/dts/spacemit/k1.dtsi +++ b/arch/riscv/boot/dts/spacemit/k1.dtsi @@ -474,10 +474,11 @@ i2c8: i2c@d401d800 { diff --git a/patches/linux/6.18.56/0092-riscv-dts-spacemit-Update-PMIC-supply-properties-for.patch b/patches/linux/6.18.56/0092-riscv-dts-spacemit-Update-PMIC-supply-properties-for.patch index 06df3aec1..984c28ac7 100644 --- a/patches/linux/6.18.56/0092-riscv-dts-spacemit-Update-PMIC-supply-properties-for.patch +++ b/patches/linux/6.18.56/0092-riscv-dts-spacemit-Update-PMIC-supply-properties-for.patch @@ -1,7 +1,7 @@ From c43dadfab8e147e016d5d3cd72ee91c23971e2cb Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Fri, 6 Feb 2026 10:32:04 +0800 -Subject: [PATCH 092/100] riscv: dts: spacemit: Update PMIC supply properties +Subject: [PATCH 092/101] riscv: dts: spacemit: Update PMIC supply properties for BPI-F3 and Jupiter Use per-regulator supply names in pmic "spacemit,p1" node to specify @@ -18,7 +18,7 @@ Signed-off-by: Yixun Lan 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/arch/riscv/boot/dts/spacemit/k1-bananapi-f3.dts b/arch/riscv/boot/dts/spacemit/k1-bananapi-f3.dts -index 371ce71a4985..a1ba3f212690 100644 +index 371ce71a49855..a1ba3f2126905 100644 --- a/arch/riscv/boot/dts/spacemit/k1-bananapi-f3.dts +++ b/arch/riscv/boot/dts/spacemit/k1-bananapi-f3.dts @@ -120,7 +120,15 @@ pmic@41 { diff --git a/patches/linux/6.18.56/0093-riscv-dts-spacemit-k1-add-SD-card-controller-and-pin.patch b/patches/linux/6.18.56/0093-riscv-dts-spacemit-k1-add-SD-card-controller-and-pin.patch index ad0433648..a02ef120a 100644 --- a/patches/linux/6.18.56/0093-riscv-dts-spacemit-k1-add-SD-card-controller-and-pin.patch +++ b/patches/linux/6.18.56/0093-riscv-dts-spacemit-k1-add-SD-card-controller-and-pin.patch @@ -1,7 +1,7 @@ From fb3def3a2d5dc721fe67dbc409f7a447217e8b43 Mon Sep 17 00:00:00 2001 From: Iker Pedrosa Date: Fri, 15 May 2026 12:48:59 +0200 -Subject: [PATCH 093/100] riscv: dts: spacemit: k1: add SD card controller and +Subject: [PATCH 093/101] riscv: dts: spacemit: k1: add SD card controller and pinctrl support Add SD card controller infrastructure for SpacemiT K1 SoC with complete @@ -30,7 +30,7 @@ Signed-off-by: Yixun Lan 2 files changed, 53 insertions(+) diff --git a/arch/riscv/boot/dts/spacemit/k1-pinctrl.dtsi b/arch/riscv/boot/dts/spacemit/k1-pinctrl.dtsi -index 7c87811b3ecd..ce76b1243d29 100644 +index 7c87811b3ecd5..ce76b1243d295 100644 --- a/arch/riscv/boot/dts/spacemit/k1-pinctrl.dtsi +++ b/arch/riscv/boot/dts/spacemit/k1-pinctrl.dtsi @@ -525,4 +525,44 @@ pwm14-1-pins { @@ -79,7 +79,7 @@ index 7c87811b3ecd..ce76b1243d29 100644 + }; }; diff --git a/arch/riscv/boot/dts/spacemit/k1.dtsi b/arch/riscv/boot/dts/spacemit/k1.dtsi -index 9c13e4dc9f3c..2adc11153b3b 100644 +index 9c13e4dc9f3c4..2adc11153b3b2 100644 --- a/arch/riscv/boot/dts/spacemit/k1.dtsi +++ b/arch/riscv/boot/dts/spacemit/k1.dtsi @@ -870,6 +870,19 @@ storage-bus { diff --git a/patches/linux/6.18.56/0094-riscv-dts-spacemit-k1-bananapi-f3-add-SD-card-suppor.patch b/patches/linux/6.18.56/0094-riscv-dts-spacemit-k1-bananapi-f3-add-SD-card-suppor.patch index d703bb84a..3ecd3692d 100644 --- a/patches/linux/6.18.56/0094-riscv-dts-spacemit-k1-bananapi-f3-add-SD-card-suppor.patch +++ b/patches/linux/6.18.56/0094-riscv-dts-spacemit-k1-bananapi-f3-add-SD-card-suppor.patch @@ -1,7 +1,7 @@ From a0b9436be9e9d76155b95a1142d3b1f5dbbf13de Mon Sep 17 00:00:00 2001 From: Iker Pedrosa Date: Fri, 15 May 2026 12:49:01 +0200 -Subject: [PATCH 094/100] riscv: dts: spacemit: k1-bananapi-f3: add SD card +Subject: [PATCH 094/101] riscv: dts: spacemit: k1-bananapi-f3: add SD card support with UHS modes Add complete SD card controller support with UHS high-speed modes. @@ -33,7 +33,7 @@ Signed-off-by: Yixun Lan 1 file changed, 23 insertions(+), 2 deletions(-) diff --git a/arch/riscv/boot/dts/spacemit/k1-bananapi-f3.dts b/arch/riscv/boot/dts/spacemit/k1-bananapi-f3.dts -index a1ba3f212690..a9588f3a3dbe 100644 +index a1ba3f2126905..a9588f3a3dbe8 100644 --- a/arch/riscv/boot/dts/spacemit/k1-bananapi-f3.dts +++ b/arch/riscv/boot/dts/spacemit/k1-bananapi-f3.dts @@ -14,6 +14,9 @@ aliases { diff --git a/patches/linux/6.18.56/0095-mmc-sdhci-of-k1-add-reset-support.patch b/patches/linux/6.18.56/0095-mmc-sdhci-of-k1-add-reset-support.patch index 051786143..523495f12 100644 --- a/patches/linux/6.18.56/0095-mmc-sdhci-of-k1-add-reset-support.patch +++ b/patches/linux/6.18.56/0095-mmc-sdhci-of-k1-add-reset-support.patch @@ -1,7 +1,7 @@ From 561c4dc54c3d6401b4f34b80c4425da589d1b6c1 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Tue, 23 Dec 2025 10:24:50 +0800 -Subject: [PATCH 095/100] mmc: sdhci-of-k1: add reset support +Subject: [PATCH 095/101] mmc: sdhci-of-k1: add reset support The SDHCI controller of SpacemiT K1 SoC requires two resets, add support to explicitly request the reset line and deassert during @@ -17,7 +17,7 @@ Signed-off-by: Ulf Hansson 1 file changed, 20 insertions(+) diff --git a/drivers/mmc/host/sdhci-of-k1.c b/drivers/mmc/host/sdhci-of-k1.c -index 0cc97e23a2f9..a160e1d5d9bd 100644 +index 0cc97e23a2f9c..a160e1d5d9bde 100644 --- a/drivers/mmc/host/sdhci-of-k1.c +++ b/drivers/mmc/host/sdhci-of-k1.c @@ -15,6 +15,7 @@ diff --git a/patches/linux/6.18.56/0096-mmc-sdhci-of-k1-enable-essential-clock-infrastructur.patch b/patches/linux/6.18.56/0096-mmc-sdhci-of-k1-enable-essential-clock-infrastructur.patch index 7b0c87e9f..74db4857c 100644 --- a/patches/linux/6.18.56/0096-mmc-sdhci-of-k1-enable-essential-clock-infrastructur.patch +++ b/patches/linux/6.18.56/0096-mmc-sdhci-of-k1-enable-essential-clock-infrastructur.patch @@ -1,7 +1,7 @@ From 9dcad57290c8f0268b7d4f7ab544a33d2a92514f Mon Sep 17 00:00:00 2001 From: Iker Pedrosa Date: Mon, 11 May 2026 10:53:57 +0200 -Subject: [PATCH 096/100] mmc: sdhci-of-k1: enable essential clock +Subject: [PATCH 096/101] mmc: sdhci-of-k1: enable essential clock infrastructure for SD operation Ensure SD card pins receive clock signals by enabling pad clock @@ -30,7 +30,7 @@ Signed-off-by: Ulf Hansson 1 file changed, 13 insertions(+) diff --git a/drivers/mmc/host/sdhci-of-k1.c b/drivers/mmc/host/sdhci-of-k1.c -index a160e1d5d9bd..76f4799c6491 100644 +index a160e1d5d9bde..76f4799c64914 100644 --- a/drivers/mmc/host/sdhci-of-k1.c +++ b/drivers/mmc/host/sdhci-of-k1.c @@ -21,6 +21,13 @@ diff --git a/patches/linux/6.18.56/0097-mmc-sdhci-of-k1-add-regulator-and-pinctrl-voltage-sw.patch b/patches/linux/6.18.56/0097-mmc-sdhci-of-k1-add-regulator-and-pinctrl-voltage-sw.patch index 16d146fbf..018247320 100644 --- a/patches/linux/6.18.56/0097-mmc-sdhci-of-k1-add-regulator-and-pinctrl-voltage-sw.patch +++ b/patches/linux/6.18.56/0097-mmc-sdhci-of-k1-add-regulator-and-pinctrl-voltage-sw.patch @@ -1,7 +1,7 @@ From ed58a909842615d15ac19a341fd83c20ba405205 Mon Sep 17 00:00:00 2001 From: Iker Pedrosa Date: Mon, 11 May 2026 10:53:58 +0200 -Subject: [PATCH 097/100] mmc: sdhci-of-k1: add regulator and pinctrl voltage +Subject: [PATCH 097/101] mmc: sdhci-of-k1: add regulator and pinctrl voltage switching support Add voltage switching infrastructure for UHS-I modes by integrating both @@ -29,7 +29,7 @@ Signed-off-by: Ulf Hansson 1 file changed, 72 insertions(+) diff --git a/drivers/mmc/host/sdhci-of-k1.c b/drivers/mmc/host/sdhci-of-k1.c -index 76f4799c6491..6b01ac7ebf58 100644 +index 76f4799c64914..6b01ac7ebf58c 100644 --- a/drivers/mmc/host/sdhci-of-k1.c +++ b/drivers/mmc/host/sdhci-of-k1.c @@ -16,6 +16,7 @@ diff --git a/patches/linux/6.18.56/0098-mmc-sdhci-of-k1-add-comprehensive-SDR-tuning-support.patch b/patches/linux/6.18.56/0098-mmc-sdhci-of-k1-add-comprehensive-SDR-tuning-support.patch index 21aaa7c63..6690231a7 100644 --- a/patches/linux/6.18.56/0098-mmc-sdhci-of-k1-add-comprehensive-SDR-tuning-support.patch +++ b/patches/linux/6.18.56/0098-mmc-sdhci-of-k1-add-comprehensive-SDR-tuning-support.patch @@ -1,7 +1,7 @@ From ee33c390956dce5ac9602c904b44df030bf4ba11 Mon Sep 17 00:00:00 2001 From: Iker Pedrosa Date: Mon, 11 May 2026 10:53:59 +0200 -Subject: [PATCH 098/100] mmc: sdhci-of-k1: add comprehensive SDR tuning +Subject: [PATCH 098/101] mmc: sdhci-of-k1: add comprehensive SDR tuning support MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 @@ -33,7 +33,7 @@ Signed-off-by: Ulf Hansson 1 file changed, 172 insertions(+) diff --git a/drivers/mmc/host/sdhci-of-k1.c b/drivers/mmc/host/sdhci-of-k1.c -index 6b01ac7ebf58..bbad58c6e729 100644 +index 6b01ac7ebf58c..bbad58c6e729e 100644 --- a/drivers/mmc/host/sdhci-of-k1.c +++ b/drivers/mmc/host/sdhci-of-k1.c @@ -69,6 +69,28 @@ diff --git a/patches/linux/6.18.56/0099-driver-reset-spacemit-p1-add-driver-for-poweroff-reb.patch b/patches/linux/6.18.56/0099-driver-reset-spacemit-p1-add-driver-for-poweroff-reb.patch index 7211f638f..462a81fe7 100644 --- a/patches/linux/6.18.56/0099-driver-reset-spacemit-p1-add-driver-for-poweroff-reb.patch +++ b/patches/linux/6.18.56/0099-driver-reset-spacemit-p1-add-driver-for-poweroff-reb.patch @@ -1,7 +1,7 @@ From 33784f1f5221651440a3043d41ed314b9263d9d4 Mon Sep 17 00:00:00 2001 From: Aurelien Jarno Date: Mon, 3 Nov 2025 00:01:59 +0100 -Subject: [PATCH 099/100] driver: reset: spacemit-p1: add driver for +Subject: [PATCH 099/101] driver: reset: spacemit-p1: add driver for poweroff/reboot This driver implements poweroff/reboot support for the SpacemiT P1 PMIC @@ -24,7 +24,7 @@ Signed-off-by: Sebastian Reichel create mode 100644 drivers/power/reset/spacemit-p1-reboot.c diff --git a/drivers/power/reset/Kconfig b/drivers/power/reset/Kconfig -index 8248895ca903..f6c1bcbb57de 100644 +index 8248895ca9038..f6c1bcbb57def 100644 --- a/drivers/power/reset/Kconfig +++ b/drivers/power/reset/Kconfig @@ -283,6 +283,15 @@ config POWER_RESET_KEYSTONE @@ -44,7 +44,7 @@ index 8248895ca903..f6c1bcbb57de 100644 bool "Generic SYSCON regmap reset driver" depends on OF diff --git a/drivers/power/reset/Makefile b/drivers/power/reset/Makefile -index 51da87e05ce7..0e4ae6f6b5c5 100644 +index 51da87e05ce76..0e4ae6f6b5c55 100644 --- a/drivers/power/reset/Makefile +++ b/drivers/power/reset/Makefile @@ -24,6 +24,7 @@ obj-$(CONFIG_POWER_RESET_LTC2952) += ltc2952-poweroff.o @@ -57,7 +57,7 @@ index 51da87e05ce7..0e4ae6f6b5c5 100644 obj-$(CONFIG_POWER_RESET_TORADEX_EC) += tdx-ec-poweroff.o diff --git a/drivers/power/reset/spacemit-p1-reboot.c b/drivers/power/reset/spacemit-p1-reboot.c new file mode 100644 -index 000000000000..9ec3d1fff8f3 +index 0000000000000..9ec3d1fff8f3d --- /dev/null +++ b/drivers/power/reset/spacemit-p1-reboot.c @@ -0,0 +1,88 @@ diff --git a/patches/linux/6.18.56/0100-mfd-simple-mfd-i2c-Add-a-reboot-cell-for-the-Spacemi.patch b/patches/linux/6.18.56/0100-mfd-simple-mfd-i2c-Add-a-reboot-cell-for-the-Spacemi.patch index 69da4414f..ee0fd67cf 100644 --- a/patches/linux/6.18.56/0100-mfd-simple-mfd-i2c-Add-a-reboot-cell-for-the-Spacemi.patch +++ b/patches/linux/6.18.56/0100-mfd-simple-mfd-i2c-Add-a-reboot-cell-for-the-Spacemi.patch @@ -1,7 +1,7 @@ From 19c5b3dcf894c3ef73dd6304aa8758b16121b5ad Mon Sep 17 00:00:00 2001 From: Aurelien Jarno Date: Mon, 3 Nov 2025 00:02:00 +0100 -Subject: [PATCH 100/100] mfd: simple-mfd-i2c: Add a reboot cell for the +Subject: [PATCH 100/101] mfd: simple-mfd-i2c: Add a reboot cell for the SpacemiT P1 chip Add a "spacemit-p1-reboot" cell for the SpacemiT P1 chip. @@ -17,7 +17,7 @@ Signed-off-by: Lee Jones 1 file changed, 1 insertion(+) diff --git a/drivers/mfd/simple-mfd-i2c.c b/drivers/mfd/simple-mfd-i2c.c -index 9f911afafc25..c4166e8aeb9d 100644 +index 9f911afafc25e..c4166e8aeb9d5 100644 --- a/drivers/mfd/simple-mfd-i2c.c +++ b/drivers/mfd/simple-mfd-i2c.c @@ -99,6 +99,7 @@ static const struct regmap_config spacemit_p1_regmap_config = { diff --git a/patches/linux/6.18.56/0101-nvmem-core-do-not-defer-on-a-cell-missing-from-a-bou.patch b/patches/linux/6.18.56/0101-nvmem-core-do-not-defer-on-a-cell-missing-from-a-bou.patch new file mode 100644 index 000000000..c5986c888 --- /dev/null +++ b/patches/linux/6.18.56/0101-nvmem-core-do-not-defer-on-a-cell-missing-from-a-bou.patch @@ -0,0 +1,36 @@ +From 04c0618953892cb96967b3a4df7cf850eee46f06 Mon Sep 17 00:00:00 2001 +From: Mattias Walström +Date: Tue, 13 Oct 2026 10:52:54 +0200 +Subject: [PATCH 101/101] nvmem: core: do not defer on a cell missing from a + bound layout +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +A layout adds all of its cells from its probe, so once it is bound a +missing cell will never show up. Return -ENOENT instead of deferring +forever, e.g. an ONIE TLV layout over an unprovisioned partition must +not keep the Ethernet driver from probing. + +Signed-off-by: Mattias Walström +--- + drivers/nvmem/core.c | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +diff --git a/drivers/nvmem/core.c b/drivers/nvmem/core.c +index b61028ae0651b..10d02e9293cf3 100644 +--- a/drivers/nvmem/core.c ++++ b/drivers/nvmem/core.c +@@ -1453,7 +1453,11 @@ struct nvmem_cell *of_nvmem_cell_get(struct device_node *np, const char *id) + of_node_put(cell_np); + if (!cell_entry) { + nvmem_layout_module_put(nvmem); +- ret = nvmem->layout ? -EPROBE_DEFER : -ENOENT; ++ /* A bound layout has added all its cells, the cell is not there */ ++ if (nvmem->layout && !device_is_bound(&nvmem->layout->dev)) ++ ret = -EPROBE_DEFER; ++ else ++ ret = -ENOENT; + __nvmem_device_put(nvmem); + return ERR_PTR(ret); + } From 3dfe9da87ac298bba0b4ab5fb6ea292d98abdb0d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mattias=20Walstr=C3=B6m?= Date: Tue, 13 Oct 2026 13:18:38 +0200 Subject: [PATCH 3/9] board/aarch64: Enable the reserved memory nvmem provider --- board/aarch64/linux_defconfig | 1 + 1 file changed, 1 insertion(+) diff --git a/board/aarch64/linux_defconfig b/board/aarch64/linux_defconfig index 43dedc1cc..17be58e53 100644 --- a/board/aarch64/linux_defconfig +++ b/board/aarch64/linux_defconfig @@ -578,6 +578,7 @@ CONFIG_RESET_GPIO=y CONFIG_PHY_MVEBU_CP110_COMPHY=y CONFIG_PHY_MVEBU_CP110_UTMI=y CONFIG_PHY_SAMSUNG_USB2=y +CONFIG_NVMEM_RMEM=y CONFIG_NVMEM_LAYOUT_ONIE_TLV=y CONFIG_MUX_MMIO=y CONFIG_EXT2_FS=y From 9765ae942ae89171fd9c7ba7b91c0dd64a46968d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mattias=20Walstr=C3=B6m?= Date: Tue, 13 Oct 2026 13:18:38 +0200 Subject: [PATCH 4/9] uboot: Load the product VPD from the aux partition Copy /vpd.bin to vpd_addr_r on boards that define it, where the kernel picks it up as nvmem. The region is zeroed first so a removed file does not survive a warm reboot. --- board/aarch64/bananapi-bpi-r3/uboot/mt7986-env.dtsi | 1 + board/common/uboot/scripts/ixpreboot.sh | 7 +++++++ 2 files changed, 8 insertions(+) diff --git a/board/aarch64/bananapi-bpi-r3/uboot/mt7986-env.dtsi b/board/aarch64/bananapi-bpi-r3/uboot/mt7986-env.dtsi index 39cb3e1eb..b04fcf2a7 100644 --- a/board/aarch64/bananapi-bpi-r3/uboot/mt7986-env.dtsi +++ b/board/aarch64/bananapi-bpi-r3/uboot/mt7986-env.dtsi @@ -10,6 +10,7 @@ bootcmd = "run ixboot"; boot_targets = "mmc0"; ethprime = "eth0"; + vpd_addr_r = "0x43e00000"; fdt_addr_r = "0x43f00000"; kernel_addr_r = "0x44000000"; scriptaddr = "0x48000000"; diff --git a/board/common/uboot/scripts/ixpreboot.sh b/board/common/uboot/scripts/ixpreboot.sh index 7b6242e0d..4d0147dc8 100644 --- a/board/common/uboot/scripts/ixpreboot.sh +++ b/board/common/uboot/scripts/ixpreboot.sh @@ -37,6 +37,13 @@ for tgt in "${boot_targets}"; do test -n "${ixvariant}" && run ixvariant fi + if test -n "${vpd_addr_r}"; then + mw.b ${vpd_addr_r} 0 0x10 + if test -e ${devtype} ${devnum}:${auxpart} /vpd.bin; then + load ${devtype} ${devnum}:${auxpart} ${vpd_addr_r} /vpd.bin + fi + fi + if test -n "${DEBUG}"; then setenv bootargs_log "debug" else From 821c77bc38752f23e876b0537376c37285cc0558 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mattias=20Walstr=C3=B6m?= Date: Tue, 13 Oct 2026 13:18:38 +0200 Subject: [PATCH 5/9] board: bpi-r3: Give the ports permanent addresses from the VPD Describe the VPD U-Boot loads into RAM as an nvmem-rmem node with an ONIE layout and let each port reference its base MAC offset from it. The kernel then sets a permanent address, so confd can restore it when a custom MAC is removed, which the userspace macaddr script never allowed. --- board/aarch64/bananapi-bpi-r3/README.md | 23 ++--- .../mediatek/mt7986a-bananapi-bpi-r3-emmc.dts | 1 + .../mt7986a-bananapi-bpi-r3-macaddr.dtsi | 44 ++++++++++ .../mediatek/mt7986a-bananapi-bpi-r3-mini.dts | 9 ++ .../mediatek/mt7986a-bananapi-bpi-r3-sd.dts | 1 + .../mediatek/mt7986a-bananapi-bpi-r3-vpd.dtsi | 23 +++++ .../dts/mediatek/mt7986a-bananapi-bpi-r3.dtsi | 9 +- .../rootfs/usr/libexec/bpi-r3/macaddr | 86 ------------------- .../etc/product/init.d/S22-macaddr | 1 - .../etc/product/init.d/S22-macaddr | 1 - 10 files changed, 96 insertions(+), 102 deletions(-) create mode 100644 board/aarch64/bananapi-bpi-r3/dts/mediatek/mt7986a-bananapi-bpi-r3-macaddr.dtsi create mode 100644 board/aarch64/bananapi-bpi-r3/dts/mediatek/mt7986a-bananapi-bpi-r3-vpd.dtsi delete mode 100755 board/aarch64/bananapi-bpi-r3/rootfs/usr/libexec/bpi-r3/macaddr delete mode 120000 board/aarch64/bananapi-bpi-r3/rootfs/usr/share/product/bananapi,bpi-r3/etc/product/init.d/S22-macaddr delete mode 120000 board/aarch64/bananapi-bpi-r3/rootfs/usr/share/product/bananapi,bpi-r3mini/etc/product/init.d/S22-macaddr diff --git a/board/aarch64/bananapi-bpi-r3/README.md b/board/aarch64/bananapi-bpi-r3/README.md index b21fda14f..6646ff958 100644 --- a/board/aarch64/bananapi-bpi-r3/README.md +++ b/board/aarch64/bananapi-bpi-r3/README.md @@ -222,25 +222,26 @@ default address on every board, so two boards cannot even connect to each other over WiFi: a client refuses to authenticate to an access point that has its own address. -The eMMC image carries an empty `factory` partition for this purpose. -Write a product record to it once, from the Infix shell, and the board -keeps that identity across reboots and upgrades: +Store a product record as `/mnt/aux/vpd.bin`, from the Infix shell, +and the board keeps that identity across reboots and upgrades: ``` -echo '{"mac-address":"02:00:00:ba:01:00","serial-number":"banana1","vendor":"Bananapi","product-name":"BPI-R3"}' \ - | onieprom -e | dd of=/dev/disk/by-partlabel/factory +echo '{"mac-address":"02:00:00:ba:01:00","serial-number":"banana1","vendor":"SinoVoip Co., Ltd.","product-name":"BPI-R3"}' \ + | onieprom -e > /mnt/aux/vpd.bin ``` Give each board its own base address and serial number, then reboot. -The base address becomes the hostname suffix, the wired ports get base -+ 1, base + 2, and so on in name order, and the WiFi interfaces get -addresses derived from the base. With the record above the board is -named `bpi-ba-01-00`, `lan1` is `02:00:00:ba:01:02` and `wifi0` is -`06:00:00:ba:01:00`. +The base address becomes the hostname suffix, each wired port gets a +fixed offset from the base, and the WiFi interfaces get addresses +derived from it. With the record above the board is named +`bpi-ba-01-00`, `lan1` is `02:00:00:ba:01:02`, `wan` is +`02:00:00:ba:01:08` and `wifi0` is `06:00:00:ba:01:00`. A port goes +back to this address when a custom MAC address is removed from it. A locally administered address like `02:xx:xx:xx:xx:xx` is fine for a lab. For boards that will share a network with other equipment, use a -range you own. See [Vital Product Data](../../../doc/vpd.md#factory-partition) +range you own. Remove the file to return to random addresses. See +[Vital Product Data](../../../doc/vpd.md#vpd-file-on-the-aux-partition) for the record format and what else it can carry. ## Troubleshooting diff --git a/board/aarch64/bananapi-bpi-r3/dts/mediatek/mt7986a-bananapi-bpi-r3-emmc.dts b/board/aarch64/bananapi-bpi-r3/dts/mediatek/mt7986a-bananapi-bpi-r3-emmc.dts index 573285c8c..12a4971ea 100644 --- a/board/aarch64/bananapi-bpi-r3/dts/mediatek/mt7986a-bananapi-bpi-r3-emmc.dts +++ b/board/aarch64/bananapi-bpi-r3/dts/mediatek/mt7986a-bananapi-bpi-r3-emmc.dts @@ -2,3 +2,4 @@ #include "mt7986a-bananapi-bpi-r3.dtsi" #include "mt7986a-bananapi-bpi-r3-emmc.dtsi" +#include "mt7986a-bananapi-bpi-r3-macaddr.dtsi" diff --git a/board/aarch64/bananapi-bpi-r3/dts/mediatek/mt7986a-bananapi-bpi-r3-macaddr.dtsi b/board/aarch64/bananapi-bpi-r3/dts/mediatek/mt7986a-bananapi-bpi-r3-macaddr.dtsi new file mode 100644 index 000000000..637e0512f --- /dev/null +++ b/board/aarch64/bananapi-bpi-r3/dts/mediatek/mt7986a-bananapi-bpi-r3-macaddr.dtsi @@ -0,0 +1,44 @@ +/* Port addresses: VPD base MAC + 1 .. + 8 */ +&gmac0 { + nvmem-cells = <&base_mac 1>; + nvmem-cell-names = "mac-address"; +}; + +&gmac1 { + nvmem-cells = <&base_mac 6>; + nvmem-cell-names = "mac-address"; +}; + +&switch { + ports { + port@0 { + nvmem-cells = <&base_mac 8>; + nvmem-cell-names = "mac-address"; + }; + + port@1 { + nvmem-cells = <&base_mac 2>; + nvmem-cell-names = "mac-address"; + }; + + port@2 { + nvmem-cells = <&base_mac 3>; + nvmem-cell-names = "mac-address"; + }; + + port@3 { + nvmem-cells = <&base_mac 4>; + nvmem-cell-names = "mac-address"; + }; + + port@4 { + nvmem-cells = <&base_mac 5>; + nvmem-cell-names = "mac-address"; + }; + + port@5 { + nvmem-cells = <&base_mac 7>; + nvmem-cell-names = "mac-address"; + }; + }; +}; diff --git a/board/aarch64/bananapi-bpi-r3/dts/mediatek/mt7986a-bananapi-bpi-r3-mini.dts b/board/aarch64/bananapi-bpi-r3/dts/mediatek/mt7986a-bananapi-bpi-r3-mini.dts index bcb323e6b..f38f00446 100644 --- a/board/aarch64/bananapi-bpi-r3/dts/mediatek/mt7986a-bananapi-bpi-r3-mini.dts +++ b/board/aarch64/bananapi-bpi-r3/dts/mediatek/mt7986a-bananapi-bpi-r3-mini.dts @@ -10,3 +10,12 @@ compatible = "ethernet-phy-id03a2.a411"; }; +/* Port addresses: VPD base MAC + 1 (lan) and + 2 (wan) */ +&gmac0 { + nvmem-cells = <&base_mac 1>; + nvmem-cell-names = "mac-address"; +}; +&gmac1 { + nvmem-cells = <&base_mac 2>; + nvmem-cell-names = "mac-address"; +}; diff --git a/board/aarch64/bananapi-bpi-r3/dts/mediatek/mt7986a-bananapi-bpi-r3-sd.dts b/board/aarch64/bananapi-bpi-r3/dts/mediatek/mt7986a-bananapi-bpi-r3-sd.dts index 640586fc7..c5caaed03 100644 --- a/board/aarch64/bananapi-bpi-r3/dts/mediatek/mt7986a-bananapi-bpi-r3-sd.dts +++ b/board/aarch64/bananapi-bpi-r3/dts/mediatek/mt7986a-bananapi-bpi-r3-sd.dts @@ -2,3 +2,4 @@ #include "mt7986a-bananapi-bpi-r3.dtsi" #include "mt7986a-bananapi-bpi-r3-sd.dtsi" +#include "mt7986a-bananapi-bpi-r3-macaddr.dtsi" diff --git a/board/aarch64/bananapi-bpi-r3/dts/mediatek/mt7986a-bananapi-bpi-r3-vpd.dtsi b/board/aarch64/bananapi-bpi-r3/dts/mediatek/mt7986a-bananapi-bpi-r3-vpd.dtsi new file mode 100644 index 000000000..c1c44da90 --- /dev/null +++ b/board/aarch64/bananapi-bpi-r3/dts/mediatek/mt7986a-bananapi-bpi-r3-vpd.dtsi @@ -0,0 +1,23 @@ +/* + * Product VPD, an ONIE TLV that the boot loader copies from the aux + * partition into reserved memory. The region is zeroed when there is + * no VPD, which leaves the layout without cells. Ports reference the + * base MAC address with an index, <&base_mac N>, and get base + N as + * their permanent address. + */ +&{/reserved-memory} { + vpd: vpd@43e00000 { + compatible = "nvmem-rmem"; + reg = <0 0x43e00000 0 0x10000>; + no-map; + infix,board = "product"; + + nvmem-layout { + compatible = "onie,tlv-layout"; + + base_mac: mac-address { + #nvmem-cell-cells = <1>; + }; + }; + }; +}; diff --git a/board/aarch64/bananapi-bpi-r3/dts/mediatek/mt7986a-bananapi-bpi-r3.dtsi b/board/aarch64/bananapi-bpi-r3/dts/mediatek/mt7986a-bananapi-bpi-r3.dtsi index ef1b24659..52c6a47b6 100644 --- a/board/aarch64/bananapi-bpi-r3/dts/mediatek/mt7986a-bananapi-bpi-r3.dtsi +++ b/board/aarch64/bananapi-bpi-r3/dts/mediatek/mt7986a-bananapi-bpi-r3.dtsi @@ -4,9 +4,9 @@ * every boot, into the node behind the ethernet0 alias. The * kernel then reports that port, and every switch port that * inherits from it, as having a permanent hardware address. - * Drop the aliases so the ports come up with a random address - * instead, which init.d/22-macaddr replaces with a chassis- - * derived one when a product VPD is present. + * Drop the aliases so the ports get their address from the + * product VPD instead, see mt7986a-bananapi-bpi-r3-vpd.dtsi, + * or a random one on a board without a VPD. */ aliases { /delete-property/ ethernet0; @@ -17,11 +17,14 @@ infix { /* Default admin user password: 'admin' */ factory-password-hash = "$5$mI/zpOAqZYKLC2WU$i7iPzZiIjOjrBF3NyftS9CCq8dfYwHwrmUK097Jca9A"; + vpds = <&vpd>; usb-ports = <&ssusb>; usb-port-names = "USB"; }; }; }; +#include "mt7986a-bananapi-bpi-r3-vpd.dtsi" + /* From 236317dd4e55512933dcdaec3d0b4a0824f5e5bd Mon Sep 17 00:00:00 2001 From: Shiji Yang diff --git a/board/aarch64/bananapi-bpi-r3/rootfs/usr/libexec/bpi-r3/macaddr b/board/aarch64/bananapi-bpi-r3/rootfs/usr/libexec/bpi-r3/macaddr deleted file mode 100755 index 3e5efb239..000000000 --- a/board/aarch64/bananapi-bpi-r3/rootfs/usr/libexec/bpi-r3/macaddr +++ /dev/null @@ -1,86 +0,0 @@ -#!/usr/bin/env python3 -"""Give ports without a hardware MAC address a chassis-derived one. - -The BPI-R3 family has no MAC EEPROM, so every port boots with a random -address, and the switch ports inherit that from their conduit. When -the product VPD provides a base MAC, hand each such port a stable -address derived from it: base + 1, base + 2, ... in interface name -order. This mirrors what products with real hardware addresses get -from their device tree. Ports with a permanent address are left alone. - -Runs from /etc/product/init.d, before the DSA conduit is renamed, so -it sorts as eth0 and takes base + 1. -""" -import json -import os -import subprocess -import sys - -SYSTEM_JSON = "/run/system.json" -NET = "/sys/class/net" -NET_ADDR_PERM = 0 - - -def log(msg): - subprocess.run(["logger", "-k", "-p", "user.notice", "-t", "macaddr", msg], - check=False) - - -def vpd_base_mac(): - try: - with open(SYSTEM_JSON, encoding="ascii") as f: - system = json.load(f) - except (OSError, ValueError): - return None - - product = system.get("vpd", {}).get("product", {}) - return product.get("data", {}).get("mac-address") - - -def mac_add(mac, offset): - num = int(mac.replace(":", ""), 16) + offset - num %= 1 << 48 - return ":".join(f"{(num >> 8 * i) & 0xff:02x}" for i in range(5, -1, -1)) - - -def read(path): - with open(path, encoding="ascii") as f: - return f.read().strip() - - -def ports(): - """Wired ports whose address the kernel did not get from hardware.""" - for name in sorted(os.listdir(NET)): - path = os.path.join(NET, name) - if not os.path.exists(os.path.join(path, "device")): - continue - if os.path.exists(os.path.join(path, "phy80211")): - continue - try: - if int(read(os.path.join(path, "addr_assign_type"))) == NET_ADDR_PERM: - continue - except (OSError, ValueError): - continue - - yield name - - -def main(): - base = vpd_base_mac() - if not base: - return 0 - - for offset, name in enumerate(ports(), start=1): - mac = mac_add(base, offset) - rc = subprocess.run(["ip", "link", "set", "dev", name, "address", mac], - check=False) - if rc.returncode: - log(f"failed setting {name} address {mac}") - continue - log(f"{name}: {mac} (chassis + {offset})") - - return 0 - - -if __name__ == "__main__": - sys.exit(main()) diff --git a/board/aarch64/bananapi-bpi-r3/rootfs/usr/share/product/bananapi,bpi-r3/etc/product/init.d/S22-macaddr b/board/aarch64/bananapi-bpi-r3/rootfs/usr/share/product/bananapi,bpi-r3/etc/product/init.d/S22-macaddr deleted file mode 120000 index f44f78b9d..000000000 --- a/board/aarch64/bananapi-bpi-r3/rootfs/usr/share/product/bananapi,bpi-r3/etc/product/init.d/S22-macaddr +++ /dev/null @@ -1 +0,0 @@ -/usr/libexec/bpi-r3/macaddr \ No newline at end of file diff --git a/board/aarch64/bananapi-bpi-r3/rootfs/usr/share/product/bananapi,bpi-r3mini/etc/product/init.d/S22-macaddr b/board/aarch64/bananapi-bpi-r3/rootfs/usr/share/product/bananapi,bpi-r3mini/etc/product/init.d/S22-macaddr deleted file mode 120000 index f44f78b9d..000000000 --- a/board/aarch64/bananapi-bpi-r3/rootfs/usr/share/product/bananapi,bpi-r3mini/etc/product/init.d/S22-macaddr +++ /dev/null @@ -1 +0,0 @@ -/usr/libexec/bpi-r3/macaddr \ No newline at end of file From 71e6d9b187fcfc3d3b295ab5afa0931af94357b4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mattias=20Walstr=C3=B6m?= Date: Tue, 13 Oct 2026 13:18:38 +0200 Subject: [PATCH 6/9] probe: Drop the factory partition VPD The BPI-R3 VPD now reaches the system through the device tree like any other, so revert 9d6717210 and document the aux file instead. --- .../rootfs/usr/libexec/infix/init.d/00-probe | 35 ------------------- doc/ChangeLog.md | 8 ++--- doc/vpd.md | 31 ++++++++-------- 3 files changed, 19 insertions(+), 55 deletions(-) diff --git a/board/common/rootfs/usr/libexec/infix/init.d/00-probe b/board/common/rootfs/usr/libexec/infix/init.d/00-probe index d41c196de..e2054cefb 100755 --- a/board/common/rootfs/usr/libexec/infix/init.d/00-probe +++ b/board/common/rootfs/usr/libexec/infix/init.d/00-probe @@ -480,46 +480,11 @@ def probe_dmisystem(out): return 0 -FACTORY_PART = "/dev/disk/by-partlabel/factory" - - -def factory_partition_vpd(): - """Product VPD from an ONIE TLV at the start of the factory partition. - - Boards without a VPD EEPROM, e.g. SBCs, can be given an identity by - writing a TLV to a partition labelled "factory". Anyone with write - access to the disk can change it, so it is never trusted. - """ - if not os.path.exists(FACTORY_PART): - return None - - try: - with open(FACTORY_PART, "rb", 0) as f: - data = onieprom.from_tlv(f) - except Exception: # pylint: disable=broad-except - return None - - if not data: - return None - - return { - "board": "product", - "available": True, - "trusted": False, - "data": data, - } - - def probe_dtsystem(out): """Probe DTS based system, expects a VPD in ONIE PROM format.""" dtsys = DTSystem() vpds = dtsys.infix_vpds() - if not any(vpd["board"] == "product" and vpd["available"] for vpd in vpds): - vpd = factory_partition_vpd() - if vpd: - vpds.append(vpd) - model = dtsys.base.str("model") if model: out["product-name"] = model diff --git a/doc/ChangeLog.md b/doc/ChangeLog.md index 667ad257e..24a499ccd 100644 --- a/doc/ChangeLog.md +++ b/doc/ChangeLog.md @@ -13,10 +13,10 @@ All notable changes to the project are documented in this file. R64, NanoPi R2S and Vero W6M now has IPv6 enabled, so the router has a link-local address on the LAN side like its ports already had - Boards without a VPD EEPROM can be given a fixed identity, base MAC - included, by writing an ONIE TLV to a disk partition labelled `factory`, - see [VPD documentation](vpd.md#factory-partition) -- Banana Pi BPI-R3: ports get stable addresses derived from the chassis - MAC instead of random ones at every boot + included, by storing an ONIE TLV as `/mnt/aux/vpd.bin`, see + [VPD documentation](vpd.md#vpd-file-on-the-aux-partition) +- Banana Pi BPI-R3: ports get permanent addresses derived from the + chassis MAC instead of random ones at every boot - WiFi interfaces get a unique address derived from the chassis MAC, so several APs on one radio, or two devices of the same model, no longer need `custom-phys-address` diff --git a/doc/vpd.md b/doc/vpd.md index 6c32b3982..15d6de135 100644 --- a/doc/vpd.md +++ b/doc/vpd.md @@ -54,33 +54,32 @@ Every VPD is listed in the _ietf-hardware_ model as a component named `vpd-`, e.g., `vpd-product` for the example above. -## Factory Partition +## VPD File on the Aux Partition Boards without a VPD EEPROM, such as single board computers, boot with a random MAC address on every port and the vendor's default address on every WiFi radio. Two such boards of the same model cannot even talk to each other over WiFi, since both radios claim the same address. -Such a board can be given an identity by writing an ONIE TLV to the -start of a disk partition labelled `factory`. The system reads it -when the device tree provides no product VPD. The `onieprom` tool -encodes the JSON form described [below](#json-encoding): +Such a board can be given an identity by storing an ONIE TLV as +`/mnt/aux/vpd.bin`. The boot loader hands the file to the system, +which reads it like any other VPD. The `onieprom` tool encodes the +JSON form described [below](#json-encoding): ``` -echo '{"mac-address":"02:00:00:ba:01:00","serial-number":"banana1","vendor":"Bananapi","product-name":"BPI-R3"}' \ - | onieprom -e | dd of=/dev/disk/by-partlabel/factory +echo '{"mac-address":"02:00:00:ba:01:00","serial-number":"banana1","vendor":"SinoVoip Co., Ltd.","product-name":"BPI-R3"}' \ + | onieprom -e > /mnt/aux/vpd.bin ``` -A VPD read this way is never trusted, so it can only provide identity, -never the factory password. On the Banana Pi BPI-R3 family the base -MAC address it provides is also handed out to the ports at boot: every -wired port without a hardware address gets base + 1, base + 2, and so -on, in interface name order. -WiFi interfaces derive their addresses from the base MAC as described -in [WiFi](wifi.md#multi-ssid-configuration). +The file survives upgrades, and removing it returns the board to +random addresses on the next boot. A VPD read this way is never +trusted, so it can only provide identity, never the factory password. +The ports get their addresses from its base MAC address, each with a +fixed offset given by the device tree, and WiFi interfaces derive +theirs from the base MAC as described in +[WiFi](wifi.md#multi-ssid-configuration). -The image for the Banana Pi BPI-R3 family already carries an empty -`factory` partition for this purpose. +This is currently supported on the Banana Pi BPI-R3 family. ## Product VPD From aedfc5c91cec998be547a5b9f9a6eb748b360748 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mattias=20Walstr=C3=B6m?= Date: Tue, 13 Oct 2026 13:55:59 +0200 Subject: [PATCH 7/9] board: vero-w6m: Give the ports permanent addresses from the VPD Same scheme as the BPI-R3 it derives from: the VPD U-Boot loads from the aux partition is an nvmem-rmem node, and each port takes its base MAC offset from it. --- board/aarch64/acer-connect-vero-w6m/README.md | 17 ++++++ .../mt7986a-acer-connect-vero-w6m-common.dtsi | 1 + .../mt7986a-acer-connect-vero-w6m-vpd.dtsi | 53 +++++++++++++++++++ .../mt7986a-acer-connect-vero-w6m.dts | 1 + doc/ChangeLog.md | 5 +- doc/vpd.md | 3 +- 6 files changed, 77 insertions(+), 3 deletions(-) create mode 100644 board/aarch64/acer-connect-vero-w6m/dts/mediatek/mt7986a-acer-connect-vero-w6m-vpd.dtsi diff --git a/board/aarch64/acer-connect-vero-w6m/README.md b/board/aarch64/acer-connect-vero-w6m/README.md index 1afb3cdeb..b0f67e525 100644 --- a/board/aarch64/acer-connect-vero-w6m/README.md +++ b/board/aarch64/acer-connect-vero-w6m/README.md @@ -49,6 +49,23 @@ U-Boot from the first partition after fip. installing. Interrupt autoboot and run `printenv` to note down: `2gMAC`, `5gMAC`, `6gMAC`, `LANMAC`, and `WANMAC`. +## Giving the Unit a Permanent MAC Address + +Infix does not read the stock U-Boot environment, so the unit boots +with random Ethernet addresses until it is given a product record. +Store one as `/mnt/aux/vpd.bin`, from the Infix shell, using the +`WANMAC` noted down above as the base address: + +``` +echo '{"mac-address":"","serial-number":"","vendor":"Acer","product-name":"Connect Vero W6m"}' \ + | onieprom -e > /mnt/aux/vpd.bin +``` + +After a reboot the ports get fixed offsets from the base address and +the WiFi interfaces derive theirs from it. See +[Vital Product Data](../../../doc/vpd.md#vpd-file-on-the-aux-partition) +for the record format. + ## Required Files Prepare these files on a host reachable from the Vero: diff --git a/board/aarch64/acer-connect-vero-w6m/dts/mediatek/mt7986a-acer-connect-vero-w6m-common.dtsi b/board/aarch64/acer-connect-vero-w6m/dts/mediatek/mt7986a-acer-connect-vero-w6m-common.dtsi index fc77c7a7a..5e86277a4 100644 --- a/board/aarch64/acer-connect-vero-w6m/dts/mediatek/mt7986a-acer-connect-vero-w6m-common.dtsi +++ b/board/aarch64/acer-connect-vero-w6m/dts/mediatek/mt7986a-acer-connect-vero-w6m-common.dtsi @@ -13,6 +13,7 @@ infix { /* Default admin user password: 'admin' */ factory-password-hash = "$5$mI/zpOAqZYKLC2WU$i7iPzZiIjOjrBF3NyftS9CCq8dfYwHwrmUK097Jca9A"; + vpds = <&vpd>; }; }; diff --git a/board/aarch64/acer-connect-vero-w6m/dts/mediatek/mt7986a-acer-connect-vero-w6m-vpd.dtsi b/board/aarch64/acer-connect-vero-w6m/dts/mediatek/mt7986a-acer-connect-vero-w6m-vpd.dtsi new file mode 100644 index 000000000..0d6d5c0e2 --- /dev/null +++ b/board/aarch64/acer-connect-vero-w6m/dts/mediatek/mt7986a-acer-connect-vero-w6m-vpd.dtsi @@ -0,0 +1,53 @@ +/* + * Product VPD, an ONIE TLV that the boot loader copies from the aux + * partition into reserved memory. The region is zeroed when there is + * no VPD, which leaves the layout without cells. Ports reference the + * base MAC address with an index, <&base_mac N>, and get base + N as + * their permanent address. + */ +&{/reserved-memory} { + vpd: vpd@43e00000 { + compatible = "nvmem-rmem"; + reg = <0 0x43e00000 0 0x10000>; + no-map; + infix,board = "product"; + + nvmem-layout { + compatible = "onie,tlv-layout"; + + base_mac: mac-address { + #nvmem-cell-cells = <1>; + }; + }; + }; +}; + +/* Port addresses: VPD base MAC + 1 .. + 5 in port name order */ +&gmac0 { + nvmem-cells = <&base_mac 1>; + nvmem-cell-names = "mac-address"; +}; + +&swport0 { + nvmem-cells = <&base_mac 2>; + nvmem-cell-names = "mac-address"; +}; + +&switch { + ports { + port@1 { + nvmem-cells = <&base_mac 3>; + nvmem-cell-names = "mac-address"; + }; + + port@2 { + nvmem-cells = <&base_mac 4>; + nvmem-cell-names = "mac-address"; + }; + + port@3 { + nvmem-cells = <&base_mac 5>; + nvmem-cell-names = "mac-address"; + }; + }; +}; diff --git a/board/aarch64/acer-connect-vero-w6m/dts/mediatek/mt7986a-acer-connect-vero-w6m.dts b/board/aarch64/acer-connect-vero-w6m/dts/mediatek/mt7986a-acer-connect-vero-w6m.dts index 37c992d39..acf1bdbff 100644 --- a/board/aarch64/acer-connect-vero-w6m/dts/mediatek/mt7986a-acer-connect-vero-w6m.dts +++ b/board/aarch64/acer-connect-vero-w6m/dts/mediatek/mt7986a-acer-connect-vero-w6m.dts @@ -3,6 +3,7 @@ /dts-v1/; #include "mt7986a-acer-connect-vero-w6m-common.dtsi" #include "mt7986a-acer-connect-vero-w6m-pcie-eeprom.dtsi" +#include "mt7986a-acer-connect-vero-w6m-vpd.dtsi" / { model = "Acer Connect Vero W6m"; diff --git a/doc/ChangeLog.md b/doc/ChangeLog.md index 24a499ccd..aec971519 100644 --- a/doc/ChangeLog.md +++ b/doc/ChangeLog.md @@ -15,8 +15,9 @@ All notable changes to the project are documented in this file. - Boards without a VPD EEPROM can be given a fixed identity, base MAC included, by storing an ONIE TLV as `/mnt/aux/vpd.bin`, see [VPD documentation](vpd.md#vpd-file-on-the-aux-partition) -- Banana Pi BPI-R3: ports get permanent addresses derived from the - chassis MAC instead of random ones at every boot +- Banana Pi BPI-R3 and Acer Connect Vero W6m: ports get permanent + addresses derived from the chassis MAC instead of random ones at + every boot - WiFi interfaces get a unique address derived from the chassis MAC, so several APs on one radio, or two devices of the same model, no longer need `custom-phys-address` diff --git a/doc/vpd.md b/doc/vpd.md index 15d6de135..9e49dfcd5 100644 --- a/doc/vpd.md +++ b/doc/vpd.md @@ -79,7 +79,8 @@ fixed offset given by the device tree, and WiFi interfaces derive theirs from the base MAC as described in [WiFi](wifi.md#multi-ssid-configuration). -This is currently supported on the Banana Pi BPI-R3 family. +This is currently supported on the Banana Pi BPI-R3 family and the +Acer Connect Vero W6m. ## Product VPD From 40236137e8ab890e7fb1407657a7c671de1db061 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mattias=20Walstr=C3=B6m?= Date: Tue, 13 Oct 2026 14:12:34 +0200 Subject: [PATCH 8/9] board: bpi-r3: Disable WED by default MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Keep the hardware offload path off until it is offered as an opt-in feature. Seen some stability issues with it, but most likely it works in some use cases. Signed-off-by: Mattias Walström --- .../bananapi-bpi-r3/rootfs/etc/modprobe.d/mt7915e-wed.conf | 2 +- doc/ChangeLog.md | 2 -- doc/wifi.md | 4 +--- 3 files changed, 2 insertions(+), 6 deletions(-) diff --git a/board/aarch64/bananapi-bpi-r3/rootfs/etc/modprobe.d/mt7915e-wed.conf b/board/aarch64/bananapi-bpi-r3/rootfs/etc/modprobe.d/mt7915e-wed.conf index 2d323064b..3ebdbabfc 100644 --- a/board/aarch64/bananapi-bpi-r3/rootfs/etc/modprobe.d/mt7915e-wed.conf +++ b/board/aarch64/bananapi-bpi-r3/rootfs/etc/modprobe.d/mt7915e-wed.conf @@ -1,2 +1,2 @@ # Wireless Ethernet Dispatch, the WiFi hardware offload path -options mt7915e wed_enable=1 +options mt7915e wed_enable=0 diff --git a/doc/ChangeLog.md b/doc/ChangeLog.md index aec971519..3ec08bf68 100644 --- a/doc/ChangeLog.md +++ b/doc/ChangeLog.md @@ -25,8 +25,6 @@ All notable changes to the project are documented in this file. with `wds` enabled can be a bridge port, and an access point bridges each remote station through a `wds-link` interface, see [WDS Backhaul and Repeaters][wds] -- MT7986 boards (Banana Pi BPI-R3, BPI-R3 Mini, Acer Connect Vero W6m): - WiFi hardware offloading is now active - Add IPv6 dynamic routing: RIPng and OSPFv3. Both reuse the existing ietf-rip and ietf-ospf models, selected per control-plane-protocol by the `ripng`/`ospfv3` type and the IPv6 address-family diff --git a/doc/wifi.md b/doc/wifi.md index a12608f17..7a781cb52 100644 --- a/doc/wifi.md +++ b/doc/wifi.md @@ -806,7 +806,6 @@ portal. For a backhaul with a single root, where multi-hop and self-healing are not needed, see [WDS Backhaul and Repeaters](#wds-backhaul-and-repeaters). -That variant can use WiFi hardware offloading, mesh cannot. > [!NOTE] > Not all WiFi hardware supports 802.11s mesh, see the adapter list @@ -911,8 +910,7 @@ configuration and tied to the satellite's MAC address. Compared to an [802.11s mesh](#80211s-mesh-point-mode), a WDS backhaul is a star with one root, without multi-hop or self-healing. In return -it is a plain access point and station link, which WiFi hardware -offloading supports where mesh is not. +it is a plain access point and station link. ### Root: access point with WDS ports From c5a2eac01bb4082e893e3099746fbc8761107336 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mattias=20Walstr=C3=B6m?= Date: Tue, 13 Oct 2026 15:48:00 +0200 Subject: [PATCH 9/9] patches/linux: mt7530: lock the MDIO bus around regmap-irq accesses Unlocked page selects from the regmap-irq thread interleave with the driver's locked register sequences and clobber SYS_INT_EN, after which no PHY link change on an MT7531 is ever reported again. Seen on the BPI-R3 rig as ports stuck at no-link after a bounce. --- ...0g-Support-firmware-loading-on-88X33.patch | 2 +- ...0g-Fix-power-up-when-strapped-to-sta.patch | 2 +- ...rvell10g-Add-LED-support-for-88X3310.patch | 2 +- ...0g-Support-LEDs-tied-to-a-single-med.patch | 2 +- ...phy-Do-not-resume-PHY-when-attaching.patch | 2 +- ...-classifying-unknown-multicast-as-mr.patch | 2 +- ...e-router-ports-when-forwarding-L2-mu.patch | 2 +- ...delay-for-applying-strict-multicast-.patch | 2 +- ...rentiate-MDB-additions-from-modifica.patch | 2 +- ...ie-tlv-Let-device-probe-even-when-TL.patch | 2 +- ...d-r8153b-support-for-link-activity-L.patch | 2 +- ...ek-mt7986a-rename-BPi-R3-ports-to-ma.patch | 2 +- ...-Add-a-timing-for-the-Raspberry-Pi-7.patch | 2 +- ...uchscreen-edt-ft5x06-Add-polled-mode.patch | 2 +- ...e6xxx-Fix-timeout-on-waiting-for-PPU.patch | 2 +- ...x-Improve-indirect-register-access-p.patch | 2 +- ...x-Honor-ports-being-managed-via-in-b.patch | 2 +- ...x-Limit-rsvd2cpu-policy-to-user-port.patch | 2 +- ...Use-tag-priority-as-initial-skb-prio.patch | 2 +- ...MDB-memberships-whose-L2-addresses-o.patch | 2 +- ...t-EtherType-based-priority-overrides.patch | 2 +- ...x-Support-EtherType-based-priority-o.patch | 2 +- ...a-mv88e6xxx-Add-mqprio-qdisc-support.patch | 2 +- ...x-Use-VLAN-prio-over-IP-when-both-ar.patch | 2 +- ...8e6xxx-Trap-locally-terminated-VLANs.patch | 2 +- ...x-collapse-disabled-state-into-block.patch | 2 +- ...x-Only-activate-LAG-offloading-when-.patch | 2 +- ...-mv88e6xxx-Add-LED-support-for-6393X.patch | 2 +- ...eck-connection-state-before-querying.patch | 2 +- ...ppress-log-spam-for-regulatory-restr.patch | 2 +- ...duce-log-noise-during-AP-to-station-.patch | 2 +- ...11h-add-OF-device-table-for-auto-loa.patch | 2 +- ...le-video-and-then-retry-failed-trans.patch | 2 +- ...locks-should-be-running-before-reset.patch | 2 +- ...nsure-DSI-is-enabled-for-FIFO-resets.patch | 2 +- ...036-drm-vc4-Reset-DSI-AFE-on-disable.patch | 2 +- ...le-the-different-command-FIFO-widths.patch | 2 +- ...762-Program-the-DPI-mode-into-the-ch.patch | 2 +- ...e-tc358762-revert-move-ops-to-enable.patch | 2 +- ...762-Set-pre_enabled-on-pre_enable-to.patch | 2 +- ...dalone-PCS-registration-infrastructu.patch | 2 +- ...d-MediaTek-MT7988-USXGMII-PCS-driver.patch | 2 +- ...iatek-add-USXGMII-support-for-MT7988.patch | 2 +- ...diatek-mt7988a-add-USXGMII-PCS-nodes.patch | 2 +- ...ek-bananapi-bpi-r4-enable-SFP-ports-.patch | 2 +- ...et-phy-sfp-add-OEM-SFP-10G-T-I-quirk.patch | 2 +- ...x-Trap-PTP-frames-on-timestamping-po.patch | 2 +- ...-add-MODULE_DEVICE_TABLE-for-mt7622-.patch | 2 +- ...3-Fix-PERST-control-timing-during-sy.patch | 2 +- ...xx-Derive-LED-names-from-device-name.patch | 2 +- ...s-make-it-selectable-for-ARCH_LAN969.patch | 2 +- ...arx5-fix-wrong-chip-ids-for-TSN-SKUs.patch | 2 +- ...gure-serdes-for-1000BASE-X-in-sparx5.patch | 2 +- ...atmel-sama5d2-sdhci-add-microchip-la.patch | 2 +- ...mc-sdhci-of-at91-add-LAN969x-support.patch | 2 +- ...1-stop-SDCLK-on-reset-and-add-eMMC-h.patch | 2 +- ...arx5-lan969x-populate-netdev-of_node.patch | 2 +- ...rochip-add-LAN969x-clock-header-file.patch | 2 +- ...64-dts-microchip-add-LAN969x-support.patch | 2 +- ...m64-dts-microchip-add-EV23X71A-board.patch | 2 +- ...4-dts-microchip-lan969x-add-OTP-node.patch | 2 +- ...ts-microchip-lan969x-add-SDMMC-nodes.patch | 2 +- ...4-dts-microchip-ev23x71a-enable-eMMC.patch | 2 +- ...rvey-the-requested-interface-not-the.patch | 2 +- ...nor-caller-s-rtnl-lock-when-stopping.patch | 2 +- ...t-cfg_to_ndev-return-NULL-and-harden.patch | 2 +- ...pport-deletion-and-recreation-of-the.patch | 2 +- ...port-port-authorized-after-offloaded.patch | 2 +- ...m-AT91-document-Novarq-Tactical-1000.patch | 2 +- ...s-microchip-add-Novarq-Tactical-1000.patch | 2 +- ...crochip-tactical-1000-add-port-names.patch | 2 +- ...icrochip-tactical-1000-adapt-to-6.18.patch | 2 +- ...ngs-arm-AT91-document-EV23X71A-board.patch | 2 +- ...-default-priority-init-on-unsupporte.patch | 2 +- ...se-the-global-DCB-APP-mirroring-help.patch | 2 +- ...net-dsa-Support-the-PCP-APP-selector.patch | 2 +- ...net-dsa-Support-DCB-priority-rewrite.patch | 2 +- ...-Support-the-IEEE-ETS-managed-object.patch | 2 +- ...leep-in-atomic-context-in-MAC-table-.patch | 2 +- ...ymreg-symreg-debugfs-driver-DBB-1045.patch | 2 +- ..._wed-map-WO-memory-regions-without-r.patch | 2 +- ...-fix-kernel-panic-on-non-DBDC-MT7986.patch | 2 +- ...-set-up-WPDMA-RX-ring-0-for-WED-on-a.patch | 2 +- ...-add-WDS-support-when-WED-is-enabled.patch | 2 +- ..._wed-increase-WED-v2-WDMA-RESV_BUFF-.patch | 2 +- ...-publish-wcid-before-MCU-add-command.patch | 2 +- ...acemit-add-UART-pinctrl-combinations.patch | 2 +- ...dts-spacemit-enable-the-i2c8-adapter.patch | 2 +- ...dts-spacemit-define-fixed-regulators.patch | 2 +- ...pacemit-define-regulator-constraints.patch | 2 +- ...it-pinctrl-update-register-and-IO-po.patch | 2 +- ...it-Update-PMIC-supply-properties-for.patch | 2 +- ...it-k1-add-SD-card-controller-and-pin.patch | 2 +- ...it-k1-bananapi-f3-add-SD-card-suppor.patch | 2 +- ...95-mmc-sdhci-of-k1-add-reset-support.patch | 2 +- ...enable-essential-clock-infrastructur.patch | 2 +- ...add-regulator-and-pinctrl-voltage-sw.patch | 2 +- ...add-comprehensive-SDR-tuning-support.patch | 2 +- ...cemit-p1-add-driver-for-poweroff-reb.patch | 2 +- ...2c-Add-a-reboot-cell-for-the-Spacemi.patch | 2 +- ...t-defer-on-a-cell-missing-from-a-bou.patch | 2 +- ...ock-the-MDIO-bus-around-regmap-irq-a.patch | 108 ++++++++++++++++++ 102 files changed, 209 insertions(+), 101 deletions(-) create mode 100644 patches/linux/6.18.56/0102-net-dsa-mt7530-lock-the-MDIO-bus-around-regmap-irq-a.patch diff --git a/patches/linux/6.18.56/0001-net-phy-marvell10g-Support-firmware-loading-on-88X33.patch b/patches/linux/6.18.56/0001-net-phy-marvell10g-Support-firmware-loading-on-88X33.patch index ef4310244..36a7aaad4 100644 --- a/patches/linux/6.18.56/0001-net-phy-marvell10g-Support-firmware-loading-on-88X33.patch +++ b/patches/linux/6.18.56/0001-net-phy-marvell10g-Support-firmware-loading-on-88X33.patch @@ -1,7 +1,7 @@ From ca34ebe2b40b53b52a5ea6fb00b7bb36eeeabb5f Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Tue, 19 Sep 2023 18:38:10 +0200 -Subject: [PATCH 001/101] net: phy: marvell10g: Support firmware loading on +Subject: [PATCH 001/102] net: phy: marvell10g: Support firmware loading on 88X3310 When probing, if a device is waiting for firmware to be loaded into diff --git a/patches/linux/6.18.56/0002-net-phy-marvell10g-Fix-power-up-when-strapped-to-sta.patch b/patches/linux/6.18.56/0002-net-phy-marvell10g-Fix-power-up-when-strapped-to-sta.patch index 2e3fbb206..b0d8f2695 100644 --- a/patches/linux/6.18.56/0002-net-phy-marvell10g-Fix-power-up-when-strapped-to-sta.patch +++ b/patches/linux/6.18.56/0002-net-phy-marvell10g-Fix-power-up-when-strapped-to-sta.patch @@ -1,7 +1,7 @@ From 59532ff26cccf476b4e6f8eeaf2e733c93106a78 Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Tue, 21 Nov 2023 20:15:24 +0100 -Subject: [PATCH 002/101] net: phy: marvell10g: Fix power-up when strapped to +Subject: [PATCH 002/102] net: phy: marvell10g: Fix power-up when strapped to start powered down On devices which are hardware strapped to start powered down (PDSTATE diff --git a/patches/linux/6.18.56/0003-net-phy-marvell10g-Add-LED-support-for-88X3310.patch b/patches/linux/6.18.56/0003-net-phy-marvell10g-Add-LED-support-for-88X3310.patch index 7236465eb..cc276b312 100644 --- a/patches/linux/6.18.56/0003-net-phy-marvell10g-Add-LED-support-for-88X3310.patch +++ b/patches/linux/6.18.56/0003-net-phy-marvell10g-Add-LED-support-for-88X3310.patch @@ -1,7 +1,7 @@ From 2881f5a7008a4b7a214f63960f1d199f55a7a78a Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Wed, 15 Nov 2023 20:58:42 +0100 -Subject: [PATCH 003/101] net: phy: marvell10g: Add LED support for 88X3310 +Subject: [PATCH 003/102] net: phy: marvell10g: Add LED support for 88X3310 Pickup the LEDs from the state in which the hardware reset or bootloader left them, but also support further configuration via diff --git a/patches/linux/6.18.56/0004-net-phy-marvell10g-Support-LEDs-tied-to-a-single-med.patch b/patches/linux/6.18.56/0004-net-phy-marvell10g-Support-LEDs-tied-to-a-single-med.patch index f7301fb31..4f82512fb 100644 --- a/patches/linux/6.18.56/0004-net-phy-marvell10g-Support-LEDs-tied-to-a-single-med.patch +++ b/patches/linux/6.18.56/0004-net-phy-marvell10g-Support-LEDs-tied-to-a-single-med.patch @@ -1,7 +1,7 @@ From 67a62752bdb5e1e45982289b2eda1f5df4ca6f47 Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Tue, 12 Dec 2023 09:51:05 +0100 -Subject: [PATCH 004/101] net: phy: marvell10g: Support LEDs tied to a single +Subject: [PATCH 004/102] net: phy: marvell10g: Support LEDs tied to a single media side In a combo-port setup, i.e. where both the copper and fiber interface diff --git a/patches/linux/6.18.56/0005-net-phy-Do-not-resume-PHY-when-attaching.patch b/patches/linux/6.18.56/0005-net-phy-Do-not-resume-PHY-when-attaching.patch index f2405277f..31b601cf8 100644 --- a/patches/linux/6.18.56/0005-net-phy-Do-not-resume-PHY-when-attaching.patch +++ b/patches/linux/6.18.56/0005-net-phy-Do-not-resume-PHY-when-attaching.patch @@ -1,7 +1,7 @@ From a60255d4ba8ea888ecb86e92a2c65334a26f6384 Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Wed, 27 Mar 2024 10:10:19 +0100 -Subject: [PATCH 005/101] net: phy: Do not resume PHY when attaching +Subject: [PATCH 005/102] net: phy: Do not resume PHY when attaching The PHY should not start negotiating with its link-partner until explicitly instructed to do so. diff --git a/patches/linux/6.18.56/0006-net-bridge-avoid-classifying-unknown-multicast-as-mr.patch b/patches/linux/6.18.56/0006-net-bridge-avoid-classifying-unknown-multicast-as-mr.patch index ba9c50980..8aff6683f 100644 --- a/patches/linux/6.18.56/0006-net-bridge-avoid-classifying-unknown-multicast-as-mr.patch +++ b/patches/linux/6.18.56/0006-net-bridge-avoid-classifying-unknown-multicast-as-mr.patch @@ -1,7 +1,7 @@ From 3fc8e2a80589a5a5ae02fac7b3f97f195cb90930 Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Mon, 4 Mar 2024 16:47:28 +0100 -Subject: [PATCH 006/101] net: bridge: avoid classifying unknown multicast as +Subject: [PATCH 006/102] net: bridge: avoid classifying unknown multicast as mrouters_only Unknown multicast, MAC/IPv4/IPv6, should always be flooded according to diff --git a/patches/linux/6.18.56/0007-net-bridge-Ignore-router-ports-when-forwarding-L2-mu.patch b/patches/linux/6.18.56/0007-net-bridge-Ignore-router-ports-when-forwarding-L2-mu.patch index 607c3f547..922a6e34a 100644 --- a/patches/linux/6.18.56/0007-net-bridge-Ignore-router-ports-when-forwarding-L2-mu.patch +++ b/patches/linux/6.18.56/0007-net-bridge-Ignore-router-ports-when-forwarding-L2-mu.patch @@ -1,7 +1,7 @@ From 8f5cf3a448d6e7a1d00043debd0bf1fcaf706680 Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Tue, 5 Mar 2024 06:44:41 +0100 -Subject: [PATCH 007/101] net: bridge: Ignore router ports when forwarding L2 +Subject: [PATCH 007/102] net: bridge: Ignore router ports when forwarding L2 multicast Multicast router ports are either statically configured or learned from diff --git a/patches/linux/6.18.56/0008-net-bridge-drop-delay-for-applying-strict-multicast-.patch b/patches/linux/6.18.56/0008-net-bridge-drop-delay-for-applying-strict-multicast-.patch index 70d7141d6..ace817dd7 100644 --- a/patches/linux/6.18.56/0008-net-bridge-drop-delay-for-applying-strict-multicast-.patch +++ b/patches/linux/6.18.56/0008-net-bridge-drop-delay-for-applying-strict-multicast-.patch @@ -1,7 +1,7 @@ From a42722822b7ff8ea8ac5e65a8449bb72b1ef8c05 Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Thu, 4 Apr 2024 16:36:30 +0200 -Subject: [PATCH 008/101] net: bridge: drop delay for applying strict multicast +Subject: [PATCH 008/102] net: bridge: drop delay for applying strict multicast filtering This *local* patch drops the initial delay before applying strict multicast diff --git a/patches/linux/6.18.56/0009-net-bridge-Differentiate-MDB-additions-from-modifica.patch b/patches/linux/6.18.56/0009-net-bridge-Differentiate-MDB-additions-from-modifica.patch index dffcc8029..e83383c75 100644 --- a/patches/linux/6.18.56/0009-net-bridge-Differentiate-MDB-additions-from-modifica.patch +++ b/patches/linux/6.18.56/0009-net-bridge-Differentiate-MDB-additions-from-modifica.patch @@ -1,7 +1,7 @@ From 2722df35856114c70f9896452d155b660f804ed8 Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Thu, 16 May 2024 14:51:54 +0200 -Subject: [PATCH 009/101] net: bridge: Differentiate MDB additions from +Subject: [PATCH 009/102] net: bridge: Differentiate MDB additions from modifications Before this change, the reception of an IGMPv3 report (and analogously diff --git a/patches/linux/6.18.56/0010-nvmem-layouts-onie-tlv-Let-device-probe-even-when-TL.patch b/patches/linux/6.18.56/0010-nvmem-layouts-onie-tlv-Let-device-probe-even-when-TL.patch index 39c12f5eb..3bdc58678 100644 --- a/patches/linux/6.18.56/0010-nvmem-layouts-onie-tlv-Let-device-probe-even-when-TL.patch +++ b/patches/linux/6.18.56/0010-nvmem-layouts-onie-tlv-Let-device-probe-even-when-TL.patch @@ -1,7 +1,7 @@ From 17f03931f23a3ed1dbe6f77a7e48bfdc11f17140 Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Fri, 24 Nov 2023 23:29:55 +0100 -Subject: [PATCH 010/101] nvmem: layouts: onie-tlv: Let device probe even when +Subject: [PATCH 010/102] nvmem: layouts: onie-tlv: Let device probe even when TLV is invalid Before this change, probing an NVMEM device, expected to contain a diff --git a/patches/linux/6.18.56/0011-net-usb-r8152-add-r8153b-support-for-link-activity-L.patch b/patches/linux/6.18.56/0011-net-usb-r8152-add-r8153b-support-for-link-activity-L.patch index 1916e21ee..be19f5142 100644 --- a/patches/linux/6.18.56/0011-net-usb-r8152-add-r8153b-support-for-link-activity-L.patch +++ b/patches/linux/6.18.56/0011-net-usb-r8152-add-r8153b-support-for-link-activity-L.patch @@ -1,7 +1,7 @@ From cbc993b90307a45db570d20bce5e651100bafaa7 Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Sun, 11 Aug 2024 11:27:35 +0200 -Subject: [PATCH 011/101] net: usb: r8152: add r8153b support for link/activity +Subject: [PATCH 011/102] net: usb: r8152: add r8153b support for link/activity LEDs This patch adds support for the link/activity LEDs on the NanoPi R2S diff --git a/patches/linux/6.18.56/0012-arm64-dts-mediatek-mt7986a-rename-BPi-R3-ports-to-ma.patch b/patches/linux/6.18.56/0012-arm64-dts-mediatek-mt7986a-rename-BPi-R3-ports-to-ma.patch index 9af3c7e28..645cecc4e 100644 --- a/patches/linux/6.18.56/0012-arm64-dts-mediatek-mt7986a-rename-BPi-R3-ports-to-ma.patch +++ b/patches/linux/6.18.56/0012-arm64-dts-mediatek-mt7986a-rename-BPi-R3-ports-to-ma.patch @@ -1,7 +1,7 @@ From 0c1a54359f6989eedad98678e030fc1d8fb44da0 Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Sun, 10 Aug 2025 18:52:54 +0200 -Subject: [PATCH 012/101] arm64: dts: mediatek: mt7986a: rename BPi R3 ports to +Subject: [PATCH 012/102] arm64: dts: mediatek: mt7986a: rename BPi R3 ports to match case For ref. see: https://wiki.banana-pi.org/File:Bpi-r3_Metal_case.jpg diff --git a/patches/linux/6.18.56/0013-drm-panel-simple-Add-a-timing-for-the-Raspberry-Pi-7.patch b/patches/linux/6.18.56/0013-drm-panel-simple-Add-a-timing-for-the-Raspberry-Pi-7.patch index 89088b610..298054ebd 100644 --- a/patches/linux/6.18.56/0013-drm-panel-simple-Add-a-timing-for-the-Raspberry-Pi-7.patch +++ b/patches/linux/6.18.56/0013-drm-panel-simple-Add-a-timing-for-the-Raspberry-Pi-7.patch @@ -1,7 +1,7 @@ From 2cbb47d51538a83315595715405a328552b9a753 Mon Sep 17 00:00:00 2001 From: Mattias Walström Date: Wed, 20 Aug 2025 21:38:24 +0200 -Subject: [PATCH 013/101] drm/panel-simple: Add a timing for the Raspberry Pi +Subject: [PATCH 013/102] drm/panel-simple: Add a timing for the Raspberry Pi 7" panel The Raspberry Pi 7" 800x480 panel uses a Toshiba TC358762 DSI diff --git a/patches/linux/6.18.56/0014-input-touchscreen-edt-ft5x06-Add-polled-mode.patch b/patches/linux/6.18.56/0014-input-touchscreen-edt-ft5x06-Add-polled-mode.patch index 9079787ca..dab2c27e9 100644 --- a/patches/linux/6.18.56/0014-input-touchscreen-edt-ft5x06-Add-polled-mode.patch +++ b/patches/linux/6.18.56/0014-input-touchscreen-edt-ft5x06-Add-polled-mode.patch @@ -1,7 +1,7 @@ From fed97704c224902b2d79c81492c5a50ccd97793b Mon Sep 17 00:00:00 2001 From: Mattias Walström Date: Thu, 21 Aug 2025 11:20:23 +0200 -Subject: [PATCH 014/101] input:touchscreen:edt-ft5x06: Add polled mode +Subject: [PATCH 014/102] input:touchscreen:edt-ft5x06: Add polled mode Not all hardware has interrupts therefore we need to poll the touchscreen. diff --git a/patches/linux/6.18.56/0015-FIX-net-dsa-mv88e6xxx-Fix-timeout-on-waiting-for-PPU.patch b/patches/linux/6.18.56/0015-FIX-net-dsa-mv88e6xxx-Fix-timeout-on-waiting-for-PPU.patch index 5c8ef5a2d..1e3d058be 100644 --- a/patches/linux/6.18.56/0015-FIX-net-dsa-mv88e6xxx-Fix-timeout-on-waiting-for-PPU.patch +++ b/patches/linux/6.18.56/0015-FIX-net-dsa-mv88e6xxx-Fix-timeout-on-waiting-for-PPU.patch @@ -1,7 +1,7 @@ From 11f9f49b62a6eb3a73a523541b3f26f6958e0d49 Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Tue, 12 Mar 2024 10:27:24 +0100 -Subject: [PATCH 015/101] [FIX] net: dsa: mv88e6xxx: Fix timeout on waiting for +Subject: [PATCH 015/102] [FIX] net: dsa: mv88e6xxx: Fix timeout on waiting for PPU on 6393X In a multi-chip setup, delays of up to 750ms are observed before the diff --git a/patches/linux/6.18.56/0016-net-dsa-mv88e6xxx-Improve-indirect-register-access-p.patch b/patches/linux/6.18.56/0016-net-dsa-mv88e6xxx-Improve-indirect-register-access-p.patch index f726f5d40..842d68847 100644 --- a/patches/linux/6.18.56/0016-net-dsa-mv88e6xxx-Improve-indirect-register-access-p.patch +++ b/patches/linux/6.18.56/0016-net-dsa-mv88e6xxx-Improve-indirect-register-access-p.patch @@ -1,7 +1,7 @@ From 6aed16ecedd6e8d3594474b00b4f80a6a75372c1 Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Wed, 27 Mar 2024 15:52:43 +0100 -Subject: [PATCH 016/101] net: dsa: mv88e6xxx: Improve indirect register access +Subject: [PATCH 016/102] net: dsa: mv88e6xxx: Improve indirect register access perf on 6393 When operating in multi-chip mode, the 6393 family maps a subset of diff --git a/patches/linux/6.18.56/0017-net-dsa-mv88e6xxx-Honor-ports-being-managed-via-in-b.patch b/patches/linux/6.18.56/0017-net-dsa-mv88e6xxx-Honor-ports-being-managed-via-in-b.patch index e0119b6fa..cee78ea4d 100644 --- a/patches/linux/6.18.56/0017-net-dsa-mv88e6xxx-Honor-ports-being-managed-via-in-b.patch +++ b/patches/linux/6.18.56/0017-net-dsa-mv88e6xxx-Honor-ports-being-managed-via-in-b.patch @@ -1,7 +1,7 @@ From 627e2902f0b11f9994e5c8c92627791b60069cdb Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Mon, 22 Apr 2024 23:18:01 +0200 -Subject: [PATCH 017/101] net: dsa: mv88e6xxx: Honor ports being managed via +Subject: [PATCH 017/102] net: dsa: mv88e6xxx: Honor ports being managed via in-band-status Keep all link parameters in their unforced states when the port is diff --git a/patches/linux/6.18.56/0018-net-dsa-mv88e6xxx-Limit-rsvd2cpu-policy-to-user-port.patch b/patches/linux/6.18.56/0018-net-dsa-mv88e6xxx-Limit-rsvd2cpu-policy-to-user-port.patch index af07f7ae9..dc56c9756 100644 --- a/patches/linux/6.18.56/0018-net-dsa-mv88e6xxx-Limit-rsvd2cpu-policy-to-user-port.patch +++ b/patches/linux/6.18.56/0018-net-dsa-mv88e6xxx-Limit-rsvd2cpu-policy-to-user-port.patch @@ -1,7 +1,7 @@ From 1ad63ed23d72ed2429bcb7393aac0e82affde9e3 Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Wed, 24 Apr 2024 22:41:04 +0200 -Subject: [PATCH 018/101] net: dsa: mv88e6xxx: Limit rsvd2cpu policy to user +Subject: [PATCH 018/102] net: dsa: mv88e6xxx: Limit rsvd2cpu policy to user ports on 6393X For packets with a DA in the IEEE reserved L2 group range, originating diff --git a/patches/linux/6.18.56/0019-net-dsa-tag_dsa-Use-tag-priority-as-initial-skb-prio.patch b/patches/linux/6.18.56/0019-net-dsa-tag_dsa-Use-tag-priority-as-initial-skb-prio.patch index b0f7a8a86..f62fc1050 100644 --- a/patches/linux/6.18.56/0019-net-dsa-tag_dsa-Use-tag-priority-as-initial-skb-prio.patch +++ b/patches/linux/6.18.56/0019-net-dsa-tag_dsa-Use-tag-priority-as-initial-skb-prio.patch @@ -1,7 +1,7 @@ From 29b6583d7463dfddbfbb0e30a70de7707f5c86b0 Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Tue, 28 May 2024 10:38:42 +0200 -Subject: [PATCH 019/101] net: dsa: tag_dsa: Use tag priority as initial +Subject: [PATCH 019/102] net: dsa: tag_dsa: Use tag priority as initial skb->priority Use the 3-bit priority field from the DSA tag as the initial packet diff --git a/patches/linux/6.18.56/0020-net-dsa-Support-MDB-memberships-whose-L2-addresses-o.patch b/patches/linux/6.18.56/0020-net-dsa-Support-MDB-memberships-whose-L2-addresses-o.patch index ae79d3d73..fe9a0c499 100644 --- a/patches/linux/6.18.56/0020-net-dsa-Support-MDB-memberships-whose-L2-addresses-o.patch +++ b/patches/linux/6.18.56/0020-net-dsa-Support-MDB-memberships-whose-L2-addresses-o.patch @@ -1,7 +1,7 @@ From 6cebfb46fd0a75b04f2481dcbd43cb9442bb1e12 Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Tue, 16 Jan 2024 16:00:55 +0100 -Subject: [PATCH 020/101] net: dsa: Support MDB memberships whose L2 addresses +Subject: [PATCH 020/102] net: dsa: Support MDB memberships whose L2 addresses overlap Multiple IP multicast groups (32 for v4, 2^80 for v6) map to the same diff --git a/patches/linux/6.18.56/0021-net-dsa-Support-EtherType-based-priority-overrides.patch b/patches/linux/6.18.56/0021-net-dsa-Support-EtherType-based-priority-overrides.patch index d5810785d..716189f10 100644 --- a/patches/linux/6.18.56/0021-net-dsa-Support-EtherType-based-priority-overrides.patch +++ b/patches/linux/6.18.56/0021-net-dsa-Support-EtherType-based-priority-overrides.patch @@ -1,7 +1,7 @@ From 2b39a3958e00546ff1c6f0cc523970d19355d796 Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Thu, 21 Mar 2024 19:12:15 +0100 -Subject: [PATCH 021/101] net: dsa: Support EtherType based priority overrides +Subject: [PATCH 021/102] net: dsa: Support EtherType based priority overrides --- include/net/dsa.h | 4 ++++ diff --git a/patches/linux/6.18.56/0022-net-dsa-mv88e6xxx-Support-EtherType-based-priority-o.patch b/patches/linux/6.18.56/0022-net-dsa-mv88e6xxx-Support-EtherType-based-priority-o.patch index c34a791db..c1b124445 100644 --- a/patches/linux/6.18.56/0022-net-dsa-mv88e6xxx-Support-EtherType-based-priority-o.patch +++ b/patches/linux/6.18.56/0022-net-dsa-mv88e6xxx-Support-EtherType-based-priority-o.patch @@ -1,7 +1,7 @@ From 3769055203bee35077c685d850f0debbac52459e Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Fri, 22 Mar 2024 16:15:43 +0100 -Subject: [PATCH 022/101] net: dsa: mv88e6xxx: Support EtherType based priority +Subject: [PATCH 022/102] net: dsa: mv88e6xxx: Support EtherType based priority overrides --- diff --git a/patches/linux/6.18.56/0023-net-dsa-mv88e6xxx-Add-mqprio-qdisc-support.patch b/patches/linux/6.18.56/0023-net-dsa-mv88e6xxx-Add-mqprio-qdisc-support.patch index 3e86f8b90..db6d7b0c4 100644 --- a/patches/linux/6.18.56/0023-net-dsa-mv88e6xxx-Add-mqprio-qdisc-support.patch +++ b/patches/linux/6.18.56/0023-net-dsa-mv88e6xxx-Add-mqprio-qdisc-support.patch @@ -1,7 +1,7 @@ From bf8849ce4ee5e95f33c435914a5d7c8e6e16e416 Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Tue, 28 May 2024 11:04:22 +0200 -Subject: [PATCH 023/101] net: dsa: mv88e6xxx: Add mqprio qdisc support +Subject: [PATCH 023/102] net: dsa: mv88e6xxx: Add mqprio qdisc support Add support for attaching mqprio qdisc's to mv88e6xxx ports and use the packet's traffic class as the outgoing priority when no PCP bits diff --git a/patches/linux/6.18.56/0024-net-dsa-mv88e6xxx-Use-VLAN-prio-over-IP-when-both-ar.patch b/patches/linux/6.18.56/0024-net-dsa-mv88e6xxx-Use-VLAN-prio-over-IP-when-both-ar.patch index a963f0d8f..e0fd421c8 100644 --- a/patches/linux/6.18.56/0024-net-dsa-mv88e6xxx-Use-VLAN-prio-over-IP-when-both-ar.patch +++ b/patches/linux/6.18.56/0024-net-dsa-mv88e6xxx-Use-VLAN-prio-over-IP-when-both-ar.patch @@ -1,7 +1,7 @@ From 73b39094d7cdd592ec6fb18164590678789ab37a Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Wed, 29 May 2024 13:20:41 +0200 -Subject: [PATCH 024/101] net: dsa: mv88e6xxx: Use VLAN prio over IP when both +Subject: [PATCH 024/102] net: dsa: mv88e6xxx: Use VLAN prio over IP when both are available Switch the priority sourcing precdence to prefer VLAN PCP over IP diff --git a/patches/linux/6.18.56/0025-FIX-net-dsa-mv88e6xxx-Trap-locally-terminated-VLANs.patch b/patches/linux/6.18.56/0025-FIX-net-dsa-mv88e6xxx-Trap-locally-terminated-VLANs.patch index 2dbd50b46..5d251c8ed 100644 --- a/patches/linux/6.18.56/0025-FIX-net-dsa-mv88e6xxx-Trap-locally-terminated-VLANs.patch +++ b/patches/linux/6.18.56/0025-FIX-net-dsa-mv88e6xxx-Trap-locally-terminated-VLANs.patch @@ -1,7 +1,7 @@ From 320983cf57f27f4138a4736388ad384ea9754d37 Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Tue, 26 Nov 2024 19:45:59 +0100 -Subject: [PATCH 025/101] [FIX] net: dsa: mv88e6xxx: Trap locally terminated +Subject: [PATCH 025/102] [FIX] net: dsa: mv88e6xxx: Trap locally terminated VLANs Before this change, in a setup like the following, packets assigned to diff --git a/patches/linux/6.18.56/0026-net-dsa-mv88e6xxx-collapse-disabled-state-into-block.patch b/patches/linux/6.18.56/0026-net-dsa-mv88e6xxx-collapse-disabled-state-into-block.patch index 5005c3c72..56b2e9290 100644 --- a/patches/linux/6.18.56/0026-net-dsa-mv88e6xxx-collapse-disabled-state-into-block.patch +++ b/patches/linux/6.18.56/0026-net-dsa-mv88e6xxx-collapse-disabled-state-into-block.patch @@ -1,7 +1,7 @@ From 95d919b20d95e7d33432d450e2caafa42105d645 Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Thu, 16 Jan 2025 12:35:12 +0100 -Subject: [PATCH 026/101] net: dsa: mv88e6xxx: collapse disabled state into +Subject: [PATCH 026/102] net: dsa: mv88e6xxx: collapse disabled state into blocking This patch changes the behavior of switchcore ports wrt. the port state. diff --git a/patches/linux/6.18.56/0027-net-dsa-mv88e6xxx-Only-activate-LAG-offloading-when-.patch b/patches/linux/6.18.56/0027-net-dsa-mv88e6xxx-Only-activate-LAG-offloading-when-.patch index 9641286a2..e8474983b 100644 --- a/patches/linux/6.18.56/0027-net-dsa-mv88e6xxx-Only-activate-LAG-offloading-when-.patch +++ b/patches/linux/6.18.56/0027-net-dsa-mv88e6xxx-Only-activate-LAG-offloading-when-.patch @@ -1,7 +1,7 @@ From 4a67cefaa3e4d69034afee21162133191863e841 Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Wed, 12 Feb 2025 22:03:14 +0100 -Subject: [PATCH 027/101] net: dsa: mv88e6xxx: Only activate LAG offloading +Subject: [PATCH 027/102] net: dsa: mv88e6xxx: Only activate LAG offloading when bridged The current port isolation scheme for mv88e6xxx is detailed here: diff --git a/patches/linux/6.18.56/0028-net-dsa-mv88e6xxx-Add-LED-support-for-6393X.patch b/patches/linux/6.18.56/0028-net-dsa-mv88e6xxx-Add-LED-support-for-6393X.patch index 941117584..2c9e4d8ed 100644 --- a/patches/linux/6.18.56/0028-net-dsa-mv88e6xxx-Add-LED-support-for-6393X.patch +++ b/patches/linux/6.18.56/0028-net-dsa-mv88e6xxx-Add-LED-support-for-6393X.patch @@ -1,7 +1,7 @@ From de1f05b6ee9af9d4f7deb7cde43e28d81e1b7f7f Mon Sep 17 00:00:00 2001 From: Mattias Walström Date: Wed, 14 Jan 2026 18:22:41 +0100 -Subject: [PATCH 028/101] net: dsa: mv88e6xxx: Add LED support for 6393X +Subject: [PATCH 028/102] net: dsa: mv88e6xxx: Add LED support for 6393X Original commit: commit 462277b926140ee2d231317e92afb6cabf640268 diff --git a/patches/linux/6.18.56/0029-wifi-brcmfmac-check-connection-state-before-querying.patch b/patches/linux/6.18.56/0029-wifi-brcmfmac-check-connection-state-before-querying.patch index 8d7fa0d08..99cada56b 100644 --- a/patches/linux/6.18.56/0029-wifi-brcmfmac-check-connection-state-before-querying.patch +++ b/patches/linux/6.18.56/0029-wifi-brcmfmac-check-connection-state-before-querying.patch @@ -1,7 +1,7 @@ From 5ba4ebc2cbcc3efdb8c68e64de2e3e1d36f700ca Mon Sep 17 00:00:00 2001 From: Mattias Walström Date: Mon, 19 Jan 2026 13:06:53 +0100 -Subject: [PATCH 029/101] wifi: brcmfmac: check connection state before +Subject: [PATCH 029/102] wifi: brcmfmac: check connection state before querying station info MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 diff --git a/patches/linux/6.18.56/0030-wifi-brcmfmac-suppress-log-spam-for-regulatory-restr.patch b/patches/linux/6.18.56/0030-wifi-brcmfmac-suppress-log-spam-for-regulatory-restr.patch index f909313d0..6e7efbfc5 100644 --- a/patches/linux/6.18.56/0030-wifi-brcmfmac-suppress-log-spam-for-regulatory-restr.patch +++ b/patches/linux/6.18.56/0030-wifi-brcmfmac-suppress-log-spam-for-regulatory-restr.patch @@ -1,7 +1,7 @@ From e714d2bb8736f8befb0e223b4de054981125010e Mon Sep 17 00:00:00 2001 From: Mattias Walström Date: Tue, 20 Jan 2026 20:12:10 +0100 -Subject: [PATCH 030/101] wifi: brcmfmac: suppress log spam for +Subject: [PATCH 030/102] wifi: brcmfmac: suppress log spam for regulatory-restricted channels MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 diff --git a/patches/linux/6.18.56/0031-wifi-brcmfmac-reduce-log-noise-during-AP-to-station-.patch b/patches/linux/6.18.56/0031-wifi-brcmfmac-reduce-log-noise-during-AP-to-station-.patch index 4fa7e0a25..418df9347 100644 --- a/patches/linux/6.18.56/0031-wifi-brcmfmac-reduce-log-noise-during-AP-to-station-.patch +++ b/patches/linux/6.18.56/0031-wifi-brcmfmac-reduce-log-noise-during-AP-to-station-.patch @@ -1,7 +1,7 @@ From 09696680be45dbeb24e8a722c3d4030b7737e11a Mon Sep 17 00:00:00 2001 From: Mattias Walström Date: Tue, 20 Jan 2026 20:18:45 +0100 -Subject: [PATCH 031/101] wifi: brcmfmac: reduce log noise during AP to station +Subject: [PATCH 031/102] wifi: brcmfmac: reduce log noise during AP to station transition MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 diff --git a/patches/linux/6.18.56/0032-net-phy-air_en8811h-add-OF-device-table-for-auto-loa.patch b/patches/linux/6.18.56/0032-net-phy-air_en8811h-add-OF-device-table-for-auto-loa.patch index 94cfdc0f3..a1785eed5 100644 --- a/patches/linux/6.18.56/0032-net-phy-air_en8811h-add-OF-device-table-for-auto-loa.patch +++ b/patches/linux/6.18.56/0032-net-phy-air_en8811h-add-OF-device-table-for-auto-loa.patch @@ -1,7 +1,7 @@ From 28322c174df66701c2f4283bf338a3032a8121bc Mon Sep 17 00:00:00 2001 From: Mattias Walström Date: Tue, 17 Feb 2026 21:59:59 +0100 -Subject: [PATCH 032/101] net: phy: air_en8811h: add OF device table for +Subject: [PATCH 032/102] net: phy: air_en8811h: add OF device table for auto-loading mdio_uevent() only emits an OF-style MODALIAS via diff --git a/patches/linux/6.18.56/0033-drm-vc4-dsi-enable-video-and-then-retry-failed-trans.patch b/patches/linux/6.18.56/0033-drm-vc4-dsi-enable-video-and-then-retry-failed-trans.patch index 5d5af4901..967eacec5 100644 --- a/patches/linux/6.18.56/0033-drm-vc4-dsi-enable-video-and-then-retry-failed-trans.patch +++ b/patches/linux/6.18.56/0033-drm-vc4-dsi-enable-video-and-then-retry-failed-trans.patch @@ -1,7 +1,7 @@ From 53aba25643ef8e41021eab9b61242f3151fa3a56 Mon Sep 17 00:00:00 2001 From: Dave Stevenson Date: Fri, 20 Sep 2024 12:05:18 +0100 -Subject: [PATCH 033/101] drm: vc4: dsi: enable video and then retry failed +Subject: [PATCH 033/102] drm: vc4: dsi: enable video and then retry failed transfers The DSI block appears to be able to come up stuck in a condition where diff --git a/patches/linux/6.18.56/0034-drm-vc4-dsi-Clocks-should-be-running-before-reset.patch b/patches/linux/6.18.56/0034-drm-vc4-dsi-Clocks-should-be-running-before-reset.patch index fa646ea30..4c3080749 100644 --- a/patches/linux/6.18.56/0034-drm-vc4-dsi-Clocks-should-be-running-before-reset.patch +++ b/patches/linux/6.18.56/0034-drm-vc4-dsi-Clocks-should-be-running-before-reset.patch @@ -1,7 +1,7 @@ From b145fb6117a42c835d69cee8d01b7679396541e6 Mon Sep 17 00:00:00 2001 From: Dave Stevenson Date: Wed, 8 Jun 2022 17:23:47 +0100 -Subject: [PATCH 034/101] drm: vc4: dsi: Clocks should be running before reset +Subject: [PATCH 034/102] drm: vc4: dsi: Clocks should be running before reset The initialisation sequence differs slightly from the documentation in that the clocks are meant to be running before resets and diff --git a/patches/linux/6.18.56/0035-drm-vc4-Ensure-DSI-is-enabled-for-FIFO-resets.patch b/patches/linux/6.18.56/0035-drm-vc4-Ensure-DSI-is-enabled-for-FIFO-resets.patch index 720f9275a..219d2655c 100644 --- a/patches/linux/6.18.56/0035-drm-vc4-Ensure-DSI-is-enabled-for-FIFO-resets.patch +++ b/patches/linux/6.18.56/0035-drm-vc4-Ensure-DSI-is-enabled-for-FIFO-resets.patch @@ -1,7 +1,7 @@ From 394a21d586f7f13a5cb822ed95ef986dfb17ca87 Mon Sep 17 00:00:00 2001 From: Dave Stevenson Date: Fri, 5 Apr 2024 17:51:55 +0100 -Subject: [PATCH 035/101] drm/vc4: Ensure DSI is enabled for FIFO resets +Subject: [PATCH 035/102] drm/vc4: Ensure DSI is enabled for FIFO resets The block must be enabled for the FIFO resets to be actioned, so ensure this is the case. diff --git a/patches/linux/6.18.56/0036-drm-vc4-Reset-DSI-AFE-on-disable.patch b/patches/linux/6.18.56/0036-drm-vc4-Reset-DSI-AFE-on-disable.patch index fc99423cd..3d965cfcf 100644 --- a/patches/linux/6.18.56/0036-drm-vc4-Reset-DSI-AFE-on-disable.patch +++ b/patches/linux/6.18.56/0036-drm-vc4-Reset-DSI-AFE-on-disable.patch @@ -1,7 +1,7 @@ From 5b807e23d91f3d90697f74d484276e574670aa2c Mon Sep 17 00:00:00 2001 From: Dave Stevenson Date: Thu, 26 May 2022 18:56:19 +0100 -Subject: [PATCH 036/101] drm: vc4: Reset DSI AFE on disable +Subject: [PATCH 036/102] drm: vc4: Reset DSI AFE on disable vc4_dsi_bridge_disable wasn't resetting things during shutdown, so add that in. diff --git a/patches/linux/6.18.56/0037-drm-vc4-dsi-Handle-the-different-command-FIFO-widths.patch b/patches/linux/6.18.56/0037-drm-vc4-dsi-Handle-the-different-command-FIFO-widths.patch index db9fc80ba..0e6b38841 100644 --- a/patches/linux/6.18.56/0037-drm-vc4-dsi-Handle-the-different-command-FIFO-widths.patch +++ b/patches/linux/6.18.56/0037-drm-vc4-dsi-Handle-the-different-command-FIFO-widths.patch @@ -1,7 +1,7 @@ From 1610998f5338234b29c335d18ffeb00c2dcec73a Mon Sep 17 00:00:00 2001 From: Dave Stevenson Date: Wed, 20 Nov 2024 13:58:08 +0000 -Subject: [PATCH 037/101] drm: vc4: dsi: Handle the different command FIFO +Subject: [PATCH 037/102] drm: vc4: dsi: Handle the different command FIFO widths DSI0 and DSI1 have different widths for the command FIFO (24bit diff --git a/patches/linux/6.18.56/0038-drm-bridge-tc358762-Program-the-DPI-mode-into-the-ch.patch b/patches/linux/6.18.56/0038-drm-bridge-tc358762-Program-the-DPI-mode-into-the-ch.patch index 445cdba63..7565fe2e3 100644 --- a/patches/linux/6.18.56/0038-drm-bridge-tc358762-Program-the-DPI-mode-into-the-ch.patch +++ b/patches/linux/6.18.56/0038-drm-bridge-tc358762-Program-the-DPI-mode-into-the-ch.patch @@ -1,7 +1,7 @@ From 0c2f36c6efa65abc8d2c5179903c3fb5afac9874 Mon Sep 17 00:00:00 2001 From: Dave Stevenson Date: Tue, 9 Jan 2024 17:37:00 +0000 -Subject: [PATCH 038/101] drm/bridge: tc358762: Program the DPI mode into the +Subject: [PATCH 038/102] drm/bridge: tc358762: Program the DPI mode into the chip The autodetection of resolution/timing by the TC358762 can lead diff --git a/patches/linux/6.18.56/0039-drm-bridge-tc358762-revert-move-ops-to-enable.patch b/patches/linux/6.18.56/0039-drm-bridge-tc358762-revert-move-ops-to-enable.patch index 96dd51ce7..b1455cdfb 100644 --- a/patches/linux/6.18.56/0039-drm-bridge-tc358762-revert-move-ops-to-enable.patch +++ b/patches/linux/6.18.56/0039-drm-bridge-tc358762-revert-move-ops-to-enable.patch @@ -1,7 +1,7 @@ From 91f9e48ff0405e6b8ec9d046b7f37d96f99483c5 Mon Sep 17 00:00:00 2001 From: Dave Stevenson Date: Tue, 9 Jan 2024 18:44:49 +0000 -Subject: [PATCH 039/101] drm/bridge: tc358762: revert move ops to enable +Subject: [PATCH 039/102] drm/bridge: tc358762: revert move ops to enable Reverts 8a4b2fc9c91a ("drm/bridge: tc358762: Split register programming from pre-enable to enable") as we want the config commands sent before video starts. diff --git a/patches/linux/6.18.56/0040-drm-bridge-tc358762-Set-pre_enabled-on-pre_enable-to.patch b/patches/linux/6.18.56/0040-drm-bridge-tc358762-Set-pre_enabled-on-pre_enable-to.patch index ee4aedf36..b1198dd65 100644 --- a/patches/linux/6.18.56/0040-drm-bridge-tc358762-Set-pre_enabled-on-pre_enable-to.patch +++ b/patches/linux/6.18.56/0040-drm-bridge-tc358762-Set-pre_enabled-on-pre_enable-to.patch @@ -1,7 +1,7 @@ From 18d15d554c004a795771c8adb8abb6ef54f22985 Mon Sep 17 00:00:00 2001 From: Mattias Walström Date: Sat, 4 Apr 2026 18:04:19 +0200 -Subject: [PATCH 040/101] drm/bridge: tc358762: Set pre_enabled on pre_enable +Subject: [PATCH 040/102] drm/bridge: tc358762: Set pre_enabled on pre_enable to prevent regulator imbalance MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 diff --git a/patches/linux/6.18.56/0041-net-pcs-add-standalone-PCS-registration-infrastructu.patch b/patches/linux/6.18.56/0041-net-pcs-add-standalone-PCS-registration-infrastructu.patch index 3a7c1e1b8..6fc113b4c 100644 --- a/patches/linux/6.18.56/0041-net-pcs-add-standalone-PCS-registration-infrastructu.patch +++ b/patches/linux/6.18.56/0041-net-pcs-add-standalone-PCS-registration-infrastructu.patch @@ -1,7 +1,7 @@ From a2fc20fe20ad386cff232905d1858f9af21ecaf2 Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Sun, 5 Apr 2026 11:33:00 +0200 -Subject: [PATCH 041/101] net/pcs: add standalone PCS registration +Subject: [PATCH 041/102] net/pcs: add standalone PCS registration infrastructure Add a simple registration mechanism that allows platform PCS drivers to diff --git a/patches/linux/6.18.56/0042-net-pcs-add-MediaTek-MT7988-USXGMII-PCS-driver.patch b/patches/linux/6.18.56/0042-net-pcs-add-MediaTek-MT7988-USXGMII-PCS-driver.patch index 74230715f..c7d36b20f 100644 --- a/patches/linux/6.18.56/0042-net-pcs-add-MediaTek-MT7988-USXGMII-PCS-driver.patch +++ b/patches/linux/6.18.56/0042-net-pcs-add-MediaTek-MT7988-USXGMII-PCS-driver.patch @@ -1,7 +1,7 @@ From 6c0e1262a95027d0ef8fb263353e5a4382529437 Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Mon, 6 Apr 2026 14:14:23 +0200 -Subject: [PATCH 042/101] net/pcs: add MediaTek MT7988 USXGMII PCS driver +Subject: [PATCH 042/102] net/pcs: add MediaTek MT7988 USXGMII PCS driver Add a PCS driver for the USXGMII subsystem found in the MediaTek MT7988 SoC (usxgmiisys0 at 0x10080000, usxgmiisys1 at 0x10081000). The hardware diff --git a/patches/linux/6.18.56/0043-net-ethernet-mediatek-add-USXGMII-support-for-MT7988.patch b/patches/linux/6.18.56/0043-net-ethernet-mediatek-add-USXGMII-support-for-MT7988.patch index cee80580b..d0fbc277f 100644 --- a/patches/linux/6.18.56/0043-net-ethernet-mediatek-add-USXGMII-support-for-MT7988.patch +++ b/patches/linux/6.18.56/0043-net-ethernet-mediatek-add-USXGMII-support-for-MT7988.patch @@ -1,7 +1,7 @@ From 7a3a934b66b5a38e732f6c28f76c45b43cea4e15 Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Mon, 6 Apr 2026 14:15:43 +0200 -Subject: [PATCH 043/101] net: ethernet: mediatek: add USXGMII support for +Subject: [PATCH 043/102] net: ethernet: mediatek: add USXGMII support for MT7988 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 diff --git a/patches/linux/6.18.56/0044-arm64-dts-mediatek-mt7988a-add-USXGMII-PCS-nodes.patch b/patches/linux/6.18.56/0044-arm64-dts-mediatek-mt7988a-add-USXGMII-PCS-nodes.patch index 1c3a37774..6e91a7bbb 100644 --- a/patches/linux/6.18.56/0044-arm64-dts-mediatek-mt7988a-add-USXGMII-PCS-nodes.patch +++ b/patches/linux/6.18.56/0044-arm64-dts-mediatek-mt7988a-add-USXGMII-PCS-nodes.patch @@ -1,7 +1,7 @@ From d320f311c3e132191b319db4d7f7e3e3f5ed58df Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Mon, 6 Apr 2026 14:15:56 +0200 -Subject: [PATCH 044/101] arm64: dts: mediatek: mt7988a: add USXGMII PCS nodes +Subject: [PATCH 044/102] arm64: dts: mediatek: mt7988a: add USXGMII PCS nodes Add device nodes for the two USXGMII subsystem blocks (usxgmiisys0 at 0x10080000 and usxgmiisys1 at 0x10081000), each referencing its clock, diff --git a/patches/linux/6.18.56/0045-arm64-dts-mediatek-bananapi-bpi-r4-enable-SFP-ports-.patch b/patches/linux/6.18.56/0045-arm64-dts-mediatek-bananapi-bpi-r4-enable-SFP-ports-.patch index cd9f332a6..702cdd482 100644 --- a/patches/linux/6.18.56/0045-arm64-dts-mediatek-bananapi-bpi-r4-enable-SFP-ports-.patch +++ b/patches/linux/6.18.56/0045-arm64-dts-mediatek-bananapi-bpi-r4-enable-SFP-ports-.patch @@ -1,7 +1,7 @@ From d83185ab2d0bc45de5c33b6fc50006e166f39417 Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Mon, 6 Apr 2026 14:16:11 +0200 -Subject: [PATCH 045/101] arm64: dts: mediatek: bananapi-bpi-r4: enable SFP+ +Subject: [PATCH 045/102] arm64: dts: mediatek: bananapi-bpi-r4: enable SFP+ ports and WPS button Enable the SFP+ cages wired to gmac1 and gmac2. The USXGMII PCS nodes diff --git a/patches/linux/6.18.56/0046-net-phy-sfp-add-OEM-SFP-10G-T-I-quirk.patch b/patches/linux/6.18.56/0046-net-phy-sfp-add-OEM-SFP-10G-T-I-quirk.patch index bfc814545..1f965f010 100644 --- a/patches/linux/6.18.56/0046-net-phy-sfp-add-OEM-SFP-10G-T-I-quirk.patch +++ b/patches/linux/6.18.56/0046-net-phy-sfp-add-OEM-SFP-10G-T-I-quirk.patch @@ -1,7 +1,7 @@ From fa401f49e78eeefa6ef1752733c87b1d67655125 Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Tue, 7 Apr 2026 07:34:52 +0200 -Subject: [PATCH 046/101] net: phy: sfp: add OEM SFP-10G-T-I quirk +Subject: [PATCH 046/102] net: phy: sfp: add OEM SFP-10G-T-I quirk MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/patches/linux/6.18.56/0047-net-dsa-mv88e6xxx-Trap-PTP-frames-on-timestamping-po.patch b/patches/linux/6.18.56/0047-net-dsa-mv88e6xxx-Trap-PTP-frames-on-timestamping-po.patch index 9c9e61ed1..416edcb01 100644 --- a/patches/linux/6.18.56/0047-net-dsa-mv88e6xxx-Trap-PTP-frames-on-timestamping-po.patch +++ b/patches/linux/6.18.56/0047-net-dsa-mv88e6xxx-Trap-PTP-frames-on-timestamping-po.patch @@ -1,7 +1,7 @@ From 79c898ca16e60f10eafaf89110b5d2c24bd9ac2c Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Fri, 17 Apr 2026 09:13:04 +0000 -Subject: [PATCH 047/101] net: dsa: mv88e6xxx: Trap PTP frames on timestamping +Subject: [PATCH 047/102] net: dsa: mv88e6xxx: Trap PTP frames on timestamping ports, on 6393X Similar to the Peridot (6390), the designation of PTP frames as diff --git a/patches/linux/6.18.56/0048-wifi-mt76-mt7615-add-MODULE_DEVICE_TABLE-for-mt7622-.patch b/patches/linux/6.18.56/0048-wifi-mt76-mt7615-add-MODULE_DEVICE_TABLE-for-mt7622-.patch index b12072287..aaea6dbf4 100644 --- a/patches/linux/6.18.56/0048-wifi-mt76-mt7615-add-MODULE_DEVICE_TABLE-for-mt7622-.patch +++ b/patches/linux/6.18.56/0048-wifi-mt76-mt7615-add-MODULE_DEVICE_TABLE-for-mt7622-.patch @@ -1,7 +1,7 @@ From 0f8cdee2b15e4d5c36520e274ebc74371ec8de68 Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Tue, 28 Apr 2026 15:30:01 +0200 -Subject: [PATCH 048/101] wifi: mt76: mt7615: add MODULE_DEVICE_TABLE for +Subject: [PATCH 048/102] wifi: mt76: mt7615: add MODULE_DEVICE_TABLE for mt7622 wmac Without MODULE_DEVICE_TABLE(of, ...) the OF compatible alias is never diff --git a/patches/linux/6.18.56/0049-PCI-mediatek-gen3-Fix-PERST-control-timing-during-sy.patch b/patches/linux/6.18.56/0049-PCI-mediatek-gen3-Fix-PERST-control-timing-during-sy.patch index 48691f72e..7f8c8fe25 100644 --- a/patches/linux/6.18.56/0049-PCI-mediatek-gen3-Fix-PERST-control-timing-during-sy.patch +++ b/patches/linux/6.18.56/0049-PCI-mediatek-gen3-Fix-PERST-control-timing-during-sy.patch @@ -1,7 +1,7 @@ From 5f9aa8845b841fcada5fa58f92ceaa9bb9fabcb4 Mon Sep 17 00:00:00 2001 From: Mattias Walström Date: Wed, 22 Apr 2026 10:24:43 +0200 -Subject: [PATCH 049/101] PCI: mediatek-gen3: Fix PERST# control timing during +Subject: [PATCH 049/102] PCI: mediatek-gen3: Fix PERST# control timing during system startup MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 diff --git a/patches/linux/6.18.56/0050-net-dsa-mv88e6xxx-Derive-LED-names-from-device-name.patch b/patches/linux/6.18.56/0050-net-dsa-mv88e6xxx-Derive-LED-names-from-device-name.patch index 022c8b6b0..1579010e1 100644 --- a/patches/linux/6.18.56/0050-net-dsa-mv88e6xxx-Derive-LED-names-from-device-name.patch +++ b/patches/linux/6.18.56/0050-net-dsa-mv88e6xxx-Derive-LED-names-from-device-name.patch @@ -1,7 +1,7 @@ From 024fb8fd29a48bb85f355b5a4a558c8ab6875b3c Mon Sep 17 00:00:00 2001 From: Mattias Walström Date: Wed, 12 Aug 2026 10:08:53 +0200 -Subject: [PATCH 050/101] net: dsa: mv88e6xxx: Derive LED names from device +Subject: [PATCH 050/102] net: dsa: mv88e6xxx: Derive LED names from device name MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 diff --git a/patches/linux/6.18.56/0051-phy-sparx5-serdes-make-it-selectable-for-ARCH_LAN969.patch b/patches/linux/6.18.56/0051-phy-sparx5-serdes-make-it-selectable-for-ARCH_LAN969.patch index 8b1461cad..d85630fb8 100644 --- a/patches/linux/6.18.56/0051-phy-sparx5-serdes-make-it-selectable-for-ARCH_LAN969.patch +++ b/patches/linux/6.18.56/0051-phy-sparx5-serdes-make-it-selectable-for-ARCH_LAN969.patch @@ -1,7 +1,7 @@ From f42698c6d686cabca0fced226a63e09c438fbc78 Mon Sep 17 00:00:00 2001 From: Robert Marko Date: Fri, 31 Oct 2025 13:18:12 +0100 -Subject: [PATCH 051/101] phy: sparx5-serdes: make it selectable for +Subject: [PATCH 051/102] phy: sparx5-serdes: make it selectable for ARCH_LAN969X LAN969x uses the SparX-5 SERDES driver, so make it selectable for diff --git a/patches/linux/6.18.56/0052-net-sparx5-fix-wrong-chip-ids-for-TSN-SKUs.patch b/patches/linux/6.18.56/0052-net-sparx5-fix-wrong-chip-ids-for-TSN-SKUs.patch index 7d5d4577b..4613b518e 100644 --- a/patches/linux/6.18.56/0052-net-sparx5-fix-wrong-chip-ids-for-TSN-SKUs.patch +++ b/patches/linux/6.18.56/0052-net-sparx5-fix-wrong-chip-ids-for-TSN-SKUs.patch @@ -1,7 +1,7 @@ From da55a0660bc7a764abd39b28d1b588d58cfafcf7 Mon Sep 17 00:00:00 2001 From: Daniel Machon Date: Wed, 6 May 2026 09:25:38 +0200 -Subject: [PATCH 052/101] net: sparx5: fix wrong chip ids for TSN SKUs +Subject: [PATCH 052/102] net: sparx5: fix wrong chip ids for TSN SKUs The TSN SKUs in enum spx5_target_chiptype have incorrect IDs: diff --git a/patches/linux/6.18.56/0053-net-sparx5-configure-serdes-for-1000BASE-X-in-sparx5.patch b/patches/linux/6.18.56/0053-net-sparx5-configure-serdes-for-1000BASE-X-in-sparx5.patch index 41d4eef53..acfa1af44 100644 --- a/patches/linux/6.18.56/0053-net-sparx5-configure-serdes-for-1000BASE-X-in-sparx5.patch +++ b/patches/linux/6.18.56/0053-net-sparx5-configure-serdes-for-1000BASE-X-in-sparx5.patch @@ -1,7 +1,7 @@ From 13292f9168073d35dfa05f2c3e8402e18bf3f9ce Mon Sep 17 00:00:00 2001 From: Daniel Machon Date: Wed, 6 May 2026 09:25:39 +0200 -Subject: [PATCH 053/101] net: sparx5: configure serdes for 1000BASE-X in +Subject: [PATCH 053/102] net: sparx5: configure serdes for 1000BASE-X in sparx5_port_init() sparx5_port_init() only invokes sparx5_serdes_set() and the associated diff --git a/patches/linux/6.18.56/0054-dt-bindings-mmc-atmel-sama5d2-sdhci-add-microchip-la.patch b/patches/linux/6.18.56/0054-dt-bindings-mmc-atmel-sama5d2-sdhci-add-microchip-la.patch index 8f24ab15a..1dd1a1b0c 100644 --- a/patches/linux/6.18.56/0054-dt-bindings-mmc-atmel-sama5d2-sdhci-add-microchip-la.patch +++ b/patches/linux/6.18.56/0054-dt-bindings-mmc-atmel-sama5d2-sdhci-add-microchip-la.patch @@ -1,7 +1,7 @@ From 704c64713d2d2d34a22e0d2f8066996bc62d9120 Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Wed, 19 Aug 2026 11:35:29 +0200 -Subject: [PATCH 054/101] dt-bindings: mmc: atmel,sama5d2-sdhci: add +Subject: [PATCH 054/102] dt-bindings: mmc: atmel,sama5d2-sdhci: add microchip,lan969x-sdhci The LAN969x SDMMC controller has its own base clock divider and, unlike diff --git a/patches/linux/6.18.56/0055-mmc-sdhci-of-at91-add-LAN969x-support.patch b/patches/linux/6.18.56/0055-mmc-sdhci-of-at91-add-LAN969x-support.patch index 8c8948465..0658a234c 100644 --- a/patches/linux/6.18.56/0055-mmc-sdhci-of-at91-add-LAN969x-support.patch +++ b/patches/linux/6.18.56/0055-mmc-sdhci-of-at91-add-LAN969x-support.patch @@ -1,7 +1,7 @@ From ae98994e45aaa55ecff09321aa65601561aefab4 Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Wed, 19 Aug 2026 11:35:44 +0200 -Subject: [PATCH 055/101] mmc: sdhci-of-at91: add LAN969x support +Subject: [PATCH 055/102] mmc: sdhci-of-at91: add LAN969x support The LAN969x SDMMC controller is an Atmel SDMMC IP block, but the driver has no compatible for it, so the eMMC on LAN969x boards never probes. diff --git a/patches/linux/6.18.56/0056-mmc-sdhci-of-at91-stop-SDCLK-on-reset-and-add-eMMC-h.patch b/patches/linux/6.18.56/0056-mmc-sdhci-of-at91-stop-SDCLK-on-reset-and-add-eMMC-h.patch index 03603d525..c589579ec 100644 --- a/patches/linux/6.18.56/0056-mmc-sdhci-of-at91-stop-SDCLK-on-reset-and-add-eMMC-h.patch +++ b/patches/linux/6.18.56/0056-mmc-sdhci-of-at91-stop-SDCLK-on-reset-and-add-eMMC-h.patch @@ -1,7 +1,7 @@ From 4a50546ae4abb37070703d1ce20149b65fdd1a51 Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Wed, 19 Aug 2026 11:37:48 +0200 -Subject: [PATCH 056/101] mmc: sdhci-of-at91: stop SDCLK on reset and add eMMC +Subject: [PATCH 056/102] mmc: sdhci-of-at91: stop SDCLK on reset and add eMMC hardware reset The controller is reset, and its signaling mode changed, with SDCLK diff --git a/patches/linux/6.18.56/0057-net-sparx5-lan969x-populate-netdev-of_node.patch b/patches/linux/6.18.56/0057-net-sparx5-lan969x-populate-netdev-of_node.patch index 2957c53cd..8b8cd77f2 100644 --- a/patches/linux/6.18.56/0057-net-sparx5-lan969x-populate-netdev-of_node.patch +++ b/patches/linux/6.18.56/0057-net-sparx5-lan969x-populate-netdev-of_node.patch @@ -1,7 +1,7 @@ From ba2f77ed48aae661eed6cb213162a612f4792931 Mon Sep 17 00:00:00 2001 From: Robert Marko Date: Mon, 10 Nov 2025 13:42:53 +0100 -Subject: [PATCH 057/101] net: sparx5/lan969x: populate netdev of_node +Subject: [PATCH 057/102] net: sparx5/lan969x: populate netdev of_node Populate of_node for the port netdevs, to make the individual ports of_nodes available in sysfs. diff --git a/patches/linux/6.18.56/0058-arm64-dts-microchip-add-LAN969x-clock-header-file.patch b/patches/linux/6.18.56/0058-arm64-dts-microchip-add-LAN969x-clock-header-file.patch index d508f83f8..988288e4d 100644 --- a/patches/linux/6.18.56/0058-arm64-dts-microchip-add-LAN969x-clock-header-file.patch +++ b/patches/linux/6.18.56/0058-arm64-dts-microchip-add-LAN969x-clock-header-file.patch @@ -1,7 +1,7 @@ From b8f745bf145aed656a87edcf2cee16caef2950e2 Mon Sep 17 00:00:00 2001 From: Robert Marko Date: Mon, 2 Mar 2026 12:20:11 +0100 -Subject: [PATCH 058/101] arm64: dts: microchip: add LAN969x clock header file +Subject: [PATCH 058/102] arm64: dts: microchip: add LAN969x clock header file LAN969x uses hardware clock indexes, so document theses in a header to make them humanly readable. diff --git a/patches/linux/6.18.56/0059-arm64-dts-microchip-add-LAN969x-support.patch b/patches/linux/6.18.56/0059-arm64-dts-microchip-add-LAN969x-support.patch index aab3ea7af..2115e45f7 100644 --- a/patches/linux/6.18.56/0059-arm64-dts-microchip-add-LAN969x-support.patch +++ b/patches/linux/6.18.56/0059-arm64-dts-microchip-add-LAN969x-support.patch @@ -1,7 +1,7 @@ From c3fc7872ff9176197161d2695a4d3fbbe2d90f90 Mon Sep 17 00:00:00 2001 From: Robert Marko Date: Mon, 2 Mar 2026 12:20:12 +0100 -Subject: [PATCH 059/101] arm64: dts: microchip: add LAN969x support +Subject: [PATCH 059/102] arm64: dts: microchip: add LAN969x support Add support for Microchip LAN969x switch SoC series by adding the SoC DTSI. diff --git a/patches/linux/6.18.56/0060-arm64-dts-microchip-add-EV23X71A-board.patch b/patches/linux/6.18.56/0060-arm64-dts-microchip-add-EV23X71A-board.patch index a6eeade8c..f3f08deb1 100644 --- a/patches/linux/6.18.56/0060-arm64-dts-microchip-add-EV23X71A-board.patch +++ b/patches/linux/6.18.56/0060-arm64-dts-microchip-add-EV23X71A-board.patch @@ -1,7 +1,7 @@ From b10c04d81bb96ab0b09484ee2a2373482b56f26d Mon Sep 17 00:00:00 2001 From: Robert Marko Date: Mon, 2 Mar 2026 12:20:14 +0100 -Subject: [PATCH 060/101] arm64: dts: microchip: add EV23X71A board +Subject: [PATCH 060/102] arm64: dts: microchip: add EV23X71A board Microchip EV23X71A is an LAN9696 based evaluation board. diff --git a/patches/linux/6.18.56/0061-arm64-dts-microchip-lan969x-add-OTP-node.patch b/patches/linux/6.18.56/0061-arm64-dts-microchip-lan969x-add-OTP-node.patch index e7c1130b9..d945b2648 100644 --- a/patches/linux/6.18.56/0061-arm64-dts-microchip-lan969x-add-OTP-node.patch +++ b/patches/linux/6.18.56/0061-arm64-dts-microchip-lan969x-add-OTP-node.patch @@ -1,7 +1,7 @@ From c6af26aff045284fc98aae066d46385e74ab82c8 Mon Sep 17 00:00:00 2001 From: Robert Marko Date: Fri, 15 May 2026 13:59:09 +0200 -Subject: [PATCH 061/101] arm64: dts: microchip: lan969x: add OTP node +Subject: [PATCH 061/102] arm64: dts: microchip: lan969x: add OTP node Add the required OTP on LAN969x. diff --git a/patches/linux/6.18.56/0062-arm64-dts-microchip-lan969x-add-SDMMC-nodes.patch b/patches/linux/6.18.56/0062-arm64-dts-microchip-lan969x-add-SDMMC-nodes.patch index 8400f050a..6544accd8 100644 --- a/patches/linux/6.18.56/0062-arm64-dts-microchip-lan969x-add-SDMMC-nodes.patch +++ b/patches/linux/6.18.56/0062-arm64-dts-microchip-lan969x-add-SDMMC-nodes.patch @@ -1,7 +1,7 @@ From 7df6f654874cc48a7bea2d8d2d78fe8e9c1c90c7 Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Wed, 19 Aug 2026 11:38:37 +0200 -Subject: [PATCH 062/101] arm64: dts: microchip: lan969x: add SDMMC nodes +Subject: [PATCH 062/102] arm64: dts: microchip: lan969x: add SDMMC nodes The SoC has two SDMMC controllers, neither of which is described, so boards with eMMC have no way to enable it. Add both, disabled by diff --git a/patches/linux/6.18.56/0063-arm64-dts-microchip-ev23x71a-enable-eMMC.patch b/patches/linux/6.18.56/0063-arm64-dts-microchip-ev23x71a-enable-eMMC.patch index 1eca85dc6..3efe3f059 100644 --- a/patches/linux/6.18.56/0063-arm64-dts-microchip-ev23x71a-enable-eMMC.patch +++ b/patches/linux/6.18.56/0063-arm64-dts-microchip-ev23x71a-enable-eMMC.patch @@ -1,7 +1,7 @@ From b41259b09f91a140bc0350d7f473d9fee3fbe8b3 Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Wed, 19 Aug 2026 11:38:37 +0200 -Subject: [PATCH 063/101] arm64: dts: microchip: ev23x71a: enable eMMC +Subject: [PATCH 063/102] arm64: dts: microchip: ev23x71a: enable eMMC The board has an 8-bit eMMC on SDMMC0, and defines the emmc_sd pinctrl group for it, but nothing enables the controller. diff --git a/patches/linux/6.18.56/0064-wifi-brcmfmac-survey-the-requested-interface-not-the.patch b/patches/linux/6.18.56/0064-wifi-brcmfmac-survey-the-requested-interface-not-the.patch index b69cfd9e0..a46cf2327 100644 --- a/patches/linux/6.18.56/0064-wifi-brcmfmac-survey-the-requested-interface-not-the.patch +++ b/patches/linux/6.18.56/0064-wifi-brcmfmac-survey-the-requested-interface-not-the.patch @@ -1,7 +1,7 @@ From 54b38afac5c46299c8a7ebe594b35774d134389b Mon Sep 17 00:00:00 2001 From: Mattias Walström Date: Tue, 30 Jun 2026 15:42:48 +0200 -Subject: [PATCH 064/101] wifi: brcmfmac: survey the requested interface, not +Subject: [PATCH 064/102] wifi: brcmfmac: survey the requested interface, not the primary MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 diff --git a/patches/linux/6.18.56/0065-wifi-brcmfmac-honor-caller-s-rtnl-lock-when-stopping.patch b/patches/linux/6.18.56/0065-wifi-brcmfmac-honor-caller-s-rtnl-lock-when-stopping.patch index 2b40ddd87..20bd879b0 100644 --- a/patches/linux/6.18.56/0065-wifi-brcmfmac-honor-caller-s-rtnl-lock-when-stopping.patch +++ b/patches/linux/6.18.56/0065-wifi-brcmfmac-honor-caller-s-rtnl-lock-when-stopping.patch @@ -1,7 +1,7 @@ From b2c521013e15b485455469fa4a263de2cf04dd02 Mon Sep 17 00:00:00 2001 From: Mattias Walström Date: Tue, 30 Jun 2026 15:43:14 +0200 -Subject: [PATCH 065/101] wifi: brcmfmac: honor caller's rtnl lock when +Subject: [PATCH 065/102] wifi: brcmfmac: honor caller's rtnl lock when stopping primary interface MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 diff --git a/patches/linux/6.18.56/0066-wifi-brcmfmac-let-cfg_to_ndev-return-NULL-and-harden.patch b/patches/linux/6.18.56/0066-wifi-brcmfmac-let-cfg_to_ndev-return-NULL-and-harden.patch index bbec5c81b..faea82ca5 100644 --- a/patches/linux/6.18.56/0066-wifi-brcmfmac-let-cfg_to_ndev-return-NULL-and-harden.patch +++ b/patches/linux/6.18.56/0066-wifi-brcmfmac-let-cfg_to_ndev-return-NULL-and-harden.patch @@ -1,7 +1,7 @@ From 0e082428a5013b6d35567cf122119af2772f909f Mon Sep 17 00:00:00 2001 From: Mattias Walström Date: Tue, 30 Jun 2026 15:46:25 +0200 -Subject: [PATCH 066/101] wifi: brcmfmac: let cfg_to_ndev() return NULL and +Subject: [PATCH 066/102] wifi: brcmfmac: let cfg_to_ndev() return NULL and harden its callers MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 diff --git a/patches/linux/6.18.56/0067-wifi-brcmfmac-support-deletion-and-recreation-of-the.patch b/patches/linux/6.18.56/0067-wifi-brcmfmac-support-deletion-and-recreation-of-the.patch index ff50ca5f5..080d9babe 100644 --- a/patches/linux/6.18.56/0067-wifi-brcmfmac-support-deletion-and-recreation-of-the.patch +++ b/patches/linux/6.18.56/0067-wifi-brcmfmac-support-deletion-and-recreation-of-the.patch @@ -1,7 +1,7 @@ From 102750f26d8cbf5d58936b4c9c6da801433c4314 Mon Sep 17 00:00:00 2001 From: Mattias Walström Date: Tue, 30 Jun 2026 16:05:17 +0200 -Subject: [PATCH 067/101] wifi: brcmfmac: support deletion and recreation of +Subject: [PATCH 067/102] wifi: brcmfmac: support deletion and recreation of the primary interface MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 diff --git a/patches/linux/6.18.56/0068-wifi-brcmfmac-report-port-authorized-after-offloaded.patch b/patches/linux/6.18.56/0068-wifi-brcmfmac-report-port-authorized-after-offloaded.patch index a74649a5f..09419130a 100644 --- a/patches/linux/6.18.56/0068-wifi-brcmfmac-report-port-authorized-after-offloaded.patch +++ b/patches/linux/6.18.56/0068-wifi-brcmfmac-report-port-authorized-after-offloaded.patch @@ -1,7 +1,7 @@ From b965ae0c551ae3e2df6937933b6bdd1c42753a43 Mon Sep 17 00:00:00 2001 From: Mattias Walström Date: Thu, 10 Sep 2026 08:29:47 +0200 -Subject: [PATCH 068/101] wifi: brcmfmac: report port authorized after +Subject: [PATCH 068/102] wifi: brcmfmac: report port authorized after offloaded PSK/SAE handshake MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 diff --git a/patches/linux/6.18.56/0069-dt-bindings-arm-AT91-document-Novarq-Tactical-1000.patch b/patches/linux/6.18.56/0069-dt-bindings-arm-AT91-document-Novarq-Tactical-1000.patch index 56c2eb566..89672fa05 100644 --- a/patches/linux/6.18.56/0069-dt-bindings-arm-AT91-document-Novarq-Tactical-1000.patch +++ b/patches/linux/6.18.56/0069-dt-bindings-arm-AT91-document-Novarq-Tactical-1000.patch @@ -1,7 +1,7 @@ From f5f7599f8af9db56b09f26d22b20ee75defe1717 Mon Sep 17 00:00:00 2001 From: Robert Marko Date: Fri, 9 Jan 2026 13:27:00 +0100 -Subject: [PATCH 069/101] dt-bindings: arm: AT91: document Novarq Tactical 1000 +Subject: [PATCH 069/102] dt-bindings: arm: AT91: document Novarq Tactical 1000 Novarq Tactical 1000 is a Microchip LAN9696 based 24x1G + 4x10G SFP switch. diff --git a/patches/linux/6.18.56/0070-arm64-dts-microchip-add-Novarq-Tactical-1000.patch b/patches/linux/6.18.56/0070-arm64-dts-microchip-add-Novarq-Tactical-1000.patch index 4b511ced9..fdf5d12b1 100644 --- a/patches/linux/6.18.56/0070-arm64-dts-microchip-add-Novarq-Tactical-1000.patch +++ b/patches/linux/6.18.56/0070-arm64-dts-microchip-add-Novarq-Tactical-1000.patch @@ -1,7 +1,7 @@ From 8b4b41c449758451c7dbcdd9092b9bd0e0a2b082 Mon Sep 17 00:00:00 2001 From: Robert Marko Date: Tue, 30 Sep 2025 13:37:49 +0200 -Subject: [PATCH 070/101] arm64: dts: microchip: add Novarq Tactical 1000 +Subject: [PATCH 070/102] arm64: dts: microchip: add Novarq Tactical 1000 Novarq Tactical 1000 is a LAN9696 based switch featuring 24x1G and 4x10G SFP ports. diff --git a/patches/linux/6.18.56/0071-arm64-dts-microchip-tactical-1000-add-port-names.patch b/patches/linux/6.18.56/0071-arm64-dts-microchip-tactical-1000-add-port-names.patch index 79213b7a0..e5e73ef05 100644 --- a/patches/linux/6.18.56/0071-arm64-dts-microchip-tactical-1000-add-port-names.patch +++ b/patches/linux/6.18.56/0071-arm64-dts-microchip-tactical-1000-add-port-names.patch @@ -1,7 +1,7 @@ From f973058544e1b44fd551db6a230659dbce67313e Mon Sep 17 00:00:00 2001 From: Robert Marko Date: Tue, 30 Jun 2026 11:23:47 +0200 -Subject: [PATCH 071/101] arm64: dts: microchip: tactical-1000: add port names +Subject: [PATCH 071/102] arm64: dts: microchip: tactical-1000: add port names Now that driver supports parsing the "label" property, populate port names as they are physically wired up. diff --git a/patches/linux/6.18.56/0072-arm64-dts-microchip-tactical-1000-adapt-to-6.18.patch b/patches/linux/6.18.56/0072-arm64-dts-microchip-tactical-1000-adapt-to-6.18.patch index 60c39db99..903fdcb8b 100644 --- a/patches/linux/6.18.56/0072-arm64-dts-microchip-tactical-1000-adapt-to-6.18.patch +++ b/patches/linux/6.18.56/0072-arm64-dts-microchip-tactical-1000-adapt-to-6.18.patch @@ -1,7 +1,7 @@ From d49813a338d7c9b9d69e38e1fcc1c937c588a071 Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Sun, 20 Sep 2026 12:22:43 +0200 -Subject: [PATCH 072/101] arm64: dts: microchip: tactical-1000: adapt to 6.18 +Subject: [PATCH 072/102] arm64: dts: microchip: tactical-1000: adapt to 6.18 Novarq develop against 7.3, which has three things 6.18 does not: a QSPI controller node, a tmon that also provides the fan PWM, and hence a SoC diff --git a/patches/linux/6.18.56/0073-dt-bindings-arm-AT91-document-EV23X71A-board.patch b/patches/linux/6.18.56/0073-dt-bindings-arm-AT91-document-EV23X71A-board.patch index dee61265a..1006f3777 100644 --- a/patches/linux/6.18.56/0073-dt-bindings-arm-AT91-document-EV23X71A-board.patch +++ b/patches/linux/6.18.56/0073-dt-bindings-arm-AT91-document-EV23X71A-board.patch @@ -1,7 +1,7 @@ From b5afb74688659804bbed4bca3928c98975daf2c8 Mon Sep 17 00:00:00 2001 From: Robert Marko Date: Mon, 2 Mar 2026 12:20:13 +0100 -Subject: [PATCH 073/101] dt-bindings: arm: AT91: document EV23X71A board +Subject: [PATCH 073/102] dt-bindings: arm: AT91: document EV23X71A board Microchip EV23X71A board is an LAN9696 based evaluation board. diff --git a/patches/linux/6.18.56/0074-net-dsa-Skip-DCB-default-priority-init-on-unsupporte.patch b/patches/linux/6.18.56/0074-net-dsa-Skip-DCB-default-priority-init-on-unsupporte.patch index 48607dcc4..c64b4c125 100644 --- a/patches/linux/6.18.56/0074-net-dsa-Skip-DCB-default-priority-init-on-unsupporte.patch +++ b/patches/linux/6.18.56/0074-net-dsa-Skip-DCB-default-priority-init-on-unsupporte.patch @@ -1,7 +1,7 @@ From 45fd43a305c595ea24b0de5cf090affeffc4029f Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Wed, 9 Sep 2026 17:04:21 +0200 -Subject: [PATCH 074/101] net: dsa: Skip DCB default priority init on +Subject: [PATCH 074/102] net: dsa: Skip DCB default priority init on unsupported switches A driver serving several chip generations has one dsa_switch_ops for diff --git a/patches/linux/6.18.56/0075-net-dsa-Generalise-the-global-DCB-APP-mirroring-help.patch b/patches/linux/6.18.56/0075-net-dsa-Generalise-the-global-DCB-APP-mirroring-help.patch index 8adc05ddf..78f1c46c5 100644 --- a/patches/linux/6.18.56/0075-net-dsa-Generalise-the-global-DCB-APP-mirroring-help.patch +++ b/patches/linux/6.18.56/0075-net-dsa-Generalise-the-global-DCB-APP-mirroring-help.patch @@ -1,7 +1,7 @@ From cb31150945889f02373febe89f618afee36c6e62 Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Tue, 22 Sep 2026 13:51:07 +0200 -Subject: [PATCH 075/101] net: dsa: Generalise the global DCB APP mirroring +Subject: [PATCH 075/102] net: dsa: Generalise the global DCB APP mirroring helper A switch with one classification table for all its ports programs it diff --git a/patches/linux/6.18.56/0076-net-dsa-Support-the-PCP-APP-selector.patch b/patches/linux/6.18.56/0076-net-dsa-Support-the-PCP-APP-selector.patch index 19d5b2ef1..ad4cde7f6 100644 --- a/patches/linux/6.18.56/0076-net-dsa-Support-the-PCP-APP-selector.patch +++ b/patches/linux/6.18.56/0076-net-dsa-Support-the-PCP-APP-selector.patch @@ -1,7 +1,7 @@ From e1a8005d2fc1813b71e65c79e700da5635e639e0 Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Wed, 9 Sep 2026 17:04:22 +0200 -Subject: [PATCH 076/101] net: dsa: Support the PCP APP selector +Subject: [PATCH 076/102] net: dsa: Support the PCP APP selector Add port_add_pcp_prio, port_del_pcp_prio and port_get_pcp_prio switch ops and route the DCB_APP_SEL_PCP selector to them, mirroring the DSCP diff --git a/patches/linux/6.18.56/0077-net-dsa-Support-DCB-priority-rewrite.patch b/patches/linux/6.18.56/0077-net-dsa-Support-DCB-priority-rewrite.patch index 4cacf29b0..c8fbf15f7 100644 --- a/patches/linux/6.18.56/0077-net-dsa-Support-DCB-priority-rewrite.patch +++ b/patches/linux/6.18.56/0077-net-dsa-Support-DCB-priority-rewrite.patch @@ -1,7 +1,7 @@ From fb3ca7803ea876f7d96514696615143835bc78f9 Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Wed, 9 Sep 2026 17:10:32 +0200 -Subject: [PATCH 077/101] net: dsa: Support DCB priority rewrite +Subject: [PATCH 077/102] net: dsa: Support DCB priority rewrite The DCB rewrite table maps a priority back to the PCP and DEI, or the DSCP, that frames are remarked with on egress. DSA has no diff --git a/patches/linux/6.18.56/0078-net-dsa-Support-the-IEEE-ETS-managed-object.patch b/patches/linux/6.18.56/0078-net-dsa-Support-the-IEEE-ETS-managed-object.patch index 61d11a40d..a1d1884ad 100644 --- a/patches/linux/6.18.56/0078-net-dsa-Support-the-IEEE-ETS-managed-object.patch +++ b/patches/linux/6.18.56/0078-net-dsa-Support-the-IEEE-ETS-managed-object.patch @@ -1,7 +1,7 @@ From 46e44f7a4aba62dc94958e01638e8e93ea62e59b Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Tue, 22 Sep 2026 13:53:23 +0200 -Subject: [PATCH 078/101] net: dsa: Support the IEEE ETS managed object +Subject: [PATCH 078/102] net: dsa: Support the IEEE ETS managed object A switch port's transmission selection is configured today through the ets queuing discipline, which numbers its bands the other way round diff --git a/patches/linux/6.18.56/0079-net-sparx5-fix-sleep-in-atomic-context-in-MAC-table-.patch b/patches/linux/6.18.56/0079-net-sparx5-fix-sleep-in-atomic-context-in-MAC-table-.patch index 9771efa0b..48cef6f8e 100644 --- a/patches/linux/6.18.56/0079-net-sparx5-fix-sleep-in-atomic-context-in-MAC-table-.patch +++ b/patches/linux/6.18.56/0079-net-sparx5-fix-sleep-in-atomic-context-in-MAC-table-.patch @@ -1,7 +1,7 @@ From 308c9dbab764bef06cceb03e412b491ea57234b5 Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Wed, 7 Oct 2026 11:42:12 +0200 -Subject: [PATCH 079/101] net: sparx5: fix sleep in atomic context in MAC table +Subject: [PATCH 079/102] net: sparx5: fix sleep in atomic context in MAC table access Adding or removing a multicast address on an unbridged switch port diff --git a/patches/linux/6.18.56/0080-misc-sparx5-symreg-symreg-debugfs-driver-DBB-1045.patch b/patches/linux/6.18.56/0080-misc-sparx5-symreg-symreg-debugfs-driver-DBB-1045.patch index 237a52907..69ebcd676 100644 --- a/patches/linux/6.18.56/0080-misc-sparx5-symreg-symreg-debugfs-driver-DBB-1045.patch +++ b/patches/linux/6.18.56/0080-misc-sparx5-symreg-symreg-debugfs-driver-DBB-1045.patch @@ -1,7 +1,7 @@ From c6f8b6a050e69c951ce0ce56467b6e9fd9a638f1 Mon Sep 17 00:00:00 2001 From: Steen Hegelund Date: Wed, 21 Jan 2026 10:09:45 +0100 -Subject: [PATCH 080/101] misc: sparx5-symreg; symreg debugfs driver (DBB-1045) +Subject: [PATCH 080/102] misc: sparx5-symreg; symreg debugfs driver (DBB-1045) Expose the switch register space of Microchip Sparx5 family SoCs through /sys/kernel/debug/symreg/mem, for the symreg tool, which diff --git a/patches/linux/6.18.56/0081-net-ethernet-mtk_wed-map-WO-memory-regions-without-r.patch b/patches/linux/6.18.56/0081-net-ethernet-mtk_wed-map-WO-memory-regions-without-r.patch index 642ec9ca8..ed8a7755e 100644 --- a/patches/linux/6.18.56/0081-net-ethernet-mtk_wed-map-WO-memory-regions-without-r.patch +++ b/patches/linux/6.18.56/0081-net-ethernet-mtk_wed-map-WO-memory-regions-without-r.patch @@ -1,7 +1,7 @@ From e0e6e024e5e5866ff61b68bf9790fd24e542d7e2 Mon Sep 17 00:00:00 2001 From: Mattias Walström Date: Mon, 5 Oct 2026 14:37:56 +0200 -Subject: [PATCH 081/101] net: ethernet: mtk_wed: map WO memory regions without +Subject: [PATCH 081/102] net: ethernet: mtk_wed: map WO memory regions without requesting them MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 diff --git a/patches/linux/6.18.56/0082-wifi-mt76-wed-fix-kernel-panic-on-non-DBDC-MT7986.patch b/patches/linux/6.18.56/0082-wifi-mt76-wed-fix-kernel-panic-on-non-DBDC-MT7986.patch index cbb4dbbc0..6670a0a7c 100644 --- a/patches/linux/6.18.56/0082-wifi-mt76-wed-fix-kernel-panic-on-non-DBDC-MT7986.patch +++ b/patches/linux/6.18.56/0082-wifi-mt76-wed-fix-kernel-panic-on-non-DBDC-MT7986.patch @@ -1,7 +1,7 @@ From 8c40b743cd6f8117c177291988ffe1980e9595cd Mon Sep 17 00:00:00 2001 From: Zhi-Jun You Date: Wed, 15 Jul 2026 23:21:12 +0800 -Subject: [PATCH 082/101] wifi: mt76: wed: fix kernel panic on non-DBDC MT7986 +Subject: [PATCH 082/102] wifi: mt76: wed: fix kernel panic on non-DBDC MT7986 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit diff --git a/patches/linux/6.18.56/0083-wifi-mt76-mt7915-set-up-WPDMA-RX-ring-0-for-WED-on-a.patch b/patches/linux/6.18.56/0083-wifi-mt76-mt7915-set-up-WPDMA-RX-ring-0-for-WED-on-a.patch index 7daa73b75..2a943bac7 100644 --- a/patches/linux/6.18.56/0083-wifi-mt76-mt7915-set-up-WPDMA-RX-ring-0-for-WED-on-a.patch +++ b/patches/linux/6.18.56/0083-wifi-mt76-mt7915-set-up-WPDMA-RX-ring-0-for-WED-on-a.patch @@ -1,7 +1,7 @@ From 9b5a788cc9a12f1b23ad0e84dfaa78008a399b49 Mon Sep 17 00:00:00 2001 From: Mattias Walström Date: Wed, 7 Oct 2026 22:20:00 +0200 -Subject: [PATCH 083/101] wifi: mt76: mt7915: set up WPDMA RX ring 0 for WED on +Subject: [PATCH 083/102] wifi: mt76: mt7915: set up WPDMA RX ring 0 for WED on a band1-only device MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 diff --git a/patches/linux/6.18.56/0084-wifi-mt76-mt7915-add-WDS-support-when-WED-is-enabled.patch b/patches/linux/6.18.56/0084-wifi-mt76-mt7915-add-WDS-support-when-WED-is-enabled.patch index 4b44daceb..c327683ad 100644 --- a/patches/linux/6.18.56/0084-wifi-mt76-mt7915-add-WDS-support-when-WED-is-enabled.patch +++ b/patches/linux/6.18.56/0084-wifi-mt76-mt7915-add-WDS-support-when-WED-is-enabled.patch @@ -1,7 +1,7 @@ From a39e22f32c005cb7096e66789000b2a9209444d0 Mon Sep 17 00:00:00 2001 From: Felix Fietkau Date: Mon, 20 Oct 2025 15:59:12 +0200 -Subject: [PATCH 084/101] wifi: mt76: mt7915: add WDS support when WED is +Subject: [PATCH 084/102] wifi: mt76: mt7915: add WDS support when WED is enabled The current WED only supports 256 wcid, whereas mt7986 can support up to diff --git a/patches/linux/6.18.56/0085-net-ethernet-mtk_wed-increase-WED-v2-WDMA-RESV_BUFF-.patch b/patches/linux/6.18.56/0085-net-ethernet-mtk_wed-increase-WED-v2-WDMA-RESV_BUFF-.patch index 64c28ca10..338c36854 100644 --- a/patches/linux/6.18.56/0085-net-ethernet-mtk_wed-increase-WED-v2-WDMA-RESV_BUFF-.patch +++ b/patches/linux/6.18.56/0085-net-ethernet-mtk_wed-increase-WED-v2-WDMA-RESV_BUFF-.patch @@ -1,7 +1,7 @@ From 3d86eb80be2c4367e3293e783d26b6b452840287 Mon Sep 17 00:00:00 2001 From: Shiji Yang Date: Wed, 19 Aug 2026 21:07:07 +0800 -Subject: [PATCH 085/101] net: ethernet: mtk_wed: increase WED v2 WDMA +Subject: [PATCH 085/102] net: ethernet: mtk_wed: increase WED v2 WDMA RESV_BUFF to 0x80 Change WDMA RESV_BUFF from 0x40 to 0x80 to avoid CDM TX FIFO overflow. diff --git a/patches/linux/6.18.56/0086-wifi-mt76-mt7915-publish-wcid-before-MCU-add-command.patch b/patches/linux/6.18.56/0086-wifi-mt76-mt7915-publish-wcid-before-MCU-add-command.patch index 4acc0b38f..13eb4c5eb 100644 --- a/patches/linux/6.18.56/0086-wifi-mt76-mt7915-publish-wcid-before-MCU-add-command.patch +++ b/patches/linux/6.18.56/0086-wifi-mt76-mt7915-publish-wcid-before-MCU-add-command.patch @@ -1,7 +1,7 @@ From 57ac316f70b79c0e2709e6221aca6b9026f8ce1c Mon Sep 17 00:00:00 2001 From: Ryan Leung Date: Fri, 21 Aug 2026 09:00:01 +0000 -Subject: [PATCH 086/101] wifi: mt76: mt7915: publish wcid before MCU add +Subject: [PATCH 086/102] wifi: mt76: mt7915: publish wcid before MCU add commands mt7915_add_interface() enables the BSS/STA in firmware via diff --git a/patches/linux/6.18.56/0087-riscv-dts-spacemit-add-UART-pinctrl-combinations.patch b/patches/linux/6.18.56/0087-riscv-dts-spacemit-add-UART-pinctrl-combinations.patch index 9e3f4617e..64ddfe9fa 100644 --- a/patches/linux/6.18.56/0087-riscv-dts-spacemit-add-UART-pinctrl-combinations.patch +++ b/patches/linux/6.18.56/0087-riscv-dts-spacemit-add-UART-pinctrl-combinations.patch @@ -1,7 +1,7 @@ From 48c77340af8c65ca397f9566482107efcaf6e438 Mon Sep 17 00:00:00 2001 From: Hendrik Hamerlinck Date: Wed, 17 Sep 2025 08:59:07 +0200 -Subject: [PATCH 087/101] riscv: dts: spacemit: add UART pinctrl combinations +Subject: [PATCH 087/102] riscv: dts: spacemit: add UART pinctrl combinations Add UART pinctrl configurations based on the SoC datasheet and the downstream Bianbu Linux tree. The drive strength values were taken from diff --git a/patches/linux/6.18.56/0088-riscv-dts-spacemit-enable-the-i2c8-adapter.patch b/patches/linux/6.18.56/0088-riscv-dts-spacemit-enable-the-i2c8-adapter.patch index 89569623e..e47dd8686 100644 --- a/patches/linux/6.18.56/0088-riscv-dts-spacemit-enable-the-i2c8-adapter.patch +++ b/patches/linux/6.18.56/0088-riscv-dts-spacemit-enable-the-i2c8-adapter.patch @@ -1,7 +1,7 @@ From 068107e84a2ca23f5a3b5f21406dcf42e4ebed8a Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Mon, 25 Aug 2025 12:20:54 -0500 -Subject: [PATCH 088/101] riscv: dts: spacemit: enable the i2c8 adapter +Subject: [PATCH 088/102] riscv: dts: spacemit: enable the i2c8 adapter Define properties for the I2C adapter that provides access to the SpacemiT P1 PMIC. Enable this adapter on the Banana Pi BPI-F3. diff --git a/patches/linux/6.18.56/0089-riscv-dts-spacemit-define-fixed-regulators.patch b/patches/linux/6.18.56/0089-riscv-dts-spacemit-define-fixed-regulators.patch index 6167a5c38..41fa6f11f 100644 --- a/patches/linux/6.18.56/0089-riscv-dts-spacemit-define-fixed-regulators.patch +++ b/patches/linux/6.18.56/0089-riscv-dts-spacemit-define-fixed-regulators.patch @@ -1,7 +1,7 @@ From 043fcd090f07cc71f957fd928f37687674d928eb Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Mon, 25 Aug 2025 12:20:55 -0500 -Subject: [PATCH 089/101] riscv: dts: spacemit: define fixed regulators +Subject: [PATCH 089/102] riscv: dts: spacemit: define fixed regulators Define the DC power input and the 4v power as fixed supplies in the Banana Pi BPI-F3. diff --git a/patches/linux/6.18.56/0090-riscv-dts-spacemit-define-regulator-constraints.patch b/patches/linux/6.18.56/0090-riscv-dts-spacemit-define-regulator-constraints.patch index 4086a66d1..94087edce 100644 --- a/patches/linux/6.18.56/0090-riscv-dts-spacemit-define-regulator-constraints.patch +++ b/patches/linux/6.18.56/0090-riscv-dts-spacemit-define-regulator-constraints.patch @@ -1,7 +1,7 @@ From cacb7418c46d57155175e52b436805fed4aa20bb Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Mon, 25 Aug 2025 12:20:56 -0500 -Subject: [PATCH 090/101] riscv: dts: spacemit: define regulator constraints +Subject: [PATCH 090/102] riscv: dts: spacemit: define regulator constraints Define basic constraints for the regulators in the SpacemiT P1 PMIC, as implemented in the Banana Pi BPI-F3. diff --git a/patches/linux/6.18.56/0091-riscv-dts-spacemit-pinctrl-update-register-and-IO-po.patch b/patches/linux/6.18.56/0091-riscv-dts-spacemit-pinctrl-update-register-and-IO-po.patch index 0938e6b81..558bdcb4a 100644 --- a/patches/linux/6.18.56/0091-riscv-dts-spacemit-pinctrl-update-register-and-IO-po.patch +++ b/patches/linux/6.18.56/0091-riscv-dts-spacemit-pinctrl-update-register-and-IO-po.patch @@ -1,7 +1,7 @@ From 5bae9efff65c6f9dc84e4fbd2fa791e390faa782 Mon Sep 17 00:00:00 2001 From: Troy Mitchell Date: Thu, 8 Jan 2026 14:42:40 +0800 -Subject: [PATCH 091/101] riscv: dts: spacemit: pinctrl: update register and IO +Subject: [PATCH 091/102] riscv: dts: spacemit: pinctrl: update register and IO power Change the size of the reg register to 0x1000 to match the hardware. diff --git a/patches/linux/6.18.56/0092-riscv-dts-spacemit-Update-PMIC-supply-properties-for.patch b/patches/linux/6.18.56/0092-riscv-dts-spacemit-Update-PMIC-supply-properties-for.patch index 984c28ac7..da1adf690 100644 --- a/patches/linux/6.18.56/0092-riscv-dts-spacemit-Update-PMIC-supply-properties-for.patch +++ b/patches/linux/6.18.56/0092-riscv-dts-spacemit-Update-PMIC-supply-properties-for.patch @@ -1,7 +1,7 @@ From c43dadfab8e147e016d5d3cd72ee91c23971e2cb Mon Sep 17 00:00:00 2001 From: Guodong Xu Date: Fri, 6 Feb 2026 10:32:04 +0800 -Subject: [PATCH 092/101] riscv: dts: spacemit: Update PMIC supply properties +Subject: [PATCH 092/102] riscv: dts: spacemit: Update PMIC supply properties for BPI-F3 and Jupiter Use per-regulator supply names in pmic "spacemit,p1" node to specify diff --git a/patches/linux/6.18.56/0093-riscv-dts-spacemit-k1-add-SD-card-controller-and-pin.patch b/patches/linux/6.18.56/0093-riscv-dts-spacemit-k1-add-SD-card-controller-and-pin.patch index a02ef120a..490ac8246 100644 --- a/patches/linux/6.18.56/0093-riscv-dts-spacemit-k1-add-SD-card-controller-and-pin.patch +++ b/patches/linux/6.18.56/0093-riscv-dts-spacemit-k1-add-SD-card-controller-and-pin.patch @@ -1,7 +1,7 @@ From fb3def3a2d5dc721fe67dbc409f7a447217e8b43 Mon Sep 17 00:00:00 2001 From: Iker Pedrosa Date: Fri, 15 May 2026 12:48:59 +0200 -Subject: [PATCH 093/101] riscv: dts: spacemit: k1: add SD card controller and +Subject: [PATCH 093/102] riscv: dts: spacemit: k1: add SD card controller and pinctrl support Add SD card controller infrastructure for SpacemiT K1 SoC with complete diff --git a/patches/linux/6.18.56/0094-riscv-dts-spacemit-k1-bananapi-f3-add-SD-card-suppor.patch b/patches/linux/6.18.56/0094-riscv-dts-spacemit-k1-bananapi-f3-add-SD-card-suppor.patch index 3ecd3692d..ce91beb02 100644 --- a/patches/linux/6.18.56/0094-riscv-dts-spacemit-k1-bananapi-f3-add-SD-card-suppor.patch +++ b/patches/linux/6.18.56/0094-riscv-dts-spacemit-k1-bananapi-f3-add-SD-card-suppor.patch @@ -1,7 +1,7 @@ From a0b9436be9e9d76155b95a1142d3b1f5dbbf13de Mon Sep 17 00:00:00 2001 From: Iker Pedrosa Date: Fri, 15 May 2026 12:49:01 +0200 -Subject: [PATCH 094/101] riscv: dts: spacemit: k1-bananapi-f3: add SD card +Subject: [PATCH 094/102] riscv: dts: spacemit: k1-bananapi-f3: add SD card support with UHS modes Add complete SD card controller support with UHS high-speed modes. diff --git a/patches/linux/6.18.56/0095-mmc-sdhci-of-k1-add-reset-support.patch b/patches/linux/6.18.56/0095-mmc-sdhci-of-k1-add-reset-support.patch index 523495f12..7beab99b6 100644 --- a/patches/linux/6.18.56/0095-mmc-sdhci-of-k1-add-reset-support.patch +++ b/patches/linux/6.18.56/0095-mmc-sdhci-of-k1-add-reset-support.patch @@ -1,7 +1,7 @@ From 561c4dc54c3d6401b4f34b80c4425da589d1b6c1 Mon Sep 17 00:00:00 2001 From: Yixun Lan Date: Tue, 23 Dec 2025 10:24:50 +0800 -Subject: [PATCH 095/101] mmc: sdhci-of-k1: add reset support +Subject: [PATCH 095/102] mmc: sdhci-of-k1: add reset support The SDHCI controller of SpacemiT K1 SoC requires two resets, add support to explicitly request the reset line and deassert during diff --git a/patches/linux/6.18.56/0096-mmc-sdhci-of-k1-enable-essential-clock-infrastructur.patch b/patches/linux/6.18.56/0096-mmc-sdhci-of-k1-enable-essential-clock-infrastructur.patch index 74db4857c..ab62e21e5 100644 --- a/patches/linux/6.18.56/0096-mmc-sdhci-of-k1-enable-essential-clock-infrastructur.patch +++ b/patches/linux/6.18.56/0096-mmc-sdhci-of-k1-enable-essential-clock-infrastructur.patch @@ -1,7 +1,7 @@ From 9dcad57290c8f0268b7d4f7ab544a33d2a92514f Mon Sep 17 00:00:00 2001 From: Iker Pedrosa Date: Mon, 11 May 2026 10:53:57 +0200 -Subject: [PATCH 096/101] mmc: sdhci-of-k1: enable essential clock +Subject: [PATCH 096/102] mmc: sdhci-of-k1: enable essential clock infrastructure for SD operation Ensure SD card pins receive clock signals by enabling pad clock diff --git a/patches/linux/6.18.56/0097-mmc-sdhci-of-k1-add-regulator-and-pinctrl-voltage-sw.patch b/patches/linux/6.18.56/0097-mmc-sdhci-of-k1-add-regulator-and-pinctrl-voltage-sw.patch index 018247320..ba4762c76 100644 --- a/patches/linux/6.18.56/0097-mmc-sdhci-of-k1-add-regulator-and-pinctrl-voltage-sw.patch +++ b/patches/linux/6.18.56/0097-mmc-sdhci-of-k1-add-regulator-and-pinctrl-voltage-sw.patch @@ -1,7 +1,7 @@ From ed58a909842615d15ac19a341fd83c20ba405205 Mon Sep 17 00:00:00 2001 From: Iker Pedrosa Date: Mon, 11 May 2026 10:53:58 +0200 -Subject: [PATCH 097/101] mmc: sdhci-of-k1: add regulator and pinctrl voltage +Subject: [PATCH 097/102] mmc: sdhci-of-k1: add regulator and pinctrl voltage switching support Add voltage switching infrastructure for UHS-I modes by integrating both diff --git a/patches/linux/6.18.56/0098-mmc-sdhci-of-k1-add-comprehensive-SDR-tuning-support.patch b/patches/linux/6.18.56/0098-mmc-sdhci-of-k1-add-comprehensive-SDR-tuning-support.patch index 6690231a7..070a458ff 100644 --- a/patches/linux/6.18.56/0098-mmc-sdhci-of-k1-add-comprehensive-SDR-tuning-support.patch +++ b/patches/linux/6.18.56/0098-mmc-sdhci-of-k1-add-comprehensive-SDR-tuning-support.patch @@ -1,7 +1,7 @@ From ee33c390956dce5ac9602c904b44df030bf4ba11 Mon Sep 17 00:00:00 2001 From: Iker Pedrosa Date: Mon, 11 May 2026 10:53:59 +0200 -Subject: [PATCH 098/101] mmc: sdhci-of-k1: add comprehensive SDR tuning +Subject: [PATCH 098/102] mmc: sdhci-of-k1: add comprehensive SDR tuning support MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 diff --git a/patches/linux/6.18.56/0099-driver-reset-spacemit-p1-add-driver-for-poweroff-reb.patch b/patches/linux/6.18.56/0099-driver-reset-spacemit-p1-add-driver-for-poweroff-reb.patch index 462a81fe7..8b4463df6 100644 --- a/patches/linux/6.18.56/0099-driver-reset-spacemit-p1-add-driver-for-poweroff-reb.patch +++ b/patches/linux/6.18.56/0099-driver-reset-spacemit-p1-add-driver-for-poweroff-reb.patch @@ -1,7 +1,7 @@ From 33784f1f5221651440a3043d41ed314b9263d9d4 Mon Sep 17 00:00:00 2001 From: Aurelien Jarno Date: Mon, 3 Nov 2025 00:01:59 +0100 -Subject: [PATCH 099/101] driver: reset: spacemit-p1: add driver for +Subject: [PATCH 099/102] driver: reset: spacemit-p1: add driver for poweroff/reboot This driver implements poweroff/reboot support for the SpacemiT P1 PMIC diff --git a/patches/linux/6.18.56/0100-mfd-simple-mfd-i2c-Add-a-reboot-cell-for-the-Spacemi.patch b/patches/linux/6.18.56/0100-mfd-simple-mfd-i2c-Add-a-reboot-cell-for-the-Spacemi.patch index ee0fd67cf..af26f2ce8 100644 --- a/patches/linux/6.18.56/0100-mfd-simple-mfd-i2c-Add-a-reboot-cell-for-the-Spacemi.patch +++ b/patches/linux/6.18.56/0100-mfd-simple-mfd-i2c-Add-a-reboot-cell-for-the-Spacemi.patch @@ -1,7 +1,7 @@ From 19c5b3dcf894c3ef73dd6304aa8758b16121b5ad Mon Sep 17 00:00:00 2001 From: Aurelien Jarno Date: Mon, 3 Nov 2025 00:02:00 +0100 -Subject: [PATCH 100/101] mfd: simple-mfd-i2c: Add a reboot cell for the +Subject: [PATCH 100/102] mfd: simple-mfd-i2c: Add a reboot cell for the SpacemiT P1 chip Add a "spacemit-p1-reboot" cell for the SpacemiT P1 chip. diff --git a/patches/linux/6.18.56/0101-nvmem-core-do-not-defer-on-a-cell-missing-from-a-bou.patch b/patches/linux/6.18.56/0101-nvmem-core-do-not-defer-on-a-cell-missing-from-a-bou.patch index c5986c888..20877d25f 100644 --- a/patches/linux/6.18.56/0101-nvmem-core-do-not-defer-on-a-cell-missing-from-a-bou.patch +++ b/patches/linux/6.18.56/0101-nvmem-core-do-not-defer-on-a-cell-missing-from-a-bou.patch @@ -1,7 +1,7 @@ From 04c0618953892cb96967b3a4df7cf850eee46f06 Mon Sep 17 00:00:00 2001 From: Mattias Walström Date: Tue, 13 Oct 2026 10:52:54 +0200 -Subject: [PATCH 101/101] nvmem: core: do not defer on a cell missing from a +Subject: [PATCH 101/102] nvmem: core: do not defer on a cell missing from a bound layout MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 diff --git a/patches/linux/6.18.56/0102-net-dsa-mt7530-lock-the-MDIO-bus-around-regmap-irq-a.patch b/patches/linux/6.18.56/0102-net-dsa-mt7530-lock-the-MDIO-bus-around-regmap-irq-a.patch new file mode 100644 index 000000000..b4b766ddf --- /dev/null +++ b/patches/linux/6.18.56/0102-net-dsa-mt7530-lock-the-MDIO-bus-around-regmap-irq-a.patch @@ -0,0 +1,108 @@ +From ddd76d5210e1e33cd10a0fa153690a706b3f4908 Mon Sep 17 00:00:00 2001 +From: Mattias Walström +Date: Tue, 13 Oct 2026 15:48:00 +0200 +Subject: [PATCH 102/102] net: dsa: mt7530: lock the MDIO bus around regmap-irq + accesses +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +The MDIO register protocol is stateful: a page select followed by two +half word accesses. The driver's own helpers take bus->mdio_lock +around each sequence and the main regmap is created with locking +disabled, which worked until the interrupt controller was converted to +regmap-irq. regmap-irq accesses that unlocked regmap directly, from +its thread when reading and acking SYS_INT_STS and from the irq core's +bus lock callbacks when updating SYS_INT_EN, so its page selects +interleave with everybody else's locked sequences. + +A locked 32-bit write to a register at the same half word offset on +another page then commits its value into the register the irq thread +just selected. Seen on a BPI-R3 (MT7531): a link-change interrupt +being acked while the SGMII PCS wrote QPHY_PWR_STATE_CTRL landed that +value in SYS_INT_EN, which went to zero. From then on every PHY link +change was left pending in SYS_INT_STS, no interrupt ever fired again +and ports that were bounced stayed at no-link although the PHYs had +negotiated, until a reboot. + +Give the irq chip a regmap of its own that takes the MDIO bus lock +around every access, the same way the PCS regmaps already do. The MMIO +backend keeps using its regmap, which has regular locking. + +Fixes: 254f6b272e3b ("dsa: mt7530: Utilize REGMAP_IRQ for interrupt handling") +Signed-off-by: Mattias Walström +--- + drivers/net/dsa/mt7530-mdio.c | 25 +++++++++++++++++++++++++ + drivers/net/dsa/mt7530.c | 3 ++- + drivers/net/dsa/mt7530.h | 1 + + 3 files changed, 28 insertions(+), 1 deletion(-) + +diff --git a/drivers/net/dsa/mt7530-mdio.c b/drivers/net/dsa/mt7530-mdio.c +index 119fdbea57160..749d746329369 100644 +--- a/drivers/net/dsa/mt7530-mdio.c ++++ b/drivers/net/dsa/mt7530-mdio.c +@@ -154,6 +154,7 @@ static const struct regmap_config regmap_config = { + static int + mt7530_probe(struct mdio_device *mdiodev) + { ++ struct regmap_config *irq_config; + struct mt7530_priv *priv; + struct device_node *dn; + int ret; +@@ -212,6 +213,30 @@ mt7530_probe(struct mdio_device *mdiodev) + if (IS_ERR(priv->regmap)) + return PTR_ERR(priv->regmap); + ++ /* regmap-irq accesses the switch from its own thread and from the ++ * irq core's bus lock callbacks, outside the driver's MDIO locking. ++ * The register protocol is stateful, a page select followed by two ++ * half words, so an unlocked access interleaving with a locked one ++ * commits the latter's value into whatever register the former ++ * selected. Give the irq chip a regmap that takes the MDIO bus lock ++ * around every access, like the PCS regmaps do. ++ */ ++ irq_config = devm_kmemdup(priv->dev, ®map_config, ++ sizeof(regmap_config), GFP_KERNEL); ++ if (!irq_config) ++ return -ENOMEM; ++ ++ irq_config->name = "irq"; ++ irq_config->disable_locking = false; ++ irq_config->lock = mt7530_mdio_regmap_lock; ++ irq_config->unlock = mt7530_mdio_regmap_unlock; ++ irq_config->lock_arg = &priv->bus->mdio_lock; ++ ++ priv->irq_regmap = devm_regmap_init(priv->dev, &mt7530_regmap_bus, ++ priv, irq_config); ++ if (IS_ERR(priv->irq_regmap)) ++ return PTR_ERR(priv->irq_regmap); ++ + if (priv->id == ID_MT7531) + priv->create_sgmii = mt7531_create_sgmii; + +diff --git a/drivers/net/dsa/mt7530.c b/drivers/net/dsa/mt7530.c +index 4001779a91591..00f1a00745c38 100644 +--- a/drivers/net/dsa/mt7530.c ++++ b/drivers/net/dsa/mt7530.c +@@ -2259,7 +2259,8 @@ mt7530_setup_irq(struct mt7530_priv *priv) + mt7530_set(priv, MT7530_TOP_SIG_CTRL, TOP_SIG_CTRL_NORMAL); + + ret = devm_regmap_add_irq_chip_fwnode(dev, dev_fwnode(dev), +- priv->regmap, irq, ++ priv->irq_regmap ?: priv->regmap, ++ irq, + IRQF_ONESHOT, + 0, &mt7530_regmap_irq_chip, + &irq_data); +diff --git a/drivers/net/dsa/mt7530.h b/drivers/net/dsa/mt7530.h +index 69be713bab800..76cb4845b5c62 100644 +--- a/drivers/net/dsa/mt7530.h ++++ b/drivers/net/dsa/mt7530.h +@@ -882,6 +882,7 @@ struct mt7530_priv { + struct dsa_switch *ds; + struct mii_bus *bus; + struct regmap *regmap; ++ struct regmap *irq_regmap; + struct reset_control *rstc; + struct regulator *core_pwr; + struct regulator *io_pwr;