Skip to contentSkip to conversation

Add get/set ethernet address functions and ACPI MAC address pass through functionality to cdc_ncm driver

PATCH In review [email protected] 3 participants 4 messages Sep 5, 2019

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

cover Add get/set ethernet address functions and ACPI MAC address pass through functionality to cdc_ncm driver

In recent testing of a Dell Universal Dock D6000, I found that MAC address pass through is not supported in the Linux drivers. However, this same device is supported in Windows 10 (Pro) on my personal computer, in as much as I was able to tell Windows to assign a new MAC address of my choosing, and I saw through wireshark the new MAC address was pushed out to the device. Afterward, Windows reported a new IP address and I was able to view web pages.

This series of patches give support to cdc_ncm USB based Ethernet controllers for programming a MAC address to the device, and also to retrieve the device's MAC address. This patch series further adds ACPI MAC address pass through support specifically for the cdc_ncm driver, and generally for any other driver that may need or want it, in furtherance of Dell's enterprise IT policy efforts. It was this latter that I initially found lacking when testing a D6000 with a Dell laptop, and then I found ifconfig was unable to set a MAC address into the device. These patches bring a similar level of functionality to cdc_ncm driver as is available with the Realtek r8152 driver, and is available with Windows.

The cdc_ncm driver limits the ACPI MAC address pass through support to only the Dell Universal Dock D6000, so no other cdc_ncm device will be impacted.

Charles Hyde (3):
net: cdc_ncm: add get/set ethernet address functions
ACPI: move ACPI functionality out of r8152 driver
net: cdc_ncm: Add ACPI MAC address pass through functionality

 drivers/acpi/Makefile            |   1 +
 drivers/acpi/acpi_mac_passthru.c |  63 +++++++++++++
 drivers/net/usb/cdc_ncm.c        | 148 ++++++++++++++++++++++++++++---
 drivers/net/usb/r8152.c          |  44 +--------
 include/acpi/acpi_mac_passthru.h |  29 ++++++
 5 files changed, 234 insertions(+), 51 deletions(-)
 create mode 100644 drivers/acpi/acpi_mac_passthru.c
 create mode 100644 include/acpi/acpi_mac_passthru.h
Signature · 1 line
2.20.1
#1 lore raw
Quoted 46 lines

-----Original Message-----
From: Hyde, Charles - Dell Team
Sent: Thursday, September 5, 2019 4:02 PM
To: Oliver Neukum; "Rafael J. Wysocki"; Len Brown
Cc: Limonciello, Mario; [email protected]; Realtek linux nic maintainers; [email protected]; [email protected]
Subject: [PATCH 0/3] Add get/set ethernet address functions and ACPI MAC address pass through functionality to cdc_ncm driver

In recent testing of a Dell Universal Dock D6000, I found that MAC address pass through is not supported in the Linux drivers. However, this same device is supported in Windows 10 (Pro) on my personal computer, in as much as I was able to tell Windows to assign a new MAC address of my choosing, and I saw through wireshark the new MAC address was pushed out to the device. Afterward, Windows reported a new IP address and I was able to view web pages.

This series of patches give support to cdc_ncm USB based Ethernet controllers for programming a MAC address to the device, and also to retrieve the device's MAC address. This patch series further adds ACPI MAC address pass through support specifically for the cdc_ncm driver, and generally for any other driver that may need or want it, in furtherance of Dell's enterprise IT policy efforts. It was this latter that I initially found lacking when testing a D6000 with a Dell laptop, and then I found ifconfig was unable to set a MAC address into the device. These patches bring a similar level of functionality to cdc_ncm driver as is available with the Realtek r8152 driver, and is available with Windows.

The cdc_ncm driver limits the ACPI MAC address pass through support to only the Dell Universal Dock D6000, so no other cdc_ncm device will be impacted.

