diff options
Diffstat (limited to 'drivers/net/fec_mxc.c')
| -rw-r--r-- | drivers/net/fec_mxc.c | 8 | 
1 files changed, 6 insertions, 2 deletions
| diff --git a/drivers/net/fec_mxc.c b/drivers/net/fec_mxc.c index 3b2b995b5..4cefda48e 100644 --- a/drivers/net/fec_mxc.c +++ b/drivers/net/fec_mxc.c @@ -128,8 +128,12 @@ static void fec_mii_setspeed(struct ethernet_regs *eth)  	 * Set MII_SPEED = (1/(mii_speed * 2)) * System Clock  	 * and do not drop the Preamble.  	 */ -	writel((((imx_get_fecclk() / 1000000) + 2) / 5) << 1, -			ð->mii_speed); +	register u32 speed = DIV_ROUND_UP(imx_get_fecclk(), 5000000); +#ifdef FEC_QUIRK_ENET_MAC +	speed--; +#endif +	speed <<= 1; +	writel(speed, ð->mii_speed);  	debug("%s: mii_speed %08x\n", __func__, readl(ð->mii_speed));  } |