apple: macmace: use eth_hw_addr_set()
Byte by byte assignments. Fixes build on m68k. Signed-off-by: Jakub Kicinski <kuba@kernel.org> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
5b6d5affd2
commit
e217fc4aff
@ -92,7 +92,7 @@ static void mace_reset(struct net_device *dev);
|
||||
static irqreturn_t mace_interrupt(int irq, void *dev_id);
|
||||
static irqreturn_t mace_dma_intr(int irq, void *dev_id);
|
||||
static void mace_tx_timeout(struct net_device *dev, unsigned int txqueue);
|
||||
static void __mace_set_address(struct net_device *dev, void *addr);
|
||||
static void __mace_set_address(struct net_device *dev, const void *addr);
|
||||
|
||||
/*
|
||||
* Load a receive DMA channel with a base address and ring length
|
||||
@ -197,6 +197,7 @@ static int mace_probe(struct platform_device *pdev)
|
||||
unsigned char *addr;
|
||||
struct net_device *dev;
|
||||
unsigned char checksum = 0;
|
||||
u8 macaddr[ETH_ALEN];
|
||||
int err;
|
||||
|
||||
dev = alloc_etherdev(PRIV_BYTES);
|
||||
@ -229,8 +230,9 @@ static int mace_probe(struct platform_device *pdev)
|
||||
for (j = 0; j < 6; ++j) {
|
||||
u8 v = bitrev8(addr[j<<4]);
|
||||
checksum ^= v;
|
||||
dev->dev_addr[j] = v;
|
||||
macaddr[j] = v;
|
||||
}
|
||||
eth_hw_addr_set(dev, macaddr);
|
||||
for (; j < 8; ++j) {
|
||||
checksum ^= bitrev8(addr[j<<4]);
|
||||
}
|
||||
@ -315,11 +317,12 @@ static void mace_reset(struct net_device *dev)
|
||||
* Load the address on a mace controller.
|
||||
*/
|
||||
|
||||
static void __mace_set_address(struct net_device *dev, void *addr)
|
||||
static void __mace_set_address(struct net_device *dev, const void *addr)
|
||||
{
|
||||
struct mace_data *mp = netdev_priv(dev);
|
||||
volatile struct mace *mb = mp->mace;
|
||||
unsigned char *p = addr;
|
||||
const unsigned char *p = addr;
|
||||
u8 macaddr[ETH_ALEN];
|
||||
int i;
|
||||
|
||||
/* load up the hardware address */
|
||||
@ -331,7 +334,8 @@ static void __mace_set_address(struct net_device *dev, void *addr)
|
||||
;
|
||||
}
|
||||
for (i = 0; i < 6; ++i)
|
||||
mb->padr = dev->dev_addr[i] = p[i];
|
||||
mb->padr = macaddr[i] = p[i];
|
||||
eth_hw_addr_set(dev, macaddr);
|
||||
if (mp->chipid != BROKEN_ADDRCHG_REV)
|
||||
mb->iac = 0;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user