diff options
author | Hans de Goede <hdegoede@redhat.com> | 2012-01-11 00:02:04 +0400 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2012-01-16 17:27:58 +0400 |
commit | 24be689bfbbcd6c047d7918784ff810e97648006 (patch) | |
tree | b682e75ed5ccd2124d5d44cf528707562c5a6f00 /drivers/media/video/pwc/pwc-dec1.h | |
parent | 1c852201a28601b1379857f615e99071211294c6 (diff) | |
download | linux-24be689bfbbcd6c047d7918784ff810e97648006.tar.xz |
[media] pwc: Use one shared usb command buffer
The pwc driver used to:
1. kmalloc a buffer
2. memcpy data to send over usb there
3. do the usb_control_msg call (which does not work with data on the stack)
4. free the buffer
For every usb command send. This patch changes the code to instead malloc
a buffer for this purpose once and use it everywhere.
[mchehab@redhat.com: Fix a compilation breakage with allyesconfig:
drivers/media/video/pwc/pwc-ctrl.c: In function ‘pwc_get_cmos_sensor’:
drivers/media/video/pwc/pwc-ctrl.c:546:3: warning: passing argument 4 of ‘recv_control_msg’ makes integer from pointer without a cast [en$
drivers/media/video/pwc/pwc-ctrl.c:107:12: note: expected ‘int’ but argument is of type ‘unsigned char *’
drivers/media/video/pwc/pwc-ctrl.c:546:3: error: too many arguments to function ‘recv_control_msg’
drivers/media/video/pwc/pwc-ctrl.c:107:12: note: declared here]
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/video/pwc/pwc-dec1.h')
-rw-r--r-- | drivers/media/video/pwc/pwc-dec1.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/media/video/pwc/pwc-dec1.h b/drivers/media/video/pwc/pwc-dec1.h index 6e8f3c561c9b..c565ef8f52fb 100644 --- a/drivers/media/video/pwc/pwc-dec1.h +++ b/drivers/media/video/pwc/pwc-dec1.h @@ -34,6 +34,6 @@ struct pwc_dec1_private int version; }; -void pwc_dec1_init(struct pwc_device *pdev, void *buffer); +void pwc_dec1_init(struct pwc_device *pdev, const unsigned char *cmd); #endif |