OSDN Git Service

net: sb1000,rionet: use eth_hw_addr_set()
authorJakub Kicinski <kuba@kernel.org>
Thu, 21 Oct 2021 13:12:13 +0000 (06:12 -0700)
committerJakub Kicinski <kuba@kernel.org>
Fri, 22 Oct 2021 17:16:16 +0000 (10:16 -0700)
Get these two oldies ready for constant netdev->dev_addr.

Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/rionet.c
drivers/net/sb1000.c

index 2056d6a..1a95f3b 100644 (file)
@@ -482,6 +482,7 @@ static int rionet_setup_netdev(struct rio_mport *mport, struct net_device *ndev)
 {
        int rc = 0;
        struct rionet_private *rnet;
+       u8 addr[ETH_ALEN];
        u16 device_id;
        const size_t rionet_active_bytes = sizeof(void *) *
                                RIO_MAX_ROUTE_ENTRIES(mport->sys_size);
@@ -501,12 +502,13 @@ static int rionet_setup_netdev(struct rio_mport *mport, struct net_device *ndev)
 
        /* Set the default MAC address */
        device_id = rio_local_get_device_id(mport);
-       ndev->dev_addr[0] = 0x00;
-       ndev->dev_addr[1] = 0x01;
-       ndev->dev_addr[2] = 0x00;
-       ndev->dev_addr[3] = 0x01;
-       ndev->dev_addr[4] = device_id >> 8;
-       ndev->dev_addr[5] = device_id & 0xff;
+       addr[0] = 0x00;
+       addr[1] = 0x01;
+       addr[2] = 0x00;
+       addr[3] = 0x01;
+       addr[4] = device_id >> 8;
+       addr[5] = device_id & 0xff;
+       eth_hw_addr_set(ndev, addr);
 
        ndev->netdev_ops = &rionet_netdev_ops;
        ndev->mtu = RIONET_MAX_MTU;
index f01c9db..57a6d59 100644 (file)
@@ -149,6 +149,7 @@ sb1000_probe_one(struct pnp_dev *pdev, const struct pnp_device_id *id)
        unsigned short ioaddr[2], irq;
        unsigned int serial_number;
        int error = -ENODEV;
+       u8 addr[ETH_ALEN];
 
        if (pnp_device_attach(pdev) < 0)
                return -ENODEV;
@@ -203,10 +204,13 @@ sb1000_probe_one(struct pnp_dev *pdev, const struct pnp_device_id *id)
        dev->netdev_ops = &sb1000_netdev_ops;
 
        /* hardware address is 0:0:serial_number */
-       dev->dev_addr[2]        = serial_number >> 24 & 0xff;
-       dev->dev_addr[3]        = serial_number >> 16 & 0xff;
-       dev->dev_addr[4]        = serial_number >>  8 & 0xff;
-       dev->dev_addr[5]        = serial_number >>  0 & 0xff;
+       addr[0] = 0;
+       addr[1] = 0;
+       addr[2] = serial_number >> 24 & 0xff;
+       addr[3] = serial_number >> 16 & 0xff;
+       addr[4] = serial_number >>  8 & 0xff;
+       addr[5] = serial_number >>  0 & 0xff;
+       eth_hw_addr_set(dev, addr);
 
        pnp_set_drvdata(pdev, dev);