net: hisilicon: HI13X1_GMAX skip write LOCAL_PAGE_REG
authorJiangfeng Xiao <xiaojiangfeng@huawei.com>
Tue, 9 Jul 2019 03:31:05 +0000 (11:31 +0800)
committerDavid S. Miller <davem@davemloft.net>
Tue, 9 Jul 2019 21:29:26 +0000 (14:29 -0700)
HI13X1_GMAC changed the offsets and bitmaps for
GE_TX_LOCAL_PAGE_REG registers in the same peripheral
device on different models of the hip04_eth. With the
default configuration, HI13X1_GMAC can also work without
any writes to the GE_TX_LOCAL_PAGE_REG register.

Signed-off-by: Jiangfeng Xiao <xiaojiangfeng@huawei.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/hisilicon/hip04_eth.c

index d8f0619d27df4b784e114183edf7ee77bafab5a2..fe61b01d41da5340585663a2d6849e9723779af1 100644 (file)
@@ -308,8 +308,10 @@ static void hip04_config_fifo(struct hip04_priv *priv)
        val |= GE_RX_STRIP_PAD | GE_RX_PAD_EN;
        writel_relaxed(val, priv->base + GE_RECV_CONTROL_REG);
 
+#ifndef CONFIG_HI13X1_GMAC
        val = GE_AUTO_NEG_CTL;
        writel_relaxed(val, priv->base + GE_TX_LOCAL_PAGE_REG);
+#endif
 }
 
 static void hip04_mac_enable(struct net_device *ndev)