summaryrefslogtreecommitdiffstats
path: root/drivers/usb/gadget
diff options
context:
space:
mode:
authorAndrzej Pietrasiewicz <andrzej.p@samsung.com>2013-05-28 09:15:45 +0200
committerFelipe Balbi <balbi@ti.com>2013-06-10 17:57:45 +0300
commitbf4277c73adc3a6b244deab34a3906b9418b9d5e (patch)
tree65346af15afd3278cc10014eeaaadb999a610081 /drivers/usb/gadget
parent83408745b202695e8911d71a9854c517e565c343 (diff)
downloadlinux-bf4277c73adc3a6b244deab34a3906b9418b9d5e.tar.bz2
usb: gadget: u_ether: allow getting binary-form host address
helper function to copy MAC address to proper place. Signed-off-by: Andrzej Pietrasiewicz <andrzej.p@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> Signed-off-by: Felipe Balbi <balbi@ti.com>
Diffstat (limited to 'drivers/usb/gadget')
-rw-r--r--drivers/usb/gadget/u_ether.c9
-rw-r--r--drivers/usb/gadget/u_ether.h10
2 files changed, 19 insertions, 0 deletions
diff --git a/drivers/usb/gadget/u_ether.c b/drivers/usb/gadget/u_ether.c
index 6d3ccdc09e1e..2aae0d61bb19 100644
--- a/drivers/usb/gadget/u_ether.c
+++ b/drivers/usb/gadget/u_ether.c
@@ -963,6 +963,15 @@ int gether_get_host_addr_cdc(struct net_device *net, char *host_addr, int len)
}
EXPORT_SYMBOL(gether_get_host_addr_cdc);
+void gether_get_host_addr_u8(struct net_device *net, u8 host_mac[ETH_ALEN])
+{
+ struct eth_dev *dev;
+
+ dev = netdev_priv(net);
+ memcpy(host_mac, dev->host_mac, ETH_ALEN);
+}
+EXPORT_SYMBOL(gether_get_host_addr_u8);
+
void gether_set_qmult(struct net_device *net, unsigned qmult)
{
struct eth_dev *dev;
diff --git a/drivers/usb/gadget/u_ether.h b/drivers/usb/gadget/u_ether.h
index 1671a7963d01..5efa657cf469 100644
--- a/drivers/usb/gadget/u_ether.h
+++ b/drivers/usb/gadget/u_ether.h
@@ -210,6 +210,16 @@ int gether_get_host_addr(struct net_device *net, char *host_addr, int len);
int gether_get_host_addr_cdc(struct net_device *net, char *host_addr, int len);
/**
+ * gether_get_host_addr_u8 - get an ethernet-over-usb link host address
+ * @net: device representing this link
+ * @host_mac: place to store the eth address of the host
+ *
+ * This gets the binary formatted host-side Ethernet address of this
+ * ethernet-over-usb link.
+ */
+void gether_get_host_addr_u8(struct net_device *net, u8 host_mac[ETH_ALEN]);
+
+/**
* gether_set_qmult - initialize an ethernet-over-usb link with a multiplier
* @net: device representing this link
* @qmult: queue multiplier