summaryrefslogtreecommitdiffstats
path: root/drivers/media
diff options
context:
space:
mode:
authorOleh Kravchenko <oleg@kaa.org.ua>2017-01-29 16:07:31 -0200
committerMauro Carvalho Chehab <mchehab@s-opensource.com>2017-02-07 09:09:10 -0200
commit6c5da8031a3abfad259190d35f83d89568b72ee2 (patch)
treed83fad358beafa1f9df57a9e92c96cb82547bfff /drivers/media
parenta096fd6492ea676570e621d972f68ff03042d0c4 (diff)
downloadlinux-6c5da8031a3abfad259190d35f83d89568b72ee2.tar.bz2
[media] cx231xx: Fix I2C on Internal Master 3 Bus
Internal Master 3 Bus can send and receive only 4 bytes per time. Signed-off-by: Oleh Kravchenko <oleg@kaa.org.ua> Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
Diffstat (limited to 'drivers/media')
-rw-r--r--drivers/media/usb/cx231xx/cx231xx-core.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/drivers/media/usb/cx231xx/cx231xx-core.c b/drivers/media/usb/cx231xx/cx231xx-core.c
index 550ec932f931..46646ecd2dbc 100644
--- a/drivers/media/usb/cx231xx/cx231xx-core.c
+++ b/drivers/media/usb/cx231xx/cx231xx-core.c
@@ -355,7 +355,12 @@ int cx231xx_send_vendor_cmd(struct cx231xx *dev,
*/
if ((ven_req->wLength > 4) && ((ven_req->bRequest == 0x4) ||
(ven_req->bRequest == 0x5) ||
- (ven_req->bRequest == 0x6))) {
+ (ven_req->bRequest == 0x6) ||
+
+ /* Internal Master 3 Bus can send
+ * and receive only 4 bytes per time
+ */
+ (ven_req->bRequest == 0x2))) {
unsend_size = 0;
pdata = ven_req->pBuff;