@@ -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));
@@ -2454,6 +2372,7 @@ void dispc_dump_regs(struct seq_file *s)
{
#define DUMPREG(r) seq_printf(s, "%-50s %08x\n", #r, dispc_read_reg(r))
+ int i;
dss_clk_enable(DSS_CLK_ICK | DSS_CLK_FCK);
DUMPREG(DISPC_REVISION);
@@ -2548,65 +2467,29 @@ void dispc_dump_regs(struct seq_file *s)
DUMPREG(DISPC_OVL_ACCU0(OMAP_DSS_VIDEO2));
DUMPREG(DISPC_OVL_ACCU1(OMAP_DSS_VIDEO2));
- DUMPREG(DISPC_OVL_FIR_COEF_H(OMAP_DSS_VIDEO1, 0));
- DUMPREG(DISPC_OVL_FIR_COEF_H(OMAP_DSS_VIDEO1, 1));
- DUMPREG(DISPC_OVL_FIR_COEF_H(OMAP_DSS_VIDEO1, 2));
- DUMPREG(DISPC_OVL_FIR_COEF_H(OMAP_DSS_VIDEO1, 3));
- DUMPREG(DISPC_OVL_FIR_COEF_H(OMAP_DSS_VIDEO1, 4));
- DUMPREG(DISPC_OVL_FIR_COEF_H(OMAP_DSS_VIDEO1, 5));
- DUMPREG(DISPC_OVL_FIR_COEF_H(OMAP_DSS_VIDEO1, 6));
- DUMPREG(DISPC_OVL_FIR_COEF_H(OMAP_DSS_VIDEO1, 7));
- DUMPREG(DISPC_OVL_FIR_COEF_HV(OMAP_DSS_VIDEO1, 0));
- DUMPREG(DISPC_OVL_FIR_COEF_HV(OMAP_DSS_VIDEO1, 1));
- DUMPREG(DISPC_OVL_FIR_COEF_HV(OMAP_DSS_VIDEO1, 2));
- DUMPREG(DISPC_OVL_FIR_COEF_HV(OMAP_DSS_VIDEO1, 3));
- DUMPREG(DISPC_OVL_FIR_COEF_HV(OMAP_DSS_VIDEO1, 4));
- DUMPREG(DISPC_OVL_FIR_COEF_HV(OMAP_DSS_VIDEO1, 5));
- DUMPREG(DISPC_OVL_FIR_COEF_HV(OMAP_DSS_VIDEO1, 6));
- DUMPREG(DISPC_OVL_FIR_COEF_HV(OMAP_DSS_VIDEO1, 7));
- DUMPREG(DISPC_OVL_CONV_COEF(OMAP_DSS_VIDEO1, 0));
- DUMPREG(DISPC_OVL_CONV_COEF(OMAP_DSS_VIDEO1, 1));
- DUMPREG(DISPC_OVL_CONV_COEF(OMAP_DSS_VIDEO1, 2));
- DUMPREG(DISPC_OVL_CONV_COEF(OMAP_DSS_VIDEO1, 3));
- DUMPREG(DISPC_OVL_CONV_COEF(OMAP_DSS_VIDEO1, 4));
- DUMPREG(DISPC_OVL_FIR_COEF_V(OMAP_DSS_VIDEO1, 0));
- DUMPREG(DISPC_OVL_FIR_COEF_V(OMAP_DSS_VIDEO1, 1));
- DUMPREG(DISPC_OVL_FIR_COEF_V(OMAP_DSS_VIDEO1, 2));
- DUMPREG(DISPC_OVL_FIR_COEF_V(OMAP_DSS_VIDEO1, 3));
- DUMPREG(DISPC_OVL_FIR_COEF_V(OMAP_DSS_VIDEO1, 4));
- DUMPREG(DISPC_OVL_FIR_COEF_V(OMAP_DSS_VIDEO1, 5));
- DUMPREG(DISPC_OVL_FIR_COEF_V(OMAP_DSS_VIDEO1, 6));
- DUMPREG(DISPC_OVL_FIR_COEF_V(OMAP_DSS_VIDEO1, 7));
-
- DUMPREG(DISPC_OVL_FIR_COEF_H(OMAP_DSS_VIDEO2, 0));
- DUMPREG(DISPC_OVL_FIR_COEF_H(OMAP_DSS_VIDEO2, 1));
- DUMPREG(DISPC_OVL_FIR_COEF_H(OMAP_DSS_VIDEO2, 2));
- DUMPREG(DISPC_OVL_FIR_COEF_H(OMAP_DSS_VIDEO2, 3));
- DUMPREG(DISPC_OVL_FIR_COEF_H(OMAP_DSS_VIDEO2, 4));
- DUMPREG(DISPC_OVL_FIR_COEF_H(OMAP_DSS_VIDEO2, 5));
- DUMPREG(DISPC_OVL_FIR_COEF_H(OMAP_DSS_VIDEO2, 6));
- DUMPREG(DISPC_OVL_FIR_COEF_H(OMAP_DSS_VIDEO2, 7));
- DUMPREG(DISPC_OVL_FIR_COEF_HV(OMAP_DSS_VIDEO2, 0));
- DUMPREG(DISPC_OVL_FIR_COEF_HV(OMAP_DSS_VIDEO2, 1));
- DUMPREG(DISPC_OVL_FIR_COEF_HV(OMAP_DSS_VIDEO2, 2));
- DUMPREG(DISPC_OVL_FIR_COEF_HV(OMAP_DSS_VIDEO2, 3));
- DUMPREG(DISPC_OVL_FIR_COEF_HV(OMAP_DSS_VIDEO2, 4));
- DUMPREG(DISPC_OVL_FIR_COEF_HV(OMAP_DSS_VIDEO2, 5));
- DUMPREG(DISPC_OVL_FIR_COEF_HV(OMAP_DSS_VIDEO2, 6));
- DUMPREG(DISPC_OVL_FIR_COEF_HV(OMAP_DSS_VIDEO2, 7));
- DUMPREG(DISPC_OVL_CONV_COEF(OMAP_DSS_VIDEO2, 0));
- DUMPREG(DISPC_OVL_CONV_COEF(OMAP_DSS_VIDEO2, 1));
- DUMPREG(DISPC_OVL_CONV_COEF(OMAP_DSS_VIDEO2, 2));
- DUMPREG(DISPC_OVL_CONV_COEF(OMAP_DSS_VIDEO2, 3));
- DUMPREG(DISPC_OVL_CONV_COEF(OMAP_DSS_VIDEO2, 4));
- DUMPREG(DISPC_OVL_FIR_COEF_V(OMAP_DSS_VIDEO2, 0));
- DUMPREG(DISPC_OVL_FIR_COEF_V(OMAP_DSS_VIDEO2, 1));
- DUMPREG(DISPC_OVL_FIR_COEF_V(OMAP_DSS_VIDEO2, 2));
- DUMPREG(DISPC_OVL_FIR_COEF_V(OMAP_DSS_VIDEO2, 3));
- DUMPREG(DISPC_OVL_FIR_COEF_V(OMAP_DSS_VIDEO2, 4));
- DUMPREG(DISPC_OVL_FIR_COEF_V(OMAP_DSS_VIDEO2, 5));
- DUMPREG(DISPC_OVL_FIR_COEF_V(OMAP_DSS_VIDEO2, 6));
- DUMPREG(DISPC_OVL_FIR_COEF_V(OMAP_DSS_VIDEO2, 7));
+ for (i = 0; i < 8; i++)
+ DUMPREG(DISPC_OVL_FIR_COEF_H(OMAP_DSS_VIDEO1, i));
+
+ for (i = 0; i < 8; i++)
+ DUMPREG(DISPC_OVL_FIR_COEF_HV(OMAP_DSS_VIDEO1, i));
+
+ for (i = 0; i < 5; i++)
+ DUMPREG(DISPC_OVL_CONV_COEF(OMAP_DSS_VIDEO1, i));
+
+ for (i = 0; i < 8; i++)
+ DUMPREG(DISPC_OVL_FIR_COEF_V(OMAP_DSS_VIDEO1, i));
+
+ for (i = 0; i < 8; i++)
+ DUMPREG(DISPC_OVL_FIR_COEF_H(OMAP_DSS_VIDEO2, i));
+
+ for (i = 0; i < 8; i++)
+ DUMPREG(DISPC_OVL_FIR_COEF_HV(OMAP_DSS_VIDEO2, i));
+
+ for (i = 0; i < 5; i++)
+ DUMPREG(DISPC_OVL_CONV_COEF(OMAP_DSS_VIDEO2, i));
+
+ for (i = 0; i < 8; i++)
+ DUMPREG(DISPC_OVL_FIR_COEF_V(OMAP_DSS_VIDEO2, i));
DUMPREG(DISPC_OVL_PRELOAD(OMAP_DSS_VIDEO1));
DUMPREG(DISPC_OVL_PRELOAD(OMAP_DSS_VIDEO2));
Use for loop instead of individual entries for OVL_FIR_COEF_H, OVL_FIR_COEF_HV, OVL_FIR_COEF_V and OVL_CONV_COEF in SR(), RR() and DUMPREG() functions. Signed-off-by: Amber Jain <amber@ti.com> --- drivers/video/omap2/dss/dispc.c | 257 +++++++++++---------------------------- 1 files changed, 70 insertions(+), 187 deletions(-)