linux/drivers/media/usb
Fabio Luongo d30bb4b43e media: cx231xx: Fix the S-Video capture on August VGB100
There are three separate issues preventing color capture with S-Video
on August VGB100 with the cx231xx driver (same vid/pid as OTG102):

1. `cx231xx_set_decoder_video_input` is called with a u32 passed
   as its third argument, yet this functions expects a u8 instead.
   Some information about the configuration of the video mux is lost
   in the conversion, so that ch2 and ch3 do not get set by
   `cx231xx_afe_set_input_mux` (expecting a u32 but being passed a u8).

2. The input pin for the chroma signal is not correctly specified
   in cx231xx-cards.c, which can be verified by looking at the inf file
   coming with the VGB100 and OTG102' drivers for Windows.
   The mistake in the cx231xx driver likely stems from a wrong comment
   in the same file, suggesting VIN1_2 for chroma,
   while VIN3_2 is actually used.

3. Even after fixing the two issues above, the captured stream remains
   essentially B&W (although acquiring some pale green shades, suggesting
   we're moving in the right direction).
   After tests with somewhat random changes, it was found that removing
   `CX25840_SVIDEO_ON` from the vmux configuration in cx231xx-cards.c
   results in a captured stream with the expected colors.

Signed-off-by: Fabio Luongo <f.langufo.l@gmail.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2024-10-12 16:28:26 +02:00
..
airspy media: airspy: set lock before calling vb2_queue_init() 2024-10-12 15:53:54 +02:00
as102 media: as102: avoid GFP_ATOMIC 2024-04-29 12:07:00 +01:00
au0828 media: au0828: Use umin macro 2024-05-03 11:13:02 +01:00
b2c2 media: b2c2: flexcop-usb: fix flexcop_usb_memory_req 2024-06-24 11:05:07 +02:00
cx231xx media: cx231xx: Fix the S-Video capture on August VGB100 2024-10-12 16:28:26 +02:00
dvb-usb media: Revert "media: dvb-usb: Fix unexpected infinite loop in dvb_usb_read_remote_control()" 2024-08-08 21:40:34 +02:00
dvb-usb-v2 media: IR remote control for AVerMedia TD310 2024-04-29 14:53:50 +01:00
em28xx media: em28xx: Set GPIOs for non-audio boards when switching input 2024-06-29 12:20:05 +02:00
go7007 media: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-08-09 07:56:37 +02:00
gspca media: gspca: cpia1: Use min macro 2024-05-03 11:13:45 +01:00
hackrf media: hackrf: set lock before calling vb2_queue_init() 2024-10-12 15:53:53 +02:00
hdpvr media: hdpvr: fix error value returns in hdpvr_read 2022-06-27 09:02:50 +01:00
msi2500 media: msi2500: set lock before calling vb2_queue_init() 2024-10-12 15:53:52 +02:00
pvrusb2 media: pvrusb2: Use kmemdup_array instead of kmemdup for multiple allocation 2024-10-12 16:28:24 +02:00
pwc media: pwc: set lock before calling vb2_queue_init() 2024-10-12 15:53:50 +02:00
s2255 media: s2255: Use refcount_t instead of atomic_t for num_channels 2024-05-03 11:10:58 +01:00
siano media: usb: siano: Fix allocation of urbs 2024-04-16 00:02:53 +02:00
stk1160 media: stk1160: Use min macro 2024-05-03 11:14:15 +01:00
ttusb-budget media: dvb-ttusb-budget: cleanup printk logic 2020-09-03 11:15:47 +02:00
ttusb-dec media: Convert from tasklet to BH workqueue 2024-06-21 08:57:09 +02:00
usbtv media: usbtv: Remove useless locks in usbtv_video_free() 2024-03-04 12:58:38 +01:00
uvc media: uvcvideo: Exit early if there is not int_urb 2024-10-08 16:04:45 +02:00
Kconfig media: tm6000: deprecate this driver 2022-08-29 16:43:00 +02:00
Makefile media: tm6000: deprecate this driver 2022-08-29 16:43:00 +02:00