Merge tag 'for-3.7-rc1' of git://gitorious.org/linux-pwm/linux-pwm
[cascardo/linux.git] / drivers / net / usb / kaweth.c
index c3d0349..c75e11e 100644 (file)
@@ -267,19 +267,16 @@ static int kaweth_control(struct kaweth_device *kaweth,
        struct usb_ctrlrequest *dr;
        int retval;
 
-       dbg("kaweth_control()");
+       netdev_dbg(kaweth->net, "kaweth_control()\n");
 
        if(in_interrupt()) {
-               dbg("in_interrupt()");
+               netdev_dbg(kaweth->net, "in_interrupt()\n");
                return -EBUSY;
        }
 
        dr = kmalloc(sizeof(struct usb_ctrlrequest), GFP_ATOMIC);
-
-       if (!dr) {
-               dbg("kmalloc() failed");
+       if (!dr)
                return -ENOMEM;
-       }
 
        dr->bRequestType = requesttype;
        dr->bRequest = request;
@@ -305,7 +302,7 @@ static int kaweth_read_configuration(struct kaweth_device *kaweth)
 {
        int retval;
 
-       dbg("Reading kaweth configuration");
+       netdev_dbg(kaweth->net, "Reading kaweth configuration\n");
 
        retval = kaweth_control(kaweth,
                                usb_rcvctrlpipe(kaweth->dev, 0),
@@ -327,7 +324,7 @@ static int kaweth_set_urb_size(struct kaweth_device *kaweth, __u16 urb_size)
 {
        int retval;
 
-       dbg("Setting URB size to %d", (unsigned)urb_size);
+       netdev_dbg(kaweth->net, "Setting URB size to %d\n", (unsigned)urb_size);
 
        retval = kaweth_control(kaweth,
                                usb_sndctrlpipe(kaweth->dev, 0),
@@ -349,7 +346,7 @@ static int kaweth_set_sofs_wait(struct kaweth_device *kaweth, __u16 sofs_wait)
 {
        int retval;
 
-       dbg("Set SOFS wait to %d", (unsigned)sofs_wait);
+       netdev_dbg(kaweth->net, "Set SOFS wait to %d\n", (unsigned)sofs_wait);
 
        retval = kaweth_control(kaweth,
                                usb_sndctrlpipe(kaweth->dev, 0),
@@ -372,7 +369,8 @@ static int kaweth_set_receive_filter(struct kaweth_device *kaweth,
 {
        int retval;
 
-       dbg("Set receive filter to %d", (unsigned)receive_filter);
+       netdev_dbg(kaweth->net, "Set receive filter to %d\n",
+                  (unsigned)receive_filter);
 
        retval = kaweth_control(kaweth,
                                usb_sndctrlpipe(kaweth->dev, 0),
@@ -421,12 +419,13 @@ static int kaweth_download_firmware(struct kaweth_device *kaweth,
        kaweth->firmware_buf[4] = type;
        kaweth->firmware_buf[5] = interrupt;
 
-       dbg("High: %i, Low:%i", kaweth->firmware_buf[3],
+       netdev_dbg(kaweth->net, "High: %i, Low:%i\n", kaweth->firmware_buf[3],
                   kaweth->firmware_buf[2]);
 
-       dbg("Downloading firmware at %p to kaweth device at %p",
-           fw->data, kaweth);
-       dbg("Firmware length: %d", data_len);
+       netdev_dbg(kaweth->net,
+                  "Downloading firmware at %p to kaweth device at %p\n",
+                  fw->data, kaweth);
+       netdev_dbg(kaweth->net, "Firmware length: %d\n", data_len);
 
        return kaweth_control(kaweth,
                              usb_sndctrlpipe(kaweth->dev, 0),
@@ -454,7 +453,7 @@ static int kaweth_trigger_firmware(struct kaweth_device *kaweth,
        kaweth->firmware_buf[6] = 0x00;
        kaweth->firmware_buf[7] = 0x00;
 
-       dbg("Triggering firmware");
+       netdev_dbg(kaweth->net, "Triggering firmware\n");
 
        return kaweth_control(kaweth,
                              usb_sndctrlpipe(kaweth->dev, 0),
@@ -474,11 +473,11 @@ static int kaweth_reset(struct kaweth_device *kaweth)
 {
        int result;
 
-       dbg("kaweth_reset(%p)", kaweth);
+       netdev_dbg(kaweth->net, "kaweth_reset(%p)\n", kaweth);
        result = usb_reset_configuration(kaweth->dev);
        mdelay(10);
 
-       dbg("kaweth_reset() returns %d.",result);
+       netdev_dbg(kaweth->net, "kaweth_reset() returns %d.\n", result);
 
        return result;
 }
@@ -595,6 +594,7 @@ static void kaweth_async_set_rx_mode(struct kaweth_device *kaweth);
  ****************************************************************/
 static void kaweth_usb_receive(struct urb *urb)
 {
+       struct device *dev = &urb->dev->dev;
        struct kaweth_device *kaweth = urb->context;
        struct net_device *net = kaweth->net;
        int status = urb->status;
@@ -610,25 +610,25 @@ static void kaweth_usb_receive(struct urb *urb)
                kaweth->stats.rx_errors++;
                kaweth->end = 1;
                wake_up(&kaweth->term_wait);
-               dbg("Status was -EPIPE.");
+               dev_dbg(dev, "Status was -EPIPE.\n");
                return;
        }
        if (unlikely(status == -ECONNRESET || status == -ESHUTDOWN)) {
                /* we are killed - set a flag and wake the disconnect handler */
                kaweth->end = 1;
                wake_up(&kaweth->term_wait);
-               dbg("Status was -ECONNRESET or -ESHUTDOWN.");
+               dev_dbg(dev, "Status was -ECONNRESET or -ESHUTDOWN.\n");
                return;
        }
        if (unlikely(status == -EPROTO || status == -ETIME ||
                     status == -EILSEQ)) {
                kaweth->stats.rx_errors++;
-               dbg("Status was -EPROTO, -ETIME, or -EILSEQ.");
+               dev_dbg(dev, "Status was -EPROTO, -ETIME, or -EILSEQ.\n");
                return;
        }
        if (unlikely(status == -EOVERFLOW)) {
                kaweth->stats.rx_errors++;
-               dbg("Status was -EOVERFLOW.");
+               dev_dbg(dev, "Status was -EOVERFLOW.\n");
        }
        spin_lock(&kaweth->device_lock);
        if (IS_BLOCKED(kaweth->status)) {
@@ -687,7 +687,7 @@ static int kaweth_open(struct net_device *net)
        struct kaweth_device *kaweth = netdev_priv(net);
        int res;
 
-       dbg("Opening network device.");
+       netdev_dbg(kaweth->net, "Opening network device.\n");
 
        res = usb_autopm_get_interface(kaweth->intf);
        if (res) {
@@ -787,7 +787,8 @@ static void kaweth_usb_transmit_complete(struct urb *urb)
 
        if (unlikely(status != 0))
                if (status != -ENOENT)
-                       dbg("%s: TX status %d.", kaweth->net->name, status);
+                       dev_dbg(&urb->dev->dev, "%s: TX status %d.\n",
+                               kaweth->net->name, status);
 
        netif_wake_queue(kaweth->net);
        dev_kfree_skb_irq(skb);
@@ -871,7 +872,7 @@ static void kaweth_set_rx_mode(struct net_device *net)
                                      KAWETH_PACKET_FILTER_BROADCAST |
                                     KAWETH_PACKET_FILTER_MULTICAST;
 
-       dbg("Setting Rx mode to %d", packet_filter_bitmap);
+       netdev_dbg(net, "Setting Rx mode to %d\n", packet_filter_bitmap);
 
        netif_stop_queue(net);
 
@@ -916,7 +917,8 @@ static void kaweth_async_set_rx_mode(struct kaweth_device *kaweth)
                        result);
        }
        else {
-               dbg("Set Rx mode to %d", packet_filter_bitmap);
+               netdev_dbg(kaweth->net, "Set Rx mode to %d\n",
+                          packet_filter_bitmap);
        }
 }
 
@@ -951,7 +953,7 @@ static int kaweth_suspend(struct usb_interface *intf, pm_message_t message)
        struct kaweth_device *kaweth = usb_get_intfdata(intf);
        unsigned long flags;
 
-       dbg("Suspending device");
+       dev_dbg(&intf->dev, "Suspending device\n");
        spin_lock_irqsave(&kaweth->device_lock, flags);
        kaweth->status |= KAWETH_STATUS_SUSPENDING;
        spin_unlock_irqrestore(&kaweth->device_lock, flags);
@@ -968,7 +970,7 @@ static int kaweth_resume(struct usb_interface *intf)
        struct kaweth_device *kaweth = usb_get_intfdata(intf);
        unsigned long flags;
 
-       dbg("Resuming device");
+       dev_dbg(&intf->dev, "Resuming device\n");
        spin_lock_irqsave(&kaweth->device_lock, flags);
        kaweth->status &= ~KAWETH_STATUS_SUSPENDING;
        spin_unlock_irqrestore(&kaweth->device_lock, flags);
@@ -1003,36 +1005,37 @@ static int kaweth_probe(
                const struct usb_device_id *id      /* from id_table */
        )
 {
-       struct usb_device *dev = interface_to_usbdev(intf);
+       struct device *dev = &intf->dev;
+       struct usb_device *udev = interface_to_usbdev(intf);
        struct kaweth_device *kaweth;
        struct net_device *netdev;
        const eth_addr_t bcast_addr = { 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF };
        int result = 0;
 
-       dbg("Kawasaki Device Probe (Device number:%d): 0x%4.4x:0x%4.4x:0x%4.4x",
-                dev->devnum,
-                le16_to_cpu(dev->descriptor.idVendor),
-                le16_to_cpu(dev->descriptor.idProduct),
-                le16_to_cpu(dev->descriptor.bcdDevice));
+       dev_dbg(dev,
+               "Kawasaki Device Probe (Device number:%d): 0x%4.4x:0x%4.4x:0x%4.4x\n",
+               udev->devnum, le16_to_cpu(udev->descriptor.idVendor),
+               le16_to_cpu(udev->descriptor.idProduct),
+               le16_to_cpu(udev->descriptor.bcdDevice));
 
-       dbg("Device at %p", dev);
+       dev_dbg(dev, "Device at %p\n", udev);
 
-       dbg("Descriptor length: %x type: %x",
-                (int)dev->descriptor.bLength,
-                (int)dev->descriptor.bDescriptorType);
+       dev_dbg(dev, "Descriptor length: %x type: %x\n",
+               (int)udev->descriptor.bLength,
+               (int)udev->descriptor.bDescriptorType);
 
        netdev = alloc_etherdev(sizeof(*kaweth));
        if (!netdev)
                return -ENOMEM;
 
        kaweth = netdev_priv(netdev);
-       kaweth->dev = dev;
+       kaweth->dev = udev;
        kaweth->net = netdev;
 
        spin_lock_init(&kaweth->device_lock);
        init_waitqueue_head(&kaweth->term_wait);
 
-       dbg("Resetting.");
+       dev_dbg(dev, "Resetting.\n");
 
        kaweth_reset(kaweth);
 
@@ -1041,17 +1044,17 @@ static int kaweth_probe(
         * downloaded. Don't try to do it again, or we'll hang the device.
         */
 
-       if (le16_to_cpu(dev->descriptor.bcdDevice) >> 8) {
-               dev_info(&intf->dev, "Firmware present in device.\n");
+       if (le16_to_cpu(udev->descriptor.bcdDevice) >> 8) {
+               dev_info(dev, "Firmware present in device.\n");
        } else {
                /* Download the firmware */
-               dev_info(&intf->dev, "Downloading firmware...\n");
+               dev_info(dev, "Downloading firmware...\n");
                kaweth->firmware_buf = (__u8 *)__get_free_page(GFP_KERNEL);
                if ((result = kaweth_download_firmware(kaweth,
                                                      "kaweth/new_code.bin",
                                                      100,
                                                      2)) < 0) {
-                       dev_err(&intf->dev, "Error downloading firmware (%d)\n",
+                       dev_err(dev, "Error downloading firmware (%d)\n",
                                result);
                        goto err_fw;
                }
@@ -1060,8 +1063,7 @@ static int kaweth_probe(
                                                      "kaweth/new_code_fix.bin",
                                                      100,
                                                      3)) < 0) {
-                       dev_err(&intf->dev,
-                               "Error downloading firmware fix (%d)\n",
+                       dev_err(dev, "Error downloading firmware fix (%d)\n",
                                result);
                        goto err_fw;
                }
@@ -1070,8 +1072,7 @@ static int kaweth_probe(
                                                      "kaweth/trigger_code.bin",
                                                      126,
                                                      2)) < 0) {
-                       dev_err(&intf->dev,
-                               "Error downloading trigger code (%d)\n",
+                       dev_err(dev, "Error downloading trigger code (%d)\n",
                                result);
                        goto err_fw;
 
@@ -1081,19 +1082,18 @@ static int kaweth_probe(
                                                      "kaweth/trigger_code_fix.bin",
                                                      126,
                                                      3)) < 0) {
-                       dev_err(&intf->dev, "Error downloading trigger code fix (%d)\n", result);
+                       dev_err(dev, "Error downloading trigger code fix (%d)\n", result);
                        goto err_fw;
                }
 
 
                if ((result = kaweth_trigger_firmware(kaweth, 126)) < 0) {
-                       dev_err(&intf->dev, "Error triggering firmware (%d)\n",
-                               result);
+                       dev_err(dev, "Error triggering firmware (%d)\n", result);
                        goto err_fw;
                }
 
                /* Device will now disappear for a moment...  */
-               dev_info(&intf->dev, "Firmware loaded.  I'll be back...\n");
+               dev_info(dev, "Firmware loaded.  I'll be back...\n");
 err_fw:
                free_page((unsigned long)kaweth->firmware_buf);
                free_netdev(netdev);
@@ -1103,29 +1103,29 @@ err_fw:
        result = kaweth_read_configuration(kaweth);
 
        if(result < 0) {
-               dev_err(&intf->dev, "Error reading configuration (%d), no net device created\n", result);
+               dev_err(dev, "Error reading configuration (%d), no net device created\n", result);
                goto err_free_netdev;
        }
 
-       dev_info(&intf->dev, "Statistics collection: %x\n", kaweth->configuration.statistics_mask);
-       dev_info(&intf->dev, "Multicast filter limit: %x\n", kaweth->configuration.max_multicast_filters & ((1 << 15) - 1));
-       dev_info(&intf->dev, "MTU: %d\n", le16_to_cpu(kaweth->configuration.segment_size));
-       dev_info(&intf->dev, "Read MAC address %pM\n", kaweth->configuration.hw_addr);
+       dev_info(dev, "Statistics collection: %x\n", kaweth->configuration.statistics_mask);
+       dev_info(dev, "Multicast filter limit: %x\n", kaweth->configuration.max_multicast_filters & ((1 << 15) - 1));
+       dev_info(dev, "MTU: %d\n", le16_to_cpu(kaweth->configuration.segment_size));
+       dev_info(dev, "Read MAC address %pM\n", kaweth->configuration.hw_addr);
 
        if(!memcmp(&kaweth->configuration.hw_addr,
                    &bcast_addr,
                   sizeof(bcast_addr))) {
-               dev_err(&intf->dev, "Firmware not functioning properly, no net device created\n");
+               dev_err(dev, "Firmware not functioning properly, no net device created\n");
                goto err_free_netdev;
        }
 
        if(kaweth_set_urb_size(kaweth, KAWETH_BUF_SIZE) < 0) {
-               dbg("Error setting URB size");
+               dev_dbg(dev, "Error setting URB size\n");
                goto err_free_netdev;
        }
 
        if(kaweth_set_sofs_wait(kaweth, KAWETH_SOFS_TO_WAIT) < 0) {
-               dev_err(&intf->dev, "Error setting SOFS wait\n");
+               dev_err(dev, "Error setting SOFS wait\n");
                goto err_free_netdev;
        }
 
@@ -1135,11 +1135,11 @@ err_fw:
                                            KAWETH_PACKET_FILTER_MULTICAST);
 
        if(result < 0) {
-               dev_err(&intf->dev, "Error setting receive filter\n");
+               dev_err(dev, "Error setting receive filter\n");
                goto err_free_netdev;
        }
 
-       dbg("Initializing net device.");
+       dev_dbg(dev, "Initializing net device.\n");
 
        kaweth->intf = intf;
 
@@ -1181,20 +1181,20 @@ err_fw:
 
 #if 0
 // dma_supported() is deeply broken on almost all architectures
-       if (dma_supported (&intf->dev, 0xffffffffffffffffULL))
+       if (dma_supported (dev, 0xffffffffffffffffULL))
                kaweth->net->features |= NETIF_F_HIGHDMA;
 #endif
 
-       SET_NETDEV_DEV(netdev, &intf->dev);
+       SET_NETDEV_DEV(netdev, dev);
        if (register_netdev(netdev) != 0) {
-               dev_err(&intf->dev, "Error registering netdev.\n");
+               dev_err(dev, "Error registering netdev.\n");
                goto err_intfdata;
        }
 
-       dev_info(&intf->dev, "kaweth interface created at %s\n",
+       dev_info(dev, "kaweth interface created at %s\n",
                 kaweth->net->name);
 
-       dbg("Kaweth probe returning.");
+       dev_dbg(dev, "Kaweth probe returning.\n");
 
        return 0;
 
@@ -1232,7 +1232,7 @@ static void kaweth_disconnect(struct usb_interface *intf)
        }
        netdev = kaweth->net;
 
-       dbg("Unregistering net device");
+       netdev_dbg(kaweth->net, "Unregistering net device\n");
        unregister_netdev(netdev);
 
        usb_free_urb(kaweth->rx_urb);