summaryrefslogtreecommitdiffstats
path: root/meta/recipes-kernel/linux/linux-omap-2.6.29/dss2/0021-DSS2-Add-venc-register-dump.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-kernel/linux/linux-omap-2.6.29/dss2/0021-DSS2-Add-venc-register-dump.patch')
-rw-r--r--meta/recipes-kernel/linux/linux-omap-2.6.29/dss2/0021-DSS2-Add-venc-register-dump.patch96
1 files changed, 96 insertions, 0 deletions
diff --git a/meta/recipes-kernel/linux/linux-omap-2.6.29/dss2/0021-DSS2-Add-venc-register-dump.patch b/meta/recipes-kernel/linux/linux-omap-2.6.29/dss2/0021-DSS2-Add-venc-register-dump.patch
new file mode 100644
index 0000000000..31ff180228
--- /dev/null
+++ b/meta/recipes-kernel/linux/linux-omap-2.6.29/dss2/0021-DSS2-Add-venc-register-dump.patch
@@ -0,0 +1,96 @@
1From c5e71be877e71c7df329205307e830f158c403bf Mon Sep 17 00:00:00 2001
2From: =?utf-8?q?Ville=20Syrj=C3=A4l=C3=A4?= <ville.syrjala@nokia.com>
3Date: Mon, 6 Apr 2009 17:32:06 +0200
4Subject: [PATCH] DSS2: Add venc register dump
5MIME-Version: 1.0
6Content-Type: text/plain; charset=utf-8
7Content-Transfer-Encoding: 8bit
8
9Add a new file to debugfs to dump the VENC registers. The function
10prototype was already there but the implementation was missing.
11
12Signed-off-by: Ville Syrjälä <ville.syrjala@nokia.com>
13---
14 drivers/video/omap2/dss/venc.c | 55 ++++++++++++++++++++++++++++++++++++++++
15 1 files changed, 55 insertions(+), 0 deletions(-)
16
17diff --git a/drivers/video/omap2/dss/venc.c b/drivers/video/omap2/dss/venc.c
18index aceed9f..b655df4 100644
19--- a/drivers/video/omap2/dss/venc.c
20+++ b/drivers/video/omap2/dss/venc.c
21@@ -30,6 +30,7 @@
22 #include <linux/completion.h>
23 #include <linux/delay.h>
24 #include <linux/string.h>
25+#include <linux/seq_file.h>
26
27 #include <mach/display.h>
28 #include <mach/cpu.h>
29@@ -81,6 +82,7 @@
30 #define VENC_TVDETGP_INT_START_STOP_Y 0xB4
31 #define VENC_GEN_CTRL 0xB8
32 #define VENC_OUTPUT_CONTROL 0xC4
33+#define VENC_OUTPUT_TEST 0xC8
34 #define VENC_DAC_B__DAC_C 0xC8
35
36 struct venc_config {
37@@ -598,3 +600,56 @@ void venc_init_display(struct omap_display *display)
38 display->set_timings = venc_set_timings;
39 display->check_timings = venc_check_timings;
40 }
41+
42+void venc_dump_regs(struct seq_file *s)
43+{
44+#define DUMPREG(r) seq_printf(s, "%-35s %08x\n", #r, venc_read_reg(r))
45+
46+ venc_enable_clocks(1);
47+
48+ DUMPREG(VENC_F_CONTROL);
49+ DUMPREG(VENC_VIDOUT_CTRL);
50+ DUMPREG(VENC_SYNC_CTRL);
51+ DUMPREG(VENC_LLEN);
52+ DUMPREG(VENC_FLENS);
53+ DUMPREG(VENC_HFLTR_CTRL);
54+ DUMPREG(VENC_CC_CARR_WSS_CARR);
55+ DUMPREG(VENC_C_PHASE);
56+ DUMPREG(VENC_GAIN_U);
57+ DUMPREG(VENC_GAIN_V);
58+ DUMPREG(VENC_GAIN_Y);
59+ DUMPREG(VENC_BLACK_LEVEL);
60+ DUMPREG(VENC_BLANK_LEVEL);
61+ DUMPREG(VENC_X_COLOR);
62+ DUMPREG(VENC_M_CONTROL);
63+ DUMPREG(VENC_BSTAMP_WSS_DATA);
64+ DUMPREG(VENC_S_CARR);
65+ DUMPREG(VENC_LINE21);
66+ DUMPREG(VENC_LN_SEL);
67+ DUMPREG(VENC_L21__WC_CTL);
68+ DUMPREG(VENC_HTRIGGER_VTRIGGER);
69+ DUMPREG(VENC_SAVID__EAVID);
70+ DUMPREG(VENC_FLEN__FAL);
71+ DUMPREG(VENC_LAL__PHASE_RESET);
72+ DUMPREG(VENC_HS_INT_START_STOP_X);
73+ DUMPREG(VENC_HS_EXT_START_STOP_X);
74+ DUMPREG(VENC_VS_INT_START_X);
75+ DUMPREG(VENC_VS_INT_STOP_X__VS_INT_START_Y);
76+ DUMPREG(VENC_VS_INT_STOP_Y__VS_EXT_START_X);
77+ DUMPREG(VENC_VS_EXT_STOP_X__VS_EXT_START_Y);
78+ DUMPREG(VENC_VS_EXT_STOP_Y);
79+ DUMPREG(VENC_AVID_START_STOP_X);
80+ DUMPREG(VENC_AVID_START_STOP_Y);
81+ DUMPREG(VENC_FID_INT_START_X__FID_INT_START_Y);
82+ DUMPREG(VENC_FID_INT_OFFSET_Y__FID_EXT_START_X);
83+ DUMPREG(VENC_FID_EXT_START_Y__FID_EXT_OFFSET_Y);
84+ DUMPREG(VENC_TVDETGP_INT_START_STOP_X);
85+ DUMPREG(VENC_TVDETGP_INT_START_STOP_Y);
86+ DUMPREG(VENC_GEN_CTRL);
87+ DUMPREG(VENC_OUTPUT_CONTROL);
88+ DUMPREG(VENC_OUTPUT_TEST);
89+
90+ venc_enable_clocks(0);
91+
92+#undef DUMPREG
93+}
94--
951.5.6.5
96