Charles Hyde (3):
net: cdc_ncm: add get/set ethernet address functions
ACPI: move ACPI functionality out of r8152 driver
net: cdc_ncm: Add ACPI MAC address pass through functionality

 drivers/acpi/Makefile            |   1 +
 drivers/acpi/acpi_mac_passthru.c |  63 +++++++++++++
 drivers/net/usb/cdc_ncm.c        | 148 ++++++++++++++++++++++++++++---
 drivers/net/usb/r8152.c          |  44 +--------
 include/acpi/acpi_mac_passthru.h |  29 ++++++
 5 files changed, 234 insertions(+), 51 deletions(-)
 create mode 100644 drivers/acpi/acpi_mac_passthru.c
 create mode 100644 include/acpi/acpi_mac_passthru.h
Quoted 2 lines

--
2.20.1

Typical practice is to make this new patch series prefixed with a v2. And to describe what has changed From v1 either in individual patches below the '--' or in the cover letter.

So can you please describe what changed from previous submission in case it's not obvious to reviewers?

For example:

[PATCH v2 0/3] Add get/set ethernet address functions and ACPI MAC address pass through functionality to cdc_ncm driver

Changes from v1 to v 2:
* Changed foo to bar

#2 lore raw
Quoted 57 lines
Quoted 17 lines

-----Original Message-----
From: Hyde, Charles - Dell Team
Sent: Thursday, September 5, 2019 4:02 PM
To: Oliver Neukum; "Rafael J. Wysocki"; Len Brown
Cc: Limonciello, Mario; [email protected]; Realtek linux nic maintainers; [email protected]; [email protected]
Subject: [PATCH 0/3] Add get/set ethernet address functions and ACPI MAC address pass through functionality to cdc_ncm driver

In recent testing of a Dell Universal Dock D6000, I found that MAC address pass through is not supported in the Linux drivers. However, this same device is supported in Windows 10 (Pro) on my personal computer, in as much as I was able to tell Windows to assign a new MAC address of my choosing, and I saw through wireshark the new MAC address was pushed out to the device. Afterward, Windows reported a new IP address and I was able to view web pages.

Quoted 10 lines

This series of patches give support to cdc_ncm USB based Ethernet controllers for programming a MAC address to the device, and also to retrieve the device's MAC address. This patch series further adds ACPI MAC address pass through support specifically for the cdc_ncm driver, and generally for any other driver that may need or want it, in furtherance of Dell's enterprise IT policy efforts. It was this latter that I initially found lacking when testing a D6000 with a Dell laptop, and then I found ifconfig was unable to set a MAC address into the device. These patches bring a similar level of functionality to cdc_ncm driver as is available with the Realtek r8152 driver, and is available

with Windows.

Quoted 16 lines

The cdc_ncm driver limits the ACPI MAC address pass through support to only the Dell Universal Dock D6000, so no other cdc_ncm device will be impacted.

Charles Hyde (3):
net: cdc_ncm: add get/set ethernet address functions
ACPI: move ACPI functionality out of r8152 driver
net: cdc_ncm: Add ACPI MAC address pass through functionality

 drivers/acpi/Makefile            |   1 +
 drivers/acpi/acpi_mac_passthru.c |  63 +++++++++++++
 drivers/net/usb/cdc_ncm.c        | 148 ++++++++++++++++++++++++++++---
 drivers/net/usb/r8152.c          |  44 +--------
 include/acpi/acpi_mac_passthru.h |  29 ++++++
 5 files changed, 234 insertions(+), 51 deletions(-)  create mode
Quoted 5 lines

100644 drivers/acpi/acpi_mac_passthru.c create mode 100644 include/acpi/acpi_mac_passthru.h

--
2.20.1

Typical practice is to make this new patch series prefixed with a v2. And to describe what has changed From v1 either in individual patches below the '--' or in the cover letter.

So can you please describe what changed from previous submission in case it's not obvious to reviewers?

Quoted 7 lines

For example:

[PATCH v2 0/3] Add get/set ethernet address functions and ACPI MAC address pass through functionality to cdc_ncm driver

