]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - drivers/net/usb/hso.c
Merge branch 'merge'
[linux-2.6-omap-h63xx.git] / drivers / net / usb / hso.c
index 1164c52e2c0a569f87fb9b01b9fa287833e33906..8e90891f0e422b8cc0f645c9eab388ff39b22d45 100644 (file)
@@ -2184,19 +2184,20 @@ static void hso_create_rfkill(struct hso_device *hso_dev,
                             struct usb_interface *interface)
 {
        struct hso_net *hso_net = dev2net(hso_dev);
-       struct device *dev = hso_dev->dev;
+       struct device *dev = &hso_net->net->dev;
        char *rfkn;
 
        hso_net->rfkill = rfkill_allocate(&interface_to_usbdev(interface)->dev,
-                                RFKILL_TYPE_WLAN);
+                                RFKILL_TYPE_WWAN);
        if (!hso_net->rfkill) {
-               dev_err(dev, "%s - Out of memory", __func__);
+               dev_err(dev, "%s - Out of memory\n", __func__);
                return;
        }
        rfkn = kzalloc(20, GFP_KERNEL);
        if (!rfkn) {
                rfkill_free(hso_net->rfkill);
-               dev_err(dev, "%s - Out of memory", __func__);
+               hso_net->rfkill = NULL;
+               dev_err(dev, "%s - Out of memory\n", __func__);
                return;
        }
        snprintf(rfkn, 20, "hso-%d",
@@ -2209,7 +2210,8 @@ static void hso_create_rfkill(struct hso_device *hso_dev,
                kfree(rfkn);
                hso_net->rfkill->name = NULL;
                rfkill_free(hso_net->rfkill);
-               dev_err(dev, "%s - Failed to register rfkill", __func__);
+               hso_net->rfkill = NULL;
+               dev_err(dev, "%s - Failed to register rfkill\n", __func__);
                return;
        }
 }