lkml.org 
[lkml]   [2022]   [Jan]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH AUTOSEL 5.15 040/188] apple: macmace: use eth_hw_addr_set()
    Date
    From: Jakub Kicinski <kuba@kernel.org>

    [ Upstream commit e217fc4affc8c7392e4db48488b36d2a5d446e9d ]

    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>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    drivers/net/ethernet/apple/macmace.c | 14 +++++++++-----
    1 file changed, 9 insertions(+), 5 deletions(-)

    diff --git a/drivers/net/ethernet/apple/macmace.c b/drivers/net/ethernet/apple/macmace.c
    index 95d3061c61be9..8fcaf16399201 100644
    --- a/drivers/net/ethernet/apple/macmace.c
    +++ b/drivers/net/ethernet/apple/macmace.c
    @@ -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;
    }
    --
    2.34.1
    \
     
     \ /
      Last update: 2022-01-18 04:12    [W:2.540 / U:0.476 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site