summaryrefslogtreecommitdiff
path: root/drivers/media/video
diff options
context:
space:
mode:
authorDevin Heitmueller <dheitmueller@kernellabs.com>2012-08-06 22:47:05 -0300
committerMauro Carvalho Chehab <mchehab@redhat.com>2012-08-09 20:40:20 -0300
commit8ff63de690d74bec848caab64a86bd53c797365c (patch)
treee443f2cb5862163f28aea1ec40bac684be928d80 /drivers/media/video
parentfaaf01b2f6be0378c0c6084f0257b150dc014152 (diff)
downloadlinux-3.10-8ff63de690d74bec848caab64a86bd53c797365c.tar.gz
linux-3.10-8ff63de690d74bec848caab64a86bd53c797365c.tar.bz2
linux-3.10-8ff63de690d74bec848caab64a86bd53c797365c.zip
[media] au0828: remove control buffer from send_control_msg
There are no cases where a control message is ever sent to the au0828 with an actual buffer defined. Remove the reference to dev->ctrlmsg, which currently requires us to hold a mutex since it is shared with the read function. Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/video')
-rw-r--r--drivers/media/video/au0828/au0828-core.c14
1 files changed, 6 insertions, 8 deletions
diff --git a/drivers/media/video/au0828/au0828-core.c b/drivers/media/video/au0828/au0828-core.c
index b2c4254e6ec..65914bc421d 100644
--- a/drivers/media/video/au0828/au0828-core.c
+++ b/drivers/media/video/au0828/au0828-core.c
@@ -46,7 +46,7 @@ MODULE_PARM_DESC(disable_usb_speed_check,
#define _BULKPIPESIZE 0xffff
static int send_control_msg(struct au0828_dev *dev, u16 request, u32 value,
- u16 index, unsigned char *cp, u16 size);
+ u16 index);
static int recv_control_msg(struct au0828_dev *dev, u16 request, u32 value,
u16 index, unsigned char *cp, u16 size);
@@ -64,8 +64,7 @@ u32 au0828_readreg(struct au0828_dev *dev, u16 reg)
u32 au0828_writereg(struct au0828_dev *dev, u16 reg, u32 val)
{
dprintk(8, "%s(0x%04x, 0x%02x)\n", __func__, reg, val);
- return send_control_msg(dev, CMD_REQUEST_OUT, val, reg,
- dev->ctrlmsg, 0);
+ return send_control_msg(dev, CMD_REQUEST_OUT, val, reg);
}
static void cmd_msg_dump(struct au0828_dev *dev)
@@ -87,10 +86,10 @@ static void cmd_msg_dump(struct au0828_dev *dev)
}
static int send_control_msg(struct au0828_dev *dev, u16 request, u32 value,
- u16 index, unsigned char *cp, u16 size)
+ u16 index)
{
int status = -ENODEV;
- mutex_lock(&dev->mutex);
+
if (dev->usbdev) {
/* cp must be memory that has been allocated by kmalloc */
@@ -99,8 +98,7 @@ static int send_control_msg(struct au0828_dev *dev, u16 request, u32 value,
request,
USB_DIR_OUT | USB_TYPE_VENDOR |
USB_RECIP_DEVICE,
- value, index,
- cp, size, 1000);
+ value, index, NULL, 0, 1000);
status = min(status, 0);
@@ -110,7 +108,7 @@ static int send_control_msg(struct au0828_dev *dev, u16 request, u32 value,
}
}
- mutex_unlock(&dev->mutex);
+
return status;
}