mirror of
https://github.com/FEX-Emu/linux.git
synced 2024-12-28 12:25:31 +00:00
[media] cx23885: fix VBI support
Tested VBI support and discovered that the wrong offset was used. After this change it is now working. Verified with CC/XDS for NTSC and WSS/Teletext on PAL. It also reported the wrong start lines for the second field. That's now fixed as well. Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
This commit is contained in:
parent
f8789e6d9c
commit
420b217619
@ -1228,11 +1228,11 @@ int cx23885_risc_vbibuffer(struct pci_dev *pci, struct cx23885_riscmem *risc,
|
||||
/* Sync to line 6, so US CC line 21 will appear in line '12'
|
||||
* in the userland vbi payload */
|
||||
if (UNSET != top_offset)
|
||||
rp = cx23885_risc_field(rp, sglist, top_offset, 6,
|
||||
rp = cx23885_risc_field(rp, sglist, top_offset, 0,
|
||||
bpl, padding, lines, 0, true);
|
||||
|
||||
if (UNSET != bottom_offset)
|
||||
rp = cx23885_risc_field(rp, sglist, bottom_offset, 0x207,
|
||||
rp = cx23885_risc_field(rp, sglist, bottom_offset, 0x200,
|
||||
bpl, padding, lines, 0, UNSET == top_offset);
|
||||
|
||||
|
||||
|
@ -54,14 +54,14 @@ int cx23885_vbi_fmt(struct file *file, void *priv,
|
||||
f->fmt.vbi.flags = 0;
|
||||
if (dev->tvnorm & V4L2_STD_525_60) {
|
||||
/* ntsc */
|
||||
f->fmt.vbi.start[0] = 10;
|
||||
f->fmt.vbi.start[1] = 272;
|
||||
f->fmt.vbi.start[0] = V4L2_VBI_ITU_525_F1_START + 9;
|
||||
f->fmt.vbi.start[1] = V4L2_VBI_ITU_525_F2_START + 9;
|
||||
f->fmt.vbi.count[0] = VBI_NTSC_LINE_COUNT;
|
||||
f->fmt.vbi.count[1] = VBI_NTSC_LINE_COUNT;
|
||||
} else if (dev->tvnorm & V4L2_STD_625_50) {
|
||||
/* pal */
|
||||
f->fmt.vbi.start[0] = 6;
|
||||
f->fmt.vbi.start[1] = 318;
|
||||
f->fmt.vbi.start[0] = V4L2_VBI_ITU_625_F1_START + 5;
|
||||
f->fmt.vbi.start[1] = V4L2_VBI_ITU_625_F2_START + 5;
|
||||
f->fmt.vbi.count[0] = VBI_PAL_LINE_COUNT;
|
||||
f->fmt.vbi.count[1] = VBI_PAL_LINE_COUNT;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user