V4L(920) Fixed autodetection of max size by if alternate setting
PATCH 18/20 V4L(920) Fixed autodetection of max size by if alternate setting
From: Mauro Carvalho Chehab <[email protected]>
- Fixed autodetection of max size by if alternate setting
- Fixed some debug messages
Signed-off-by Mauro Carvalho Chehab <[email protected]>
-----------------
drivers/media/video/em28xx/em28xx-core.c +4 -5
@@ -797,20 +797,19 @@ int em28xx_set_alternate(struct em28xx * dev->alt = alt;if (dev->alt ==0 ) {int i; -for (i=0 ;i<EM28XX_MAX_ALT ; i++) +for (i=0 ;i< dev->num_alt; i++)if (dev->alt_max_pkt_size[i]>dev->alt_max_pkt_size[dev->alt]) dev->alt=i; }if (dev->alt != prev_alt) { dev->max_pkt_size = dev->alt_max_pkt_size[dev->alt]; -em28xx_coredbg ("setting alternate %d with wMaxPacketSize=%u" , dev->alt, +em28xx_coredbg ("setting alternate %d with wMaxPacketSize=%u\n" , dev->alt, dev->max_pkt_size); errCode =usb_set_interface (dev->udev,0 , dev->alt);if (errCode <0 ) { -em28xx_errdev - ("cannot change alternate number to %d (error=%i)\n" , - dev->alt, errCode); +em28xx_errdev ("cannot change alternate number to %d (error=%i)\n" , + dev->alt, errCode);return errCode; } }
drivers/media/video/em28xx/em28xx.h +2 -2
@@ -63,7 +63,6 @@/* default alternate; 0 means choose the best */ #define EM28XX_PINOUT 0 -#define EM28XX_MAX_ALT 7#define EM28XX_INTERLACED_DEFAULT 1
@@ -267,7 +266,8 @@ struct em28xx {struct usb_device *udev;/* the usb device */ int alt;/* alternate */ int max_pkt_size;/* max packet size of isoc transaction */ -unsigned int alt_max_pkt_size[EM28XX_MAX_ALT +1 ];/* array of wMaxPacketSize */ +int num_alt;/* Number of alternative settings */ +unsigned int *alt_max_pkt_size;/* array of wMaxPacketSize */ struct urb *urb[EM28XX_NUM_BUFS ];/* urb for isoc transfers */ char *transfer_buffer[EM28XX_NUM_BUFS ];/* transfer buffers for isoc transfer */ /* helper funcs that call usb_control_msg */
drivers/media/video/em28xx/em28xx-video.c +28 -17
90 lines not on this page · raw message
_______________________________________________________
Yahoo! Acesso Gr�tis: Internet r�pida e gr�tis.
Instale o discador agora!
http://br.acesso.yahoo.com/