[media] cx231xx: Fix I2C on Internal Master 3 Bus
authorOleh Kravchenko <oleg@kaa.org.ua>
Sun, 29 Jan 2017 18:07:31 +0000 (16:07 -0200)
committerMauro Carvalho Chehab <mchehab@s-opensource.com>
Tue, 7 Feb 2017 11:09:10 +0000 (09:09 -0200)
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>
drivers/media/usb/cx231xx/cx231xx-core.c

index 550ec93..46646ec 100644 (file)
@@ -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;