diff options
| author | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2016-05-16 17:25:08 -0700 | 
|---|---|---|
| committer | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2016-05-16 17:25:08 -0700 | 
| commit | 23ea5967d6bd30ed59480edbc5fe21eec81682a3 (patch) | |
| tree | 345bf01823cf76596bc05e83fab9bf21678fef90 /drivers/input/tablet | |
| parent | c52c545ead97fcc2f4f8ea38f1ae3c23211e09a8 (diff) | |
| parent | d96caf8c33cad42b5eabcf1b686dd91581e306f4 (diff) | |
| download | linux-23ea5967d6bd30ed59480edbc5fe21eec81682a3.tar.bz2 | |
Merge branch 'next' into for-linus
Prepare first round of input updates for 4.7 merge window.
Diffstat (limited to 'drivers/input/tablet')
| -rw-r--r-- | drivers/input/tablet/acecad.c | 12 | ||||
| -rw-r--r-- | drivers/input/tablet/aiptek.c | 20 | ||||
| -rw-r--r-- | drivers/input/tablet/gtco.c | 24 | ||||
| -rw-r--r-- | drivers/input/tablet/kbtab.c | 8 | 
4 files changed, 33 insertions, 31 deletions
| diff --git a/drivers/input/tablet/acecad.c b/drivers/input/tablet/acecad.c index 889f6b77e8cb..e86e377a90f5 100644 --- a/drivers/input/tablet/acecad.c +++ b/drivers/input/tablet/acecad.c @@ -49,7 +49,6 @@ MODULE_LICENSE(DRIVER_LICENSE);  struct usb_acecad {  	char name[128];  	char phys[64]; -	struct usb_device *usbdev;  	struct usb_interface *intf;  	struct input_dev *input;  	struct urb *irq; @@ -64,6 +63,7 @@ static void usb_acecad_irq(struct urb *urb)  	unsigned char *data = acecad->data;  	struct input_dev *dev = acecad->input;  	struct usb_interface *intf = acecad->intf; +	struct usb_device *udev = interface_to_usbdev(intf);  	int prox, status;  	switch (urb->status) { @@ -110,15 +110,15 @@ resubmit:  	if (status)  		dev_err(&intf->dev,  			"can't resubmit intr, %s-%s/input0, status %d\n", -			acecad->usbdev->bus->bus_name, -			acecad->usbdev->devpath, status); +			udev->bus->bus_name, +			udev->devpath, status);  }  static int usb_acecad_open(struct input_dev *dev)  {  	struct usb_acecad *acecad = input_get_drvdata(dev); -	acecad->irq->dev = acecad->usbdev; +	acecad->irq->dev = interface_to_usbdev(acecad->intf);  	if (usb_submit_urb(acecad->irq, GFP_KERNEL))  		return -EIO; @@ -172,7 +172,6 @@ static int usb_acecad_probe(struct usb_interface *intf, const struct usb_device_  		goto fail2;  	} -	acecad->usbdev = dev;  	acecad->intf = intf;  	acecad->input = input_dev; @@ -251,12 +250,13 @@ static int usb_acecad_probe(struct usb_interface *intf, const struct usb_device_  static void usb_acecad_disconnect(struct usb_interface *intf)  {  	struct usb_acecad *acecad = usb_get_intfdata(intf); +	struct usb_device *udev = interface_to_usbdev(intf);  	usb_set_intfdata(intf, NULL);  	input_unregister_device(acecad->input);  	usb_free_urb(acecad->irq); -	usb_free_coherent(acecad->usbdev, 8, acecad->data, acecad->data_dma); +	usb_free_coherent(udev, 8, acecad->data, acecad->data_dma);  	kfree(acecad);  } diff --git a/drivers/input/tablet/aiptek.c b/drivers/input/tablet/aiptek.c index 78ca44840d60..4613f0aefd08 100644 --- a/drivers/input/tablet/aiptek.c +++ b/drivers/input/tablet/aiptek.c @@ -307,7 +307,6 @@ struct aiptek_settings {  struct aiptek {  	struct input_dev *inputdev;		/* input device struct           */ -	struct usb_device *usbdev;		/* usb device struct             */  	struct usb_interface *intf;		/* usb interface struct          */  	struct urb *urb;			/* urb for incoming reports      */  	dma_addr_t data_dma;			/* our dma stuffage              */ @@ -847,7 +846,7 @@ static int aiptek_open(struct input_dev *inputdev)  {  	struct aiptek *aiptek = input_get_drvdata(inputdev); -	aiptek->urb->dev = aiptek->usbdev; +	aiptek->urb->dev = interface_to_usbdev(aiptek->intf);  	if (usb_submit_urb(aiptek->urb, GFP_KERNEL) != 0)  		return -EIO; @@ -873,8 +872,10 @@ aiptek_set_report(struct aiptek *aiptek,  		  unsigned char report_type,  		  unsigned char report_id, void *buffer, int size)  { -	return usb_control_msg(aiptek->usbdev, -			       usb_sndctrlpipe(aiptek->usbdev, 0), +	struct usb_device *udev = interface_to_usbdev(aiptek->intf); + +	return usb_control_msg(udev, +			       usb_sndctrlpipe(udev, 0),  			       USB_REQ_SET_REPORT,  			       USB_TYPE_CLASS | USB_RECIP_INTERFACE |  			       USB_DIR_OUT, (report_type << 8) + report_id, @@ -886,8 +887,10 @@ aiptek_get_report(struct aiptek *aiptek,  		  unsigned char report_type,  		  unsigned char report_id, void *buffer, int size)  { -	return usb_control_msg(aiptek->usbdev, -			       usb_rcvctrlpipe(aiptek->usbdev, 0), +	struct usb_device *udev = interface_to_usbdev(aiptek->intf); + +	return usb_control_msg(udev, +			       usb_rcvctrlpipe(udev, 0),  			       USB_REQ_GET_REPORT,  			       USB_TYPE_CLASS | USB_RECIP_INTERFACE |  			       USB_DIR_IN, (report_type << 8) + report_id, @@ -1729,7 +1732,6 @@ aiptek_probe(struct usb_interface *intf, const struct usb_device_id *id)  	}  	aiptek->inputdev = inputdev; -	aiptek->usbdev = usbdev;  	aiptek->intf = intf;  	aiptek->ifnum = intf->altsetting[0].desc.bInterfaceNumber;  	aiptek->inDelay = 0; @@ -1833,8 +1835,8 @@ aiptek_probe(struct usb_interface *intf, const struct usb_device_id *id)  	 * input.  	 */  	usb_fill_int_urb(aiptek->urb, -			 aiptek->usbdev, -			 usb_rcvintpipe(aiptek->usbdev, +			 usbdev, +			 usb_rcvintpipe(usbdev,  					endpoint->bEndpointAddress),  			 aiptek->data, 8, aiptek_irq, aiptek,  			 endpoint->bInterval); diff --git a/drivers/input/tablet/gtco.c b/drivers/input/tablet/gtco.c index 7c18249d6c8e..abf09ac42ce4 100644 --- a/drivers/input/tablet/gtco.c +++ b/drivers/input/tablet/gtco.c @@ -104,7 +104,6 @@ MODULE_DEVICE_TABLE (usb, gtco_usbid_table);  struct gtco {  	struct input_dev  *inputdevice; /* input device struct pointer  */ -	struct usb_device *usbdev; /* the usb device for this device */  	struct usb_interface *intf;	/* the usb interface for this device */  	struct urb        *urbinfo;	 /* urb for incoming reports      */  	dma_addr_t        buf_dma;  /* dma addr of the data buffer*/ @@ -540,7 +539,7 @@ static int gtco_input_open(struct input_dev *inputdev)  {  	struct gtco *device = input_get_drvdata(inputdev); -	device->urbinfo->dev = device->usbdev; +	device->urbinfo->dev = interface_to_usbdev(device->intf);  	if (usb_submit_urb(device->urbinfo, GFP_KERNEL))  		return -EIO; @@ -824,6 +823,7 @@ static int gtco_probe(struct usb_interface *usbinterface,  	int                     result = 0, retry;  	int			error;  	struct usb_endpoint_descriptor *endpoint; +	struct usb_device	*udev = interface_to_usbdev(usbinterface);  	/* Allocate memory for device structure */  	gtco = kzalloc(sizeof(struct gtco), GFP_KERNEL); @@ -838,11 +838,10 @@ static int gtco_probe(struct usb_interface *usbinterface,  	gtco->inputdevice = input_dev;  	/* Save interface information */ -	gtco->usbdev = interface_to_usbdev(usbinterface);  	gtco->intf = usbinterface;  	/* Allocate some data for incoming reports */ -	gtco->buffer = usb_alloc_coherent(gtco->usbdev, REPORT_MAX_SIZE, +	gtco->buffer = usb_alloc_coherent(udev, REPORT_MAX_SIZE,  					  GFP_KERNEL, >co->buf_dma);  	if (!gtco->buffer) {  		dev_err(&usbinterface->dev, "No more memory for us buffers\n"); @@ -907,8 +906,8 @@ static int gtco_probe(struct usb_interface *usbinterface,  	/* Couple of tries to get reply */  	for (retry = 0; retry < 3; retry++) { -		result = usb_control_msg(gtco->usbdev, -					 usb_rcvctrlpipe(gtco->usbdev, 0), +		result = usb_control_msg(udev, +					 usb_rcvctrlpipe(udev, 0),  					 USB_REQ_GET_DESCRIPTOR,  					 USB_RECIP_INTERFACE | USB_DIR_IN,  					 REPORT_DEVICE_TYPE << 8, @@ -936,7 +935,7 @@ static int gtco_probe(struct usb_interface *usbinterface,  	}  	/* Create a device file node */ -	usb_make_path(gtco->usbdev, gtco->usbpath, sizeof(gtco->usbpath)); +	usb_make_path(udev, gtco->usbpath, sizeof(gtco->usbpath));  	strlcat(gtco->usbpath, "/input0", sizeof(gtco->usbpath));  	/* Set Input device functions */ @@ -953,15 +952,15 @@ static int gtco_probe(struct usb_interface *usbinterface,  	gtco_setup_caps(input_dev);  	/* Set input device required ID information */ -	usb_to_input_id(gtco->usbdev, &input_dev->id); +	usb_to_input_id(udev, &input_dev->id);  	input_dev->dev.parent = &usbinterface->dev;  	/* Setup the URB, it will be posted later on open of input device */  	endpoint = &usbinterface->altsetting[0].endpoint[0].desc;  	usb_fill_int_urb(gtco->urbinfo, -			 gtco->usbdev, -			 usb_rcvintpipe(gtco->usbdev, +			 udev, +			 usb_rcvintpipe(udev,  					endpoint->bEndpointAddress),  			 gtco->buffer,  			 REPORT_MAX_SIZE, @@ -985,7 +984,7 @@ static int gtco_probe(struct usb_interface *usbinterface,   err_free_urb:  	usb_free_urb(gtco->urbinfo);   err_free_buf: -	usb_free_coherent(gtco->usbdev, REPORT_MAX_SIZE, +	usb_free_coherent(udev, REPORT_MAX_SIZE,  			  gtco->buffer, gtco->buf_dma);   err_free_devs:  	input_free_device(input_dev); @@ -1002,13 +1001,14 @@ static void gtco_disconnect(struct usb_interface *interface)  {  	/* Grab private device ptr */  	struct gtco *gtco = usb_get_intfdata(interface); +	struct usb_device *udev = interface_to_usbdev(interface);  	/* Now reverse all the registration stuff */  	if (gtco) {  		input_unregister_device(gtco->inputdevice);  		usb_kill_urb(gtco->urbinfo);  		usb_free_urb(gtco->urbinfo); -		usb_free_coherent(gtco->usbdev, REPORT_MAX_SIZE, +		usb_free_coherent(udev, REPORT_MAX_SIZE,  				  gtco->buffer, gtco->buf_dma);  		kfree(gtco);  	} diff --git a/drivers/input/tablet/kbtab.c b/drivers/input/tablet/kbtab.c index d2ac7c2b5b82..e850d7e8afbc 100644 --- a/drivers/input/tablet/kbtab.c +++ b/drivers/input/tablet/kbtab.c @@ -31,7 +31,6 @@ struct kbtab {  	unsigned char *data;  	dma_addr_t data_dma;  	struct input_dev *dev; -	struct usb_device *usbdev;  	struct usb_interface *intf;  	struct urb *irq;  	char phys[32]; @@ -99,8 +98,9 @@ MODULE_DEVICE_TABLE(usb, kbtab_ids);  static int kbtab_open(struct input_dev *dev)  {  	struct kbtab *kbtab = input_get_drvdata(dev); +	struct usb_device *udev = interface_to_usbdev(kbtab->intf); -	kbtab->irq->dev = kbtab->usbdev; +	kbtab->irq->dev = udev;  	if (usb_submit_urb(kbtab->irq, GFP_KERNEL))  		return -EIO; @@ -135,7 +135,6 @@ static int kbtab_probe(struct usb_interface *intf, const struct usb_device_id *i  	if (!kbtab->irq)  		goto fail2; -	kbtab->usbdev = dev;  	kbtab->intf = intf;  	kbtab->dev = input_dev; @@ -188,12 +187,13 @@ static int kbtab_probe(struct usb_interface *intf, const struct usb_device_id *i  static void kbtab_disconnect(struct usb_interface *intf)  {  	struct kbtab *kbtab = usb_get_intfdata(intf); +	struct usb_device *udev = interface_to_usbdev(intf);  	usb_set_intfdata(intf, NULL);  	input_unregister_device(kbtab->dev);  	usb_free_urb(kbtab->irq); -	usb_free_coherent(kbtab->usbdev, 8, kbtab->data, kbtab->data_dma); +	usb_free_coherent(udev, 8, kbtab->data, kbtab->data_dma);  	kfree(kbtab);  } |