ax88172a.c (8b5b6f5413e97c3e8bafcdd67553d508f4f698cd) ax88172a.c (38673c8218a6bcaac97b0243089e33617e28f43f)
1/*
2 * ASIX AX88172A based USB 2.0 Ethernet Devices
3 * Copyright (C) 2012 OMICRON electronics GmbH
4 *
5 * Supports external PHYs via phylib. Based on the driver for the
6 * AX88772. Original copyrights follow:
7 *
8 * Copyright (C) 2003-2006 David Hollis <dhollis@davehollis.com>

--- 103 unchanged lines hidden (view full) ---

112 priv->mdio->write = &asix_mdio_bus_write;
113 priv->mdio->name = "Asix MDIO Bus";
114 /* mii bus name is usb-<usb bus number>-<usb device number> */
115 snprintf(priv->mdio->id, MII_BUS_ID_SIZE, "usb-%03d:%03d",
116 dev->udev->bus->busnum, dev->udev->devnum);
117
118 priv->mdio->irq = kzalloc(sizeof(int) * PHY_MAX_ADDR, GFP_KERNEL);
119 if (!priv->mdio->irq) {
1/*
2 * ASIX AX88172A based USB 2.0 Ethernet Devices
3 * Copyright (C) 2012 OMICRON electronics GmbH
4 *
5 * Supports external PHYs via phylib. Based on the driver for the
6 * AX88772. Original copyrights follow:
7 *
8 * Copyright (C) 2003-2006 David Hollis <dhollis@davehollis.com>

--- 103 unchanged lines hidden (view full) ---

112 priv->mdio->write = &asix_mdio_bus_write;
113 priv->mdio->name = "Asix MDIO Bus";
114 /* mii bus name is usb-<usb bus number>-<usb device number> */
115 snprintf(priv->mdio->id, MII_BUS_ID_SIZE, "usb-%03d:%03d",
116 dev->udev->bus->busnum, dev->udev->devnum);
117
118 priv->mdio->irq = kzalloc(sizeof(int) * PHY_MAX_ADDR, GFP_KERNEL);
119 if (!priv->mdio->irq) {
120 netdev_err(dev->net, "Could not allocate mdio->irq\n");
121 ret = -ENOMEM;
122 goto mfree;
123 }
124 for (i = 0; i < PHY_MAX_ADDR; i++)
125 priv->mdio->irq[i] = PHY_POLL;
126
127 ret = mdiobus_register(priv->mdio);
128 if (ret) {

--- 102 unchanged lines hidden (view full) ---

231{
232 int ret;
233 u8 buf[ETH_ALEN];
234 struct ax88172a_private *priv;
235
236 usbnet_get_endpoints(dev, intf);
237
238 priv = kzalloc(sizeof(*priv), GFP_KERNEL);
120 ret = -ENOMEM;
121 goto mfree;
122 }
123 for (i = 0; i < PHY_MAX_ADDR; i++)
124 priv->mdio->irq[i] = PHY_POLL;
125
126 ret = mdiobus_register(priv->mdio);
127 if (ret) {

--- 102 unchanged lines hidden (view full) ---

230{
231 int ret;
232 u8 buf[ETH_ALEN];
233 struct ax88172a_private *priv;
234
235 usbnet_get_endpoints(dev, intf);
236
237 priv = kzalloc(sizeof(*priv), GFP_KERNEL);
239 if (!priv) {
240 netdev_err(dev->net, "Could not allocate memory for private data\n");
238 if (!priv)
241 return -ENOMEM;
239 return -ENOMEM;
242 }
240
243 dev->driver_priv = priv;
244
245 /* Get the MAC address */
246 ret = asix_read_cmd(dev, AX_CMD_READ_NODE_ID, 0, 0, ETH_ALEN, buf);
247 if (ret < 0) {
248 netdev_err(dev->net, "Failed to read MAC address: %d\n", ret);
249 goto free;
250 }

--- 173 unchanged lines hidden ---
241 dev->driver_priv = priv;
242
243 /* Get the MAC address */
244 ret = asix_read_cmd(dev, AX_CMD_READ_NODE_ID, 0, 0, ETH_ALEN, buf);
245 if (ret < 0) {
246 netdev_err(dev->net, "Failed to read MAC address: %d\n", ret);
247 goto free;
248 }

--- 173 unchanged lines hidden ---