diff options
Diffstat (limited to 'drivers/video/omap2/dss/hdmi.h')
-rw-r--r-- | drivers/video/omap2/dss/hdmi.h | 292 |
1 files changed, 145 insertions, 147 deletions
diff --git a/drivers/video/omap2/dss/hdmi.h b/drivers/video/omap2/dss/hdmi.h index c885f9cb065..ee37bd93211 100644 --- a/drivers/video/omap2/dss/hdmi.h +++ b/drivers/video/omap2/dss/hdmi.h | |||
@@ -24,174 +24,163 @@ | |||
24 | #include <linux/string.h> | 24 | #include <linux/string.h> |
25 | #include <video/omapdss.h> | 25 | #include <video/omapdss.h> |
26 | 26 | ||
27 | #define HDMI_WP 0x0 | ||
28 | #define HDMI_CORE_SYS 0x400 | ||
29 | #define HDMI_CORE_AV 0x900 | ||
30 | #define HDMI_PLLCTRL 0x200 | ||
31 | #define HDMI_PHY 0x300 | ||
32 | |||
33 | struct hdmi_reg { u16 idx; }; | 27 | struct hdmi_reg { u16 idx; }; |
34 | 28 | ||
35 | #define HDMI_REG(idx) ((const struct hdmi_reg) { idx }) | 29 | #define HDMI_REG(idx) ((const struct hdmi_reg) { idx }) |
36 | 30 | ||
37 | /* HDMI Wrapper */ | 31 | /* HDMI Wrapper */ |
38 | #define HDMI_WP_REG(idx) HDMI_REG(HDMI_WP + idx) | 32 | |
39 | 33 | #define HDMI_WP_REVISION HDMI_REG(0x0) | |
40 | #define HDMI_WP_REVISION HDMI_WP_REG(0x0) | 34 | #define HDMI_WP_SYSCONFIG HDMI_REG(0x10) |
41 | #define HDMI_WP_SYSCONFIG HDMI_WP_REG(0x10) | 35 | #define HDMI_WP_IRQSTATUS_RAW HDMI_REG(0x24) |
42 | #define HDMI_WP_IRQSTATUS_RAW HDMI_WP_REG(0x24) | 36 | #define HDMI_WP_IRQSTATUS HDMI_REG(0x28) |
43 | #define HDMI_WP_IRQSTATUS HDMI_WP_REG(0x28) | 37 | #define HDMI_WP_PWR_CTRL HDMI_REG(0x40) |
44 | #define HDMI_WP_PWR_CTRL HDMI_WP_REG(0x40) | 38 | #define HDMI_WP_IRQENABLE_SET HDMI_REG(0x2C) |
45 | #define HDMI_WP_IRQENABLE_SET HDMI_WP_REG(0x2C) | 39 | #define HDMI_WP_VIDEO_CFG HDMI_REG(0x50) |
46 | #define HDMI_WP_VIDEO_CFG HDMI_WP_REG(0x50) | 40 | #define HDMI_WP_VIDEO_SIZE HDMI_REG(0x60) |
47 | #define HDMI_WP_VIDEO_SIZE HDMI_WP_REG(0x60) | 41 | #define HDMI_WP_VIDEO_TIMING_H HDMI_REG(0x68) |
48 | #define HDMI_WP_VIDEO_TIMING_H HDMI_WP_REG(0x68) | 42 | #define HDMI_WP_VIDEO_TIMING_V HDMI_REG(0x6C) |
49 | #define HDMI_WP_VIDEO_TIMING_V HDMI_WP_REG(0x6C) | 43 | #define HDMI_WP_WP_CLK HDMI_REG(0x70) |
50 | #define HDMI_WP_WP_CLK HDMI_WP_REG(0x70) | 44 | #define HDMI_WP_AUDIO_CFG HDMI_REG(0x80) |
51 | #define HDMI_WP_AUDIO_CFG HDMI_WP_REG(0x80) | 45 | #define HDMI_WP_AUDIO_CFG2 HDMI_REG(0x84) |
52 | #define HDMI_WP_AUDIO_CFG2 HDMI_WP_REG(0x84) | 46 | #define HDMI_WP_AUDIO_CTRL HDMI_REG(0x88) |
53 | #define HDMI_WP_AUDIO_CTRL HDMI_WP_REG(0x88) | 47 | #define HDMI_WP_AUDIO_DATA HDMI_REG(0x8C) |
54 | #define HDMI_WP_AUDIO_DATA HDMI_WP_REG(0x8C) | ||
55 | 48 | ||
56 | /* HDMI IP Core System */ | 49 | /* HDMI IP Core System */ |
57 | #define HDMI_CORE_SYS_REG(idx) HDMI_REG(HDMI_CORE_SYS + idx) | 50 | |
58 | 51 | #define HDMI_CORE_SYS_VND_IDL HDMI_REG(0x0) | |
59 | #define HDMI_CORE_SYS_VND_IDL HDMI_CORE_SYS_REG(0x0) | 52 | #define HDMI_CORE_SYS_DEV_IDL HDMI_REG(0x8) |
60 | #define HDMI_CORE_SYS_DEV_IDL HDMI_CORE_SYS_REG(0x8) | 53 | #define HDMI_CORE_SYS_DEV_IDH HDMI_REG(0xC) |
61 | #define HDMI_CORE_SYS_DEV_IDH HDMI_CORE_SYS_REG(0xC) | 54 | #define HDMI_CORE_SYS_DEV_REV HDMI_REG(0x10) |
62 | #define HDMI_CORE_SYS_DEV_REV HDMI_CORE_SYS_REG(0x10) | 55 | #define HDMI_CORE_SYS_SRST HDMI_REG(0x14) |
63 | #define HDMI_CORE_SYS_SRST HDMI_CORE_SYS_REG(0x14) | 56 | #define HDMI_CORE_CTRL1 HDMI_REG(0x20) |
64 | #define HDMI_CORE_CTRL1 HDMI_CORE_SYS_REG(0x20) | 57 | #define HDMI_CORE_SYS_SYS_STAT HDMI_REG(0x24) |
65 | #define HDMI_CORE_SYS_SYS_STAT HDMI_CORE_SYS_REG(0x24) | 58 | #define HDMI_CORE_SYS_VID_ACEN HDMI_REG(0x124) |
66 | #define HDMI_CORE_SYS_VID_ACEN HDMI_CORE_SYS_REG(0x124) | 59 | #define HDMI_CORE_SYS_VID_MODE HDMI_REG(0x128) |
67 | #define HDMI_CORE_SYS_VID_MODE HDMI_CORE_SYS_REG(0x128) | 60 | #define HDMI_CORE_SYS_INTR_STATE HDMI_REG(0x1C0) |
68 | #define HDMI_CORE_SYS_INTR_STATE HDMI_CORE_SYS_REG(0x1C0) | 61 | #define HDMI_CORE_SYS_INTR1 HDMI_REG(0x1C4) |
69 | #define HDMI_CORE_SYS_INTR1 HDMI_CORE_SYS_REG(0x1C4) | 62 | #define HDMI_CORE_SYS_INTR2 HDMI_REG(0x1C8) |
70 | #define HDMI_CORE_SYS_INTR2 HDMI_CORE_SYS_REG(0x1C8) | 63 | #define HDMI_CORE_SYS_INTR3 HDMI_REG(0x1CC) |
71 | #define HDMI_CORE_SYS_INTR3 HDMI_CORE_SYS_REG(0x1CC) | 64 | #define HDMI_CORE_SYS_INTR4 HDMI_REG(0x1D0) |
72 | #define HDMI_CORE_SYS_INTR4 HDMI_CORE_SYS_REG(0x1D0) | 65 | #define HDMI_CORE_SYS_UMASK1 HDMI_REG(0x1D4) |
73 | #define HDMI_CORE_SYS_UMASK1 HDMI_CORE_SYS_REG(0x1D4) | 66 | #define HDMI_CORE_SYS_TMDS_CTRL HDMI_REG(0x208) |
74 | #define HDMI_CORE_SYS_TMDS_CTRL HDMI_CORE_SYS_REG(0x208) | 67 | #define HDMI_CORE_SYS_DE_DLY HDMI_REG(0xC8) |
75 | #define HDMI_CORE_SYS_DE_DLY HDMI_CORE_SYS_REG(0xC8) | 68 | #define HDMI_CORE_SYS_DE_CTRL HDMI_REG(0xCC) |
76 | #define HDMI_CORE_SYS_DE_CTRL HDMI_CORE_SYS_REG(0xCC) | 69 | #define HDMI_CORE_SYS_DE_TOP HDMI_REG(0xD0) |
77 | #define HDMI_CORE_SYS_DE_TOP HDMI_CORE_SYS_REG(0xD0) | 70 | #define HDMI_CORE_SYS_DE_CNTL HDMI_REG(0xD8) |
78 | #define HDMI_CORE_SYS_DE_CNTL HDMI_CORE_SYS_REG(0xD8) | 71 | #define HDMI_CORE_SYS_DE_CNTH HDMI_REG(0xDC) |
79 | #define HDMI_CORE_SYS_DE_CNTH HDMI_CORE_SYS_REG(0xDC) | 72 | #define HDMI_CORE_SYS_DE_LINL HDMI_REG(0xE0) |
80 | #define HDMI_CORE_SYS_DE_LINL HDMI_CORE_SYS_REG(0xE0) | 73 | #define HDMI_CORE_SYS_DE_LINH_1 HDMI_REG(0xE4) |
81 | #define HDMI_CORE_SYS_DE_LINH_1 HDMI_CORE_SYS_REG(0xE4) | ||
82 | #define HDMI_CORE_CTRL1_VEN_FOLLOWVSYNC 0x1 | 74 | #define HDMI_CORE_CTRL1_VEN_FOLLOWVSYNC 0x1 |
83 | #define HDMI_CORE_CTRL1_HEN_FOLLOWHSYNC 0x1 | 75 | #define HDMI_CORE_CTRL1_HEN_FOLLOWHSYNC 0x1 |
84 | #define HDMI_CORE_CTRL1_BSEL_24BITBUS 0x1 | 76 | #define HDMI_CORE_CTRL1_BSEL_24BITBUS 0x1 |
85 | #define HDMI_CORE_CTRL1_EDGE_RISINGEDGE 0x1 | 77 | #define HDMI_CORE_CTRL1_EDGE_RISINGEDGE 0x1 |
86 | 78 | ||
87 | /* HDMI DDC E-DID */ | 79 | /* HDMI DDC E-DID */ |
88 | #define HDMI_CORE_DDC_CMD HDMI_CORE_SYS_REG(0x3CC) | 80 | #define HDMI_CORE_DDC_CMD HDMI_REG(0x3CC) |
89 | #define HDMI_CORE_DDC_STATUS HDMI_CORE_SYS_REG(0x3C8) | 81 | #define HDMI_CORE_DDC_STATUS HDMI_REG(0x3C8) |
90 | #define HDMI_CORE_DDC_ADDR HDMI_CORE_SYS_REG(0x3B4) | 82 | #define HDMI_CORE_DDC_ADDR HDMI_REG(0x3B4) |
91 | #define HDMI_CORE_DDC_OFFSET HDMI_CORE_SYS_REG(0x3BC) | 83 | #define HDMI_CORE_DDC_OFFSET HDMI_REG(0x3BC) |
92 | #define HDMI_CORE_DDC_COUNT1 HDMI_CORE_SYS_REG(0x3C0) | 84 | #define HDMI_CORE_DDC_COUNT1 HDMI_REG(0x3C0) |
93 | #define HDMI_CORE_DDC_COUNT2 HDMI_CORE_SYS_REG(0x3C4) | 85 | #define HDMI_CORE_DDC_COUNT2 HDMI_REG(0x3C4) |
94 | #define HDMI_CORE_DDC_DATA HDMI_CORE_SYS_REG(0x3D0) | 86 | #define HDMI_CORE_DDC_DATA HDMI_REG(0x3D0) |
95 | #define HDMI_CORE_DDC_SEGM HDMI_CORE_SYS_REG(0x3B8) | 87 | #define HDMI_CORE_DDC_SEGM HDMI_REG(0x3B8) |
96 | 88 | ||
97 | /* HDMI IP Core Audio Video */ | 89 | /* HDMI IP Core Audio Video */ |
98 | #define HDMI_CORE_AV_REG(idx) HDMI_REG(HDMI_CORE_AV + idx) | 90 | |
99 | 91 | #define HDMI_CORE_AV_HDMI_CTRL HDMI_REG(0xBC) | |
100 | #define HDMI_CORE_AV_HDMI_CTRL HDMI_CORE_AV_REG(0xBC) | 92 | #define HDMI_CORE_AV_DPD HDMI_REG(0xF4) |
101 | #define HDMI_CORE_AV_DPD HDMI_CORE_AV_REG(0xF4) | 93 | #define HDMI_CORE_AV_PB_CTRL1 HDMI_REG(0xF8) |
102 | #define HDMI_CORE_AV_PB_CTRL1 HDMI_CORE_AV_REG(0xF8) | 94 | #define HDMI_CORE_AV_PB_CTRL2 HDMI_REG(0xFC) |
103 | #define HDMI_CORE_AV_PB_CTRL2 HDMI_CORE_AV_REG(0xFC) | 95 | #define HDMI_CORE_AV_AVI_TYPE HDMI_REG(0x100) |
104 | #define HDMI_CORE_AV_AVI_TYPE HDMI_CORE_AV_REG(0x100) | 96 | #define HDMI_CORE_AV_AVI_VERS HDMI_REG(0x104) |
105 | #define HDMI_CORE_AV_AVI_VERS HDMI_CORE_AV_REG(0x104) | 97 | #define HDMI_CORE_AV_AVI_LEN HDMI_REG(0x108) |
106 | #define HDMI_CORE_AV_AVI_LEN HDMI_CORE_AV_REG(0x108) | 98 | #define HDMI_CORE_AV_AVI_CHSUM HDMI_REG(0x10C) |
107 | #define HDMI_CORE_AV_AVI_CHSUM HDMI_CORE_AV_REG(0x10C) | 99 | #define HDMI_CORE_AV_AVI_DBYTE(n) HDMI_REG(n * 4 + 0x110) |
108 | #define HDMI_CORE_AV_AVI_DBYTE(n) HDMI_CORE_AV_REG(n * 4 + 0x110) | 100 | #define HDMI_CORE_AV_AVI_DBYTE_NELEMS HDMI_REG(15) |
109 | #define HDMI_CORE_AV_AVI_DBYTE_NELEMS HDMI_CORE_AV_REG(15) | 101 | #define HDMI_CORE_AV_SPD_DBYTE HDMI_REG(0x190) |
110 | #define HDMI_CORE_AV_SPD_DBYTE HDMI_CORE_AV_REG(0x190) | 102 | #define HDMI_CORE_AV_SPD_DBYTE_NELEMS HDMI_REG(27) |
111 | #define HDMI_CORE_AV_SPD_DBYTE_NELEMS HDMI_CORE_AV_REG(27) | 103 | #define HDMI_CORE_AV_AUD_DBYTE(n) HDMI_REG(n * 4 + 0x210) |
112 | #define HDMI_CORE_AV_AUD_DBYTE(n) HDMI_CORE_AV_REG(n * 4 + 0x210) | 104 | #define HDMI_CORE_AV_AUD_DBYTE_NELEMS HDMI_REG(10) |
113 | #define HDMI_CORE_AV_AUD_DBYTE_NELEMS HDMI_CORE_AV_REG(10) | 105 | #define HDMI_CORE_AV_MPEG_DBYTE HDMI_REG(0x290) |
114 | #define HDMI_CORE_AV_MPEG_DBYTE HDMI_CORE_AV_REG(0x290) | 106 | #define HDMI_CORE_AV_MPEG_DBYTE_NELEMS HDMI_REG(27) |
115 | #define HDMI_CORE_AV_MPEG_DBYTE_NELEMS HDMI_CORE_AV_REG(27) | 107 | #define HDMI_CORE_AV_GEN_DBYTE HDMI_REG(0x300) |
116 | #define HDMI_CORE_AV_GEN_DBYTE HDMI_CORE_AV_REG(0x300) | 108 | #define HDMI_CORE_AV_GEN_DBYTE_NELEMS HDMI_REG(31) |
117 | #define HDMI_CORE_AV_GEN_DBYTE_NELEMS HDMI_CORE_AV_REG(31) | 109 | #define HDMI_CORE_AV_GEN2_DBYTE HDMI_REG(0x380) |
118 | #define HDMI_CORE_AV_GEN2_DBYTE HDMI_CORE_AV_REG(0x380) | 110 | #define HDMI_CORE_AV_GEN2_DBYTE_NELEMS HDMI_REG(31) |
119 | #define HDMI_CORE_AV_GEN2_DBYTE_NELEMS HDMI_CORE_AV_REG(31) | 111 | #define HDMI_CORE_AV_ACR_CTRL HDMI_REG(0x4) |
120 | #define HDMI_CORE_AV_ACR_CTRL HDMI_CORE_AV_REG(0x4) | 112 | #define HDMI_CORE_AV_FREQ_SVAL HDMI_REG(0x8) |
121 | #define HDMI_CORE_AV_FREQ_SVAL HDMI_CORE_AV_REG(0x8) | 113 | #define HDMI_CORE_AV_N_SVAL1 HDMI_REG(0xC) |
122 | #define HDMI_CORE_AV_N_SVAL1 HDMI_CORE_AV_REG(0xC) | 114 | #define HDMI_CORE_AV_N_SVAL2 HDMI_REG(0x10) |
123 | #define HDMI_CORE_AV_N_SVAL2 HDMI_CORE_AV_REG(0x10) | 115 | #define HDMI_CORE_AV_N_SVAL3 HDMI_REG(0x14) |
124 | #define HDMI_CORE_AV_N_SVAL3 HDMI_CORE_AV_REG(0x14) | 116 | #define HDMI_CORE_AV_CTS_SVAL1 HDMI_REG(0x18) |
125 | #define HDMI_CORE_AV_CTS_SVAL1 HDMI_CORE_AV_REG(0x18) | 117 | #define HDMI_CORE_AV_CTS_SVAL2 HDMI_REG(0x1C) |
126 | #define HDMI_CORE_AV_CTS_SVAL2 HDMI_CORE_AV_REG(0x1C) | 118 | #define HDMI_CORE_AV_CTS_SVAL3 HDMI_REG(0x20) |
127 | #define HDMI_CORE_AV_CTS_SVAL3 HDMI_CORE_AV_REG(0x20) | 119 | #define HDMI_CORE_AV_CTS_HVAL1 HDMI_REG(0x24) |
128 | #define HDMI_CORE_AV_CTS_HVAL1 HDMI_CORE_AV_REG(0x24) | 120 | #define HDMI_CORE_AV_CTS_HVAL2 HDMI_REG(0x28) |
129 | #define HDMI_CORE_AV_CTS_HVAL2 HDMI_CORE_AV_REG(0x28) | 121 | #define HDMI_CORE_AV_CTS_HVAL3 HDMI_REG(0x2C) |
130 | #define HDMI_CORE_AV_CTS_HVAL3 HDMI_CORE_AV_REG(0x2C) | 122 | #define HDMI_CORE_AV_AUD_MODE HDMI_REG(0x50) |
131 | #define HDMI_CORE_AV_AUD_MODE HDMI_CORE_AV_REG(0x50) | 123 | #define HDMI_CORE_AV_SPDIF_CTRL HDMI_REG(0x54) |
132 | #define HDMI_CORE_AV_SPDIF_CTRL HDMI_CORE_AV_REG(0x54) | 124 | #define HDMI_CORE_AV_HW_SPDIF_FS HDMI_REG(0x60) |
133 | #define HDMI_CORE_AV_HW_SPDIF_FS HDMI_CORE_AV_REG(0x60) | 125 | #define HDMI_CORE_AV_SWAP_I2S HDMI_REG(0x64) |
134 | #define HDMI_CORE_AV_SWAP_I2S HDMI_CORE_AV_REG(0x64) | 126 | #define HDMI_CORE_AV_SPDIF_ERTH HDMI_REG(0x6C) |
135 | #define HDMI_CORE_AV_SPDIF_ERTH HDMI_CORE_AV_REG(0x6C) | 127 | #define HDMI_CORE_AV_I2S_IN_MAP HDMI_REG(0x70) |
136 | #define HDMI_CORE_AV_I2S_IN_MAP HDMI_CORE_AV_REG(0x70) | 128 | #define HDMI_CORE_AV_I2S_IN_CTRL HDMI_REG(0x74) |
137 | #define HDMI_CORE_AV_I2S_IN_CTRL HDMI_CORE_AV_REG(0x74) | 129 | #define HDMI_CORE_AV_I2S_CHST0 HDMI_REG(0x78) |
138 | #define HDMI_CORE_AV_I2S_CHST0 HDMI_CORE_AV_REG(0x78) | 130 | #define HDMI_CORE_AV_I2S_CHST1 HDMI_REG(0x7C) |
139 | #define HDMI_CORE_AV_I2S_CHST1 HDMI_CORE_AV_REG(0x7C) | 131 | #define HDMI_CORE_AV_I2S_CHST2 HDMI_REG(0x80) |
140 | #define HDMI_CORE_AV_I2S_CHST2 HDMI_CORE_AV_REG(0x80) | 132 | #define HDMI_CORE_AV_I2S_CHST4 HDMI_REG(0x84) |
141 | #define HDMI_CORE_AV_I2S_CHST4 HDMI_CORE_AV_REG(0x84) | 133 | #define HDMI_CORE_AV_I2S_CHST5 HDMI_REG(0x88) |
142 | #define HDMI_CORE_AV_I2S_CHST5 HDMI_CORE_AV_REG(0x88) | 134 | #define HDMI_CORE_AV_ASRC HDMI_REG(0x8C) |
143 | #define HDMI_CORE_AV_ASRC HDMI_CORE_AV_REG(0x8C) | 135 | #define HDMI_CORE_AV_I2S_IN_LEN HDMI_REG(0x90) |
144 | #define HDMI_CORE_AV_I2S_IN_LEN HDMI_CORE_AV_REG(0x90) | 136 | #define HDMI_CORE_AV_HDMI_CTRL HDMI_REG(0xBC) |
145 | #define HDMI_CORE_AV_HDMI_CTRL HDMI_CORE_AV_REG(0xBC) | 137 | #define HDMI_CORE_AV_AUDO_TXSTAT HDMI_REG(0xC0) |
146 | #define HDMI_CORE_AV_AUDO_TXSTAT HDMI_CORE_AV_REG(0xC0) | 138 | #define HDMI_CORE_AV_AUD_PAR_BUSCLK_1 HDMI_REG(0xCC) |
147 | #define HDMI_CORE_AV_AUD_PAR_BUSCLK_1 HDMI_CORE_AV_REG(0xCC) | 139 | #define HDMI_CORE_AV_AUD_PAR_BUSCLK_2 HDMI_REG(0xD0) |
148 | #define HDMI_CORE_AV_AUD_PAR_BUSCLK_2 HDMI_CORE_AV_REG(0xD0) | 140 | #define HDMI_CORE_AV_AUD_PAR_BUSCLK_3 HDMI_REG(0xD4) |
149 | #define HDMI_CORE_AV_AUD_PAR_BUSCLK_3 HDMI_CORE_AV_REG(0xD4) | 141 | #define HDMI_CORE_AV_TEST_TXCTRL HDMI_REG(0xF0) |
150 | #define HDMI_CORE_AV_TEST_TXCTRL HDMI_CORE_AV_REG(0xF0) | 142 | #define HDMI_CORE_AV_DPD HDMI_REG(0xF4) |
151 | #define HDMI_CORE_AV_DPD HDMI_CORE_AV_REG(0xF4) | 143 | #define HDMI_CORE_AV_PB_CTRL1 HDMI_REG(0xF8) |
152 | #define HDMI_CORE_AV_PB_CTRL1 HDMI_CORE_AV_REG(0xF8) | 144 | #define HDMI_CORE_AV_PB_CTRL2 HDMI_REG(0xFC) |
153 | #define HDMI_CORE_AV_PB_CTRL2 HDMI_CORE_AV_REG(0xFC) | 145 | #define HDMI_CORE_AV_AVI_TYPE HDMI_REG(0x100) |
154 | #define HDMI_CORE_AV_AVI_TYPE HDMI_CORE_AV_REG(0x100) | 146 | #define HDMI_CORE_AV_AVI_VERS HDMI_REG(0x104) |
155 | #define HDMI_CORE_AV_AVI_VERS HDMI_CORE_AV_REG(0x104) | 147 | #define HDMI_CORE_AV_AVI_LEN HDMI_REG(0x108) |
156 | #define HDMI_CORE_AV_AVI_LEN HDMI_CORE_AV_REG(0x108) | 148 | #define HDMI_CORE_AV_AVI_CHSUM HDMI_REG(0x10C) |
157 | #define HDMI_CORE_AV_AVI_CHSUM HDMI_CORE_AV_REG(0x10C) | 149 | #define HDMI_CORE_AV_SPD_TYPE HDMI_REG(0x180) |
158 | #define HDMI_CORE_AV_SPD_TYPE HDMI_CORE_AV_REG(0x180) | 150 | #define HDMI_CORE_AV_SPD_VERS HDMI_REG(0x184) |
159 | #define HDMI_CORE_AV_SPD_VERS HDMI_CORE_AV_REG(0x184) | 151 | #define HDMI_CORE_AV_SPD_LEN HDMI_REG(0x188) |
160 | #define HDMI_CORE_AV_SPD_LEN HDMI_CORE_AV_REG(0x188) | 152 | #define HDMI_CORE_AV_SPD_CHSUM HDMI_REG(0x18C) |
161 | #define HDMI_CORE_AV_SPD_CHSUM HDMI_CORE_AV_REG(0x18C) | 153 | #define HDMI_CORE_AV_AUDIO_TYPE HDMI_REG(0x200) |
162 | #define HDMI_CORE_AV_AUDIO_TYPE HDMI_CORE_AV_REG(0x200) | 154 | #define HDMI_CORE_AV_AUDIO_VERS HDMI_REG(0x204) |
163 | #define HDMI_CORE_AV_AUDIO_VERS HDMI_CORE_AV_REG(0x204) | 155 | #define HDMI_CORE_AV_AUDIO_LEN HDMI_REG(0x208) |
164 | #define HDMI_CORE_AV_AUDIO_LEN HDMI_CORE_AV_REG(0x208) | 156 | #define HDMI_CORE_AV_AUDIO_CHSUM HDMI_REG(0x20C) |
165 | #define HDMI_CORE_AV_AUDIO_CHSUM HDMI_CORE_AV_REG(0x20C) | 157 | #define HDMI_CORE_AV_MPEG_TYPE HDMI_REG(0x280) |
166 | #define HDMI_CORE_AV_MPEG_TYPE HDMI_CORE_AV_REG(0x280) | 158 | #define HDMI_CORE_AV_MPEG_VERS HDMI_REG(0x284) |
167 | #define HDMI_CORE_AV_MPEG_VERS HDMI_CORE_AV_REG(0x284) | 159 | #define HDMI_CORE_AV_MPEG_LEN HDMI_REG(0x288) |
168 | #define HDMI_CORE_AV_MPEG_LEN HDMI_CORE_AV_REG(0x288) | 160 | #define HDMI_CORE_AV_MPEG_CHSUM HDMI_REG(0x28C) |
169 | #define HDMI_CORE_AV_MPEG_CHSUM HDMI_CORE_AV_REG(0x28C) | 161 | #define HDMI_CORE_AV_CP_BYTE1 HDMI_REG(0x37C) |
170 | #define HDMI_CORE_AV_CP_BYTE1 HDMI_CORE_AV_REG(0x37C) | 162 | #define HDMI_CORE_AV_CEC_ADDR_ID HDMI_REG(0x3FC) |
171 | #define HDMI_CORE_AV_CEC_ADDR_ID HDMI_CORE_AV_REG(0x3FC) | ||
172 | #define HDMI_CORE_AV_SPD_DBYTE_ELSIZE 0x4 | 163 | #define HDMI_CORE_AV_SPD_DBYTE_ELSIZE 0x4 |
173 | #define HDMI_CORE_AV_GEN2_DBYTE_ELSIZE 0x4 | 164 | #define HDMI_CORE_AV_GEN2_DBYTE_ELSIZE 0x4 |
174 | #define HDMI_CORE_AV_MPEG_DBYTE_ELSIZE 0x4 | 165 | #define HDMI_CORE_AV_MPEG_DBYTE_ELSIZE 0x4 |
175 | #define HDMI_CORE_AV_GEN_DBYTE_ELSIZE 0x4 | 166 | #define HDMI_CORE_AV_GEN_DBYTE_ELSIZE 0x4 |
176 | 167 | ||
177 | /* PLL */ | 168 | /* PLL */ |
178 | #define HDMI_PLL_REG(idx) HDMI_REG(HDMI_PLLCTRL + idx) | ||
179 | 169 | ||
180 | #define PLLCTRL_PLL_CONTROL HDMI_PLL_REG(0x0) | 170 | #define PLLCTRL_PLL_CONTROL HDMI_REG(0x0) |
181 | #define PLLCTRL_PLL_STATUS HDMI_PLL_REG(0x4) | 171 | #define PLLCTRL_PLL_STATUS HDMI_REG(0x4) |
182 | #define PLLCTRL_PLL_GO HDMI_PLL_REG(0x8) | 172 | #define PLLCTRL_PLL_GO HDMI_REG(0x8) |
183 | #define PLLCTRL_CFG1 HDMI_PLL_REG(0xC) | 173 | #define PLLCTRL_CFG1 HDMI_REG(0xC) |
184 | #define PLLCTRL_CFG2 HDMI_PLL_REG(0x10) | 174 | #define PLLCTRL_CFG2 HDMI_REG(0x10) |
185 | #define PLLCTRL_CFG3 HDMI_PLL_REG(0x14) | 175 | #define PLLCTRL_CFG3 HDMI_REG(0x14) |
186 | #define PLLCTRL_CFG4 HDMI_PLL_REG(0x20) | 176 | #define PLLCTRL_CFG4 HDMI_REG(0x20) |
187 | 177 | ||
188 | /* HDMI PHY */ | 178 | /* HDMI PHY */ |
189 | #define HDMI_PHY_REG(idx) HDMI_REG(HDMI_PHY + idx) | ||
190 | 179 | ||
191 | #define HDMI_TXPHY_TX_CTRL HDMI_PHY_REG(0x0) | 180 | #define HDMI_TXPHY_TX_CTRL HDMI_REG(0x0) |
192 | #define HDMI_TXPHY_DIGITAL_CTRL HDMI_PHY_REG(0x4) | 181 | #define HDMI_TXPHY_DIGITAL_CTRL HDMI_REG(0x4) |
193 | #define HDMI_TXPHY_POWER_CTRL HDMI_PHY_REG(0x8) | 182 | #define HDMI_TXPHY_POWER_CTRL HDMI_REG(0x8) |
194 | #define HDMI_TXPHY_PAD_CFG_CTRL HDMI_PHY_REG(0xC) | 183 | #define HDMI_TXPHY_PAD_CFG_CTRL HDMI_REG(0xC) |
195 | 184 | ||
196 | /* HDMI EDID Length */ | 185 | /* HDMI EDID Length */ |
197 | #define HDMI_EDID_MAX_LENGTH 256 | 186 | #define HDMI_EDID_MAX_LENGTH 256 |
@@ -203,10 +192,11 @@ struct hdmi_reg { u16 idx; }; | |||
203 | 192 | ||
204 | #define OMAP_HDMI_TIMINGS_NB 34 | 193 | #define OMAP_HDMI_TIMINGS_NB 34 |
205 | 194 | ||
206 | #define REG_FLD_MOD(idx, val, start, end) \ | 195 | #define REG_FLD_MOD(base, idx, val, start, end) \ |
207 | hdmi_write_reg(idx, FLD_MOD(hdmi_read_reg(idx), val, start, end)) | 196 | hdmi_write_reg(base, idx, FLD_MOD(hdmi_read_reg(base, idx),\ |
208 | #define REG_GET(idx, start, end) \ | 197 | val, start, end)) |
209 | FLD_GET(hdmi_read_reg(idx), start, end) | 198 | #define REG_GET(base, idx, start, end) \ |
199 | FLD_GET(hdmi_read_reg(base, idx), start, end) | ||
210 | 200 | ||
211 | /* HDMI timing structure */ | 201 | /* HDMI timing structure */ |
212 | struct hdmi_timings { | 202 | struct hdmi_timings { |
@@ -568,6 +558,14 @@ struct hdmi_video_interface { | |||
568 | int tm; /* Timing mode */ | 558 | int tm; /* Timing mode */ |
569 | }; | 559 | }; |
570 | 560 | ||
561 | struct hdmi_ip_data { | ||
562 | void __iomem *base_wp; /* HDMI wrapper */ | ||
563 | unsigned long core_sys_offset; | ||
564 | unsigned long core_av_offset; | ||
565 | unsigned long pll_offset; | ||
566 | unsigned long phy_offset; | ||
567 | }; | ||
568 | |||
571 | struct hdmi_cm { | 569 | struct hdmi_cm { |
572 | int code; | 570 | int code; |
573 | int mode; | 571 | int mode; |