mirror of https://gitee.com/openkylin/linux.git
ravb: stop reading ECMR in ravb_emac_init()
The code in ravb_emac_init() twiddling the ECMR bits always looked a bit strange to me: if one intends to respect 'priv->duplex', why save old value of the ECMR.DM bit? As all the other bits are zeroed anyway, we don't really need to read ECMR before writing to it. Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
66530bdf85
commit
1c1fa82119
|
@ -338,16 +338,13 @@ static int ravb_ring_init(struct net_device *ndev, int q)
|
|||
static void ravb_emac_init(struct net_device *ndev)
|
||||
{
|
||||
struct ravb_private *priv = netdev_priv(ndev);
|
||||
u32 ecmr;
|
||||
|
||||
/* Receive frame limit set register */
|
||||
ravb_write(ndev, ndev->mtu + ETH_HLEN + VLAN_HLEN + ETH_FCS_LEN, RFLR);
|
||||
|
||||
/* PAUSE prohibition */
|
||||
ecmr = ravb_read(ndev, ECMR);
|
||||
ecmr &= ECMR_DM;
|
||||
ecmr |= ECMR_ZPF | (priv->duplex ? ECMR_DM : 0) | ECMR_TE | ECMR_RE;
|
||||
ravb_write(ndev, ecmr, ECMR);
|
||||
ravb_write(ndev, ECMR_ZPF | (priv->duplex ? ECMR_DM : 0) |
|
||||
ECMR_TE | ECMR_RE, ECMR);
|
||||
|
||||
ravb_set_rate(ndev);
|
||||
|
||||
|
|
Loading…
Reference in New Issue