[openwrt/openwrt] airoha: refresh kernel patches

LEDE Commits lede-commits at lists.infradead.org
Mon Nov 10 09:36:11 PST 2025


ansuel pushed a commit to openwrt/openwrt.git, branch openwrt-24.10:
https://git.openwrt.org/ae51d0098efe0712a3405fb3c913fe9baaef4473

commit ae51d0098efe0712a3405fb3c913fe9baaef4473
Author: Christian Marangi <ansuelsmth at gmail.com>
AuthorDate: Mon Nov 10 18:29:44 2025 +0100

    airoha: refresh kernel patches
    
    After all the backports, automatically refresh all the patches for
    Airoha target.
    
    Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
---
 ...-mediatek-add-Airoha-PHY-ID-to-SoC-driver.patch | 14 ++++----
 ...Fix-loopback-mode-configuration-for-GDM2-.patch |  2 +-
 ...Add-missing-stats-to-ethtool_eth_mac_stat.patch |  2 +-
 ...-net-airoha-Add-get_link-ethtool-callback.patch |  2 +-
 ...Take-into-account-out-of-order-tx-complet.patch |  4 +--
 ...net-airoha-Add-airoha_eth_soc_data-struct.patch | 10 +++---
 ...Generalize-airoha_ppe2_is_enabled-routine.patch |  2 +-
 ...Select-default-ppe-cpu-port-in-airoha_dev.patch |  4 +--
 ...Refactor-src-port-configuration-in-airhoh.patch |  8 ++---
 ...2-v6.19-net-airoha-Add-AN7583-SoC-support.patch | 16 ++++-----
 ...-Remove-code-duplication-in-airoha_regs.h.patch |  2 +-
 ...-airoha-Fix-a-copy-and-paste-bug-in-probe.patch |  2 +-
 ...Fix-an-error-handling-path-in-airoha_prob.patch |  2 +-
 ....19-pwm-airoha-Add-support-for-EN7581-SoC.patch |  6 ++--
 ...2-net-airoha-deassert-XSI-line-on-hw-init.patch |  2 +-
 ...add-initial-fixup-for-GDM3-4-port-support.patch |  2 +-
 ...116-07-airoha-ethernet-drop-xsi-mac-reset.patch |  4 +--
 ...-08-net-phylink-add-.pcs_link_down-PCS-OP.patch | 10 +++---
 ...-pcs-airoha-add-PCS-driver-for-Airoha-SoC.patch |  2 +-
 ...net-airoha-add-phylink-support-for-GDM2-4.patch | 14 ++++----
 ...iatek-airoha-generalize-pins-group-functi.patch | 40 +++++++++++-----------
 ...ctrl-airoha-convert-PHY-LED-GPIO-to-macro.patch |  2 +-
 ...-pinctrl-airoha-convert-PWM-GPIO-to-macro.patch |  2 +-
 ...airoha-add-support-for-Airoha-AN7583-PINs.patch | 40 +++++++++++-----------
 ...diatek-move-some-header-to-global-include.patch |  4 +--
 ...-Add-AFE-and-I2S-driver-for-Airoha-AN7581.patch |  4 +--
 ...-phy-Add-documentation-for-Airoha-AN7581-.patch |  8 ++---
 ...oha-Add-support-for-Airoha-AN7581-USB-PHY.patch |  2 +-
 ...iatek-gen3-set-PHY-mode-for-Airoha-EN7581.patch |  2 +-
 29 files changed, 107 insertions(+), 107 deletions(-)

diff --git a/target/linux/airoha/patches-6.6/060-v6.16-02-net-phy-mediatek-add-Airoha-PHY-ID-to-SoC-driver.patch b/target/linux/airoha/patches-6.6/060-v6.16-02-net-phy-mediatek-add-Airoha-PHY-ID-to-SoC-driver.patch
index 5d8e14aeea..03bb46bb89 100644
--- a/target/linux/airoha/patches-6.6/060-v6.16-02-net-phy-mediatek-add-Airoha-PHY-ID-to-SoC-driver.patch
+++ b/target/linux/airoha/patches-6.6/060-v6.16-02-net-phy-mediatek-add-Airoha-PHY-ID-to-SoC-driver.patch
@@ -22,7 +22,7 @@ Signed-off-by: Jakub Kicinski <kuba at kernel.org>
 
 --- a/drivers/net/phy/Kconfig
 +++ b/drivers/net/phy/Kconfig
-@@ -15,8 +15,9 @@ config MEDIATEK_GE_PHY
+@@ -320,8 +320,9 @@ config MEDIATEK_GE_PHY
  
  config MEDIATEK_GE_SOC_PHY
  	tristate "MediaTek SoC Ethernet PHYs"
@@ -36,9 +36,9 @@ Signed-off-by: Jakub Kicinski <kuba at kernel.org>
  
 --- a/drivers/net/phy/mediatek-ge-soc.c
 +++ b/drivers/net/phy/mediatek-ge-soc.c
-@@ -10,8 +10,11 @@
- 
- #include "mtk.h"
+@@ -8,8 +8,11 @@
+ #include <linux/phy.h>
+ #include <linux/regmap.h>
  
 +#define MTK_PHY_MAX_LEDS			2
 +
@@ -48,7 +48,7 @@ Signed-off-by: Jakub Kicinski <kuba at kernel.org>
  
  #define MTK_EXT_PAGE_ACCESS			0x1f
  #define MTK_PHY_PAGE_STANDARD			0x0000
