netif_tx_lock_bh(dev);
        netif_addr_lock(dev);
-       memcpy(dev->dev_addr, &sa->sax25_call, AX25_ADDR_LEN);
+       __dev_addr_set(dev, &sa->sax25_call, AX25_ADDR_LEN);
        netif_addr_unlock(dev);
        netif_tx_unlock_bh(dev);
 
 
        /* Only activated in AX.25 mode */
        memcpy(dev->broadcast, &ax25_bcast, AX25_ADDR_LEN);
-       memcpy(dev->dev_addr, &ax25_defaddr, AX25_ADDR_LEN);
+       dev_addr_set(dev, (u8 *)&ax25_defaddr);
 
        dev->flags              = 0;
 }
                        }
 
                        netif_tx_lock_bh(dev);
-                       memcpy(dev->dev_addr, &addr, AX25_ADDR_LEN);
+                       __dev_addr_set(dev, &addr, AX25_ADDR_LEN);
                        netif_tx_unlock_bh(dev);
                        err = 0;
                        break;
 
        dev->mtu = AX25_DEF_PACLEN;        /* eth_mtu is the default */
        dev->addr_len = AX25_ADDR_LEN;     /* sizeof an ax.25 address */
        memcpy(dev->broadcast, &ax25_bcast, AX25_ADDR_LEN);
-       memcpy(dev->dev_addr, &null_ax25_address, AX25_ADDR_LEN);
+       dev_addr_set(dev, (u8 *)&null_ax25_address);
        dev->tx_queue_len = 16;
 
        /* New style flags */
 
        dev->netdev_ops      = &bpq_netdev_ops;
        dev->needs_free_netdev = true;
 
-       memcpy(dev->broadcast, &ax25_bcast, AX25_ADDR_LEN);
-       memcpy(dev->dev_addr,  &ax25_defaddr, AX25_ADDR_LEN);
-
        dev->flags      = 0;
        dev->features   = NETIF_F_LLTX; /* Allow recursion */
 
        dev->mtu             = AX25_DEF_PACLEN;
        dev->addr_len        = AX25_ADDR_LEN;
 
+       memcpy(dev->broadcast, &ax25_bcast, AX25_ADDR_LEN);
+       dev_addr_set(dev, (u8 *)&ax25_defaddr);
 }
 
 /*
 
        dev->addr_len = AX25_ADDR_LEN;
        dev->tx_queue_len = 64;
        memcpy(dev->broadcast, &ax25_bcast, AX25_ADDR_LEN);
-       memcpy(dev->dev_addr, &ax25_defaddr, AX25_ADDR_LEN);
+       dev_addr_set(dev, (u8 *)&ax25_defaddr);
 }
 
 static const struct net_device_ops scc_netdev_ops = {
 
        dev->mtu = AX25_DEF_PACLEN;        /* eth_mtu is the default */
        dev->addr_len = AX25_ADDR_LEN;     /* sizeof an ax.25 address */
        memcpy(dev->broadcast, &ax25_bcast, AX25_ADDR_LEN);
-       memcpy(dev->dev_addr, &ax25_defaddr, AX25_ADDR_LEN);
+       dev_addr_set(dev, (u8 *)&ax25_defaddr);
        dev->tx_queue_len = 16;
 }
 
 
 
        netif_tx_lock_bh(dev);
        netif_addr_lock(dev);
-       memcpy(dev->dev_addr, &sa->sax25_call, AX25_ADDR_LEN);
+       __dev_addr_set(dev, &sa->sax25_call, AX25_ADDR_LEN);
        netif_addr_unlock(dev);
        netif_tx_unlock_bh(dev);
 
 
 
        memcpy(dev->broadcast, &ax25_bcast, AX25_ADDR_LEN);
-       memcpy(dev->dev_addr,  &ax25_defaddr,  AX25_ADDR_LEN);
+       dev_addr_set(dev, (u8 *)&ax25_defaddr);
 
        dev->flags      = IFF_BROADCAST | IFF_MULTICAST;
 }
                }
 
                netif_tx_lock_bh(dev);
-               memcpy(dev->dev_addr, addr, AX25_ADDR_LEN);
+               __dev_addr_set(dev, addr, AX25_ADDR_LEN);
                netif_tx_unlock_bh(dev);
 
                err = 0;
 
        dev->netdev_ops      = &scc_netdev_ops;
        dev->header_ops      = &ax25_header_ops;
 
-       memcpy(dev->broadcast, &ax25_bcast,  AX25_ADDR_LEN);
-       memcpy(dev->dev_addr,  &ax25_defaddr, AX25_ADDR_LEN);
- 
        dev->flags      = 0;
 
        dev->type = ARPHRD_AX25;
        dev->mtu = AX25_DEF_PACLEN;
        dev->addr_len = AX25_ADDR_LEN;
 
+       memcpy(dev->broadcast, &ax25_bcast,  AX25_ADDR_LEN);
+       dev_addr_set(dev, (u8 *)&ax25_defaddr);
 }
 
 /* ----> open network device <---- */
 
        dev->mtu = AX25_MTU;
        dev->addr_len = AX25_ADDR_LEN;
        memcpy(dev->broadcast, &ax25_bcast, AX25_ADDR_LEN);
-       memcpy(dev->dev_addr, &ax25_defaddr, AX25_ADDR_LEN);
+       dev_addr_set(dev, (u8 *)&ax25_defaddr);
 }
 
 static int __init yam_init_driver(void)