mirror of
https://github.com/hardkernel/linux.git
synced 2026-03-24 19:40:21 +09:00
i825xx: sni_82596: use eth_hw_addr_set()
[ Upstream commitf38373345c] 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:adeef3e321("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> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
c78f1345db
commit
76d8a9a194
@@ -78,6 +78,7 @@ static int sni_82596_probe(struct platform_device *dev)
|
||||
void __iomem *mpu_addr;
|
||||
void __iomem *ca_addr;
|
||||
u8 __iomem *eth_addr;
|
||||
u8 mac[ETH_ALEN];
|
||||
|
||||
res = platform_get_resource(dev, IORESOURCE_MEM, 0);
|
||||
ca = platform_get_resource(dev, IORESOURCE_MEM, 1);
|
||||
@@ -109,12 +110,13 @@ static int sni_82596_probe(struct platform_device *dev)
|
||||
goto probe_failed;
|
||||
|
||||
/* someone seems to like messed up stuff */
|
||||
netdevice->dev_addr[0] = readb(eth_addr + 0x0b);
|
||||
netdevice->dev_addr[1] = readb(eth_addr + 0x0a);
|
||||
netdevice->dev_addr[2] = readb(eth_addr + 0x09);
|
||||
netdevice->dev_addr[3] = readb(eth_addr + 0x08);
|
||||
netdevice->dev_addr[4] = readb(eth_addr + 0x07);
|
||||
netdevice->dev_addr[5] = readb(eth_addr + 0x06);
|
||||
mac[0] = readb(eth_addr + 0x0b);
|
||||
mac[1] = readb(eth_addr + 0x0a);
|
||||
mac[2] = readb(eth_addr + 0x09);
|
||||
mac[3] = readb(eth_addr + 0x08);
|
||||
mac[4] = readb(eth_addr + 0x07);
|
||||
mac[5] = readb(eth_addr + 0x06);
|
||||
eth_hw_addr_set(netdevice, mac);
|
||||
iounmap(eth_addr);
|
||||
|
||||
if (netdevice->irq < 0) {
|
||||
|
||||
Reference in New Issue
Block a user