-@@ -1405,6 +1408,53 @@ static int mt7981_phy_probe(struct phy_d
+@@ -1502,6 +1505,53 @@ static int mt7981_phy_probe(struct phy_d
  	return mt798x_phy_calibration(phydev);
  }
  
@@ -102,7 +102,7 @@ Signed-off-by: Jakub Kicinski <kuba at kernel.org>
  static struct phy_driver mtk_socphy_driver[] = {
  	{
  		PHY_ID_MATCH_EXACT(MTK_GPHY_ID_MT7981),
-@@ -1440,6 +1490,17 @@ static struct phy_driver mtk_socphy_driv
+@@ -1537,6 +1587,17 @@ static struct phy_driver mtk_socphy_driv
  		.led_hw_control_set = mt798x_phy_led_hw_control_set,
  		.led_hw_control_get = mt798x_phy_led_hw_control_get,
  	},
@@ -120,7 +120,7 @@ Signed-off-by: Jakub Kicinski <kuba at kernel.org>
  };
  
  module_phy_driver(mtk_socphy_driver);
-@@ -1447,6 +1508,7 @@ module_phy_driver(mtk_socphy_driver);
+@@ -1544,6 +1605,7 @@ module_phy_driver(mtk_socphy_driver);
  static struct mdio_device_id __maybe_unused mtk_socphy_tbl[] = {
  	{ PHY_ID_MATCH_EXACT(MTK_GPHY_ID_MT7981) },
  	{ PHY_ID_MATCH_EXACT(MTK_GPHY_ID_MT7988) },
diff --git a/target/linux/airoha/patches-6.6/095-v6.19-net-airoha-Fix-loopback-mode-configuration-for-GDM2-.patch b/target/linux/airoha/patches-6.6/095-v6.19-net-airoha-Fix-loopback-mode-configuration-for-GDM2-.patch
index 5c3fcc0c20..95200a910a 100644
--- a/target/linux/airoha/patches-6.6/095-v6.19-net-airoha-Fix-loopback-mode-configuration-for-GDM2-.patch
+++ b/target/linux/airoha/patches-6.6/095-v6.19-net-airoha-Fix-loopback-mode-configuration-for-GDM2-.patch
@@ -18,7 +18,7 @@ Signed-off-by: Paolo Abeni <pabeni at redhat.com>
 
 --- a/drivers/net/ethernet/airoha/airoha_eth.c
 +++ b/drivers/net/ethernet/airoha/airoha_eth.c
-@@ -1715,7 +1715,9 @@ static void airhoha_set_gdm2_loopback(st
+@@ -1716,7 +1716,9 @@ static void airhoha_set_gdm2_loopback(st
  	airoha_fe_wr(eth, REG_GDM_RXCHN_EN(2), 0xffff);
  	airoha_fe_rmw(eth, REG_GDM_LPBK_CFG(2),
  		      LPBK_CHAN_MASK | LPBK_MODE_MASK | LPBK_EN_MASK,
diff --git a/target/linux/airoha/patches-6.6/096-v6.19-net-airoha-Add-missing-stats-to-ethtool_eth_mac_stat.patch b/target/linux/airoha/patches-6.6/096-v6.19-net-airoha-Add-missing-stats-to-ethtool_eth_mac_stat.patch
index 66d72ded83..0ffeb5867d 100644
--- a/target/linux/airoha/patches-6.6/096-v6.19-net-airoha-Add-missing-stats-to-ethtool_eth_mac_stat.patch
+++ b/target/linux/airoha/patches-6.6/096-v6.19-net-airoha-Add-missing-stats-to-ethtool_eth_mac_stat.patch
@@ -19,7 +19,7 @@ Signed-off-by: Jakub Kicinski <kuba at kernel.org>
 
 --- a/drivers/net/ethernet/airoha/airoha_eth.c
 +++ b/drivers/net/ethernet/airoha/airoha_eth.c
-@@ -2027,8 +2027,12 @@ static void airoha_ethtool_get_mac_stats
+@@ -2028,8 +2028,12 @@ static void airoha_ethtool_get_mac_stats
  	airoha_update_hw_stats(port);
  	do {
  		start = u64_stats_fetch_begin(&port->stats.syncp);
diff --git a/target/linux/airoha/patches-6.6/097-v6.19-net-airoha-Add-get_link-ethtool-callback.patch b/target/linux/airoha/patches-6.6/097-v6.19-net-airoha-Add-get_link-ethtool-callback.patch
index 7d78bd6c03..b990297a42 100644
--- a/target/linux/airoha/patches-6.6/097-v6.19-net-airoha-Add-get_link-ethtool-callback.patch
+++ b/target/linux/airoha/patches-6.6/097-v6.19-net-airoha-Add-get_link-ethtool-callback.patch
@@ -15,7 +15,7 @@ Signed-off-by: Jakub Kicinski <kuba at kernel.org>
 
 --- a/drivers/net/ethernet/airoha/airoha_eth.c
 +++ b/drivers/net/ethernet/airoha/airoha_eth.c
-@@ -2775,6 +2775,7 @@ static const struct ethtool_ops airoha_e
+@@ -2776,6 +2776,7 @@ static const struct ethtool_ops airoha_e
  	.get_drvinfo		= airoha_ethtool_get_drvinfo,
  	.get_eth_mac_stats      = airoha_ethtool_get_mac_stats,
  	.get_rmon_stats		= airoha_ethtool_get_rmon_stats,
diff --git a/target/linux/airoha/patches-6.6/098-v6.19-net-airoha-Take-into-account-out-of-order-tx-complet.patch b/target/linux/airoha/patches-6.6/098-v6.19-net-airoha-Take-into-account-out-of-order-tx-complet.patch
index 46432b2480..4ff6daf033 100644
--- a/target/linux/airoha/patches-6.6/098-v6.19-net-airoha-Take-into-account-out-of-order-tx-complet.patch
+++ b/target/linux/airoha/patches-6.6/098-v6.19-net-airoha-Take-into-account-out-of-order-tx-complet.patch
@@ -22,7 +22,7 @@ Signed-off-by: Paolo Abeni <pabeni at redhat.com>
 
 --- a/drivers/net/ethernet/airoha/airoha_eth.c
 +++ b/drivers/net/ethernet/airoha/airoha_eth.c
-@@ -1878,6 +1878,20 @@ static u32 airoha_get_dsa_tag(struct sk_
+@@ -1879,6 +1879,20 @@ static u32 airoha_get_dsa_tag(struct sk_
  #endif
  }
  
@@ -43,7 +43,7 @@ Signed-off-by: Paolo Abeni <pabeni at redhat.com>
  static netdev_tx_t airoha_dev_xmit(struct sk_buff *skb,
  				   struct net_device *dev)
  {
-@@ -1931,7 +1945,7 @@ static netdev_tx_t airoha_dev_xmit(struc
+@@ -1932,7 +1946,7 @@ static netdev_tx_t airoha_dev_xmit(struc
  	txq = netdev_get_tx_queue(dev, qid);
  	nr_frags = 1 + skb_shinfo(skb)->nr_frags;
  
diff --git a/target/linux/airoha/patches-6.6/099-03-v6.19-net-airoha-Add-airoha_eth_soc_data-struct.patch b/target/linux/airoha/patches-6.6/099-03-v6.19-net-airoha-Add-airoha_eth_soc_data-struct.patch
index 9035e21447..2c94dccb1a 100644
--- a/target/linux/airoha/patches-6.6/099-03-v6.19-net-airoha-Add-airoha_eth_soc_data-struct.patch
+++ b/target/linux/airoha/patches-6.6/099-03-v6.19-net-airoha-Add-airoha_eth_soc_data-struct.patch
@@ -21,7 +21,7 @@ Signed-off-by: Paolo Abeni <pabeni at redhat.com>
 
 --- a/drivers/net/ethernet/airoha/airoha_eth.c
 +++ b/drivers/net/ethernet/airoha/airoha_eth.c
-@@ -1392,8 +1392,7 @@ static int airoha_hw_init(struct platfor
+@@ -1393,8 +1393,7 @@ static int airoha_hw_init(struct platfor
  	int err, i;
  
  	/* disable xsi */
@@ -31,7 +31,7 @@ Signed-off-by: Paolo Abeni <pabeni at redhat.com>
  	if (err)
  		return err;
  
-@@ -2927,6 +2926,7 @@ free_metadata_dst:
+@@ -2928,6 +2927,7 @@ free_metadata_dst:
  
  static int airoha_probe(struct platform_device *pdev)
  {
@@ -39,7 +39,7 @@ Signed-off-by: Paolo Abeni <pabeni at redhat.com>
  	struct device_node *np;
  	struct airoha_eth *eth;
  	int i, err;
-@@ -2935,6 +2935,10 @@ static int airoha_probe(struct platform_
+@@ -2936,6 +2936,10 @@ static int airoha_probe(struct platform_
  	if (!eth)
  		return -ENOMEM;
  
@@ -50,7 +50,7 @@ Signed-off-by: Paolo Abeni <pabeni at redhat.com>
  	eth->dev = &pdev->dev;
  
  	err = dma_set_mask_and_coherent(eth->dev, DMA_BIT_MASK(32));
-@@ -2959,13 +2963,18 @@ static int airoha_probe(struct platform_
+@@ -2960,13 +2964,18 @@ static int airoha_probe(struct platform_
  		return err;
  	}
  
@@ -75,7 +75,7 @@ Signed-off-by: Paolo Abeni <pabeni at redhat.com>
  						    eth->xsi_rsts);
  	if (err) {
  		dev_err(eth->dev, "failed to get bulk xsi reset lines\n");
-@@ -3052,8 +3061,23 @@ static void airoha_remove(struct platfor
+@@ -3053,8 +3062,23 @@ static void airoha_remove(struct platfor
  	platform_set_drvdata(pdev, NULL);
  }
  
diff --git a/target/linux/airoha/patches-6.6/099-04-v6.19-net-airoha-Generalize-airoha_ppe2_is_enabled-routine.patch b/target/linux/airoha/patches-6.6/099-04-v6.19-net-airoha-Generalize-airoha_ppe2_is_enabled-routine.patch
index e82ce24e4f..cbed7ffc94 100644
--- a/target/linux/airoha/patches-6.6/099-04-v6.19-net-airoha-Generalize-airoha_ppe2_is_enabled-routine.patch
+++ b/target/linux/airoha/patches-6.6/099-04-v6.19-net-airoha-Generalize-airoha_ppe2_is_enabled-routine.patch
@@ -59,7 +59,7 @@ Signed-off-by: Paolo Abeni <pabeni at redhat.com>
  	}
  	/* GMD4 */
  	for (q = 0; q < pse_port_num_queues[FE_PSE_PORT_GDM4]; q++)
-@@ -1767,8 +1774,11 @@ static int airoha_dev_init(struct net_de
+@@ -1768,8 +1775,11 @@ static int airoha_dev_init(struct net_de
  			airhoha_set_gdm2_loopback(port);
  		fallthrough;
  	case 2:
diff --git a/target/linux/airoha/patches-6.6/099-09-v6.19-net-airoha-Select-default-ppe-cpu-port-in-airoha_dev.patch b/target/linux/airoha/patches-6.6/099-09-v6.19-net-airoha-Select-default-ppe-cpu-port-in-airoha_dev.patch
index c6ecbdb829..08bfcaf587 100644
--- a/target/linux/airoha/patches-6.6/099-09-v6.19-net-airoha-Select-default-ppe-cpu-port-in-airoha_dev.patch
+++ b/target/linux/airoha/patches-6.6/099-09-v6.19-net-airoha-Select-default-ppe-cpu-port-in-airoha_dev.patch
@@ -47,7 +47,7 @@ Signed-off-by: Paolo Abeni <pabeni at redhat.com>
  	/* enable 1:N vlan action, init vlan table */
  	airoha_fe_set(eth, REG_MC_VLAN_EN, MC_VLAN_EN_MASK);
  
-@@ -1761,8 +1742,10 @@ static void airhoha_set_gdm2_loopback(st
+@@ -1762,8 +1743,10 @@ static void airhoha_set_gdm2_loopback(st
  static int airoha_dev_init(struct net_device *dev)
  {
  	struct airoha_gdm_port *port = netdev_priv(dev);
@@ -60,7 +60,7 @@ Signed-off-by: Paolo Abeni <pabeni at redhat.com>
  
  	airoha_set_macaddr(port, dev->dev_addr);
  
-@@ -1775,16 +1758,27 @@ static int airoha_dev_init(struct net_de
+@@ -1776,16 +1759,27 @@ static int airoha_dev_init(struct net_de
  		fallthrough;
  	case 2:
  		if (airoha_ppe_is_enabled(eth, 1)) {
diff --git a/target/linux/airoha/patches-6.6/099-10-v6.19-net-airoha-Refactor-src-port-configuration-in-airhoh.patch b/target/linux/airoha/patches-6.6/099-10-v6.19-net-airoha-Refactor-src-port-configuration-in-airhoh.patch
index cec079845c..b7fafc52ad 100644
--- a/target/linux/airoha/patches-6.6/099-10-v6.19-net-airoha-Refactor-src-port-configuration-in-airhoh.patch
+++ b/target/linux/airoha/patches-6.6/099-10-v6.19-net-airoha-Refactor-src-port-configuration-in-airhoh.patch
@@ -22,7 +22,7 @@ Signed-off-by: Paolo Abeni <pabeni at redhat.com>
 
 --- a/drivers/net/ethernet/airoha/airoha_eth.c
 +++ b/drivers/net/ethernet/airoha/airoha_eth.c
-@@ -1687,13 +1687,17 @@ static int airoha_dev_set_macaddr(struct
+@@ -1688,13 +1688,17 @@ static int airoha_dev_set_macaddr(struct
  	return 0;
  }
  
@@ -43,7 +43,7 @@ Signed-off-by: Paolo Abeni <pabeni at redhat.com>
  	airoha_set_gdm_port_fwd_cfg(eth, REG_GDM_FWD_CFG(2), pse_port);
  	airoha_fe_clear(eth, REG_GDM_FWD_CFG(2), GDM_STRIP_CRC);
  
-@@ -1714,29 +1718,25 @@ static void airhoha_set_gdm2_loopback(st
+@@ -1715,29 +1719,25 @@ static void airhoha_set_gdm2_loopback(st
  	airoha_fe_clear(eth, REG_FE_VIP_PORT_EN, BIT(2));
  	airoha_fe_clear(eth, REG_FE_IFC_PORT_EN, BIT(2));
  
@@ -89,7 +89,7 @@ Signed-off-by: Paolo Abeni <pabeni at redhat.com>
  }
  
  static int airoha_dev_init(struct net_device *dev)
-@@ -1753,8 +1753,13 @@ static int airoha_dev_init(struct net_de
+@@ -1754,8 +1754,13 @@ static int airoha_dev_init(struct net_de
  	case 3:
  	case 4:
  		/* If GDM2 is active we can't enable loopback */
@@ -105,7 +105,7 @@ Signed-off-by: Paolo Abeni <pabeni at redhat.com>
  		fallthrough;
  	case 2:
  		if (airoha_ppe_is_enabled(eth, 1)) {
-@@ -3073,11 +3078,38 @@ static const char * const en7581_xsi_rst
+@@ -3074,11 +3079,38 @@ static const char * const en7581_xsi_rst
  	"xfp-mac",
  };
  
diff --git a/target/linux/airoha/patches-6.6/099-12-v6.19-net-airoha-Add-AN7583-SoC-support.patch b/target/linux/airoha/patches-6.6/099-12-v6.19-net-airoha-Add-AN7583-SoC-support.patch
index 7f34a05ab5..5c7d3bf903 100644
--- a/target/linux/airoha/patches-6.6/099-12-v6.19-net-airoha-Add-AN7583-SoC-support.patch
+++ b/target/linux/airoha/patches-6.6/099-12-v6.19-net-airoha-Add-AN7583-SoC-support.patch
@@ -17,7 +17,7 @@ Signed-off-by: Paolo Abeni <pabeni at redhat.com>
 
 --- a/drivers/net/ethernet/airoha/airoha_eth.c
 +++ b/drivers/net/ethernet/airoha/airoha_eth.c
-@@ -1689,10 +1689,8 @@ static int airoha_dev_set_macaddr(struct
+@@ -1690,10 +1690,8 @@ static int airoha_dev_set_macaddr(struct
  
  static int airhoha_set_gdm2_loopback(struct airoha_gdm_port *port)
  {
@@ -29,7 +29,7 @@ Signed-off-by: Paolo Abeni <pabeni at redhat.com>
  	int src_port;
  
  	/* Forward the traffic to the proper GDM port */
-@@ -1704,6 +1702,8 @@ static int airhoha_set_gdm2_loopback(str
+@@ -1705,6 +1703,8 @@ static int airhoha_set_gdm2_loopback(str
  	/* Enable GDM2 loopback */
  	airoha_fe_wr(eth, REG_GDM_TXCHN_EN(2), 0xffffffff);
  	airoha_fe_wr(eth, REG_GDM_RXCHN_EN(2), 0xffff);
@@ -38,7 +38,7 @@ Signed-off-by: Paolo Abeni <pabeni at redhat.com>
  	airoha_fe_rmw(eth, REG_GDM_LPBK_CFG(2),
  		      LPBK_CHAN_MASK | LPBK_MODE_MASK | LPBK_EN_MASK,
  		      FIELD_PREP(LPBK_CHAN_MASK, chan) |
-@@ -1718,6 +1718,8 @@ static int airhoha_set_gdm2_loopback(str
+@@ -1719,6 +1719,8 @@ static int airhoha_set_gdm2_loopback(str
  	airoha_fe_clear(eth, REG_FE_VIP_PORT_EN, BIT(2));
  	airoha_fe_clear(eth, REG_FE_IFC_PORT_EN, BIT(2));
  
@@ -47,7 +47,7 @@ Signed-off-by: Paolo Abeni <pabeni at redhat.com>
  	src_port = eth->soc->ops.get_src_port_id(port, nbq);
  	if (src_port < 0)
  		return src_port;
-@@ -1731,7 +1733,7 @@ static int airhoha_set_gdm2_loopback(str
+@@ -1732,7 +1734,7 @@ static int airhoha_set_gdm2_loopback(str
  		      SP_CPORT_MASK(val),
  		      FE_PSE_PORT_CDM2 << __ffs(SP_CPORT_MASK(val)));
  
@@ -56,7 +56,7 @@ Signed-off-by: Paolo Abeni <pabeni at redhat.com>
  		airoha_fe_rmw(eth, REG_SRC_PORT_FC_MAP6,
  			      FC_ID_OF_SRC_PORT24_MASK,
  			      FIELD_PREP(FC_ID_OF_SRC_PORT24_MASK, 2));
-@@ -1900,6 +1902,22 @@ static bool airoha_dev_tx_queue_busy(str
+@@ -1901,6 +1903,22 @@ static bool airoha_dev_tx_queue_busy(str
  	return index >= tail;
  }
  
@@ -79,7 +79,7 @@ Signed-off-by: Paolo Abeni <pabeni at redhat.com>
  static netdev_tx_t airoha_dev_xmit(struct sk_buff *skb,
  				   struct net_device *dev)
  {
-@@ -1940,7 +1958,7 @@ static netdev_tx_t airoha_dev_xmit(struc
+@@ -1941,7 +1959,7 @@ static netdev_tx_t airoha_dev_xmit(struc
  		}
  	}
  
@@ -88,7 +88,7 @@ Signed-off-by: Paolo Abeni <pabeni at redhat.com>
  	msg1 = FIELD_PREP(QDMA_ETH_TXMSG_FPORT_MASK, fport) |
  	       FIELD_PREP(QDMA_ETH_TXMSG_METER_MASK, 0x7f);
  
-@@ -3102,6 +3120,35 @@ static int airoha_en7581_get_src_port_id
+@@ -3103,6 +3121,35 @@ static int airoha_en7581_get_src_port_id
  	return -EINVAL;
  }
  
@@ -124,7 +124,7 @@ Signed-off-by: Paolo Abeni <pabeni at redhat.com>
  static const struct airoha_eth_soc_data en7581_soc_data = {
  	.version = 0x7581,
  	.xsi_rsts_names = en7581_xsi_rsts_names,
-@@ -3112,8 +3159,19 @@ static const struct airoha_eth_soc_data
+@@ -3113,8 +3160,19 @@ static const struct airoha_eth_soc_data
  	},
  };
  
diff --git a/target/linux/airoha/patches-6.6/103-v6.19-net-airoha-Remove-code-duplication-in-airoha_regs.h.patch b/target/linux/airoha/patches-6.6/103-v6.19-net-airoha-Remove-code-duplication-in-airoha_regs.h.patch
index 654f287b14..68f22a5af4 100644
--- a/target/linux/airoha/patches-6.6/103-v6.19-net-airoha-Remove-code-duplication-in-airoha_regs.h.patch
+++ b/target/linux/airoha/patches-6.6/103-v6.19-net-airoha-Remove-code-duplication-in-airoha_regs.h.patch
@@ -172,7 +172,7 @@ Signed-off-by: Jakub Kicinski <kuba at kernel.org>
  		      MBI_RX_AGE_SEL_MASK | MBI_TX_AGE_SEL_MASK,
  		      FIELD_PREP(MBI_RX_AGE_SEL_MASK, 3) |
  		      FIELD_PREP(MBI_TX_AGE_SEL_MASK, 3));
-@@ -1697,7 +1697,7 @@ static int airhoha_set_gdm2_loopback(str
+@@ -1698,7 +1698,7 @@ static int airhoha_set_gdm2_loopback(str
  	pse_port = port->id == AIROHA_GDM3_IDX ? FE_PSE_PORT_GDM3
  					       : FE_PSE_PORT_GDM4;
  	airoha_set_gdm_port_fwd_cfg(eth, REG_GDM_FWD_CFG(2), pse_port);
diff --git a/target/linux/airoha/patches-6.6/104-6.19-net-airoha-Fix-a-copy-and-paste-bug-in-probe.patch b/target/linux/airoha/patches-6.6/104-6.19-net-airoha-Fix-a-copy-and-paste-bug-in-probe.patch
index e87035ec54..0002556fe0 100644
--- a/target/linux/airoha/patches-6.6/104-6.19-net-airoha-Fix-a-copy-and-paste-bug-in-probe.patch
+++ b/target/linux/airoha/patches-6.6/104-6.19-net-airoha-Fix-a-copy-and-paste-bug-in-probe.patch
@@ -19,7 +19,7 @@ Signed-off-by: Jakub Kicinski <kuba at kernel.org>
 
 --- a/drivers/net/ethernet/airoha/airoha_eth.c
 +++ b/drivers/net/ethernet/airoha/airoha_eth.c
-@@ -2990,11 +2990,11 @@ static int airoha_probe(struct platform_
+@@ -2991,11 +2991,11 @@ static int airoha_probe(struct platform_
  		return err;
  	}
  
diff --git a/target/linux/airoha/patches-6.6/104-v6.16-net-airoha-Fix-an-error-handling-path-in-airoha_prob.patch b/target/linux/airoha/patches-6.6/104-v6.16-net-airoha-Fix-an-error-handling-path-in-airoha_prob.patch
index 58e48cb8d0..fd1c9f0dc3 100644
--- a/target/linux/airoha/patches-6.6/104-v6.16-net-airoha-Fix-an-error-handling-path-in-airoha_prob.patch
+++ b/target/linux/airoha/patches-6.6/104-v6.16-net-airoha-Fix-an-error-handling-path-in-airoha_prob.patch
@@ -19,7 +19,7 @@ Signed-off-by: Jakub Kicinski <kuba at kernel.org>
 
 --- a/drivers/net/ethernet/airoha/airoha_eth.c
 +++ b/drivers/net/ethernet/airoha/airoha_eth.c
-@@ -3044,6 +3044,7 @@ static int airoha_probe(struct platform_
+@@ -3045,6 +3045,7 @@ static int airoha_probe(struct platform_
  error_napi_stop:
  	for (i = 0; i < ARRAY_SIZE(eth->qdma); i++)
  		airoha_qdma_stop_napi(&eth->qdma[i]);
diff --git a/target/linux/airoha/patches-6.6/107-v6.19-pwm-airoha-Add-support-for-EN7581-SoC.patch b/target/linux/airoha/patches-6.6/107-v6.19-pwm-airoha-Add-support-for-EN7581-SoC.patch
index 253fa37913..6774803057 100644
--- a/target/linux/airoha/patches-6.6/107-v6.19-pwm-airoha-Add-support-for-EN7581-SoC.patch
+++ b/target/linux/airoha/patches-6.6/107-v6.19-pwm-airoha-Add-support-for-EN7581-SoC.patch
@@ -35,9 +35,9 @@ Signed-off-by: Uwe Kleine-König <ukleinek at kernel.org>
 
 --- a/drivers/pwm/Kconfig
 +++ b/drivers/pwm/Kconfig
-@@ -54,6 +54,16 @@ config PWM_ADP5585
- 	  This option enables support for the PWM function found in the Analog
- 	  Devices ADP5585.
+@@ -51,6 +51,16 @@ config PWM_AB8500
+ 	  To compile this driver as a module, choose M here: the module
+ 	  will be called pwm-ab8500.
  
 +config PWM_AIROHA
 +	tristate "Airoha PWM support"
diff --git a/target/linux/airoha/patches-6.6/116-02-net-airoha-deassert-XSI-line-on-hw-init.patch b/target/linux/airoha/patches-6.6/116-02-net-airoha-deassert-XSI-line-on-hw-init.patch
index d7e312dfcf..e1e6baed40 100644
--- a/target/linux/airoha/patches-6.6/116-02-net-airoha-deassert-XSI-line-on-hw-init.patch
+++ b/target/linux/airoha/patches-6.6/116-02-net-airoha-deassert-XSI-line-on-hw-init.patch
@@ -13,7 +13,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
 
 --- a/drivers/net/ethernet/airoha/airoha_eth.c
 +++ b/drivers/net/ethernet/airoha/airoha_eth.c
-@@ -1383,6 +1383,10 @@ static int airoha_hw_init(struct platfor
+@@ -1384,6 +1384,10 @@ static int airoha_hw_init(struct platfor
  	if (err)
  		return err;
  
diff --git a/target/linux/airoha/patches-6.6/116-06-net-airoha-add-initial-fixup-for-GDM3-4-port-support.patch b/target/linux/airoha/patches-6.6/116-06-net-airoha-add-initial-fixup-for-GDM3-4-port-support.patch
index 7b395bfcb7..5750bc3dbb 100644
--- a/target/linux/airoha/patches-6.6/116-06-net-airoha-add-initial-fixup-for-GDM3-4-port-support.patch
+++ b/target/linux/airoha/patches-6.6/116-06-net-airoha-add-initial-fixup-for-GDM3-4-port-support.patch
@@ -28,7 +28,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
  
  	airoha_fe_crsn_qsel_init(eth);
  
-@@ -1625,7 +1627,8 @@ static int airoha_dev_open(struct net_de
+@@ -1626,7 +1628,8 @@ static int airoha_dev_open(struct net_de
  	if (err)
  		return err;
  
diff --git a/target/linux/airoha/patches-6.6/116-07-airoha-ethernet-drop-xsi-mac-reset.patch b/target/linux/airoha/patches-6.6/116-07-airoha-ethernet-drop-xsi-mac-reset.patch
index 508ae97154..5da8a24a7e 100644
--- a/target/linux/airoha/patches-6.6/116-07-airoha-ethernet-drop-xsi-mac-reset.patch
+++ b/target/linux/airoha/patches-6.6/116-07-airoha-ethernet-drop-xsi-mac-reset.patch
@@ -15,7 +15,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
 
 --- a/drivers/net/ethernet/airoha/airoha_eth.c
 +++ b/drivers/net/ethernet/airoha/airoha_eth.c
-@@ -3095,7 +3095,6 @@ static void airoha_remove(struct platfor
+@@ -3096,7 +3096,6 @@ static void airoha_remove(struct platfor
  }
  
  static const char * const en7581_xsi_rsts_names[] = {
@@ -23,7 +23,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
  	"hsi0-mac",
  	"hsi1-mac",
  	"hsi-mac",
-@@ -3127,7 +3126,6 @@ static int airoha_en7581_get_src_port_id
+@@ -3128,7 +3127,6 @@ static int airoha_en7581_get_src_port_id
  }
  
  static const char * const an7583_xsi_rsts_names[] = {
diff --git a/target/linux/airoha/patches-6.6/116-08-net-phylink-add-.pcs_link_down-PCS-OP.patch b/target/linux/airoha/patches-6.6/116-08-net-phylink-add-.pcs_link_down-PCS-OP.patch
index e6a39b4680..c16d4c8686 100644
--- a/target/linux/airoha/patches-6.6/116-08-net-phylink-add-.pcs_link_down-PCS-OP.patch
+++ b/target/linux/airoha/patches-6.6/116-08-net-phylink-add-.pcs_link_down-PCS-OP.patch
@@ -22,8 +22,8 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
 
 --- a/drivers/net/phy/phylink.c
 +++ b/drivers/net/phy/phylink.c
-@@ -1088,6 +1088,12 @@ static unsigned int phylink_inband_caps(
- 	return phylink_pcs_inband_caps(pcs, interface);
+@@ -1106,6 +1106,12 @@ static void phylink_pcs_link_up(struct p
+ 		pcs->ops->pcs_link_up(pcs, neg_mode, interface, speed, duplex);
  }
  
 +static void phylink_pcs_link_down(struct phylink_pcs *pcs)
@@ -35,7 +35,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
  static void phylink_pcs_poll_stop(struct phylink *pl)
  {
  	if (pl->cfg_link_an_mode == MLO_AN_INBAND)
-@@ -1642,6 +1648,8 @@ static void phylink_link_down(struct phy
+@@ -1437,6 +1443,8 @@ static void phylink_link_down(struct phy
  
  	if (ndev)
  		netif_carrier_off(ndev);
@@ -46,7 +46,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
  	phylink_info(pl, "Link is Down\n");
 --- a/include/linux/phylink.h
 +++ b/include/linux/phylink.h
-@@ -430,6 +430,7 @@ struct phylink_pcs {
+@@ -507,6 +507,7 @@ struct phylink_pcs {
   * @pcs_an_restart: restart 802.3z BaseX autonegotiation.
   * @pcs_link_up: program the PCS for the resolved link configuration
   *               (where necessary).
@@ -54,7 +54,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
   */
  struct phylink_pcs_ops {
  	int (*pcs_validate)(struct phylink_pcs *pcs, unsigned long *supported,
-@@ -450,6 +451,7 @@ struct phylink_pcs_ops {
+@@ -526,6 +527,7 @@ struct phylink_pcs_ops {
  	void (*pcs_an_restart)(struct phylink_pcs *pcs);
  	void (*pcs_link_up)(struct phylink_pcs *pcs, unsigned int neg_mode,
  			    phy_interface_t interface, int speed, int duplex);
diff --git a/target/linux/airoha/patches-6.6/116-09-net-pcs-airoha-add-PCS-driver-for-Airoha-SoC.patch b/target/linux/airoha/patches-6.6/116-09-net-pcs-airoha-add-PCS-driver-for-Airoha-SoC.patch
index 5bd7da4a43..cde7048967 100644
--- a/target/linux/airoha/patches-6.6/116-09-net-pcs-airoha-add-PCS-driver-for-Airoha-SoC.patch
+++ b/target/linux/airoha/patches-6.6/116-09-net-pcs-airoha-add-PCS-driver-for-Airoha-SoC.patch
@@ -40,7 +40,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
  endmenu
 --- a/drivers/net/pcs/Makefile
 +++ b/drivers/net/pcs/Makefile
-@@ -9,3 +9,5 @@ obj-$(CONFIG_PCS_LYNX)		+= pcs-lynx.o
+@@ -8,3 +8,5 @@ obj-$(CONFIG_PCS_LYNX)		+= pcs-lynx.o
  obj-$(CONFIG_PCS_MTK_LYNXI)	+= pcs-mtk-lynxi.o
  obj-$(CONFIG_PCS_RZN1_MIIC)	+= pcs-rzn1-miic.o
  obj-$(CONFIG_PCS_MTK_USXGMII)	+= pcs-mtk-usxgmii.o
diff --git a/target/linux/airoha/patches-6.6/116-10-net-airoha-add-phylink-support-for-GDM2-4.patch b/target/linux/airoha/patches-6.6/116-10-net-airoha-add-phylink-support-for-GDM2-4.patch
index 8ce66b706a..ac17676436 100644
--- a/target/linux/airoha/patches-6.6/116-10-net-airoha-add-phylink-support-for-GDM2-4.patch
+++ b/target/linux/airoha/patches-6.6/116-10-net-airoha-add-phylink-support-for-GDM2-4.patch
@@ -35,7 +35,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
  static void airoha_set_macaddr(struct airoha_gdm_port *port, const u8 *addr)
  {
  	struct airoha_eth *eth = port->qdma->eth;
-@@ -1622,6 +1628,17 @@ static int airoha_dev_open(struct net_de
+@@ -1623,6 +1629,17 @@ static int airoha_dev_open(struct net_de
  	struct airoha_gdm_port *port = netdev_priv(dev);
  	struct airoha_qdma *qdma = port->qdma;
  
@@ -53,7 +53,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
  	netif_tx_start_all_queues(dev);
  	err = airoha_set_vip_for_gdm_port(port, true);
  	if (err)
-@@ -1675,6 +1692,11 @@ static int airoha_dev_stop(struct net_de
+@@ -1676,6 +1693,11 @@ static int airoha_dev_stop(struct net_de
  		}
  	}
  
@@ -65,7 +65,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
  	return 0;
  }
  
-@@ -2823,6 +2845,20 @@ static const struct ethtool_ops airoha_e
+@@ -2824,6 +2846,20 @@ static const struct ethtool_ops airoha_e
  	.get_link		= ethtool_op_get_link,
  };
  
@@ -86,7 +86,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
  static int airoha_metadata_dst_alloc(struct airoha_gdm_port *port)
  {
  	int i;
-@@ -2867,6 +2903,99 @@ bool airoha_is_valid_gdm_port(struct air
+@@ -2868,6 +2904,99 @@ bool airoha_is_valid_gdm_port(struct air
  	return false;
  }
  
@@ -186,7 +186,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
  static int airoha_alloc_gdm_port(struct airoha_eth *eth,
  				 struct device_node *np, int index)
  {
-@@ -2945,6 +3074,12 @@ static int airoha_alloc_gdm_port(struct
+@@ -2946,6 +3075,12 @@ static int airoha_alloc_gdm_port(struct
  	if (err)
  		return err;
  
@@ -199,7 +199,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
  	err = register_netdev(dev);
  	if (err)
  		goto free_metadata_dst;
-@@ -3060,6 +3195,10 @@ error_hw_cleanup:
+@@ -3061,6 +3196,10 @@ error_hw_cleanup:
  		if (port && port->dev->reg_state == NETREG_REGISTERED) {
  			unregister_netdev(port->dev);
  			airoha_metadata_dst_free(port);
@@ -210,7 +210,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
  		}
  	}
  	free_netdev(eth->napi_dev);
-@@ -3087,6 +3226,10 @@ static void airoha_remove(struct platfor
+@@ -3088,6 +3227,10 @@ static void airoha_remove(struct platfor
  		airoha_dev_stop(port->dev);
  		unregister_netdev(port->dev);
  		airoha_metadata_dst_free(port);
diff --git a/target/linux/airoha/patches-6.6/120-02-pinctrl-mediatek-airoha-generalize-pins-group-functi.patch b/target/linux/airoha/patches-6.6/120-02-pinctrl-mediatek-airoha-generalize-pins-group-functi.patch
index b7940f0603..65f21aa6ac 100644
--- a/target/linux/airoha/patches-6.6/120-02-pinctrl-mediatek-airoha-generalize-pins-group-functi.patch
+++ b/target/linux/airoha/patches-6.6/120-02-pinctrl-mediatek-airoha-generalize-pins-group-functi.patch
@@ -39,7 +39,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
  	}
  
  #define PINCTRL_CONF_DESC(p, offset, mask)				\
-@@ -362,16 +362,46 @@ struct airoha_pinctrl_gpiochip {
+@@ -356,16 +356,46 @@ struct airoha_pinctrl_gpiochip {
  	u32 irq_type[AIROHA_NUM_PINS];
  };
  
@@ -87,7 +87,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
  	PINCTRL_PIN(0, "uart1_txd"),
  	PINCTRL_PIN(1, "uart1_rxd"),
  	PINCTRL_PIN(2, "i2c_scl"),
-@@ -432,172 +462,172 @@ static struct pinctrl_pin_desc airoha_pi
+@@ -426,172 +456,172 @@ static struct pinctrl_pin_desc airoha_pi
  	PINCTRL_PIN(63, "pcie_reset2"),
  };
  
@@ -426,7 +426,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
  };
  
  static const char *const pon_groups[] = { "pon" };
-@@ -1960,33 +1990,33 @@ static const struct airoha_pinctrl_func_
+@@ -1954,33 +1984,33 @@ static const struct airoha_pinctrl_func_
  	},
  };
  
@@ -485,7 +485,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
  	PINCTRL_CONF_DESC(0, REG_I2C_SDA_PU, UART1_TXD_PU_MASK),
  	PINCTRL_CONF_DESC(1, REG_I2C_SDA_PU, UART1_RXD_PU_MASK),
  	PINCTRL_CONF_DESC(2, REG_I2C_SDA_PU, I2C_SDA_PU_MASK),
-@@ -2047,7 +2077,7 @@ static const struct airoha_pinctrl_conf
+@@ -2041,7 +2071,7 @@ static const struct airoha_pinctrl_conf
  	PINCTRL_CONF_DESC(63, REG_I2C_SDA_PU, PCIE2_RESET_PU_MASK),
  };
  
@@ -494,7 +494,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
  	PINCTRL_CONF_DESC(0, REG_I2C_SDA_PD, UART1_TXD_PD_MASK),
  	PINCTRL_CONF_DESC(1, REG_I2C_SDA_PD, UART1_RXD_PD_MASK),
  	PINCTRL_CONF_DESC(2, REG_I2C_SDA_PD, I2C_SDA_PD_MASK),
-@@ -2108,7 +2138,7 @@ static const struct airoha_pinctrl_conf
+@@ -2102,7 +2132,7 @@ static const struct airoha_pinctrl_conf
  	PINCTRL_CONF_DESC(63, REG_I2C_SDA_PD, PCIE2_RESET_PD_MASK),
  };
  
@@ -503,7 +503,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
  	PINCTRL_CONF_DESC(0, REG_I2C_SDA_E2, UART1_TXD_E2_MASK),
  	PINCTRL_CONF_DESC(1, REG_I2C_SDA_E2, UART1_RXD_E2_MASK),
  	PINCTRL_CONF_DESC(2, REG_I2C_SDA_E2, I2C_SDA_E2_MASK),
-@@ -2169,7 +2199,7 @@ static const struct airoha_pinctrl_conf
+@@ -2163,7 +2193,7 @@ static const struct airoha_pinctrl_conf
  	PINCTRL_CONF_DESC(63, REG_I2C_SDA_E2, PCIE2_RESET_E2_MASK),
  };
  
@@ -512,7 +512,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
  	PINCTRL_CONF_DESC(0, REG_I2C_SDA_E4, UART1_TXD_E4_MASK),
  	PINCTRL_CONF_DESC(1, REG_I2C_SDA_E4, UART1_RXD_E4_MASK),
  	PINCTRL_CONF_DESC(2, REG_I2C_SDA_E4, I2C_SDA_E4_MASK),
-@@ -2230,7 +2260,7 @@ static const struct airoha_pinctrl_conf
+@@ -2224,7 +2254,7 @@ static const struct airoha_pinctrl_conf
  	PINCTRL_CONF_DESC(63, REG_I2C_SDA_E4, PCIE2_RESET_E4_MASK),
  };
  
@@ -521,7 +521,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
  	PINCTRL_CONF_DESC(61, REG_PCIE_RESET_OD, PCIE0_RESET_OD_MASK),
  	PINCTRL_CONF_DESC(62, REG_PCIE_RESET_OD, PCIE1_RESET_OD_MASK),
  	PINCTRL_CONF_DESC(63, REG_PCIE_RESET_OD, PCIE2_RESET_OD_MASK),
-@@ -2552,12 +2582,17 @@ airoha_pinctrl_get_conf_reg(const struct
+@@ -2551,12 +2581,17 @@ airoha_pinctrl_get_conf_reg(const struct
  }
  
  static int airoha_pinctrl_get_conf(struct airoha_pinctrl *pinctrl,
@@ -542,7 +542,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
  	if (!reg)
  		return -EINVAL;
  
-@@ -2570,12 +2605,17 @@ static int airoha_pinctrl_get_conf(struc
+@@ -2569,12 +2604,17 @@ static int airoha_pinctrl_get_conf(struc
  }
  
  static int airoha_pinctrl_set_conf(struct airoha_pinctrl *pinctrl,
@@ -563,7 +563,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
  	if (!reg)
  		return -EINVAL;
  
-@@ -2588,44 +2628,34 @@ static int airoha_pinctrl_set_conf(struc
+@@ -2587,44 +2627,34 @@ static int airoha_pinctrl_set_conf(struc
  }
  
  #define airoha_pinctrl_get_pullup_conf(pinctrl, pin, val)			\
@@ -618,7 +618,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
  				(pin), (val))
  
  static int airoha_pinconf_get_direction(struct pinctrl_dev *pctrl_dev, u32 p)
-@@ -2804,12 +2834,13 @@ static int airoha_pinconf_set(struct pin
+@@ -2803,12 +2833,13 @@ static int airoha_pinconf_set(struct pin
  static int airoha_pinconf_group_get(struct pinctrl_dev *pctrl_dev,
  				    unsigned int group, unsigned long *config)
  {
@@ -634,7 +634,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
  				       config))
  			return -ENOTSUPP;
  
-@@ -2826,13 +2857,14 @@ static int airoha_pinconf_group_set(stru
+@@ -2825,13 +2856,14 @@ static int airoha_pinconf_group_set(stru
  				    unsigned int group, unsigned long *configs,
  				    unsigned int num_configs)
  {
@@ -651,7 +651,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
  					 configs, num_configs);
  		if (err)
  			return err;
-@@ -2858,23 +2890,16 @@ static const struct pinctrl_ops airoha_p
+@@ -2857,23 +2889,16 @@ static const struct pinctrl_ops airoha_p
  	.dt_free_map = pinconf_generic_dt_free_map,
  };
  
@@ -678,7 +678,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
  	pinctrl = devm_kzalloc(dev, sizeof(*pinctrl), GFP_KERNEL);
  	if (!pinctrl)
  		return -ENOMEM;
-@@ -2889,14 +2914,23 @@ static int airoha_pinctrl_probe(struct p
+@@ -2888,14 +2913,23 @@ static int airoha_pinctrl_probe(struct p
  
  	pinctrl->chip_scu = map;
  
@@ -704,8 +704,8 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
 +		const struct pingroup *grp = &data->grps[i];
  
  		err = pinctrl_generic_add_group(pinctrl->ctrl, grp->name,
- 						grp->pins, grp->npins,
-@@ -2909,10 +2943,10 @@ static int airoha_pinctrl_probe(struct p
+ 						(int *)grp->pins, grp->npins,
+@@ -2908,10 +2942,10 @@ static int airoha_pinctrl_probe(struct p
  	}
  
  	/* build functions */
@@ -716,9 +716,9 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
 -		func = &airoha_pinctrl_funcs[i];
 +		func = &data->funcs[i];
  		err = pinmux_generic_add_function(pinctrl->ctrl,
- 						  func->desc.func.name,
- 						  func->desc.func.groups,
-@@ -2925,6 +2959,10 @@ static int airoha_pinctrl_probe(struct p
+ 						  func->desc.name,
+ 						  func->desc.group_names,
+@@ -2924,6 +2958,10 @@ static int airoha_pinctrl_probe(struct p
  		}
  	}
  
@@ -729,7 +729,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
  	err = pinctrl_enable(pinctrl->ctrl);
  	if (err)
  		return err;
-@@ -2933,8 +2971,39 @@ static int airoha_pinctrl_probe(struct p
+@@ -2932,8 +2970,39 @@ static int airoha_pinctrl_probe(struct p
  	return airoha_pinctrl_add_gpiochip(pinctrl, pdev);
  }
  
diff --git a/target/linux/airoha/patches-6.6/120-03-pinctrl-airoha-convert-PHY-LED-GPIO-to-macro.patch b/target/linux/airoha/patches-6.6/120-03-pinctrl-airoha-convert-PHY-LED-GPIO-to-macro.patch
index df1d96699e..0be484ad6b 100644
--- a/target/linux/airoha/patches-6.6/120-03-pinctrl-airoha-convert-PHY-LED-GPIO-to-macro.patch
+++ b/target/linux/airoha/patches-6.6/120-03-pinctrl-airoha-convert-PHY-LED-GPIO-to-macro.patch
@@ -15,7 +15,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
 
 --- a/drivers/pinctrl/mediatek/pinctrl-airoha.c
 +++ b/drivers/pinctrl/mediatek/pinctrl-airoha.c
-@@ -1478,516 +1478,110 @@ static const struct airoha_pinctrl_func_
+@@ -1472,516 +1472,110 @@ static const struct airoha_pinctrl_func_
  	},
  };
  
diff --git a/target/linux/airoha/patches-6.6/120-04-pinctrl-airoha-convert-PWM-GPIO-to-macro.patch b/target/linux/airoha/patches-6.6/120-04-pinctrl-airoha-convert-PWM-GPIO-to-macro.patch
index e541cdd610..948d41dfd0 100644
--- a/target/linux/airoha/patches-6.6/120-04-pinctrl-airoha-convert-PWM-GPIO-to-macro.patch
+++ b/target/linux/airoha/patches-6.6/120-04-pinctrl-airoha-convert-PWM-GPIO-to-macro.patch
@@ -16,7 +16,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
 
 --- a/drivers/pinctrl/mediatek/pinctrl-airoha.c
 +++ b/drivers/pinctrl/mediatek/pinctrl-airoha.c
-@@ -1078,404 +1078,75 @@ static const struct airoha_pinctrl_func_
+@@ -1072,404 +1072,75 @@ static const struct airoha_pinctrl_func_
  };
  
  /* PWM */
diff --git a/target/linux/airoha/patches-6.6/120-05-pinctrl-airoha-add-support-for-Airoha-AN7583-PINs.patch b/target/linux/airoha/patches-6.6/120-05-pinctrl-airoha-add-support-for-Airoha-AN7583-PINs.patch
index 37d3b29f2d..c4ba9f13b8 100644
--- a/target/linux/airoha/patches-6.6/120-05-pinctrl-airoha-add-support-for-Airoha-AN7583-PINs.patch
+++ b/target/linux/airoha/patches-6.6/120-05-pinctrl-airoha-add-support-for-Airoha-AN7583-PINs.patch
@@ -15,7 +15,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
 
 --- a/drivers/pinctrl/mediatek/pinctrl-airoha.c
 +++ b/drivers/pinctrl/mediatek/pinctrl-airoha.c
-@@ -75,6 +75,7 @@
+@@ -69,6 +69,7 @@
  #define GPIO_PCM_SPI_CS3_MODE_MASK		BIT(20)
  #define GPIO_PCM_SPI_CS2_MODE_P156_MASK		BIT(19)
  #define GPIO_PCM_SPI_CS2_MODE_P128_MASK		BIT(18)
@@ -23,7 +23,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
  #define GPIO_PCM_SPI_CS1_MODE_MASK		BIT(17)
  #define GPIO_PCM_SPI_MODE_MASK			BIT(16)
  #define GPIO_PCM2_MODE_MASK			BIT(13)
-@@ -132,6 +133,8 @@
+@@ -126,6 +127,8 @@
  
  /* CONF */
  #define REG_I2C_SDA_E2				0x001c
@@ -32,7 +32,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
  #define SPI_MISO_E2_MASK			BIT(14)
  #define SPI_MOSI_E2_MASK			BIT(13)
  #define SPI_CLK_E2_MASK				BIT(12)
-@@ -139,12 +142,16 @@
+@@ -133,12 +136,16 @@
  #define PCIE2_RESET_E2_MASK			BIT(10)
  #define PCIE1_RESET_E2_MASK			BIT(9)
  #define PCIE0_RESET_E2_MASK			BIT(8)
@@ -49,7 +49,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
  #define SPI_MISO_E4_MASK			BIT(14)
  #define SPI_MOSI_E4_MASK			BIT(13)
  #define SPI_CLK_E4_MASK				BIT(12)
-@@ -152,6 +159,8 @@
+@@ -146,6 +153,8 @@
  #define PCIE2_RESET_E4_MASK			BIT(10)
  #define PCIE1_RESET_E4_MASK			BIT(9)
  #define PCIE0_RESET_E4_MASK			BIT(8)
@@ -58,7 +58,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
  #define UART1_RXD_E4_MASK			BIT(3)
  #define UART1_TXD_E4_MASK			BIT(2)
  #define I2C_SCL_E4_MASK				BIT(1)
-@@ -163,6 +172,8 @@
+@@ -157,6 +166,8 @@
  #define REG_GPIO_H_E4				0x0030
  
  #define REG_I2C_SDA_PU				0x0044
@@ -67,7 +67,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
  #define SPI_MISO_PU_MASK			BIT(14)
  #define SPI_MOSI_PU_MASK			BIT(13)
  #define SPI_CLK_PU_MASK				BIT(12)
-@@ -170,12 +181,16 @@
+@@ -164,12 +175,16 @@
  #define PCIE2_RESET_PU_MASK			BIT(10)
  #define PCIE1_RESET_PU_MASK			BIT(9)
  #define PCIE0_RESET_PU_MASK			BIT(8)
@@ -84,7 +84,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
  #define SPI_MISO_PD_MASK			BIT(14)
  #define SPI_MOSI_PD_MASK			BIT(13)
  #define SPI_CLK_PD_MASK				BIT(12)
-@@ -183,6 +198,8 @@
+@@ -177,6 +192,8 @@
  #define PCIE2_RESET_PD_MASK			BIT(10)
  #define PCIE1_RESET_PD_MASK			BIT(9)
  #define PCIE0_RESET_PD_MASK			BIT(8)
@@ -93,7 +93,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
  #define UART1_RXD_PD_MASK			BIT(3)
  #define UART1_TXD_PD_MASK			BIT(2)
  #define I2C_SCL_PD_MASK				BIT(1)
-@@ -630,10 +647,223 @@ static const struct pingroup en7581_pinc
+@@ -624,10 +641,223 @@ static const struct pingroup en7581_pinc
  	PINCTRL_PIN_GROUP("pcie_reset2", en7581_pcie_reset2),
  };
  
@@ -317,7 +317,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
  static const char *const uart_groups[] = { "uart2", "uart2_cts_rts", "hsuart",
  					   "hsuart_cts_rts", "uart4",
  					   "uart5" };
-@@ -646,11 +876,16 @@ static const char *const pcm_spi_groups[
+@@ -640,11 +870,16 @@ static const char *const pcm_spi_groups[
  					      "pcm_spi_cs2_p156",
  					      "pcm_spi_cs2_p128",
  					      "pcm_spi_cs3", "pcm_spi_cs4" };
@@ -334,7 +334,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
  static const char *const pwm_groups[] = { "gpio0", "gpio1",
  					  "gpio2", "gpio3",
  					  "gpio4", "gpio5",
-@@ -689,6 +924,22 @@ static const char *const phy3_led1_group
+@@ -683,6 +918,22 @@ static const char *const phy3_led1_group
  						"gpio45", "gpio46" };
  static const char *const phy4_led1_groups[] = { "gpio43", "gpio44",
  						"gpio45", "gpio46" };
@@ -357,7 +357,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
  
  static const struct airoha_pinctrl_func_group pon_func_group[] = {
  	{
-@@ -766,6 +1017,25 @@ static const struct airoha_pinctrl_func_
+@@ -760,6 +1011,25 @@ static const struct airoha_pinctrl_func_
  	},
  };
  
@@ -383,7 +383,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
  static const struct airoha_pinctrl_func_group uart_func_group[] = {
  	{
  		.name = "uart2",
-@@ -1007,6 +1277,73 @@ static const struct airoha_pinctrl_func_
+@@ -1001,6 +1271,73 @@ static const struct airoha_pinctrl_func_
  	},
  };
  
@@ -457,7 +457,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
  static const struct airoha_pinctrl_func_group i2s_func_group[] = {
  	{
  		.name = "i2s",
-@@ -1077,6 +1414,28 @@ static const struct airoha_pinctrl_func_
+@@ -1071,6 +1408,28 @@ static const struct airoha_pinctrl_func_
  	},
  };
  
@@ -486,7 +486,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
  /* PWM */
  #define AIROHA_PINCTRL_PWM(gpio, mux_val)		\
  	{						\
-@@ -1255,6 +1614,94 @@ static const struct airoha_pinctrl_func_
+@@ -1249,6 +1608,94 @@ static const struct airoha_pinctrl_func_
  			       LAN3_LED_MAPPING_MASK, LAN3_PHY_LED_MAP(2)),
  };
  
@@ -581,7 +581,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
  static const struct airoha_pinctrl_func en7581_pinctrl_funcs[] = {
  	PINCTRL_FUNC_DESC("pon", pon),
  	PINCTRL_FUNC_DESC("tod_1pps", tod_1pps),
-@@ -1281,6 +1728,31 @@ static const struct airoha_pinctrl_func
+@@ -1275,6 +1722,31 @@ static const struct airoha_pinctrl_func
  	PINCTRL_FUNC_DESC("phy4_led1", phy4_led1),
  };
  
@@ -613,7 +613,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
  static const struct airoha_pinctrl_conf en7581_pinctrl_pullup_conf[] = {
  	PINCTRL_CONF_DESC(0, REG_I2C_SDA_PU, UART1_TXD_PU_MASK),
  	PINCTRL_CONF_DESC(1, REG_I2C_SDA_PU, UART1_RXD_PU_MASK),
-@@ -1342,6 +1814,62 @@ static const struct airoha_pinctrl_conf
+@@ -1336,6 +1808,62 @@ static const struct airoha_pinctrl_conf
  	PINCTRL_CONF_DESC(63, REG_I2C_SDA_PU, PCIE2_RESET_PU_MASK),
  };
  
@@ -676,7 +676,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
  static const struct airoha_pinctrl_conf en7581_pinctrl_pulldown_conf[] = {
  	PINCTRL_CONF_DESC(0, REG_I2C_SDA_PD, UART1_TXD_PD_MASK),
  	PINCTRL_CONF_DESC(1, REG_I2C_SDA_PD, UART1_RXD_PD_MASK),
-@@ -1403,6 +1931,62 @@ static const struct airoha_pinctrl_conf
+@@ -1397,6 +1925,62 @@ static const struct airoha_pinctrl_conf
  	PINCTRL_CONF_DESC(63, REG_I2C_SDA_PD, PCIE2_RESET_PD_MASK),
  };
  
@@ -739,7 +739,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
  static const struct airoha_pinctrl_conf en7581_pinctrl_drive_e2_conf[] = {
  	PINCTRL_CONF_DESC(0, REG_I2C_SDA_E2, UART1_TXD_E2_MASK),
  	PINCTRL_CONF_DESC(1, REG_I2C_SDA_E2, UART1_RXD_E2_MASK),
-@@ -1464,6 +2048,62 @@ static const struct airoha_pinctrl_conf
+@@ -1458,6 +2042,62 @@ static const struct airoha_pinctrl_conf
  	PINCTRL_CONF_DESC(63, REG_I2C_SDA_E2, PCIE2_RESET_E2_MASK),
  };
  
@@ -802,7 +802,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
  static const struct airoha_pinctrl_conf en7581_pinctrl_drive_e4_conf[] = {
  	PINCTRL_CONF_DESC(0, REG_I2C_SDA_E4, UART1_TXD_E4_MASK),
  	PINCTRL_CONF_DESC(1, REG_I2C_SDA_E4, UART1_RXD_E4_MASK),
-@@ -1525,12 +2165,73 @@ static const struct airoha_pinctrl_conf
+@@ -1519,12 +2159,73 @@ static const struct airoha_pinctrl_conf
  	PINCTRL_CONF_DESC(63, REG_I2C_SDA_E4, PCIE2_RESET_E4_MASK),
  };
  
@@ -876,7 +876,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
  static int airoha_convert_pin_to_reg_offset(struct pinctrl_dev *pctrl_dev,
  					    struct pinctrl_gpio_range *range,
  					    int pin)
-@@ -2267,8 +2968,40 @@ static const struct airoha_pinctrl_match
+@@ -2266,8 +2967,40 @@ static const struct airoha_pinctrl_match
  	},
  };
  
diff --git a/target/linux/airoha/patches-6.6/123-01-ASoC-mediatek-move-some-header-to-global-include.patch b/target/linux/airoha/patches-6.6/123-01-ASoC-mediatek-move-some-header-to-global-include.patch
index c9cdb9a326..5016ed7503 100644
--- a/target/linux/airoha/patches-6.6/123-01-ASoC-mediatek-move-some-header-to-global-include.patch
+++ b/target/linux/airoha/patches-6.6/123-01-ASoC-mediatek-move-some-header-to-global-include.patch
@@ -62,7 +62,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
  int mtk_afe_combine_sub_dai(struct mtk_base_afe *afe)
 --- a/sound/soc/mediatek/mt2701/mt2701-afe-pcm.c
 +++ b/sound/soc/mediatek/mt2701/mt2701-afe-pcm.c
-@@ -16,8 +16,8 @@
+@@ -18,8 +18,8 @@
  
  #include "mt2701-afe-common.h"
  #include "mt2701-afe-clock-ctrl.h"
@@ -233,7 +233,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
 +#include <sound/mediatek/mtk-afe-platform-driver.h>
  #include "../common/mtk-dsp-sof-common.h"
  #include "../common/mtk-soc-card.h"
- #include "../common/mtk-soundcard-driver.h"
+ #include "mt8195-afe-clk.h"
 --- /dev/null
 +++ b/include/sound/mediatek/mtk-afe-fe-dai.h
 @@ -0,0 +1,53 @@
diff --git a/target/linux/airoha/patches-6.6/123-02-ASoC-airoha-Add-AFE-and-I2S-driver-for-Airoha-AN7581.patch b/target/linux/airoha/patches-6.6/123-02-ASoC-airoha-Add-AFE-and-I2S-driver-for-Airoha-AN7581.patch
index 00578601c4..93d2baf5c3 100644
--- a/target/linux/airoha/patches-6.6/123-02-ASoC-airoha-Add-AFE-and-I2S-driver-for-Airoha-AN7581.patch
+++ b/target/linux/airoha/patches-6.6/123-02-ASoC-airoha-Add-AFE-and-I2S-driver-for-Airoha-AN7581.patch
@@ -30,7 +30,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
 
 --- a/sound/soc/Kconfig
 +++ b/sound/soc/Kconfig
-@@ -86,6 +86,7 @@ config SND_SOC_ACPI
+@@ -78,6 +78,7 @@ config SND_SOC_ACPI
  
  # All the supported SoCs
  source "sound/soc/adi/Kconfig"
@@ -40,7 +40,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
  source "sound/soc/atmel/Kconfig"
 --- a/sound/soc/Makefile
 +++ b/sound/soc/Makefile
-@@ -40,6 +40,7 @@ obj-$(CONFIG_SND_SOC)	+= codecs/
+@@ -36,6 +36,7 @@ obj-$(CONFIG_SND_SOC)	+= codecs/
  obj-$(CONFIG_SND_SOC)	+= generic/
  obj-$(CONFIG_SND_SOC)	+= apple/
  obj-$(CONFIG_SND_SOC)	+= adi/
diff --git a/target/linux/airoha/patches-6.6/220-05-dt-bindings-phy-Add-documentation-for-Airoha-AN7581-.patch b/target/linux/airoha/patches-6.6/220-05-dt-bindings-phy-Add-documentation-for-Airoha-AN7581-.patch
index 3fc0ba7dc7..aa1de9815a 100644
--- a/target/linux/airoha/patches-6.6/220-05-dt-bindings-phy-Add-documentation-for-Airoha-AN7581-.patch
+++ b/target/linux/airoha/patches-6.6/220-05-dt-bindings-phy-Add-documentation-for-Airoha-AN7581-.patch
@@ -111,9 +111,9 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
 +
 --- a/MAINTAINERS
 +++ b/MAINTAINERS
-@@ -737,6 +737,13 @@ S:	Maintained
- F:	Documentation/devicetree/bindings/spi/airoha,en7581-snand.yaml
- F:	drivers/spi/spi-airoha-snfi.c
+@@ -647,6 +647,13 @@ S:	Supported
+ F:	fs/aio.c
+ F:	include/linux/*aio*.h
  
 +AIROHA USB PHY DRIVER
 +M:	Christian Marangi <ansuelsmth at gmail.com>
@@ -123,8 +123,8 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
 +F:	include/dt-bindings/phy/airoha,an7581-usb-phy.h
 +
  AIRSPY MEDIA DRIVER
+ M:	Antti Palosaari <crope at iki.fi>
  L:	linux-media at vger.kernel.org
- S:	Orphan
 --- /dev/null
 +++ b/include/dt-bindings/phy/airoha,an7581-usb-phy.h
 @@ -0,0 +1,11 @@
diff --git a/target/linux/airoha/patches-6.6/220-07-phy-airoha-Add-support-for-Airoha-AN7581-USB-PHY.patch b/target/linux/airoha/patches-6.6/220-07-phy-airoha-Add-support-for-Airoha-AN7581-USB-PHY.patch
index 609df08285..96c2d7cded 100644
--- a/target/linux/airoha/patches-6.6/220-07-phy-airoha-Add-support-for-Airoha-AN7581-USB-PHY.patch
+++ b/target/linux/airoha/patches-6.6/220-07-phy-airoha-Add-support-for-Airoha-AN7581-USB-PHY.patch
@@ -35,7 +35,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
 
 --- a/MAINTAINERS
 +++ b/MAINTAINERS
-@@ -742,6 +742,7 @@ M:	Christian Marangi <ansuelsmth at gmail.c
+@@ -652,6 +652,7 @@ M:	Christian Marangi <ansuelsmth at gmail.c
  L:	linux-arm-kernel at lists.infradead.org (moderated for non-subscribers)
  S:	Maintained
  F:	Documentation/devicetree/bindings/phy/airoha,an7581-usb-phy.yaml
diff --git a/target/linux/airoha/patches-6.6/220-10-PCI-mediatek-gen3-set-PHY-mode-for-Airoha-EN7581.patch b/target/linux/airoha/patches-6.6/220-10-PCI-mediatek-gen3-set-PHY-mode-for-Airoha-EN7581.patch
index 19d168db64..638d9ea9b5 100644
--- a/target/linux/airoha/patches-6.6/220-10-PCI-mediatek-gen3-set-PHY-mode-for-Airoha-EN7581.patch
+++ b/target/linux/airoha/patches-6.6/220-10-PCI-mediatek-gen3-set-PHY-mode-for-Airoha-EN7581.patch
@@ -19,7 +19,7 @@ Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
 
 --- a/drivers/pci/controller/pcie-mediatek-gen3.c
 +++ b/drivers/pci/controller/pcie-mediatek-gen3.c
-@@ -925,6 +925,12 @@ static int mtk_pcie_en7581_power_up(stru
+@@ -932,6 +932,12 @@ static int mtk_pcie_en7581_power_up(stru
  	size = lower_32_bits(resource_size(entry->res));
  	regmap_write(pbus_regmap, args[1], GENMASK(31, __fls(size)));
  




More information about the lede-commits mailing list