[openwrt/openwrt] ipq40xx: net: ethernet: edma: update of_get_phy_mode() for 5.10

LEDE Commits lede-commits at lists.infradead.org
Sat Sep 25 10:29:23 PDT 2021


adrian pushed a commit to openwrt/openwrt.git, branch master:
https://git.openwrt.org/603848cad86538061c245004a39e0d5c77cc05d2

commit 603848cad86538061c245004a39e0d5c77cc05d2
Author: Robert Marko <robert.marko at sartura.hr>
AuthorDate: Sun Sep 12 23:00:51 2021 +0200

    ipq40xx: net: ethernet: edma: update of_get_phy_mode() for 5.10
    
    In kernel v5.5 of_get_phy_mode had its API changed, so its now returning 0
    or errors instead of phymode.
    
    Phymode is now returning by passing a pointer to phy_interface_t where it
    will be stored.
    
    Signed-off-by: Robert Marko <robert.marko at sartura.hr>
---
 .../files/drivers/net/ethernet/qualcomm/essedma/edma_axi.c     | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/target/linux/ipq40xx/files/drivers/net/ethernet/qualcomm/essedma/edma_axi.c b/target/linux/ipq40xx/files/drivers/net/ethernet/qualcomm/essedma/edma_axi.c
index b5ca99598d..e6739261c3 100644
--- a/target/linux/ipq40xx/files/drivers/net/ethernet/qualcomm/essedma/edma_axi.c
+++ b/target/linux/ipq40xx/files/drivers/net/ethernet/qualcomm/essedma/edma_axi.c
@@ -23,6 +23,7 @@
 #include <linux/clk.h>
 #include <linux/string.h>
 #include <linux/reset.h>
+#include <linux/version.h>
 #include "edma.h"
 #include "ess_edma.h"
 
@@ -1184,10 +1185,17 @@ static int edma_axi_probe(struct platform_device *pdev)
 
 	for (i = 0; i < edma_cinfo->num_gmac; i++) {
 		if (adapter[i]->poll_required) {
-			int phy_mode = of_get_phy_mode(np);
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,5,0)
+			phy_interface_t phy_mode;
 
+			err = of_get_phy_mode(np, &phy_mode);
+			if (err)
+				phy_mode = PHY_INTERFACE_MODE_SGMII;
+#else
+			int phy_mode = of_get_phy_mode(np);
 			if (phy_mode < 0)
 				phy_mode = PHY_INTERFACE_MODE_SGMII;
+#endif
 			adapter[i]->phydev =
 				phy_connect(edma_netdev[i],
 					    (const char *)adapter[i]->phy_id,



More information about the lede-commits mailing list