mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-01-12 00:00:00 +00:00
net/fsl: remove hardcoded clock setting from xgmac_mdio
There is no need to set the clock speed in read/write which will be performed unnecessarily for each mdio access. Init it during probe is enough. Also, the hardcoded clock value is not a proper way for all SoCs. Signed-off-by: Shaohui Xie <Shaohui.Xie@freescale.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
aa84247804
commit
05930b5ec1
@ -94,13 +94,6 @@ static int xgmac_mdio_write(struct mii_bus *bus, int phy_id, int regnum, u16 val
|
|||||||
uint16_t dev_addr = regnum >> 16;
|
uint16_t dev_addr = regnum >> 16;
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
/* Setup the MII Mgmt clock speed */
|
|
||||||
out_be32(®s->mdio_stat, MDIO_STAT_CLKDIV(100));
|
|
||||||
|
|
||||||
ret = xgmac_wait_until_free(&bus->dev, regs);
|
|
||||||
if (ret)
|
|
||||||
return ret;
|
|
||||||
|
|
||||||
/* Set the port and dev addr */
|
/* Set the port and dev addr */
|
||||||
out_be32(®s->mdio_ctl,
|
out_be32(®s->mdio_ctl,
|
||||||
MDIO_CTL_PORT_ADDR(phy_id) | MDIO_CTL_DEV_ADDR(dev_addr));
|
MDIO_CTL_PORT_ADDR(phy_id) | MDIO_CTL_DEV_ADDR(dev_addr));
|
||||||
@ -135,13 +128,6 @@ static int xgmac_mdio_read(struct mii_bus *bus, int phy_id, int regnum)
|
|||||||
uint16_t value;
|
uint16_t value;
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
/* Setup the MII Mgmt clock speed */
|
|
||||||
out_be32(®s->mdio_stat, MDIO_STAT_CLKDIV(100));
|
|
||||||
|
|
||||||
ret = xgmac_wait_until_free(&bus->dev, regs);
|
|
||||||
if (ret)
|
|
||||||
return ret;
|
|
||||||
|
|
||||||
/* Set the Port and Device Addrs */
|
/* Set the Port and Device Addrs */
|
||||||
mdio_ctl = MDIO_CTL_PORT_ADDR(phy_id) | MDIO_CTL_DEV_ADDR(dev_addr);
|
mdio_ctl = MDIO_CTL_PORT_ADDR(phy_id) | MDIO_CTL_DEV_ADDR(dev_addr);
|
||||||
out_be32(®s->mdio_ctl, mdio_ctl);
|
out_be32(®s->mdio_ctl, mdio_ctl);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user