X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=drivers%2Fusb%2Finput%2Fpowermate.c;h=6e77750b44a4501816de49e482ebdf03e5857957;hb=6a77f38946aaee1cd85eeec6cf4229b204c15071;hp=0ba1bcbfb431fb94a2a44b6c4785fad53a81055e;hpb=87fc8d1bb10cd459024a742c6a10961fefcef18f;p=linux-2.6.git diff --git a/drivers/usb/input/powermate.c b/drivers/usb/input/powermate.c index 0ba1bcbfb..6e77750b4 100644 --- a/drivers/usb/input/powermate.c +++ b/drivers/usb/input/powermate.c @@ -349,7 +349,7 @@ static int powermate_probe(struct usb_interface *intf, const struct usb_device_i return -ENOMEM; } - pm->lock = SPIN_LOCK_UNLOCKED; + spin_lock_init(&pm->lock); init_input_dev(&pm->input); /* get a handle to the interrupt data pipe */ @@ -375,12 +375,13 @@ static int powermate_probe(struct usb_interface *intf, const struct usb_device_i return -EIO; /* failure */ } - switch (udev->descriptor.idProduct) { + switch (le16_to_cpu(udev->descriptor.idProduct)) { case POWERMATE_PRODUCT_NEW: pm->input.name = pm_name_powermate; break; case POWERMATE_PRODUCT_OLD: pm->input.name = pm_name_soundknob; break; default: - pm->input.name = pm_name_soundknob; - printk(KERN_WARNING "powermate: unknown product id %04x\n", udev->descriptor.idProduct); + pm->input.name = pm_name_soundknob; + printk(KERN_WARNING "powermate: unknown product id %04x\n", + le16_to_cpu(udev->descriptor.idProduct)); } pm->input.private = pm; @@ -389,9 +390,9 @@ static int powermate_probe(struct usb_interface *intf, const struct usb_device_i pm->input.relbit[LONG(REL_DIAL)] = BIT(REL_DIAL); pm->input.mscbit[LONG(MSC_PULSELED)] = BIT(MSC_PULSELED); pm->input.id.bustype = BUS_USB; - pm->input.id.vendor = udev->descriptor.idVendor; - pm->input.id.product = udev->descriptor.idProduct; - pm->input.id.version = udev->descriptor.bcdDevice; + pm->input.id.vendor = le16_to_cpu(udev->descriptor.idVendor); + pm->input.id.product = le16_to_cpu(udev->descriptor.idProduct); + pm->input.id.version = le16_to_cpu(udev->descriptor.bcdDevice); pm->input.event = powermate_input_event; pm->input.dev = &intf->dev; @@ -417,7 +418,7 @@ static void powermate_disconnect(struct usb_interface *intf) usb_set_intfdata(intf, NULL); if (pm) { pm->requires_update = 0; - usb_unlink_urb(pm->irq); + usb_kill_urb(pm->irq); input_unregister_device(&pm->input); usb_free_urb(pm->irq); usb_free_urb(pm->config);