diff options
author | Archit Taneja <archit@ti.com> | 2011-08-05 09:36:02 -0400 |
---|---|---|
committer | Tomi Valkeinen <tomi.valkeinen@ti.com> | 2011-09-14 11:08:24 -0400 |
commit | c6104b8e243de78169a65f087074ad60f9c02457 (patch) | |
tree | 248b44d10d80d29ee5a4d1909d5d9ffec62952d9 | |
parent | 4dd2da15fc258fe6364047060e599886e5efc76b (diff) |
OMAP: DSS2: DISPC: dispc_save_context() and dispc_restore_context() cleanup
Iterate over manager and overlay id's to shorten dispc_save_context() and
dispc_restore_context().
Signed-off-by: Archit Taneja <archit@ti.com>
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
-rw-r--r-- | drivers/video/omap2/dss/dispc.c | 402 |
1 files changed, 125 insertions, 277 deletions
diff --git a/drivers/video/omap2/dss/dispc.c b/drivers/video/omap2/dss/dispc.c index dc969c6e57d3..af421f6b72b0 100644 --- a/drivers/video/omap2/dss/dispc.c +++ b/drivers/video/omap2/dss/dispc.c | |||
@@ -171,172 +171,97 @@ static int dispc_get_ctx_loss_count(void) | |||
171 | 171 | ||
172 | static void dispc_save_context(void) | 172 | static void dispc_save_context(void) |
173 | { | 173 | { |
174 | int i; | 174 | int i, j; |
175 | 175 | ||
176 | DSSDBG("dispc_save_context\n"); | 176 | DSSDBG("dispc_save_context\n"); |
177 | 177 | ||
178 | SR(IRQENABLE); | 178 | SR(IRQENABLE); |
179 | SR(CONTROL); | 179 | SR(CONTROL); |
180 | SR(CONFIG); | 180 | SR(CONFIG); |
181 | SR(DEFAULT_COLOR(OMAP_DSS_CHANNEL_LCD)); | ||
182 | SR(DEFAULT_COLOR(OMAP_DSS_CHANNEL_DIGIT)); | ||
183 | SR(TRANS_COLOR(OMAP_DSS_CHANNEL_LCD)); | ||
184 | SR(TRANS_COLOR(OMAP_DSS_CHANNEL_DIGIT)); | ||
185 | SR(LINE_NUMBER); | 181 | SR(LINE_NUMBER); |
186 | SR(TIMING_H(OMAP_DSS_CHANNEL_LCD)); | ||
187 | SR(TIMING_V(OMAP_DSS_CHANNEL_LCD)); | ||
188 | SR(POL_FREQ(OMAP_DSS_CHANNEL_LCD)); | ||
189 | SR(DIVISORo(OMAP_DSS_CHANNEL_LCD)); | ||
190 | if (dss_has_feature(FEAT_GLOBAL_ALPHA)) | 182 | if (dss_has_feature(FEAT_GLOBAL_ALPHA)) |
191 | SR(GLOBAL_ALPHA); | 183 | SR(GLOBAL_ALPHA); |
192 | SR(SIZE_MGR(OMAP_DSS_CHANNEL_DIGIT)); | ||
193 | SR(SIZE_MGR(OMAP_DSS_CHANNEL_LCD)); | ||
194 | if (dss_has_feature(FEAT_MGR_LCD2)) { | 184 | if (dss_has_feature(FEAT_MGR_LCD2)) { |
195 | SR(CONTROL2); | 185 | SR(CONTROL2); |
196 | SR(DEFAULT_COLOR(OMAP_DSS_CHANNEL_LCD2)); | ||
197 | SR(TRANS_COLOR(OMAP_DSS_CHANNEL_LCD2)); | ||
198 | SR(SIZE_MGR(OMAP_DSS_CHANNEL_LCD2)); | ||
199 | SR(TIMING_H(OMAP_DSS_CHANNEL_LCD2)); | ||
200 | SR(TIMING_V(OMAP_DSS_CHANNEL_LCD2)); | ||
201 | SR(POL_FREQ(OMAP_DSS_CHANNEL_LCD2)); | ||
202 | SR(DIVISORo(OMAP_DSS_CHANNEL_LCD2)); | ||
203 | SR(CONFIG2); | 186 | SR(CONFIG2); |
204 | } | 187 | } |
205 | 188 | ||
206 | SR(OVL_BA0(OMAP_DSS_GFX)); | 189 | for (i = 0; i < dss_feat_get_num_mgrs(); i++) { |
207 | SR(OVL_BA1(OMAP_DSS_GFX)); | 190 | SR(DEFAULT_COLOR(i)); |
208 | SR(OVL_POSITION(OMAP_DSS_GFX)); | 191 | SR(TRANS_COLOR(i)); |
209 | SR(OVL_SIZE(OMAP_DSS_GFX)); | 192 | SR(SIZE_MGR(i)); |
210 | SR(OVL_ATTRIBUTES(OMAP_DSS_GFX)); | 193 | if (i == OMAP_DSS_CHANNEL_DIGIT) |
211 | SR(OVL_FIFO_THRESHOLD(OMAP_DSS_GFX)); | 194 | continue; |
212 | SR(OVL_ROW_INC(OMAP_DSS_GFX)); | 195 | SR(TIMING_H(i)); |
213 | SR(OVL_PIXEL_INC(OMAP_DSS_GFX)); | 196 | SR(TIMING_V(i)); |
214 | SR(OVL_WINDOW_SKIP(OMAP_DSS_GFX)); | 197 | SR(POL_FREQ(i)); |
215 | SR(OVL_TABLE_BA(OMAP_DSS_GFX)); | 198 | SR(DIVISORo(i)); |
216 | 199 | ||
217 | SR(DATA_CYCLE1(OMAP_DSS_CHANNEL_LCD)); | 200 | SR(DATA_CYCLE1(i)); |
218 | SR(DATA_CYCLE2(OMAP_DSS_CHANNEL_LCD)); | 201 | SR(DATA_CYCLE2(i)); |
219 | SR(DATA_CYCLE3(OMAP_DSS_CHANNEL_LCD)); | 202 | SR(DATA_CYCLE3(i)); |
220 | 203 | ||
221 | if (dss_has_feature(FEAT_CPR)) { | ||
222 | SR(CPR_COEF_R(OMAP_DSS_CHANNEL_LCD)); | ||
223 | SR(CPR_COEF_G(OMAP_DSS_CHANNEL_LCD)); | ||
224 | SR(CPR_COEF_B(OMAP_DSS_CHANNEL_LCD)); | ||
225 | } | ||
226 | if (dss_has_feature(FEAT_MGR_LCD2)) { | ||
227 | if (dss_has_feature(FEAT_CPR)) { | 204 | if (dss_has_feature(FEAT_CPR)) { |
228 | SR(CPR_COEF_B(OMAP_DSS_CHANNEL_LCD2)); | 205 | SR(CPR_COEF_R(i)); |
229 | SR(CPR_COEF_G(OMAP_DSS_CHANNEL_LCD2)); | 206 | SR(CPR_COEF_G(i)); |
230 | SR(CPR_COEF_R(OMAP_DSS_CHANNEL_LCD2)); | 207 | SR(CPR_COEF_B(i)); |
231 | } | 208 | } |
232 | |||
233 | SR(DATA_CYCLE1(OMAP_DSS_CHANNEL_LCD2)); | ||
234 | SR(DATA_CYCLE2(OMAP_DSS_CHANNEL_LCD2)); | ||
235 | SR(DATA_CYCLE3(OMAP_DSS_CHANNEL_LCD2)); | ||
236 | } | 209 | } |
237 | 210 | ||
238 | if (dss_has_feature(FEAT_PRELOAD)) | 211 | for (i = 0; i < dss_feat_get_num_ovls(); i++) { |
239 | SR(OVL_PRELOAD(OMAP_DSS_GFX)); | 212 | SR(OVL_BA0(i)); |
240 | 213 | SR(OVL_BA1(i)); | |
241 | /* VID1 */ | 214 | SR(OVL_POSITION(i)); |
242 | SR(OVL_BA0(OMAP_DSS_VIDEO1)); | 215 | SR(OVL_SIZE(i)); |
243 | SR(OVL_BA1(OMAP_DSS_VIDEO1)); | 216 | SR(OVL_ATTRIBUTES(i)); |
244 | SR(OVL_POSITION(OMAP_DSS_VIDEO1)); | 217 | SR(OVL_FIFO_THRESHOLD(i)); |
245 | SR(OVL_SIZE(OMAP_DSS_VIDEO1)); | 218 | SR(OVL_ROW_INC(i)); |
246 | SR(OVL_ATTRIBUTES(OMAP_DSS_VIDEO1)); | 219 | SR(OVL_PIXEL_INC(i)); |
247 | SR(OVL_FIFO_THRESHOLD(OMAP_DSS_VIDEO1)); | 220 | if (dss_has_feature(FEAT_PRELOAD)) |
248 | SR(OVL_ROW_INC(OMAP_DSS_VIDEO1)); | 221 | SR(OVL_PRELOAD(i)); |
249 | SR(OVL_PIXEL_INC(OMAP_DSS_VIDEO1)); | 222 | if (i == OMAP_DSS_GFX) { |
250 | SR(OVL_FIR(OMAP_DSS_VIDEO1)); | 223 | SR(OVL_WINDOW_SKIP(i)); |
251 | SR(OVL_PICTURE_SIZE(OMAP_DSS_VIDEO1)); | 224 | SR(OVL_TABLE_BA(i)); |
252 | SR(OVL_ACCU0(OMAP_DSS_VIDEO1)); | 225 | continue; |
253 | SR(OVL_ACCU1(OMAP_DSS_VIDEO1)); | 226 | } |
254 | 227 | SR(OVL_FIR(i)); | |
255 | for (i = 0; i < 8; i++) | 228 | SR(OVL_PICTURE_SIZE(i)); |
256 | SR(OVL_FIR_COEF_H(OMAP_DSS_VIDEO1, i)); | 229 | SR(OVL_ACCU0(i)); |
257 | 230 | SR(OVL_ACCU1(i)); | |
258 | for (i = 0; i < 8; i++) | ||
259 | SR(OVL_FIR_COEF_HV(OMAP_DSS_VIDEO1, i)); | ||
260 | |||
261 | for (i = 0; i < 5; i++) | ||
262 | SR(OVL_CONV_COEF(OMAP_DSS_VIDEO1, i)); | ||
263 | |||
264 | if (dss_has_feature(FEAT_FIR_COEF_V)) { | ||
265 | for (i = 0; i < 8; i++) | ||
266 | SR(OVL_FIR_COEF_V(OMAP_DSS_VIDEO1, i)); | ||
267 | } | ||
268 | |||
269 | if (dss_has_feature(FEAT_HANDLE_UV_SEPARATE)) { | ||
270 | SR(OVL_BA0_UV(OMAP_DSS_VIDEO1)); | ||
271 | SR(OVL_BA1_UV(OMAP_DSS_VIDEO1)); | ||
272 | SR(OVL_FIR2(OMAP_DSS_VIDEO1)); | ||
273 | SR(OVL_ACCU2_0(OMAP_DSS_VIDEO1)); | ||
274 | SR(OVL_ACCU2_1(OMAP_DSS_VIDEO1)); | ||
275 | |||
276 | for (i = 0; i < 8; i++) | ||
277 | SR(OVL_FIR_COEF_H2(OMAP_DSS_VIDEO1, i)); | ||
278 | |||
279 | for (i = 0; i < 8; i++) | ||
280 | SR(OVL_FIR_COEF_HV2(OMAP_DSS_VIDEO1, i)); | ||
281 | |||
282 | for (i = 0; i < 8; i++) | ||
283 | SR(OVL_FIR_COEF_V2(OMAP_DSS_VIDEO1, i)); | ||
284 | } | ||
285 | if (dss_has_feature(FEAT_ATTR2)) | ||
286 | SR(OVL_ATTRIBUTES2(OMAP_DSS_VIDEO1)); | ||
287 | |||
288 | if (dss_has_feature(FEAT_PRELOAD)) | ||
289 | SR(OVL_PRELOAD(OMAP_DSS_VIDEO1)); | ||
290 | |||
291 | /* VID2 */ | ||
292 | SR(OVL_BA0(OMAP_DSS_VIDEO2)); | ||
293 | SR(OVL_BA1(OMAP_DSS_VIDEO2)); | ||
294 | SR(OVL_POSITION(OMAP_DSS_VIDEO2)); | ||
295 | SR(OVL_SIZE(OMAP_DSS_VIDEO2)); | ||
296 | SR(OVL_ATTRIBUTES(OMAP_DSS_VIDEO2)); | ||
297 | SR(OVL_FIFO_THRESHOLD(OMAP_DSS_VIDEO2)); | ||
298 | SR(OVL_ROW_INC(OMAP_DSS_VIDEO2)); | ||
299 | SR(OVL_PIXEL_INC(OMAP_DSS_VIDEO2)); | ||
300 | SR(OVL_FIR(OMAP_DSS_VIDEO2)); | ||
301 | SR(OVL_PICTURE_SIZE(OMAP_DSS_VIDEO2)); | ||
302 | SR(OVL_ACCU0(OMAP_DSS_VIDEO2)); | ||
303 | SR(OVL_ACCU1(OMAP_DSS_VIDEO2)); | ||
304 | 231 | ||
305 | for (i = 0; i < 8; i++) | 232 | for (j = 0; j < 8; j++) |
306 | SR(OVL_FIR_COEF_H(OMAP_DSS_VIDEO2, i)); | 233 | SR(OVL_FIR_COEF_H(i, j)); |
307 | 234 | ||
308 | for (i = 0; i < 8; i++) | 235 | for (j = 0; j < 8; j++) |
309 | SR(OVL_FIR_COEF_HV(OMAP_DSS_VIDEO2, i)); | 236 | SR(OVL_FIR_COEF_HV(i, j)); |
310 | 237 | ||
311 | for (i = 0; i < 5; i++) | 238 | for (j = 0; j < 5; j++) |
312 | SR(OVL_CONV_COEF(OMAP_DSS_VIDEO2, i)); | 239 | SR(OVL_CONV_COEF(i, j)); |
313 | 240 | ||
314 | if (dss_has_feature(FEAT_FIR_COEF_V)) { | 241 | if (dss_has_feature(FEAT_FIR_COEF_V)) { |
315 | for (i = 0; i < 8; i++) | 242 | for (j = 0; j < 8; j++) |
316 | SR(OVL_FIR_COEF_V(OMAP_DSS_VIDEO2, i)); | 243 | SR(OVL_FIR_COEF_V(i, j)); |
317 | } | 244 | } |
318 | 245 | ||
319 | if (dss_has_feature(FEAT_HANDLE_UV_SEPARATE)) { | 246 | if (dss_has_feature(FEAT_HANDLE_UV_SEPARATE)) { |
320 | SR(OVL_BA0_UV(OMAP_DSS_VIDEO2)); | 247 | SR(OVL_BA0_UV(i)); |
321 | SR(OVL_BA1_UV(OMAP_DSS_VIDEO2)); | 248 | SR(OVL_BA1_UV(i)); |
322 | SR(OVL_FIR2(OMAP_DSS_VIDEO2)); | 249 | SR(OVL_FIR2(i)); |
323 | SR(OVL_ACCU2_0(OMAP_DSS_VIDEO2)); | 250 | SR(OVL_ACCU2_0(i)); |
324 | SR(OVL_ACCU2_1(OMAP_DSS_VIDEO2)); | 251 | SR(OVL_ACCU2_1(i)); |
325 | 252 | ||
326 | for (i = 0; i < 8; i++) | 253 | for (j = 0; j < 8; j++) |
327 | SR(OVL_FIR_COEF_H2(OMAP_DSS_VIDEO2, i)); | 254 | SR(OVL_FIR_COEF_H2(i, j)); |
328 | 255 | ||
329 | for (i = 0; i < 8; i++) | 256 | for (j = 0; j < 8; j++) |
330 | SR(OVL_FIR_COEF_HV2(OMAP_DSS_VIDEO2, i)); | 257 | SR(OVL_FIR_COEF_HV2(i, j)); |
331 | 258 | ||
332 | for (i = 0; i < 8; i++) | 259 | for (j = 0; j < 8; j++) |
333 | SR(OVL_FIR_COEF_V2(OMAP_DSS_VIDEO2, i)); | 260 | SR(OVL_FIR_COEF_V2(i, j)); |
261 | } | ||
262 | if (dss_has_feature(FEAT_ATTR2)) | ||
263 | SR(OVL_ATTRIBUTES2(i)); | ||
334 | } | 264 | } |
335 | if (dss_has_feature(FEAT_ATTR2)) | ||
336 | SR(OVL_ATTRIBUTES2(OMAP_DSS_VIDEO2)); | ||
337 | |||
338 | if (dss_has_feature(FEAT_PRELOAD)) | ||
339 | SR(OVL_PRELOAD(OMAP_DSS_VIDEO2)); | ||
340 | 265 | ||
341 | if (dss_has_feature(FEAT_CORE_CLK_DIV)) | 266 | if (dss_has_feature(FEAT_CORE_CLK_DIV)) |
342 | SR(DIVISOR); | 267 | SR(DIVISOR); |
@@ -349,7 +274,7 @@ static void dispc_save_context(void) | |||
349 | 274 | ||
350 | static void dispc_restore_context(void) | 275 | static void dispc_restore_context(void) |
351 | { | 276 | { |
352 | int i, ctx; | 277 | int i, j, ctx; |
353 | 278 | ||
354 | DSSDBG("dispc_restore_context\n"); | 279 | DSSDBG("dispc_restore_context\n"); |
355 | 280 | ||
@@ -367,165 +292,88 @@ static void dispc_restore_context(void) | |||
367 | /*RR(IRQENABLE);*/ | 292 | /*RR(IRQENABLE);*/ |
368 | /*RR(CONTROL);*/ | 293 | /*RR(CONTROL);*/ |
369 | RR(CONFIG); | 294 | RR(CONFIG); |
370 | RR(DEFAULT_COLOR(OMAP_DSS_CHANNEL_LCD)); | ||
371 | RR(DEFAULT_COLOR(OMAP_DSS_CHANNEL_DIGIT)); | ||
372 | RR(TRANS_COLOR(OMAP_DSS_CHANNEL_LCD)); | ||
373 | RR(TRANS_COLOR(OMAP_DSS_CHANNEL_DIGIT)); | ||
374 | RR(LINE_NUMBER); | 295 | RR(LINE_NUMBER); |
375 | RR(TIMING_H(OMAP_DSS_CHANNEL_LCD)); | ||
376 | RR(TIMING_V(OMAP_DSS_CHANNEL_LCD)); | ||
377 | RR(POL_FREQ(OMAP_DSS_CHANNEL_LCD)); | ||
378 | RR(DIVISORo(OMAP_DSS_CHANNEL_LCD)); | ||
379 | if (dss_has_feature(FEAT_GLOBAL_ALPHA)) | 296 | if (dss_has_feature(FEAT_GLOBAL_ALPHA)) |
380 | RR(GLOBAL_ALPHA); | 297 | RR(GLOBAL_ALPHA); |
381 | RR(SIZE_MGR(OMAP_DSS_CHANNEL_DIGIT)); | 298 | if (dss_has_feature(FEAT_MGR_LCD2)) |
382 | RR(SIZE_MGR(OMAP_DSS_CHANNEL_LCD)); | ||
383 | if (dss_has_feature(FEAT_MGR_LCD2)) { | ||
384 | RR(DEFAULT_COLOR(OMAP_DSS_CHANNEL_LCD2)); | ||
385 | RR(TRANS_COLOR(OMAP_DSS_CHANNEL_LCD2)); | ||
386 | RR(SIZE_MGR(OMAP_DSS_CHANNEL_LCD2)); | ||
387 | RR(TIMING_H(OMAP_DSS_CHANNEL_LCD2)); | ||
388 | RR(TIMING_V(OMAP_DSS_CHANNEL_LCD2)); | ||
389 | RR(POL_FREQ(OMAP_DSS_CHANNEL_LCD2)); | ||
390 | RR(DIVISORo(OMAP_DSS_CHANNEL_LCD2)); | ||
391 | RR(CONFIG2); | 299 | RR(CONFIG2); |
392 | } | ||
393 | |||
394 | RR(OVL_BA0(OMAP_DSS_GFX)); | ||
395 | RR(OVL_BA1(OMAP_DSS_GFX)); | ||
396 | RR(OVL_POSITION(OMAP_DSS_GFX)); | ||
397 | RR(OVL_SIZE(OMAP_DSS_GFX)); | ||
398 | RR(OVL_ATTRIBUTES(OMAP_DSS_GFX)); | ||
399 | RR(OVL_FIFO_THRESHOLD(OMAP_DSS_GFX)); | ||
400 | RR(OVL_ROW_INC(OMAP_DSS_GFX)); | ||
401 | RR(OVL_PIXEL_INC(OMAP_DSS_GFX)); | ||
402 | RR(OVL_WINDOW_SKIP(OMAP_DSS_GFX)); | ||
403 | RR(OVL_TABLE_BA(OMAP_DSS_GFX)); | ||
404 | 300 | ||
301 | for (i = 0; i < dss_feat_get_num_mgrs(); i++) { | ||
302 | RR(DEFAULT_COLOR(i)); | ||
303 | RR(TRANS_COLOR(i)); | ||
304 | RR(SIZE_MGR(i)); | ||
305 | if (i == OMAP_DSS_CHANNEL_DIGIT) | ||
306 | continue; | ||
307 | RR(TIMING_H(i)); | ||
308 | RR(TIMING_V(i)); | ||
309 | RR(POL_FREQ(i)); | ||
310 | RR(DIVISORo(i)); | ||
405 | 311 | ||
406 | RR(DATA_CYCLE1(OMAP_DSS_CHANNEL_LCD)); | 312 | RR(DATA_CYCLE1(i)); |
407 | RR(DATA_CYCLE2(OMAP_DSS_CHANNEL_LCD)); | 313 | RR(DATA_CYCLE2(i)); |
408 | RR(DATA_CYCLE3(OMAP_DSS_CHANNEL_LCD)); | 314 | RR(DATA_CYCLE3(i)); |
409 | |||
410 | if (dss_has_feature(FEAT_CPR)) { | ||
411 | RR(CPR_COEF_R(OMAP_DSS_CHANNEL_LCD)); | ||
412 | RR(CPR_COEF_G(OMAP_DSS_CHANNEL_LCD)); | ||
413 | RR(CPR_COEF_B(OMAP_DSS_CHANNEL_LCD)); | ||
414 | } | ||
415 | if (dss_has_feature(FEAT_MGR_LCD2)) { | ||
416 | RR(DATA_CYCLE1(OMAP_DSS_CHANNEL_LCD2)); | ||
417 | RR(DATA_CYCLE2(OMAP_DSS_CHANNEL_LCD2)); | ||
418 | RR(DATA_CYCLE3(OMAP_DSS_CHANNEL_LCD2)); | ||
419 | 315 | ||
420 | if (dss_has_feature(FEAT_CPR)) { | 316 | if (dss_has_feature(FEAT_CPR)) { |
421 | RR(CPR_COEF_B(OMAP_DSS_CHANNEL_LCD2)); | 317 | RR(CPR_COEF_R(i)); |
422 | RR(CPR_COEF_G(OMAP_DSS_CHANNEL_LCD2)); | 318 | RR(CPR_COEF_G(i)); |
423 | RR(CPR_COEF_R(OMAP_DSS_CHANNEL_LCD2)); | 319 | RR(CPR_COEF_B(i)); |
424 | } | 320 | } |
425 | } | 321 | } |
426 | 322 | ||
427 | if (dss_has_feature(FEAT_PRELOAD)) | 323 | for (i = 0; i < dss_feat_get_num_ovls(); i++) { |
428 | RR(OVL_PRELOAD(OMAP_DSS_GFX)); | 324 | RR(OVL_BA0(i)); |
429 | 325 | RR(OVL_BA1(i)); | |
430 | /* VID1 */ | 326 | RR(OVL_POSITION(i)); |
431 | RR(OVL_BA0(OMAP_DSS_VIDEO1)); | 327 | RR(OVL_SIZE(i)); |
432 | RR(OVL_BA1(OMAP_DSS_VIDEO1)); | 328 | RR(OVL_ATTRIBUTES(i)); |
433 | RR(OVL_POSITION(OMAP_DSS_VIDEO1)); | 329 | RR(OVL_FIFO_THRESHOLD(i)); |
434 | RR(OVL_SIZE(OMAP_DSS_VIDEO1)); | 330 | RR(OVL_ROW_INC(i)); |
435 | RR(OVL_ATTRIBUTES(OMAP_DSS_VIDEO1)); | 331 | RR(OVL_PIXEL_INC(i)); |
436 | RR(OVL_FIFO_THRESHOLD(OMAP_DSS_VIDEO1)); | 332 | if (dss_has_feature(FEAT_PRELOAD)) |
437 | RR(OVL_ROW_INC(OMAP_DSS_VIDEO1)); | 333 | RR(OVL_PRELOAD(i)); |
438 | RR(OVL_PIXEL_INC(OMAP_DSS_VIDEO1)); | 334 | if (i == OMAP_DSS_GFX) { |
439 | RR(OVL_FIR(OMAP_DSS_VIDEO1)); | 335 | RR(OVL_WINDOW_SKIP(i)); |
440 | RR(OVL_PICTURE_SIZE(OMAP_DSS_VIDEO1)); | 336 | RR(OVL_TABLE_BA(i)); |
441 | RR(OVL_ACCU0(OMAP_DSS_VIDEO1)); | 337 | continue; |
442 | RR(OVL_ACCU1(OMAP_DSS_VIDEO1)); | 338 | } |
443 | 339 | RR(OVL_FIR(i)); | |
444 | for (i = 0; i < 8; i++) | 340 | RR(OVL_PICTURE_SIZE(i)); |
445 | RR(OVL_FIR_COEF_H(OMAP_DSS_VIDEO1, i)); | 341 | RR(OVL_ACCU0(i)); |
446 | 342 | RR(OVL_ACCU1(i)); | |
447 | for (i = 0; i < 8; i++) | ||
448 | RR(OVL_FIR_COEF_HV(OMAP_DSS_VIDEO1, i)); | ||
449 | |||
450 | for (i = 0; i < 5; i++) | ||
451 | RR(OVL_CONV_COEF(OMAP_DSS_VIDEO1, i)); | ||
452 | |||
453 | if (dss_has_feature(FEAT_FIR_COEF_V)) { | ||
454 | for (i = 0; i < 8; i++) | ||
455 | RR(OVL_FIR_COEF_V(OMAP_DSS_VIDEO1, i)); | ||
456 | } | ||
457 | |||
458 | if (dss_has_feature(FEAT_HANDLE_UV_SEPARATE)) { | ||
459 | RR(OVL_BA0_UV(OMAP_DSS_VIDEO1)); | ||
460 | RR(OVL_BA1_UV(OMAP_DSS_VIDEO1)); | ||
461 | RR(OVL_FIR2(OMAP_DSS_VIDEO1)); | ||
462 | RR(OVL_ACCU2_0(OMAP_DSS_VIDEO1)); | ||
463 | RR(OVL_ACCU2_1(OMAP_DSS_VIDEO1)); | ||
464 | |||
465 | for (i = 0; i < 8; i++) | ||
466 | RR(OVL_FIR_COEF_H2(OMAP_DSS_VIDEO1, i)); | ||
467 | |||
468 | for (i = 0; i < 8; i++) | ||
469 | RR(OVL_FIR_COEF_HV2(OMAP_DSS_VIDEO1, i)); | ||
470 | |||
471 | for (i = 0; i < 8; i++) | ||
472 | RR(OVL_FIR_COEF_V2(OMAP_DSS_VIDEO1, i)); | ||
473 | } | ||
474 | if (dss_has_feature(FEAT_ATTR2)) | ||
475 | RR(OVL_ATTRIBUTES2(OMAP_DSS_VIDEO1)); | ||
476 | |||
477 | if (dss_has_feature(FEAT_PRELOAD)) | ||
478 | RR(OVL_PRELOAD(OMAP_DSS_VIDEO1)); | ||
479 | |||
480 | /* VID2 */ | ||
481 | RR(OVL_BA0(OMAP_DSS_VIDEO2)); | ||
482 | RR(OVL_BA1(OMAP_DSS_VIDEO2)); | ||
483 | RR(OVL_POSITION(OMAP_DSS_VIDEO2)); | ||
484 | RR(OVL_SIZE(OMAP_DSS_VIDEO2)); | ||
485 | RR(OVL_ATTRIBUTES(OMAP_DSS_VIDEO2)); | ||
486 | RR(OVL_FIFO_THRESHOLD(OMAP_DSS_VIDEO2)); | ||
487 | RR(OVL_ROW_INC(OMAP_DSS_VIDEO2)); | ||
488 | RR(OVL_PIXEL_INC(OMAP_DSS_VIDEO2)); | ||
489 | RR(OVL_FIR(OMAP_DSS_VIDEO2)); | ||
490 | RR(OVL_PICTURE_SIZE(OMAP_DSS_VIDEO2)); | ||
491 | RR(OVL_ACCU0(OMAP_DSS_VIDEO2)); | ||
492 | RR(OVL_ACCU1(OMAP_DSS_VIDEO2)); | ||
493 | 343 | ||
494 | for (i = 0; i < 8; i++) | 344 | for (j = 0; j < 8; j++) |
495 | RR(OVL_FIR_COEF_H(OMAP_DSS_VIDEO2, i)); | 345 | RR(OVL_FIR_COEF_H(i, j)); |
496 | 346 | ||
497 | for (i = 0; i < 8; i++) | 347 | for (j = 0; j < 8; j++) |
498 | RR(OVL_FIR_COEF_HV(OMAP_DSS_VIDEO2, i)); | 348 | RR(OVL_FIR_COEF_HV(i, j)); |
499 | 349 | ||
500 | for (i = 0; i < 5; i++) | 350 | for (j = 0; j < 5; j++) |
501 | RR(OVL_CONV_COEF(OMAP_DSS_VIDEO2, i)); | 351 | RR(OVL_CONV_COEF(i, j)); |
502 | 352 | ||
503 | if (dss_has_feature(FEAT_FIR_COEF_V)) { | 353 | if (dss_has_feature(FEAT_FIR_COEF_V)) { |
504 | for (i = 0; i < 8; i++) | 354 | for (j = 0; j < 8; j++) |
505 | RR(OVL_FIR_COEF_V(OMAP_DSS_VIDEO2, i)); | 355 | RR(OVL_FIR_COEF_V(i, j)); |
506 | } | 356 | } |
507 | 357 | ||
508 | if (dss_has_feature(FEAT_HANDLE_UV_SEPARATE)) { | 358 | if (dss_has_feature(FEAT_HANDLE_UV_SEPARATE)) { |
509 | RR(OVL_BA0_UV(OMAP_DSS_VIDEO2)); | 359 | RR(OVL_BA0_UV(i)); |
510 | RR(OVL_BA1_UV(OMAP_DSS_VIDEO2)); | 360 | RR(OVL_BA1_UV(i)); |
511 | RR(OVL_FIR2(OMAP_DSS_VIDEO2)); | 361 | RR(OVL_FIR2(i)); |
512 | RR(OVL_ACCU2_0(OMAP_DSS_VIDEO2)); | 362 | RR(OVL_ACCU2_0(i)); |
513 | RR(OVL_ACCU2_1(OMAP_DSS_VIDEO2)); | 363 | RR(OVL_ACCU2_1(i)); |
514 | 364 | ||
515 | for (i = 0; i < 8; i++) | 365 | for (j = 0; j < 8; j++) |
516 | RR(OVL_FIR_COEF_H2(OMAP_DSS_VIDEO2, i)); | 366 | RR(OVL_FIR_COEF_H2(i, j)); |
517 | 367 | ||
518 | for (i = 0; i < 8; i++) | 368 | for (j = 0; j < 8; j++) |
519 | RR(OVL_FIR_COEF_HV2(OMAP_DSS_VIDEO2, i)); | 369 | RR(OVL_FIR_COEF_HV2(i, j)); |
520 | 370 | ||
521 | for (i = 0; i < 8; i++) | 371 | for (j = 0; j < 8; j++) |
522 | RR(OVL_FIR_COEF_V2(OMAP_DSS_VIDEO2, i)); | 372 | RR(OVL_FIR_COEF_V2(i, j)); |
373 | } | ||
374 | if (dss_has_feature(FEAT_ATTR2)) | ||
375 | RR(OVL_ATTRIBUTES2(i)); | ||
523 | } | 376 | } |
524 | if (dss_has_feature(FEAT_ATTR2)) | ||
525 | RR(OVL_ATTRIBUTES2(OMAP_DSS_VIDEO2)); | ||
526 | |||
527 | if (dss_has_feature(FEAT_PRELOAD)) | ||
528 | RR(OVL_PRELOAD(OMAP_DSS_VIDEO2)); | ||
529 | 377 | ||
530 | if (dss_has_feature(FEAT_CORE_CLK_DIV)) | 378 | if (dss_has_feature(FEAT_CORE_CLK_DIV)) |
531 | RR(DIVISOR); | 379 | RR(DIVISOR); |