mirror of
https://github.com/coolsnowwolf/lede.git
synced 2025-04-16 04:13:31 +00:00
41 lines
1.4 KiB
Diff
41 lines
1.4 KiB
Diff
From b6190ca46287d01a895c7cc14de30410c09ff1b8 Mon Sep 17 00:00:00 2001
|
|
From: Robert Marko <robimarko@gmail.com>
|
|
Date: Wed, 12 May 2021 17:15:46 +0200
|
|
Subject: [PATCH] SSDK: platform: use of_mdio_find_bus() to get MDIO bus
|
|
|
|
Kernel has a generic of_mdio_find_bus() which can get the appropriate
|
|
MDIO bus based on the DT node.
|
|
So, drop the getting MDIO from platform data, which no longer works
|
|
in 5.4 and later and use of_mdio_find_bus().
|
|
|
|
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
|
|
Signed-off-by: Robert Marko <robimarko@gmail.com>
|
|
---
|
|
src/init/ssdk_plat.c | 8 +-------
|
|
1 file changed, 1 insertion(+), 7 deletions(-)
|
|
|
|
--- a/src/init/ssdk_plat.c
|
|
+++ b/src/init/ssdk_plat.c
|
|
@@ -551,7 +551,6 @@ static int miibus_get(a_uint32_t dev_id)
|
|
struct device_node *mdio_node = NULL;
|
|
struct device_node *switch_node = NULL;
|
|
struct platform_device *mdio_plat = NULL;
|
|
- struct ipq40xx_mdio_data *mdio_data = NULL;
|
|
struct qca_phy_priv *priv;
|
|
hsl_reg_mode reg_mode = HSL_REG_LOCAL_BUS;
|
|
priv = qca_phy_priv_global[dev_id];
|
|
@@ -584,12 +583,7 @@ static int miibus_get(a_uint32_t dev_id)
|
|
|
|
if(reg_mode == HSL_REG_LOCAL_BUS)
|
|
{
|
|
- mdio_data = dev_get_drvdata(&mdio_plat->dev);
|
|
- if (!mdio_data) {
|
|
- SSDK_ERROR("cannot get mdio_data reference from device data\n");
|
|
- return 1;
|
|
- }
|
|
- priv->miibus = mdio_data->mii_bus;
|
|
+ priv->miibus = of_mdio_find_bus(mdio_node);
|
|
}
|
|
else
|
|
priv->miibus = dev_get_drvdata(&mdio_plat->dev);
|