@@ -1665,14 +1665,14 @@ static int
16651665rtl8152_set_speed (struct r8152 * tp , u8 autoneg , u32 speed , u8 duplex ,
16661666 u32 advertising );
16671667
1668- static int __rtl8152_set_mac_address (struct net_device * netdev , void * p ,
1668+ static int __rtl8152_set_mac_address (struct net_device * netdev ,
1669+ struct sockaddr_storage * addr ,
16691670 bool in_resume )
16701671{
16711672 struct r8152 * tp = netdev_priv (netdev );
1672- struct sockaddr * addr = p ;
16731673 int ret = - EADDRNOTAVAIL ;
16741674
1675- if (!is_valid_ether_addr (addr -> sa_data ))
1675+ if (!is_valid_ether_addr (addr -> __data ))
16761676 goto out1 ;
16771677
16781678 if (!in_resume ) {
@@ -1683,10 +1683,10 @@ static int __rtl8152_set_mac_address(struct net_device *netdev, void *p,
16831683
16841684 mutex_lock (& tp -> control );
16851685
1686- eth_hw_addr_set (netdev , addr -> sa_data );
1686+ eth_hw_addr_set (netdev , addr -> __data );
16871687
16881688 ocp_write_byte (tp , MCU_TYPE_PLA , PLA_CRWECR , CRWECR_CONFIG );
1689- pla_ocp_write (tp , PLA_IDR , BYTE_EN_SIX_BYTES , 8 , addr -> sa_data );
1689+ pla_ocp_write (tp , PLA_IDR , BYTE_EN_SIX_BYTES , 8 , addr -> __data );
16901690 ocp_write_byte (tp , MCU_TYPE_PLA , PLA_CRWECR , CRWECR_NORAML );
16911691
16921692 mutex_unlock (& tp -> control );
@@ -1706,7 +1706,8 @@ static int rtl8152_set_mac_address(struct net_device *netdev, void *p)
17061706 * host system provided MAC address.
17071707 * Examples of this are Dell TB15 and Dell WD15 docks
17081708 */
1709- static int vendor_mac_passthru_addr_read (struct r8152 * tp , struct sockaddr * sa )
1709+ static int vendor_mac_passthru_addr_read (struct r8152 * tp ,
1710+ struct sockaddr_storage * ss )
17101711{
17111712 acpi_status status ;
17121713 struct acpi_buffer buffer = { ACPI_ALLOCATE_BUFFER , NULL };
@@ -1774,47 +1775,48 @@ static int vendor_mac_passthru_addr_read(struct r8152 *tp, struct sockaddr *sa)
17741775 ret = - EINVAL ;
17751776 goto amacout ;
17761777 }
1777- memcpy (sa -> sa_data , buf , 6 );
1778+ memcpy (ss -> __data , buf , 6 );
17781779 tp -> netdev -> addr_assign_type = NET_ADDR_STOLEN ;
17791780 netif_info (tp , probe , tp -> netdev ,
1780- "Using pass-thru MAC addr %pM\n" , sa -> sa_data );
1781+ "Using pass-thru MAC addr %pM\n" , ss -> __data );
17811782
17821783amacout :
17831784 kfree (obj );
17841785 return ret ;
17851786}
17861787
1787- static int determine_ethernet_addr (struct r8152 * tp , struct sockaddr * sa )
1788+ static int determine_ethernet_addr (struct r8152 * tp ,
1789+ struct sockaddr_storage * ss )
17881790{
17891791 struct net_device * dev = tp -> netdev ;
17901792 int ret ;
17911793
1792- sa -> sa_family = dev -> type ;
1794+ ss -> ss_family = dev -> type ;
17931795
1794- ret = eth_platform_get_mac_address (& tp -> udev -> dev , sa -> sa_data );
1796+ ret = eth_platform_get_mac_address (& tp -> udev -> dev , ss -> __data );
17951797 if (ret < 0 ) {
17961798 if (tp -> version == RTL_VER_01 ) {
1797- ret = pla_ocp_read (tp , PLA_IDR , 8 , sa -> sa_data );
1799+ ret = pla_ocp_read (tp , PLA_IDR , 8 , ss -> __data );
17981800 } else {
17991801 /* if device doesn't support MAC pass through this will
18001802 * be expected to be non-zero
18011803 */
1802- ret = vendor_mac_passthru_addr_read (tp , sa );
1804+ ret = vendor_mac_passthru_addr_read (tp , ss );
18031805 if (ret < 0 )
18041806 ret = pla_ocp_read (tp , PLA_BACKUP , 8 ,
1805- sa -> sa_data );
1807+ ss -> __data );
18061808 }
18071809 }
18081810
18091811 if (ret < 0 ) {
18101812 netif_err (tp , probe , dev , "Get ether addr fail\n" );
1811- } else if (!is_valid_ether_addr (sa -> sa_data )) {
1813+ } else if (!is_valid_ether_addr (ss -> __data )) {
18121814 netif_err (tp , probe , dev , "Invalid ether addr %pM\n" ,
1813- sa -> sa_data );
1815+ ss -> __data );
18141816 eth_hw_addr_random (dev );
1815- ether_addr_copy (sa -> sa_data , dev -> dev_addr );
1817+ ether_addr_copy (ss -> __data , dev -> dev_addr );
18161818 netif_info (tp , probe , dev , "Random ether addr %pM\n" ,
1817- sa -> sa_data );
1819+ ss -> __data );
18181820 return 0 ;
18191821 }
18201822
@@ -1824,17 +1826,17 @@ static int determine_ethernet_addr(struct r8152 *tp, struct sockaddr *sa)
18241826static int set_ethernet_addr (struct r8152 * tp , bool in_resume )
18251827{
18261828 struct net_device * dev = tp -> netdev ;
1827- struct sockaddr sa ;
1829+ struct sockaddr_storage ss ;
18281830 int ret ;
18291831
1830- ret = determine_ethernet_addr (tp , & sa );
1832+ ret = determine_ethernet_addr (tp , & ss );
18311833 if (ret < 0 )
18321834 return ret ;
18331835
18341836 if (tp -> version == RTL_VER_01 )
1835- eth_hw_addr_set (dev , sa . sa_data );
1837+ eth_hw_addr_set (dev , ss . __data );
18361838 else
1837- ret = __rtl8152_set_mac_address (dev , & sa , in_resume );
1839+ ret = __rtl8152_set_mac_address (dev , & ss , in_resume );
18381840
18391841 return ret ;
18401842}
@@ -8421,16 +8423,16 @@ static int rtl8152_post_reset(struct usb_interface *intf)
84218423{
84228424 struct r8152 * tp = usb_get_intfdata (intf );
84238425 struct net_device * netdev ;
8424- struct sockaddr sa ;
8426+ struct sockaddr_storage ss ;
84258427
84268428 if (!tp || !test_bit (PROBED_WITH_NO_ERRORS , & tp -> flags ))
84278429 goto exit ;
84288430
84298431 rtl_set_accessible (tp );
84308432
84318433 /* reset the MAC address in case of policy change */
8432- if (determine_ethernet_addr (tp , & sa ) >= 0 )
8433- dev_set_mac_address (tp -> netdev , & sa , NULL );
8434+ if (determine_ethernet_addr (tp , & ss ) >= 0 )
8435+ dev_set_mac_address (tp -> netdev , ( struct sockaddr * ) & ss , NULL );
84348436
84358437 netdev = tp -> netdev ;
84368438 if (!netif_running (netdev ))
0 commit comments