Changes from v1 to v 2:
* Changed foo to bar

Ah, my apologies.

What changed with today's patch series from what I proposed on Friday, August 30, is that I created a function named get_ethernet_addr() which replaces two instances where the same code snippet was located in the previous patch series. I also created a post reset function to set the MAC address, if there exists an ACPI MAC address pass through (MAPT). Oliver Neukum had requested a post reset function for this purpose.

Charles Hyde

maintainer
#3 lore raw
Quoted 62 lines · On Thu, Sep 05, 2019 at 09:14:05PM +0000, [email protected] wrote:
Quoted 62 lines
Quoted 17 lines

-----Original Message-----
From: Hyde, Charles - Dell Team
Sent: Thursday, September 5, 2019 4:02 PM
To: Oliver Neukum; "Rafael J. Wysocki"; Len Brown
Cc: Limonciello, Mario; [email protected]; Realtek linux nic maintainers; [email protected]; [email protected]
Subject: [PATCH 0/3] Add get/set ethernet address functions and ACPI MAC address pass through functionality to cdc_ncm driver

In recent testing of a Dell Universal Dock D6000, I found that MAC address pass through is not supported in the Linux drivers. However, this same device is supported in Windows 10 (Pro) on my personal computer, in as much as I was able to tell Windows to assign a new MAC address of my choosing, and I saw through wireshark the new MAC address was pushed out to the device. Afterward, Windows reported a new IP address and I was able to view web pages.

Quoted 10 lines

This series of patches give support to cdc_ncm USB based Ethernet controllers for programming a MAC address to the device, and also to retrieve the device's MAC address. This patch series further adds ACPI MAC address pass through support specifically for the cdc_ncm driver, and generally for any other driver that may need or want it, in furtherance of Dell's enterprise IT policy efforts. It was this latter that I initially found lacking when testing a D6000 with a Dell laptop, and then I found ifconfig was unable to set a MAC address into the device. These patches bring a similar level of functionality to cdc_ncm driver as is available with the Realtek r8152 driver, and is available

with Windows.

Quoted 16 lines

The cdc_ncm driver limits the ACPI MAC address pass through support to only the Dell Universal Dock D6000, so no other cdc_ncm device will be impacted.

Charles Hyde (3):
net: cdc_ncm: add get/set ethernet address functions
ACPI: move ACPI functionality out of r8152 driver
net: cdc_ncm: Add ACPI MAC address pass through functionality

 drivers/acpi/Makefile            |   1 +
 drivers/acpi/acpi_mac_passthru.c |  63 +++++++++++++
 drivers/net/usb/cdc_ncm.c        | 148 ++++++++++++++++++++++++++++---
 drivers/net/usb/r8152.c          |  44 +--------
 include/acpi/acpi_mac_passthru.h |  29 ++++++
 5 files changed, 234 insertions(+), 51 deletions(-)  create mode
Quoted 5 lines

100644 drivers/acpi/acpi_mac_passthru.c create mode 100644 include/acpi/acpi_mac_passthru.h

--
2.20.1

Typical practice is to make this new patch series prefixed with a v2. And to describe what has changed From v1 either in individual patches below the '--' or in the cover letter.

So can you please describe what changed from previous submission in case it's not obvious to reviewers?

For example:

[PATCH v2 0/3] Add get/set ethernet address functions and ACPI MAC address pass through functionality to cdc_ncm driver

Quoted 7 lines
Quoted 2 lines

Changes from v1 to v 2:
* Changed foo to bar

Ah, my apologies.

What changed with today's patch series from what I proposed on Friday, August 30, is that I created a function named get_ethernet_addr() which replaces two instances where the same code snippet was located in the previous patch series. I also created a post reset function to set the MAC address, if there exists an ACPI MAC address pass through (MAPT). Oliver Neukum had requested a post reset function for this purpose.

Please resend the series with that information in it, and also properly thread the emails so they are at least clustered together.

thanks,

greg k-h