|
@@ -252,6 +252,7 @@ MODULE_DEVICE_TABLE (usb, xpad_table);
|
|
|
struct usb_xpad {
|
|
|
struct input_dev *dev; /* input device interface */
|
|
|
struct usb_device *udev; /* usb device */
|
|
|
+ struct usb_interface *intf; /* usb interface */
|
|
|
|
|
|
int pad_present;
|
|
|
|
|
@@ -457,7 +458,7 @@ static void xpad360w_process_packet(struct usb_xpad *xpad, u16 cmd, unsigned cha
|
|
|
static void xpad_irq_in(struct urb *urb)
|
|
|
{
|
|
|
struct usb_xpad *xpad = urb->context;
|
|
|
- struct device *dev = &xpad->dev->dev;
|
|
|
+ struct device *dev = &xpad->intf->dev;
|
|
|
int retval, status;
|
|
|
|
|
|
status = urb->status;
|
|
@@ -500,7 +501,7 @@ exit:
|
|
|
static void xpad_bulk_out(struct urb *urb)
|
|
|
{
|
|
|
struct usb_xpad *xpad = urb->context;
|
|
|
- struct device *dev = &xpad->dev->dev;
|
|
|
+ struct device *dev = &xpad->intf->dev;
|
|
|
|
|
|
switch (urb->status) {
|
|
|
case 0:
|
|
@@ -523,7 +524,7 @@ static void xpad_bulk_out(struct urb *urb)
|
|
|
static void xpad_irq_out(struct urb *urb)
|
|
|
{
|
|
|
struct usb_xpad *xpad = urb->context;
|
|
|
- struct device *dev = &xpad->dev->dev;
|
|
|
+ struct device *dev = &xpad->intf->dev;
|
|
|
int retval, status;
|
|
|
|
|
|
status = urb->status;
|
|
@@ -855,6 +856,7 @@ static int xpad_probe(struct usb_interface *intf, const struct usb_device_id *id
|
|
|
}
|
|
|
|
|
|
xpad->udev = udev;
|
|
|
+ xpad->intf = intf;
|
|
|
xpad->mapping = xpad_device[i].mapping;
|
|
|
xpad->xtype = xpad_device[i].xtype;
|
|
|
|