diff options
author | Hans Verkuil <hverkuil@xs4all.nl> | 2008-06-27 14:33:02 -0400 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@infradead.org> | 2008-07-20 06:15:04 -0400 |
commit | c1738904d6808a091d7d496b445d20671d513ad4 (patch) | |
tree | 30c61db23b8cd77fbbaf421c6de1c17c1de4b067 /drivers/media/video/cx18/cx18-av-vbi.c | |
parent | e078770a050aa686f895a965f54222c0f201feb3 (diff) |
V4L/DVB (8162): cx18: fix PAL/SECAM support
Reverted the 'Fix unintended auto configurations in cx18-av-core' patch,
instead disable the auto config completely.
Fix a bug in cx18_av_vbi_setup() where the standard tests were done
in the wrong order.
Tested with NTSC-M, PAL-BG, PAL-I, PAL-DK, PAL-M, PAL-Nc, SECAM-DK,
SECAM-L and SECAM-BG. The last one does not work at the moment due to
a tda9887.c bug.
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Diffstat (limited to 'drivers/media/video/cx18/cx18-av-vbi.c')
-rw-r--r-- | drivers/media/video/cx18/cx18-av-vbi.c | 25 |
1 files changed, 10 insertions, 15 deletions
diff --git a/drivers/media/video/cx18/cx18-av-vbi.c b/drivers/media/video/cx18/cx18-av-vbi.c index d09f1daf4ebf..0c92f123686f 100644 --- a/drivers/media/video/cx18/cx18-av-vbi.c +++ b/drivers/media/video/cx18/cx18-av-vbi.c | |||
@@ -108,18 +108,18 @@ void cx18_av_vbi_setup(struct cx18 *cx) | |||
108 | src_decimation = 0x21f; | 108 | src_decimation = 0x21f; |
109 | 109 | ||
110 | luma_lpf = 2; | 110 | luma_lpf = 2; |
111 | if (std & V4L2_STD_SECAM) { | 111 | if (std & V4L2_STD_PAL) { |
112 | uv_lpf = 0; | ||
113 | comb = 0; | ||
114 | sc = 0x0a425f; | ||
115 | } else if (std == V4L2_STD_PAL_Nc) { | ||
116 | uv_lpf = 1; | 112 | uv_lpf = 1; |
117 | comb = 0x20; | 113 | comb = 0x20; |
118 | sc = 556453; | 114 | sc = 0x0a8263; |
119 | } else { | 115 | } else if (std == V4L2_STD_PAL_Nc) { |
120 | uv_lpf = 1; | 116 | uv_lpf = 1; |
121 | comb = 0x20; | 117 | comb = 0x20; |
122 | sc = 0x0a8263; | 118 | sc = 0x087da5; |
119 | } else { /* SECAM */ | ||
120 | uv_lpf = 0; | ||
121 | comb = 0; | ||
122 | sc = 0x0a425f; | ||
123 | } | 123 | } |
124 | } else { | 124 | } else { |
125 | hactive = 720; | 125 | hactive = 720; |
@@ -127,25 +127,20 @@ void cx18_av_vbi_setup(struct cx18 *cx) | |||
127 | vactive = 487; | 127 | vactive = 487; |
128 | luma_lpf = 1; | 128 | luma_lpf = 1; |
129 | uv_lpf = 1; | 129 | uv_lpf = 1; |
130 | vblank = 26; | ||
131 | vblank656 = 26; | ||
130 | 132 | ||
131 | src_decimation = 0x21f; | 133 | src_decimation = 0x21f; |
132 | if (std == V4L2_STD_PAL_60) { | 134 | if (std == V4L2_STD_PAL_60) { |
133 | vblank = 26; | ||
134 | vblank656 = 26; | ||
135 | burst = 0x5b; | 135 | burst = 0x5b; |
136 | luma_lpf = 2; | 136 | luma_lpf = 2; |
137 | comb = 0x20; | 137 | comb = 0x20; |
138 | sc = 0x0a8263; | 138 | sc = 0x0a8263; |
139 | } else if (std == V4L2_STD_PAL_M) { | 139 | } else if (std == V4L2_STD_PAL_M) { |
140 | vblank = 20; | ||
141 | vblank656 = 24; | ||
142 | burst = 0x61; | 140 | burst = 0x61; |
143 | comb = 0x20; | 141 | comb = 0x20; |
144 | |||
145 | sc = 555452; | 142 | sc = 555452; |
146 | } else { | 143 | } else { |
147 | vblank = 26; | ||
148 | vblank656 = 26; | ||
149 | burst = 0x5b; | 144 | burst = 0x5b; |
150 | comb = 0x66; | 145 | comb = 0x66; |
151 | sc = 556063; | 146 | sc = 556063; |