mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-10-30 08:02:30 +00:00
net: usb: aqc111: Add bind and empty unbind callbacks
Initialize net_device_ops structure Signed-off-by: Dmitry Bezrukov <dmitry.bezrukov@aquantia.com> Signed-off-by: Igor Russkikh <igor.russkikh@aquantia.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
17364b805f
commit
7cea2d40af
1 changed files with 35 additions and 0 deletions
|
@ -14,8 +14,43 @@
|
|||
#include <linux/usb/cdc.h>
|
||||
#include <linux/usb/usbnet.h>
|
||||
|
||||
static const struct net_device_ops aqc111_netdev_ops = {
|
||||
.ndo_open = usbnet_open,
|
||||
.ndo_stop = usbnet_stop,
|
||||
};
|
||||
|
||||
static int aqc111_bind(struct usbnet *dev, struct usb_interface *intf)
|
||||
{
|
||||
struct usb_device *udev = interface_to_usbdev(intf);
|
||||
int ret;
|
||||
|
||||
/* Check if vendor configuration */
|
||||
if (udev->actconfig->desc.bConfigurationValue != 1) {
|
||||
usb_driver_set_configuration(udev, 1);
|
||||
return -ENODEV;
|
||||
}
|
||||
|
||||
usb_reset_configuration(dev->udev);
|
||||
|
||||
ret = usbnet_get_endpoints(dev, intf);
|
||||
if (ret < 0) {
|
||||
netdev_dbg(dev->net, "usbnet_get_endpoints failed");
|
||||
return ret;
|
||||
}
|
||||
|
||||
dev->net->netdev_ops = &aqc111_netdev_ops;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static void aqc111_unbind(struct usbnet *dev, struct usb_interface *intf)
|
||||
{
|
||||
}
|
||||
|
||||
static const struct driver_info aqc111_info = {
|
||||
.description = "Aquantia AQtion USB to 5GbE Controller",
|
||||
.bind = aqc111_bind,
|
||||
.unbind = aqc111_unbind,
|
||||
};
|
||||
|
||||
#define AQC111_USB_ETH_DEV(vid, pid, table) \
|
||||
|
|
Loading…
Reference in a new issue