|
|
|
@ -115,7 +115,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net> |
|
|
|
|
|
|
|
|
|
/* H3/A64 specific bits */
|
|
|
|
|
#define SYSCON_RMII_EN BIT(13) /* 1: enable RMII (overrides EPIT) */
|
|
|
|
|
@@ -634,6 +640,159 @@ static int sun8i_dwmac_reset(struct stmm
|
|
|
|
|
@@ -635,6 +641,159 @@ static int sun8i_dwmac_reset(struct stmm
|
|
|
|
|
return 0;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -275,7 +275,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net> |
|
|
|
|
static int sun8i_dwmac_set_syscon(struct stmmac_priv *priv)
|
|
|
|
|
{
|
|
|
|
|
struct sunxi_priv_data *gmac = priv->plat->bsp_priv;
|
|
|
|
|
@@ -648,35 +807,25 @@ static int sun8i_dwmac_set_syscon(struct
|
|
|
|
|
@@ -649,35 +808,25 @@ static int sun8i_dwmac_set_syscon(struct
|
|
|
|
|
"Current syscon value is not the default %x (expect %x)\n",
|
|
|
|
|
val, reg);
|
|
|
|
|
|
|
|
|
@ -329,7 +329,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net> |
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (!of_property_read_u32(node, "allwinner,tx-delay-ps", &val)) {
|
|
|
|
|
@@ -746,81 +895,21 @@ static void sun8i_dwmac_unset_syscon(str
|
|
|
|
|
@@ -747,81 +896,21 @@ static void sun8i_dwmac_unset_syscon(str
|
|
|
|
|
regmap_write(gmac->regmap, SYSCON_EMAC_REG, reg);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -420,7 +420,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net> |
|
|
|
|
|
|
|
|
|
clk_disable_unprepare(gmac->tx_clk);
|
|
|
|
|
|
|
|
|
|
@@ -849,7 +938,7 @@ static struct mac_device_info *sun8i_dwm
|
|
|
|
|
@@ -850,7 +939,7 @@ static struct mac_device_info *sun8i_dwm
|
|
|
|
|
if (!mac)
|
|
|
|
|
return NULL;
|
|
|
|
|
|
|
|
|
@ -429,7 +429,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net> |
|
|
|
|
if (ret)
|
|
|
|
|
return NULL;
|
|
|
|
|
|
|
|
|
|
@@ -889,6 +978,8 @@ static int sun8i_dwmac_probe(struct plat
|
|
|
|
|
@@ -890,6 +979,8 @@ static int sun8i_dwmac_probe(struct plat
|
|
|
|
|
struct sunxi_priv_data *gmac;
|
|
|
|
|
struct device *dev = &pdev->dev;
|
|
|
|
|
int ret;
|
|
|
|
@ -438,7 +438,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net> |
|
|
|
|
|
|
|
|
|
ret = stmmac_get_platform_resources(pdev, &stmmac_res);
|
|
|
|
|
if (ret)
|
|
|
|
|
@@ -932,29 +1023,6 @@ static int sun8i_dwmac_probe(struct plat
|
|
|
|
|
@@ -933,29 +1024,6 @@ static int sun8i_dwmac_probe(struct plat
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
plat_dat->interface = of_get_phy_mode(dev->of_node);
|
|
|
|
@ -468,7 +468,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net> |
|
|
|
|
|
|
|
|
|
/* platform data specifying hardware features and callbacks.
|
|
|
|
|
* hardware features were copied from Allwinner drivers.
|
|
|
|
|
@@ -973,9 +1041,34 @@ static int sun8i_dwmac_probe(struct plat
|
|
|
|
|
@@ -974,9 +1042,34 @@ static int sun8i_dwmac_probe(struct plat
|
|
|
|
|
|
|
|
|
|
ret = stmmac_dvr_probe(&pdev->dev, plat_dat, &stmmac_res);
|
|
|
|
|
if (ret)
|
|
|
|
|