Skip to content

Commit f383733

Browse files
tsbogendkuba-moo
authored andcommitted
i825xx: sni_82596: use eth_hw_addr_set()
netdev->dev_addr is now const, we can't write to it directly. Copy scrambled mac address octects into an array then eth_hw_addr_set(). Fixes: adeef3e ("net: constify netdev->dev_addr") Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de> Reviewed-by: Michal Kubiak <michal.kubiak@intel.com> Link: https://lore.kernel.org/r/20230315134117.79511-1-tsbogend@alpha.franken.de Signed-off-by: Jakub Kicinski <kuba@kernel.org>
1 parent 3d87deb commit f383733

File tree

1 file changed

+8
-6
lines changed

1 file changed

+8
-6
lines changed

drivers/net/ethernet/i825xx/sni_82596.c

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,7 @@ static int sni_82596_probe(struct platform_device *dev)
7878
void __iomem *mpu_addr;
7979
void __iomem *ca_addr;
8080
u8 __iomem *eth_addr;
81+
u8 mac[ETH_ALEN];
8182

8283
res = platform_get_resource(dev, IORESOURCE_MEM, 0);
8384
ca = platform_get_resource(dev, IORESOURCE_MEM, 1);
@@ -109,12 +110,13 @@ static int sni_82596_probe(struct platform_device *dev)
109110
goto probe_failed;
110111

111112
/* someone seems to like messed up stuff */
112-
netdevice->dev_addr[0] = readb(eth_addr + 0x0b);
113-
netdevice->dev_addr[1] = readb(eth_addr + 0x0a);
114-
netdevice->dev_addr[2] = readb(eth_addr + 0x09);
115-
netdevice->dev_addr[3] = readb(eth_addr + 0x08);
116-
netdevice->dev_addr[4] = readb(eth_addr + 0x07);
117-
netdevice->dev_addr[5] = readb(eth_addr + 0x06);
113+
mac[0] = readb(eth_addr + 0x0b);
114+
mac[1] = readb(eth_addr + 0x0a);
115+
mac[2] = readb(eth_addr + 0x09);
116+
mac[3] = readb(eth_addr + 0x08);
117+
mac[4] = readb(eth_addr + 0x07);
118+
mac[5] = readb(eth_addr + 0x06);
119+
eth_hw_addr_set(netdevice, mac);
118120
iounmap(eth_addr);
119121

120122
if (netdevice->irq < 0) {

0 commit comments

Comments
 (0)