Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Minor line offset auto-merges. Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
@@ -440,10 +440,12 @@ advance:
|
||||
((!ctx->mbim_desc) && ((ctx->ether_desc == NULL) || (ctx->control != intf))))
|
||||
goto error;
|
||||
|
||||
/* claim interfaces, if any */
|
||||
temp = usb_driver_claim_interface(driver, ctx->data, dev);
|
||||
if (temp)
|
||||
goto error;
|
||||
/* claim data interface, if different from control */
|
||||
if (ctx->data != ctx->control) {
|
||||
temp = usb_driver_claim_interface(driver, ctx->data, dev);
|
||||
if (temp)
|
||||
goto error;
|
||||
}
|
||||
|
||||
iface_no = ctx->data->cur_altsetting->desc.bInterfaceNumber;
|
||||
|
||||
@@ -519,6 +521,10 @@ void cdc_ncm_unbind(struct usbnet *dev, struct usb_interface *intf)
|
||||
|
||||
tasklet_kill(&ctx->bh);
|
||||
|
||||
/* handle devices with combined control and data interface */
|
||||
if (ctx->control == ctx->data)
|
||||
ctx->data = NULL;
|
||||
|
||||
/* disconnect master --> disconnect slave */
|
||||
if (intf == ctx->control && ctx->data) {
|
||||
usb_set_intfdata(ctx->data, NULL);
|
||||
@@ -1186,6 +1192,14 @@ static const struct usb_device_id cdc_devs[] = {
|
||||
.driver_info = (unsigned long) &wwan_info,
|
||||
},
|
||||
|
||||
/* Huawei NCM devices disguised as vendor specific */
|
||||
{ USB_VENDOR_AND_INTERFACE_INFO(0x12d1, 0xff, 0x02, 0x16),
|
||||
.driver_info = (unsigned long)&wwan_info,
|
||||
},
|
||||
{ USB_VENDOR_AND_INTERFACE_INFO(0x12d1, 0xff, 0x02, 0x46),
|
||||
.driver_info = (unsigned long)&wwan_info,
|
||||
},
|
||||
|
||||
/* Generic CDC-NCM devices */
|
||||
{ USB_INTERFACE_INFO(USB_CLASS_COMM,
|
||||
USB_CDC_SUBCLASS_NCM, USB_CDC_PROTO_NONE),
|
||||
|
@@ -203,7 +203,7 @@ static int smsc95xx_mdio_read(struct net_device *netdev, int phy_id, int idx)
|
||||
/* set the address, index & direction (read from PHY) */
|
||||
phy_id &= dev->mii.phy_id_mask;
|
||||
idx &= dev->mii.reg_num_mask;
|
||||
addr = (phy_id << 11) | (idx << 6) | MII_READ_;
|
||||
addr = (phy_id << 11) | (idx << 6) | MII_READ_ | MII_BUSY_;
|
||||
ret = smsc95xx_write_reg(dev, MII_ADDR, addr);
|
||||
check_warn_goto_done(ret, "Error writing MII_ADDR");
|
||||
|
||||
@@ -240,7 +240,7 @@ static void smsc95xx_mdio_write(struct net_device *netdev, int phy_id, int idx,
|
||||
/* set the address, index & direction (write to PHY) */
|
||||
phy_id &= dev->mii.phy_id_mask;
|
||||
idx &= dev->mii.reg_num_mask;
|
||||
addr = (phy_id << 11) | (idx << 6) | MII_WRITE_;
|
||||
addr = (phy_id << 11) | (idx << 6) | MII_WRITE_ | MII_BUSY_;
|
||||
ret = smsc95xx_write_reg(dev, MII_ADDR, addr);
|
||||
check_warn_goto_done(ret, "Error writing MII_ADDR");
|
||||
|
||||
|
Reference in New Issue
Block a user