On some platforms it is possible to dynamically change the policy
of what MAC address is selected from the ASL at runtime.
These tools will reset the USB device and expect the change to be
made immediately.
Signed-off-by: Mario Limonciello <[email protected]>
---
drivers/net/usb/r8152.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/net/usb/r8152.c b/drivers/net/usb/r8152.c
index 86c8c64..eb5351b 100644
--- a/drivers/net/usb/r8152.c
+++ b/drivers/net/usb/r8152.c
@@ -4268,6 +4268,9 @@ static int rtl8152_post_reset(struct usb_interface *intf)
if (!tp)
return 0;
+ /* reset the MAC adddress in case of policy change */
+ set_ethernet_addr(tp);
+
netdev = tp->netdev;
if (!netif_running(netdev))
return 0;
--
2.7.4
On Mon, 25 Mar 2019 at 08:12, Mario Limonciello
<[email protected]> wrote:
>
> On some platforms it is possible to dynamically change the policy
> of what MAC address is selected from the ASL at runtime.
>
> These tools will reset the USB device and expect the change to be
> made immediately.
>
> Signed-off-by: Mario Limonciello <[email protected]>
> ---
> drivers/net/usb/r8152.c | 3 +++
> 1 file changed, 3 insertions(+)
Reviewed-by: Simon Glass <[email protected]>
From: Mario Limonciello <[email protected]>
Date: Mon, 25 Mar 2019 09:12:23 -0500
> On some platforms it is possible to dynamically change the policy
> of what MAC address is selected from the ASL at runtime.
>
> These tools will reset the USB device and expect the change to be
> made immediately.
>
> Signed-off-by: Mario Limonciello <[email protected]>
You are going to have to emit CHANGEADDR notifications and such if
necessary when you do this.
> -----Original Message-----
> From: David Miller <[email protected]>
> Sent: Tuesday, March 26, 2019 1:51 PM
> To: Limonciello, Mario
> Cc: [email protected]; [email protected]; linux-
> [email protected]; [email protected]; [email protected];
> [email protected]; Hong, Ryan; Wang, Crag
> Subject: Re: [PATCH] r8152: Refresh MAC address during USBDEVFS_RESET
>
>
> [EXTERNAL EMAIL]
>
> From: Mario Limonciello <[email protected]>
> Date: Mon, 25 Mar 2019 09:12:23 -0500
>
> > On some platforms it is possible to dynamically change the policy
> > of what MAC address is selected from the ASL at runtime.
> >
> > These tools will reset the USB device and expect the change to be
> > made immediately.
> >
> > Signed-off-by: Mario Limonciello <[email protected]>
>
> You are going to have to emit CHANGEADDR notifications and such if
> necessary when you do this.
Thanks for the feedback, I'll add that call. Do you feel a need that the MAC
address needs to be tracked and compared to what was previously in ACPI
table to know it "really" changed or just emit CHANGEADDR because it "might"
have changed?
From: <[email protected]>
Date: Tue, 26 Mar 2019 19:52:50 +0000
>> -----Original Message-----
>> From: David Miller <[email protected]>
>> Sent: Tuesday, March 26, 2019 1:51 PM
>> To: Limonciello, Mario
>> Cc: [email protected]; [email protected]; linux-
>> [email protected]; [email protected]; [email protected];
>> [email protected]; Hong, Ryan; Wang, Crag
>> Subject: Re: [PATCH] r8152: Refresh MAC address during USBDEVFS_RESET
>>
>>
>> [EXTERNAL EMAIL]
>>
>> From: Mario Limonciello <[email protected]>
>> Date: Mon, 25 Mar 2019 09:12:23 -0500
>>
>> > On some platforms it is possible to dynamically change the policy
>> > of what MAC address is selected from the ASL at runtime.
>> >
>> > These tools will reset the USB device and expect the change to be
>> > made immediately.
>> >
>> > Signed-off-by: Mario Limonciello <[email protected]>
>>
>> You are going to have to emit CHANGEADDR notifications and such if
>> necessary when you do this.
>
> Thanks for the feedback, I'll add that call. Do you feel a need that the MAC
> address needs to be tracked and compared to what was previously in ACPI
> table to know it "really" changed or just emit CHANGEADDR because it "might"
> have changed?
Probably it is better for apps to track it.
You can consider using dev_set_mac_address(), I wouldn't advise cooking your
own copy of the event emission code.