Linux-USB Archive on lore.kernel.org
 help / color / Atom feed
From: <Charles.Hyde@dellteam.com>
To: <linux-usb@vger.kernel.org>, <linux-acpi@vger.kernel.org>
Cc: <gregkh@linuxfoundation.org>, <Mario.Limonciello@dell.com>,
	<oliver@neukum.org>, <netdev@vger.kernel.org>,
	<nic_swsd@realtek.com>
Subject: [RFC 0/4] Add support into cdc_ncm for MAC address pass through
Date: Tue, 20 Aug 2019 22:15:29 +0000
Message-ID: <89a5f8ea30b240babd8750d236ca9ef4@AUSX13MPS303.AMER.DELL.COM> (raw)

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 USB based Ethernet controllers for programming a MAC address to the device, and also to retrieve the device's MAC address using the existing USB protocol for these two functions.  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.

Charles Hyde (4):
  Add usb_get_address and usb_set_address support
  Allow cdc_ncm to set MAC address in hardware
  Move ACPI functionality out of r8152 driver
  net: cdc_ncm: Add ACPI MAC address pass through functionality

 drivers/net/usb/cdc_ncm.c  | 28 +++++++++++++++++-
 drivers/net/usb/r8152.c    | 44 +++-------------------------
 drivers/net/usb/usbnet.c   | 37 ++++++++++++++++++------
 drivers/usb/core/message.c | 59 ++++++++++++++++++++++++++++++++++++++
 include/linux/usb.h        |  3 ++
 include/linux/usb/usbnet.h |  1 +
 lib/Makefile               |  3 +-
 7 files changed, 124 insertions(+), 51 deletions(-)

-- 
2.20.1

             reply index

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-08-20 22:15 Charles.Hyde [this message]
2019-08-21  9:41 ` Oliver Neukum

Reply instructions:

You may reply publically to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=89a5f8ea30b240babd8750d236ca9ef4@AUSX13MPS303.AMER.DELL.COM \
    --to=charles.hyde@dellteam.com \
    --cc=Mario.Limonciello@dell.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=linux-acpi@vger.kernel.org \
    --cc=linux-usb@vger.kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=nic_swsd@realtek.com \
    --cc=oliver@neukum.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

Linux-USB Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/linux-usb/0 linux-usb/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 linux-usb linux-usb/ https://lore.kernel.org/linux-usb \
		linux-usb@vger.kernel.org linux-usb@archiver.kernel.org
	public-inbox-index linux-usb

Example config snippet for mirrors

Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.kernel.vger.linux-usb


AGPL code for this site: git clone https://public-inbox.org/ public-inbox