summaryrefslogtreecommitdiffstats
path: root/drivers/video/omap2/dss/dispc.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/video/omap2/dss/dispc.c')
-rw-r--r--drivers/video/omap2/dss/dispc.c174
1 files changed, 46 insertions, 128 deletions
diff --git a/drivers/video/omap2/dss/dispc.c b/drivers/video/omap2/dss/dispc.c
index fd8f68e616d..d16eb70bf5b 100644
--- a/drivers/video/omap2/dss/dispc.c
+++ b/drivers/video/omap2/dss/dispc.c
@@ -129,6 +129,7 @@ static inline u32 dispc_read_reg(const u16 idx)
void dispc_save_context(void)
{
+ int i;
if (cpu_is_omap24xx())
return;
@@ -204,38 +205,17 @@ void dispc_save_context(void)
SR(OVL_ACCU0(OMAP_DSS_VIDEO1));
SR(OVL_ACCU1(OMAP_DSS_VIDEO1));
- SR(OVL_FIR_COEF_H(OMAP_DSS_VIDEO1, 0));
- SR(OVL_FIR_COEF_H(OMAP_DSS_VIDEO1, 1));
- SR(OVL_FIR_COEF_H(OMAP_DSS_VIDEO1, 2));
- SR(OVL_FIR_COEF_H(OMAP_DSS_VIDEO1, 3));
- SR(OVL_FIR_COEF_H(OMAP_DSS_VIDEO1, 4));
- SR(OVL_FIR_COEF_H(OMAP_DSS_VIDEO1, 5));
- SR(OVL_FIR_COEF_H(OMAP_DSS_VIDEO1, 6));
- SR(OVL_FIR_COEF_H(OMAP_DSS_VIDEO1, 7));
-
- SR(OVL_FIR_COEF_HV(OMAP_DSS_VIDEO1, 0));
- SR(OVL_FIR_COEF_HV(OMAP_DSS_VIDEO1, 1));
- SR(OVL_FIR_COEF_HV(OMAP_DSS_VIDEO1, 2));
- SR(OVL_FIR_COEF_HV(OMAP_DSS_VIDEO1, 3));
- SR(OVL_FIR_COEF_HV(OMAP_DSS_VIDEO1, 4));
- SR(OVL_FIR_COEF_HV(OMAP_DSS_VIDEO1, 5));
- SR(OVL_FIR_COEF_HV(OMAP_DSS_VIDEO1, 6));
- SR(OVL_FIR_COEF_HV(OMAP_DSS_VIDEO1, 7));
-
- SR(OVL_CONV_COEF(OMAP_DSS_VIDEO1, 0));
- SR(OVL_CONV_COEF(OMAP_DSS_VIDEO1, 1));
- SR(OVL_CONV_COEF(OMAP_DSS_VIDEO1, 2));
- SR(OVL_CONV_COEF(OMAP_DSS_VIDEO1, 3));
- SR(OVL_CONV_COEF(OMAP_DSS_VIDEO1, 4));
-
- SR(OVL_FIR_COEF_V(OMAP_DSS_VIDEO1, 0));
- SR(OVL_FIR_COEF_V(OMAP_DSS_VIDEO1, 1));
- SR(OVL_FIR_COEF_V(OMAP_DSS_VIDEO1, 2));
- SR(OVL_FIR_COEF_V(OMAP_DSS_VIDEO1, 3));
- SR(OVL_FIR_COEF_V(OMAP_DSS_VIDEO1, 4));
- SR(OVL_FIR_COEF_V(OMAP_DSS_VIDEO1, 5));
- SR(OVL_FIR_COEF_V(OMAP_DSS_VIDEO1, 6));
- SR(OVL_FIR_COEF_V(OMAP_DSS_VIDEO1, 7));
+ for (i = 0; i < 8; i++)
+ SR(OVL_FIR_COEF_H(OMAP_DSS_VIDEO1, i));
+
+ for (i = 0; i < 8; i++)
+ SR(OVL_FIR_COEF_HV(OMAP_DSS_VIDEO1, i));
+
+ for (i = 0; i < 5; i++)
+ SR(OVL_CONV_COEF(OMAP_DSS_VIDEO1, i));
+
+ for (i = 0; i < 8; i++)
+ SR(OVL_FIR_COEF_V(OMAP_DSS_VIDEO1, i));
SR(OVL_PRELOAD(OMAP_DSS_VIDEO1));
@@ -253,38 +233,17 @@ void dispc_save_context(void)
SR(OVL_ACCU0(OMAP_DSS_VIDEO2));
SR(OVL_ACCU1(OMAP_DSS_VIDEO2));
- SR(OVL_FIR_COEF_H(OMAP_DSS_VIDEO2, 0));
- SR(OVL_FIR_COEF_H(OMAP_DSS_VIDEO2, 1));
- SR(OVL_FIR_COEF_H(OMAP_DSS_VIDEO2, 2));
- SR(OVL_FIR_COEF_H(OMAP_DSS_VIDEO2, 3));
- SR(OVL_FIR_COEF_H(OMAP_DSS_VIDEO2, 4));
- SR(OVL_FIR_COEF_H(OMAP_DSS_VIDEO2, 5));
- SR(OVL_FIR_COEF_H(OMAP_DSS_VIDEO2, 6));
- SR(OVL_FIR_COEF_H(OMAP_DSS_VIDEO2, 7));
-
- SR(OVL_FIR_COEF_HV(OMAP_DSS_VIDEO2, 0));
- SR(OVL_FIR_COEF_HV(OMAP_DSS_VIDEO2, 1));
- SR(OVL_FIR_COEF_HV(OMAP_DSS_VIDEO2, 2));
- SR(OVL_FIR_COEF_HV(OMAP_DSS_VIDEO2, 3));
- SR(OVL_FIR_COEF_HV(OMAP_DSS_VIDEO2, 4));
- SR(OVL_FIR_COEF_HV(OMAP_DSS_VIDEO2, 5));
- SR(OVL_FIR_COEF_HV(OMAP_DSS_VIDEO2, 6));
- SR(OVL_FIR_COEF_HV(OMAP_DSS_VIDEO2, 7));
-
- SR(OVL_CONV_COEF(OMAP_DSS_VIDEO2, 0));
- SR(OVL_CONV_COEF(OMAP_DSS_VIDEO2, 1));
- SR(OVL_CONV_COEF(OMAP_DSS_VIDEO2, 2));
- SR(OVL_CONV_COEF(OMAP_DSS_VIDEO2, 3));
- SR(OVL_CONV_COEF(OMAP_DSS_VIDEO2, 4));
-
- SR(OVL_FIR_COEF_V(OMAP_DSS_VIDEO2, 0));
- SR(OVL_FIR_COEF_V(OMAP_DSS_VIDEO2, 1));
- SR(OVL_FIR_COEF_V(OMAP_DSS_VIDEO2, 2));
- SR(OVL_FIR_COEF_V(OMAP_DSS_VIDEO2, 3));
- SR(OVL_FIR_COEF_V(OMAP_DSS_VIDEO2, 4));
- SR(OVL_FIR_COEF_V(OMAP_DSS_VIDEO2, 5));
- SR(OVL_FIR_COEF_V(OMAP_DSS_VIDEO2, 6));
- SR(OVL_FIR_COEF_V(OMAP_DSS_VIDEO2, 7));
+ for (i = 0; i < 8; i++)
+ SR(OVL_FIR_COEF_H(OMAP_DSS_VIDEO2, i));
+
+ for (i = 0; i < 8; i++)
+ SR(OVL_FIR_COEF_HV(OMAP_DSS_VIDEO2, i));
+
+ for (i = 0; i < 5; i++)
+ SR(OVL_CONV_COEF(OMAP_DSS_VIDEO2, i));
+
+ for (i = 0; i < 8; i++)
+ SR(OVL_FIR_COEF_V(OMAP_DSS_VIDEO2, i));
SR(OVL_PRELOAD(OMAP_DSS_VIDEO2));
@@ -294,6 +253,7 @@ void dispc_save_context(void)
void dispc_restore_context(void)
{
+ int i;
RR(SYSCONFIG);
/*RR(IRQENABLE);*/
/*RR(CONTROL);*/
@@ -366,38 +326,17 @@ void dispc_restore_context(void)
RR(OVL_ACCU0(OMAP_DSS_VIDEO1));
RR(OVL_ACCU1(OMAP_DSS_VIDEO1));
- RR(OVL_FIR_COEF_H(OMAP_DSS_VIDEO1, 0));
- RR(OVL_FIR_COEF_H(OMAP_DSS_VIDEO1, 1));
- RR(OVL_FIR_COEF_H(OMAP_DSS_VIDEO1, 2));
- RR(OVL_FIR_COEF_H(OMAP_DSS_VIDEO1, 3));
- RR(OVL_FIR_COEF_H(OMAP_DSS_VIDEO1, 4));
- RR(OVL_FIR_COEF_H(OMAP_DSS_VIDEO1, 5));
- RR(OVL_FIR_COEF_H(OMAP_DSS_VIDEO1, 6));
- RR(OVL_FIR_COEF_H(OMAP_DSS_VIDEO1, 7));
-
- RR(OVL_FIR_COEF_HV(OMAP_DSS_VIDEO1, 0));
- RR(OVL_FIR_COEF_HV(OMAP_DSS_VIDEO1, 1));
- RR(OVL_FIR_COEF_HV(OMAP_DSS_VIDEO1, 2));
- RR(OVL_FIR_COEF_HV(OMAP_DSS_VIDEO1, 3));
- RR(OVL_FIR_COEF_HV(OMAP_DSS_VIDEO1, 4));
- RR(OVL_FIR_COEF_HV(OMAP_DSS_VIDEO1, 5));
- RR(OVL_FIR_COEF_HV(OMAP_DSS_VIDEO1, 6));
- RR(OVL_FIR_COEF_HV(OMAP_DSS_VIDEO1, 7));
-
- RR(OVL_CONV_COEF(OMAP_DSS_VIDEO1, 0));
- RR(OVL_CONV_COEF(OMAP_DSS_VIDEO1, 1));
- RR(OVL_CONV_COEF(OMAP_DSS_VIDEO1, 2));
- RR(OVL_CONV_COEF(OMAP_DSS_VIDEO1, 3));
- RR(OVL_CONV_COEF(OMAP_DSS_VIDEO1, 4));
-
- RR(OVL_FIR_COEF_V(OMAP_DSS_VIDEO1, 0));
- RR(OVL_FIR_COEF_V(OMAP_DSS_VIDEO1, 1));
- RR(OVL_FIR_COEF_V(OMAP_DSS_VIDEO1, 2));
- RR(OVL_FIR_COEF_V(OMAP_DSS_VIDEO1, 3));
- RR(OVL_FIR_COEF_V(OMAP_DSS_VIDEO1, 4));
- RR(OVL_FIR_COEF_V(OMAP_DSS_VIDEO1, 5));
- RR(OVL_FIR_COEF_V(OMAP_DSS_VIDEO1, 6));
- RR(OVL_FIR_COEF_V(OMAP_DSS_VIDEO1, 7));
+ for (i = 0; i < 8; i++)
+ RR(OVL_FIR_COEF_H(OMAP_DSS_VIDEO1, i));
+
+ for (i = 0; i < 8; i++)
+ RR(OVL_FIR_COEF_HV(OMAP_DSS_VIDEO1, i));
+
+ for (i = 0; i < 5; i++)
+ RR(OVL_CONV_COEF(OMAP_DSS_VIDEO1, i));
+
+ for (i = 0; i < 8; i++)
+ RR(OVL_FIR_COEF_V(OMAP_DSS_VIDEO1, i));
RR(OVL_PRELOAD(OMAP_DSS_VIDEO1));
@@ -415,38 +354,17 @@ void dispc_restore_context(void)
RR(OVL_ACCU0(OMAP_DSS_VIDEO2));
RR(OVL_ACCU1(OMAP_DSS_VIDEO2));
- RR(OVL_FIR_COEF_H(OMAP_DSS_VIDEO2, 0));
- RR(OVL_FIR_COEF_H(OMAP_DSS_VIDEO2, 1));
- RR(OVL_FIR_COEF_H(OMAP_DSS_VIDEO2, 2));
- RR(OVL_FIR_COEF_H(OMAP_DSS_VIDEO2, 3));
- RR(OVL_FIR_COEF_H(OMAP_DSS_VIDEO2, 4));
- RR(OVL_FIR_COEF_H(OMAP_DSS_VIDEO2, 5));
- RR(OVL_FIR_COEF_H(OMAP_DSS_VIDEO2, 6));
- RR(OVL_FIR_COEF_H(OMAP_DSS_VIDEO2, 7));
-
- RR(OVL_FIR_COEF_HV(OMAP_DSS_VIDEO2, 0));
- RR(OVL_FIR_COEF_HV(OMAP_DSS_VIDEO2, 1));
- RR(OVL_FIR_COEF_HV(OMAP_DSS_VIDEO2, 2));
- RR(OVL_FIR_COEF_HV(OMAP_DSS_VIDEO2, 3));
- RR(OVL_FIR_COEF_HV(OMAP_DSS_VIDEO2, 4));
- RR(OVL_FIR_COEF_HV(OMAP_DSS_VIDEO2, 5));
- RR(OVL_FIR_COEF_HV(OMAP_DSS_VIDEO2, 6));
- RR(OVL_FIR_COEF_HV(OMAP_DSS_VIDEO2, 7));
-
- RR(OVL_CONV_COEF(OMAP_DSS_VIDEO2, 0));
- RR(OVL_CONV_COEF(OMAP_DSS_VIDEO2, 1));
- RR(OVL_CONV_COEF(OMAP_DSS_VIDEO2, 2));
- RR(OVL_CONV_COEF(OMAP_DSS_VIDEO2, 3));
- RR(OVL_CONV_COEF(OMAP_DSS_VIDEO2, 4));
-
- RR(OVL_FIR_COEF_V(OMAP_DSS_VIDEO2, 0));
- RR(OVL_FIR_COEF_V(OMAP_DSS_VIDEO2, 1));
- RR(OVL_FIR_COEF_V(OMAP_DSS_VIDEO2, 2));
- RR(OVL_FIR_COEF_V(OMAP_DSS_VIDEO2, 3));
- RR(OVL_FIR_COEF_V(OMAP_DSS_VIDEO2, 4));
- RR(OVL_FIR_COEF_V(OMAP_DSS_VIDEO2, 5));
- RR(OVL_FIR_COEF_V(OMAP_DSS_VIDEO2, 6));
- RR(OVL_FIR_COEF_V(OMAP_DSS_VIDEO2, 7));
+ for (i = 0; i < 8; i++)
+ RR(OVL_FIR_COEF_H(OMAP_DSS_VIDEO2, i));
+
+ for (i = 0; i < 8; i++)
+ RR(OVL_FIR_COEF_HV(OMAP_DSS_VIDEO2, i));
+
+ for (i = 0; i < 5; i++)
+ RR(OVL_CONV_COEF(OMAP_DSS_VIDEO2, i));
+
+ for (i = 0; i < 8; i++)
+ RR(OVL_FIR_COEF_V(OMAP_DSS_VIDEO2, i));
RR(OVL_PRELOAD(OMAP_DSS_VIDEO2));