ramips: 6.1: ralink: fix ethernet driver with 6.1
[openwrt/openwrt.git] / target / linux / ramips / files / drivers / net / ethernet / ralink / mtk_eth_soc.c
index 03e65a0c8a6d0fff6f35d22d0721b0a924c02c9a..35a3113804e74c452d1ea6611e268430b52d3340 100644 (file)
@@ -1365,10 +1365,8 @@ static int __init fe_init(struct net_device *dev)
 
        fe_reset_phy(priv);
 
-       of_get_mac_address(priv->dev->of_node, dev->dev_addr);
-
-       /* If the mac address is invalid, use random mac address  */
-       if (!is_valid_ether_addr(dev->dev_addr)) {
+       /* Set the MAC address if it is correct, if not use a random MAC address  */
+       if (of_get_ethdev_address(priv->dev->of_node, dev)) {
                eth_hw_addr_random(dev);
                dev_err(priv->dev, "generated random MAC address %pM\n",
                        dev->dev_addr);
@@ -1638,7 +1636,11 @@ static int fe_probe(struct platform_device *pdev)
                priv->tx_ring.tx_ring_size *= 4;
                priv->rx_ring.rx_ring_size *= 4;
        }
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 1, 0)
+       netif_napi_add_weight(netdev, &priv->rx_napi, fe_poll, napi_weight);
+#else
        netif_napi_add(netdev, &priv->rx_napi, fe_poll, napi_weight);
+#endif
        fe_set_ethtool_ops(netdev);
 
        err = register_netdev(netdev);