diff options
author | Christian Marangi <ansuelsmth@gmail.com> | 2024-04-16 16:44:41 +0200 |
---|---|---|
committer | Christian Marangi <ansuelsmth@gmail.com> | 2024-04-18 11:54:21 +0200 |
commit | 918e2fca1e818a346a5f04e11b4e9cb0d5ad6510 (patch) | |
tree | 829d5dfe440e8bccb1caf8c2b945f4f73e102536 /package/kernel/qca-nss-dp/patches/0011-05-nss_dp_main-use-phy_detach-instead-of-disconnect-in-.patch | |
parent | 3908b77c9e68136e20805c0d6e39bb1a33438d09 (diff) | |
download | openwrt-918e2fca1e818a346a5f04e11b4e9cb0d5ad6510.tar.gz openwrt-918e2fca1e818a346a5f04e11b4e9cb0d5ad6510.tar.bz2 openwrt-918e2fca1e818a346a5f04e11b4e9cb0d5ad6510.zip |
qca-nss-dp: add patch fixing rmmod and insmod
Add patch fixing rmmod and insmod. Lots of flawed logic fixed that
permits the module to correctly rmmod and insmod later.
Just to quote some change, use phy_detach instead of phy_disconnect, fix
exclusive reset_control that could only be used once, fix kernel panic
on second edma_cleanup, stop traffic before module exit...
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
Diffstat (limited to 'package/kernel/qca-nss-dp/patches/0011-05-nss_dp_main-use-phy_detach-instead-of-disconnect-in-.patch')
-rw-r--r-- | package/kernel/qca-nss-dp/patches/0011-05-nss_dp_main-use-phy_detach-instead-of-disconnect-in-.patch | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/package/kernel/qca-nss-dp/patches/0011-05-nss_dp_main-use-phy_detach-instead-of-disconnect-in-.patch b/package/kernel/qca-nss-dp/patches/0011-05-nss_dp_main-use-phy_detach-instead-of-disconnect-in-.patch new file mode 100644 index 0000000000..6e87e4e8c4 --- /dev/null +++ b/package/kernel/qca-nss-dp/patches/0011-05-nss_dp_main-use-phy_detach-instead-of-disconnect-in-.patch @@ -0,0 +1,26 @@ +From 655b07b701271bc00952fe64aeb14f993a48a50e Mon Sep 17 00:00:00 2001 +From: Christian Marangi <ansuelsmth@gmail.com> +Date: Tue, 16 Apr 2024 16:17:36 +0200 +Subject: [PATCH 5/6] nss_dp_main: use phy_detach instead of disconnect in + dp_remove + +Use phy_detach instead of disconnect in dp_remove. On Module remove, phy +are already disconnected but they need to be detached to be correctly +reattached later with an insmod. + +Signed-off-by: Christian Marangi <ansuelsmth@gmail.com> +--- + nss_dp_main.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/nss_dp_main.c ++++ b/nss_dp_main.c +@@ -924,7 +924,7 @@ static int nss_dp_remove(struct platform + unregister_netdev(dp_priv->netdev); + + if (dp_priv->phydev) +- phy_disconnect(dp_priv->phydev); ++ phy_detach(dp_priv->phydev); + + #if defined(NSS_DP_PPE_SUPPORT) + /* |