1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 /*
3  * Copyright (C) 2015 Amlogic, Inc. All rights reserved.
4  */
5 
6 #ifndef __MESON_REGISTERS_H
7 #define __MESON_REGISTERS_H
8 
9 #include <linux/io.h>
10 
11 /* Shift all registers by 2 */
12 #define _REG(reg)	((reg) << 2)
13 
14 #define writel_bits_relaxed(mask, val, addr) \
15 	writel_relaxed((readl_relaxed(addr) & ~(mask)) | ((val) & (mask)), addr)
16 
17 /* vpp2 */
18 #define VPP2_DUMMY_DATA 0x1900
19 #define VPP2_LINE_IN_LENGTH 0x1901
20 #define VPP2_PIC_IN_HEIGHT 0x1902
21 #define VPP2_SCALE_COEF_IDX 0x1903
22 #define VPP2_SCALE_COEF 0x1904
23 #define VPP2_VSC_REGION12_STARTP 0x1905
24 #define VPP2_VSC_REGION34_STARTP 0x1906
25 #define VPP2_VSC_REGION4_ENDP 0x1907
26 #define VPP2_VSC_START_PHASE_STEP 0x1908
27 #define VPP2_VSC_REGION0_PHASE_SLOPE 0x1909
28 #define VPP2_VSC_REGION1_PHASE_SLOPE 0x190a
29 #define VPP2_VSC_REGION3_PHASE_SLOPE 0x190b
30 #define VPP2_VSC_REGION4_PHASE_SLOPE 0x190c
31 #define VPP2_VSC_PHASE_CTRL 0x190d
32 #define VPP2_VSC_INI_PHASE 0x190e
33 #define VPP2_HSC_REGION12_STARTP 0x1910
34 #define VPP2_HSC_REGION34_STARTP 0x1911
35 #define VPP2_HSC_REGION4_ENDP 0x1912
36 #define VPP2_HSC_START_PHASE_STEP 0x1913
37 #define VPP2_HSC_REGION0_PHASE_SLOPE 0x1914
38 #define VPP2_HSC_REGION1_PHASE_SLOPE 0x1915
39 #define VPP2_HSC_REGION3_PHASE_SLOPE 0x1916
40 #define VPP2_HSC_REGION4_PHASE_SLOPE 0x1917
41 #define VPP2_HSC_PHASE_CTRL 0x1918
42 #define VPP2_SC_MISC 0x1919
43 #define VPP2_PREBLEND_VD1_H_START_END 0x191a
44 #define VPP2_PREBLEND_VD1_V_START_END 0x191b
45 #define VPP2_POSTBLEND_VD1_H_START_END 0x191c
46 #define VPP2_POSTBLEND_VD1_V_START_END 0x191d
47 #define VPP2_PREBLEND_H_SIZE 0x1920
48 #define VPP2_POSTBLEND_H_SIZE 0x1921
49 #define VPP2_HOLD_LINES 0x1922
50 #define VPP2_BLEND_ONECOLOR_CTRL 0x1923
51 #define VPP2_PREBLEND_CURRENT_XY 0x1924
52 #define VPP2_POSTBLEND_CURRENT_XY 0x1925
53 #define VPP2_MISC 0x1926
54 #define VPP2_OFIFO_SIZE 0x1927
55 #define VPP2_FIFO_STATUS 0x1928
56 #define VPP2_SMOKE_CTRL 0x1929
57 #define VPP2_SMOKE1_VAL 0x192a
58 #define VPP2_SMOKE2_VAL 0x192b
59 #define VPP2_SMOKE1_H_START_END 0x192d
60 #define VPP2_SMOKE1_V_START_END 0x192e
61 #define VPP2_SMOKE2_H_START_END 0x192f
62 #define VPP2_SMOKE2_V_START_END 0x1930
63 #define VPP2_SCO_FIFO_CTRL 0x1933
64 #define VPP2_HSC_PHASE_CTRL1 0x1934
65 #define VPP2_HSC_INI_PAT_CTRL 0x1935
66 #define VPP2_VADJ_CTRL 0x1940
67 #define VPP2_VADJ1_Y 0x1941
68 #define VPP2_VADJ1_MA_MB 0x1942
69 #define VPP2_VADJ1_MC_MD 0x1943
70 #define VPP2_VADJ2_Y 0x1944
71 #define VPP2_VADJ2_MA_MB 0x1945
72 #define VPP2_VADJ2_MC_MD 0x1946
73 #define VPP2_MATRIX_PROBE_COLOR 0x195c
74 #define VPP2_MATRIX_HL_COLOR 0x195d
75 #define VPP2_MATRIX_PROBE_POS 0x195e
76 #define VPP2_MATRIX_CTRL 0x195f
77 #define VPP2_MATRIX_COEF00_01 0x1960
78 #define VPP2_MATRIX_COEF02_10 0x1961
79 #define VPP2_MATRIX_COEF11_12 0x1962
80 #define VPP2_MATRIX_COEF20_21 0x1963
81 #define VPP2_MATRIX_COEF22 0x1964
82 #define VPP2_MATRIX_OFFSET0_1 0x1965
83 #define VPP2_MATRIX_OFFSET2 0x1966
84 #define VPP2_MATRIX_PRE_OFFSET0_1 0x1967
85 #define VPP2_MATRIX_PRE_OFFSET2 0x1968
86 #define VPP2_DUMMY_DATA1 0x1969
87 #define VPP2_GAINOFF_CTRL0 0x196a
88 #define VPP2_GAINOFF_CTRL1 0x196b
89 #define VPP2_GAINOFF_CTRL2 0x196c
90 #define VPP2_GAINOFF_CTRL3 0x196d
91 #define VPP2_GAINOFF_CTRL4 0x196e
92 #define VPP2_CHROMA_ADDR_PORT 0x1970
93 #define VPP2_CHROMA_DATA_PORT 0x1971
94 #define VPP2_GCLK_CTRL0 0x1972
95 #define VPP2_GCLK_CTRL1 0x1973
96 #define VPP2_SC_GCLK_CTRL 0x1974
97 #define VPP2_MISC1 0x1976
98 #define VPP2_DNLP_CTRL_00 0x1981
99 #define VPP2_DNLP_CTRL_01 0x1982
100 #define VPP2_DNLP_CTRL_02 0x1983
101 #define VPP2_DNLP_CTRL_03 0x1984
102 #define VPP2_DNLP_CTRL_04 0x1985
103 #define VPP2_DNLP_CTRL_05 0x1986
104 #define VPP2_DNLP_CTRL_06 0x1987
105 #define VPP2_DNLP_CTRL_07 0x1988
106 #define VPP2_DNLP_CTRL_08 0x1989
107 #define VPP2_DNLP_CTRL_09 0x198a
108 #define VPP2_DNLP_CTRL_10 0x198b
109 #define VPP2_DNLP_CTRL_11 0x198c
110 #define VPP2_DNLP_CTRL_12 0x198d
111 #define VPP2_DNLP_CTRL_13 0x198e
112 #define VPP2_DNLP_CTRL_14 0x198f
113 #define VPP2_DNLP_CTRL_15 0x1990
114 #define VPP2_VE_ENABLE_CTRL 0x19a1
115 #define VPP2_VE_DEMO_LEFT_TOP_SCREEN_WIDTH 0x19a2
116 #define VPP2_VE_DEMO_CENTER_BAR 0x19a3
117 #define VPP2_VE_H_V_SIZE 0x19a4
118 #define VPP2_VDO_MEAS_CTRL 0x19a8
119 #define VPP2_VDO_MEAS_VS_COUNT_HI 0x19a9
120 #define VPP2_VDO_MEAS_VS_COUNT_LO 0x19aa
121 #define VPP2_OSD_VSC_PHASE_STEP 0x19c0
122 #define VPP2_OSD_VSC_INI_PHASE 0x19c1
123 #define VPP2_OSD_VSC_CTRL0 0x19c2
124 #define VPP2_OSD_HSC_PHASE_STEP 0x19c3
125 #define VPP2_OSD_HSC_INI_PHASE 0x19c4
126 #define VPP2_OSD_HSC_CTRL0 0x19c5
127 #define VPP2_OSD_HSC_INI_PAT_CTRL 0x19c6
128 #define VPP2_OSD_SC_DUMMY_DATA 0x19c7
129 #define VPP2_OSD_SC_CTRL0 0x19c8
130 #define VPP2_OSD_SCI_WH_M1 0x19c9
131 #define VPP2_OSD_SCO_H_START_END 0x19ca
132 #define VPP2_OSD_SCO_V_START_END 0x19cb
133 #define VPP2_OSD_SCALE_COEF_IDX 0x19cc
134 #define VPP2_OSD_SCALE_COEF 0x19cd
135 #define VPP2_INT_LINE_NUM 0x19ce
136 
137 /* viu */
138 #define VIU_ADDR_START 0x1a00
139 #define VIU_ADDR_END 0x1aff
140 #define VIU_SW_RESET 0x1a01
141 #define		VIU_SW_RESET_OSD1_AFBCD		BIT(31)
142 #define		VIU_SW_RESET_G12A_OSD1_AFBCD	BIT(21)
143 #define		VIU_SW_RESET_G12A_AFBC_ARB	BIT(19)
144 #define		VIU_SW_RESET_OSD1               BIT(0)
145 #define VIU_MISC_CTRL0 0x1a06
146 #define		VIU_CTRL0_VD1_AFBC_MASK         0x170000
147 #define		VIU_CTRL0_AFBC_TO_VD1		BIT(20)
148 #define VIU_MISC_CTRL1 0x1a07
149 #define		MALI_AFBC_MISC			GENMASK(15, 8)
150 #define D2D3_INTF_LENGTH 0x1a08
151 #define D2D3_INTF_CTRL0 0x1a09
152 #define VD1_AFBCD0_MISC_CTRL 0x1a0a
153 #define		VD1_AXI_SEL_AFBC		(1 << 12)
154 #define		AFBC_VD1_SEL			(1 << 10)
155 #define VD2_AFBCD1_MISC_CTRL 0x1a0b
156 #define VIU_OSD1_CTRL_STAT 0x1a10
157 #define		VIU_OSD1_OSD_BLK_ENABLE         BIT(0)
158 #define		VIU_OSD1_OSD_MEM_MODE_LINEAR	BIT(2)
159 #define		VIU_OSD1_POSTBLD_SRC_VD1        (1 << 8)
160 #define		VIU_OSD1_POSTBLD_SRC_VD2        (2 << 8)
161 #define		VIU_OSD1_POSTBLD_SRC_OSD1       (3 << 8)
162 #define		VIU_OSD1_POSTBLD_SRC_OSD2       (4 << 8)
163 #define		VIU_OSD1_OSD_ENABLE             BIT(21)
164 #define		VIU_OSD1_CFG_SYN_EN             BIT(31)
165 #define VIU_OSD1_CTRL_STAT2 0x1a2d
166 #define VIU_OSD1_COLOR_ADDR 0x1a11
167 #define VIU_OSD1_COLOR 0x1a12
168 #define VIU_OSD1_TCOLOR_AG0 0x1a17
169 #define VIU_OSD1_TCOLOR_AG1 0x1a18
170 #define VIU_OSD1_TCOLOR_AG2 0x1a19
171 #define VIU_OSD1_TCOLOR_AG3 0x1a1a
172 #define VIU_OSD1_BLK0_CFG_W0 0x1a1b
173 #define VIU_OSD1_BLK1_CFG_W0 0x1a1f
174 #define VIU_OSD1_BLK2_CFG_W0 0x1a23
175 #define VIU_OSD1_BLK3_CFG_W0 0x1a27
176 #define VIU_OSD1_BLK0_CFG_W1 0x1a1c
177 #define VIU_OSD1_BLK1_CFG_W1 0x1a20
178 #define VIU_OSD1_BLK2_CFG_W1 0x1a24
179 #define VIU_OSD1_BLK3_CFG_W1 0x1a28
180 #define VIU_OSD1_BLK0_CFG_W2 0x1a1d
181 #define VIU_OSD1_BLK1_CFG_W2 0x1a21
182 #define VIU_OSD1_BLK2_CFG_W2 0x1a25
183 #define VIU_OSD1_BLK3_CFG_W2 0x1a29
184 #define VIU_OSD1_BLK0_CFG_W3 0x1a1e
185 #define VIU_OSD1_BLK1_CFG_W3 0x1a22
186 #define VIU_OSD1_BLK2_CFG_W3 0x1a26
187 #define VIU_OSD1_BLK3_CFG_W3 0x1a2a
188 #define VIU_OSD1_BLK0_CFG_W4 0x1a13
189 #define VIU_OSD1_BLK1_CFG_W4 0x1a14
190 #define VIU_OSD1_BLK2_CFG_W4 0x1a15
191 #define VIU_OSD1_BLK3_CFG_W4 0x1a16
192 #define VIU_OSD1_FIFO_CTRL_STAT 0x1a2b
193 #define VIU_OSD1_TEST_RDDATA 0x1a2c
194 #define VIU_OSD1_PROT_CTRL 0x1a2e
195 #define VIU_OSD1_MALI_UNPACK_CTRL 0x1a2f
196 #define		VIU_OSD1_MALI_UNPACK_EN		BIT(31)
197 #define		VIU_OSD1_MALI_AFBCD_R_REORDER	GENMASK(15, 12)
198 #define		VIU_OSD1_MALI_AFBCD_G_REORDER	GENMASK(11, 8)
199 #define		VIU_OSD1_MALI_AFBCD_B_REORDER	GENMASK(7, 4)
200 #define		VIU_OSD1_MALI_AFBCD_A_REORDER	GENMASK(3, 0)
201 #define		VIU_OSD1_MALI_REORDER_R		1
202 #define		VIU_OSD1_MALI_REORDER_G		2
203 #define		VIU_OSD1_MALI_REORDER_B		3
204 #define		VIU_OSD1_MALI_REORDER_A		4
205 #define VIU_OSD2_CTRL_STAT 0x1a30
206 #define VIU_OSD2_CTRL_STAT2 0x1a4d
207 #define VIU_OSD2_COLOR_ADDR 0x1a31
208 #define VIU_OSD2_COLOR 0x1a32
209 #define VIU_OSD2_HL1_H_START_END 0x1a33
210 #define VIU_OSD2_HL1_V_START_END 0x1a34
211 #define VIU_OSD2_HL2_H_START_END 0x1a35
212 #define VIU_OSD2_HL2_V_START_END 0x1a36
213 #define VIU_OSD2_TCOLOR_AG0 0x1a37
214 #define VIU_OSD2_TCOLOR_AG1 0x1a38
215 #define VIU_OSD2_TCOLOR_AG2 0x1a39
216 #define VIU_OSD2_TCOLOR_AG3 0x1a3a
217 #define VIU_OSD2_BLK0_CFG_W0 0x1a3b
218 #define VIU_OSD2_BLK1_CFG_W0 0x1a3f
219 #define VIU_OSD2_BLK2_CFG_W0 0x1a43
220 #define VIU_OSD2_BLK3_CFG_W0 0x1a47
221 #define VIU_OSD2_BLK0_CFG_W1 0x1a3c
222 #define VIU_OSD2_BLK1_CFG_W1 0x1a40
223 #define VIU_OSD2_BLK2_CFG_W1 0x1a44
224 #define VIU_OSD2_BLK3_CFG_W1 0x1a48
225 #define VIU_OSD2_BLK0_CFG_W2 0x1a3d
226 #define VIU_OSD2_BLK1_CFG_W2 0x1a41
227 #define VIU_OSD2_BLK2_CFG_W2 0x1a45
228 #define VIU_OSD2_BLK3_CFG_W2 0x1a49
229 #define VIU_OSD2_BLK0_CFG_W3 0x1a3e
230 #define VIU_OSD2_BLK1_CFG_W3 0x1a42
231 #define VIU_OSD2_BLK2_CFG_W3 0x1a46
232 #define VIU_OSD2_BLK3_CFG_W3 0x1a4a
233 #define VIU_OSD2_BLK0_CFG_W4 0x1a64
234 #define VIU_OSD2_BLK1_CFG_W4 0x1a65
235 #define VIU_OSD2_BLK2_CFG_W4 0x1a66
236 #define VIU_OSD2_BLK3_CFG_W4 0x1a67
237 #define VIU_OSD2_FIFO_CTRL_STAT 0x1a4b
238 #define VIU_OSD2_TEST_RDDATA 0x1a4c
239 #define VIU_OSD2_PROT_CTRL 0x1a4e
240 #define VIU_OSD2_MALI_UNPACK_CTRL 0x1abd
241 #define VIU_OSD2_DIMM_CTRL 0x1acf
242 
243 #define VIU_OSD3_CTRL_STAT 0x3d80
244 #define VIU_OSD3_CTRL_STAT2 0x3d81
245 #define VIU_OSD3_COLOR_ADDR 0x3d82
246 #define VIU_OSD3_COLOR 0x3d83
247 #define VIU_OSD3_TCOLOR_AG0 0x3d84
248 #define VIU_OSD3_TCOLOR_AG1 0x3d85
249 #define VIU_OSD3_TCOLOR_AG2 0x3d86
250 #define VIU_OSD3_TCOLOR_AG3 0x3d87
251 #define VIU_OSD3_BLK0_CFG_W0 0x3d88
252 #define VIU_OSD3_BLK0_CFG_W1 0x3d8c
253 #define VIU_OSD3_BLK0_CFG_W2 0x3d90
254 #define VIU_OSD3_BLK0_CFG_W3 0x3d94
255 #define VIU_OSD3_BLK0_CFG_W4 0x3d98
256 #define VIU_OSD3_BLK1_CFG_W4 0x3d99
257 #define VIU_OSD3_BLK2_CFG_W4 0x3d9a
258 #define VIU_OSD3_FIFO_CTRL_STAT 0x3d9c
259 #define VIU_OSD3_TEST_RDDATA 0x3d9d
260 #define VIU_OSD3_PROT_CTRL 0x3d9e
261 #define VIU_OSD3_MALI_UNPACK_CTRL 0x3d9f
262 #define VIU_OSD3_DIMM_CTRL 0x3da0
263 
264 #define VIU_OSD_DDR_PRIORITY_URGENT      BIT(0)
265 #define VIU_OSD_HOLD_FIFO_LINES(lines)   ((lines & 0x1f) << 5)
266 #define VIU_OSD_FIFO_DEPTH_VAL(val)      ((val & 0x7f) << 12)
267 #define VIU_OSD_WORDS_PER_BURST(words)   (((words & 0x4) >> 1) << 22)
268 #define VIU_OSD_FIFO_LIMITS(size)        ((size & 0xf) << 24)
269 #define VIU_OSD_BURST_LENGTH_24          (0x0 << 31 | 0x0 << 10)
270 #define VIU_OSD_BURST_LENGTH_32          (0x0 << 31 | 0x1 << 10)
271 #define VIU_OSD_BURST_LENGTH_48          (0x0 << 31 | 0x2 << 10)
272 #define VIU_OSD_BURST_LENGTH_64          (0x0 << 31 | 0x3 << 10)
273 #define VIU_OSD_BURST_LENGTH_96          (0x1 << 31 | 0x0 << 10)
274 #define VIU_OSD_BURST_LENGTH_128         (0x1 << 31 | 0x1 << 10)
275 
276 #define VD1_IF0_GEN_REG 0x1a50
277 #define VD1_IF0_CANVAS0 0x1a51
278 #define VD1_IF0_CANVAS1 0x1a52
279 #define VD1_IF0_LUMA_X0 0x1a53
280 #define VD1_IF0_LUMA_Y0 0x1a54
281 #define VD1_IF0_CHROMA_X0 0x1a55
282 #define VD1_IF0_CHROMA_Y0 0x1a56
283 #define VD1_IF0_LUMA_X1 0x1a57
284 #define VD1_IF0_LUMA_Y1 0x1a58
285 #define VD1_IF0_CHROMA_X1 0x1a59
286 #define VD1_IF0_CHROMA_Y1 0x1a5a
287 #define VD1_IF0_RPT_LOOP 0x1a5b
288 #define VD1_IF0_LUMA0_RPT_PAT 0x1a5c
289 #define VD1_IF0_CHROMA0_RPT_PAT 0x1a5d
290 #define VD1_IF0_LUMA1_RPT_PAT 0x1a5e
291 #define VD1_IF0_CHROMA1_RPT_PAT 0x1a5f
292 #define VD1_IF0_LUMA_PSEL 0x1a60
293 #define VD1_IF0_CHROMA_PSEL 0x1a61
294 #define VD1_IF0_DUMMY_PIXEL 0x1a62
295 #define VD1_IF0_LUMA_FIFO_SIZE 0x1a63
296 #define VD1_IF0_RANGE_MAP_Y 0x1a6a
297 #define VD1_IF0_RANGE_MAP_CB 0x1a6b
298 #define VD1_IF0_RANGE_MAP_CR 0x1a6c
299 #define VD1_IF0_GEN_REG2 0x1a6d
300 #define VD1_IF0_PROT_CNTL 0x1a6e
301 #define VIU_VD1_FMT_CTRL 0x1a68
302 #define VIU_VD1_FMT_W 0x1a69
303 #define VD2_IF0_GEN_REG 0x1a70
304 #define VD2_IF0_CANVAS0 0x1a71
305 #define VD2_IF0_CANVAS1 0x1a72
306 #define VD2_IF0_LUMA_X0 0x1a73
307 #define VD2_IF0_LUMA_Y0 0x1a74
308 #define VD2_IF0_CHROMA_X0 0x1a75
309 #define VD2_IF0_CHROMA_Y0 0x1a76
310 #define VD2_IF0_LUMA_X1 0x1a77
311 #define VD2_IF0_LUMA_Y1 0x1a78
312 #define VD2_IF0_CHROMA_X1 0x1a79
313 #define VD2_IF0_CHROMA_Y1 0x1a7a
314 #define VD2_IF0_RPT_LOOP 0x1a7b
315 #define VD2_IF0_LUMA0_RPT_PAT 0x1a7c
316 #define VD2_IF0_CHROMA0_RPT_PAT 0x1a7d
317 #define VD2_IF0_LUMA1_RPT_PAT 0x1a7e
318 #define VD2_IF0_CHROMA1_RPT_PAT 0x1a7f
319 #define VD2_IF0_LUMA_PSEL 0x1a80
320 #define VD2_IF0_CHROMA_PSEL 0x1a81
321 #define VD2_IF0_DUMMY_PIXEL 0x1a82
322 #define VD2_IF0_LUMA_FIFO_SIZE 0x1a83
323 #define VD2_IF0_RANGE_MAP_Y 0x1a8a
324 #define VD2_IF0_RANGE_MAP_CB 0x1a8b
325 #define VD2_IF0_RANGE_MAP_CR 0x1a8c
326 #define VD2_IF0_GEN_REG2 0x1a8d
327 #define VD2_IF0_PROT_CNTL 0x1a8e
328 #define VIU_VD2_FMT_CTRL 0x1a88
329 #define VIU_VD2_FMT_W 0x1a89
330 
331 /* VIU Matrix Registers */
332 #define VIU_OSD1_MATRIX_CTRL 0x1a90
333 #define VIU_OSD1_MATRIX_COEF00_01 0x1a91
334 #define VIU_OSD1_MATRIX_COEF02_10 0x1a92
335 #define VIU_OSD1_MATRIX_COEF11_12 0x1a93
336 #define VIU_OSD1_MATRIX_COEF20_21 0x1a94
337 #define VIU_OSD1_MATRIX_COLMOD_COEF42 0x1a95
338 #define VIU_OSD1_MATRIX_OFFSET0_1 0x1a96
339 #define VIU_OSD1_MATRIX_OFFSET2 0x1a97
340 #define VIU_OSD1_MATRIX_PRE_OFFSET0_1 0x1a98
341 #define VIU_OSD1_MATRIX_PRE_OFFSET2 0x1a99
342 #define VIU_OSD1_MATRIX_COEF22_30 0x1a9d
343 #define VIU_OSD1_MATRIX_COEF31_32 0x1a9e
344 #define VIU_OSD1_MATRIX_COEF40_41 0x1a9f
345 #define VD1_IF0_GEN_REG3 0x1aa7
346 
347 #define VIU_OSD_BLENDO_H_START_END 0x1aa9
348 #define VIU_OSD_BLENDO_V_START_END 0x1aaa
349 #define VIU_OSD_BLEND_GEN_CTRL0 0x1aab
350 #define VIU_OSD_BLEND_GEN_CTRL1 0x1aac
351 #define VIU_OSD_BLEND_DUMMY_DATA 0x1aad
352 #define VIU_OSD_BLEND_CURRENT_XY 0x1aae
353 
354 #define VIU_OSD2_MATRIX_CTRL 0x1ab0
355 #define VIU_OSD2_MATRIX_COEF00_01 0x1ab1
356 #define VIU_OSD2_MATRIX_COEF02_10 0x1ab2
357 #define VIU_OSD2_MATRIX_COEF11_12 0x1ab3
358 #define VIU_OSD2_MATRIX_COEF20_21 0x1ab4
359 #define VIU_OSD2_MATRIX_COEF22 0x1ab5
360 #define VIU_OSD2_MATRIX_OFFSET0_1 0x1ab6
361 #define VIU_OSD2_MATRIX_OFFSET2 0x1ab7
362 #define VIU_OSD2_MATRIX_PRE_OFFSET0_1 0x1ab8
363 #define VIU_OSD2_MATRIX_PRE_OFFSET2 0x1ab9
364 #define VIU_OSD2_MATRIX_PROBE_COLOR 0x1aba
365 #define VIU_OSD2_MATRIX_HL_COLOR 0x1abb
366 #define VIU_OSD2_MATRIX_PROBE_POS 0x1abc
367 #define VIU_OSD1_EOTF_CTL 0x1ad4
368 #define VIU_OSD1_EOTF_COEF00_01 0x1ad5
369 #define VIU_OSD1_EOTF_COEF02_10 0x1ad6
370 #define VIU_OSD1_EOTF_COEF11_12 0x1ad7
371 #define VIU_OSD1_EOTF_COEF20_21 0x1ad8
372 #define VIU_OSD1_EOTF_COEF22_RS 0x1ad9
373 #define VIU_OSD1_EOTF_LUT_ADDR_PORT 0x1ada
374 #define VIU_OSD1_EOTF_LUT_DATA_PORT 0x1adb
375 #define VIU_OSD1_OETF_CTL 0x1adc
376 #define VIU_OSD1_OETF_LUT_ADDR_PORT 0x1add
377 #define VIU_OSD1_OETF_LUT_DATA_PORT 0x1ade
378 #define AFBC_ENABLE 0x1ae0
379 #define AFBC_MODE 0x1ae1
380 #define AFBC_SIZE_IN 0x1ae2
381 #define AFBC_DEC_DEF_COLOR 0x1ae3
382 #define AFBC_CONV_CTRL 0x1ae4
383 #define AFBC_LBUF_DEPTH 0x1ae5
384 #define AFBC_HEAD_BADDR 0x1ae6
385 #define AFBC_BODY_BADDR 0x1ae7
386 #define AFBC_SIZE_OUT 0x1ae8
387 #define AFBC_OUT_YSCOPE 0x1ae9
388 #define AFBC_STAT 0x1aea
389 #define AFBC_VD_CFMT_CTRL 0x1aeb
390 #define AFBC_VD_CFMT_W 0x1aec
391 #define AFBC_MIF_HOR_SCOPE 0x1aed
392 #define AFBC_MIF_VER_SCOPE 0x1aee
393 #define AFBC_PIXEL_HOR_SCOPE 0x1aef
394 #define AFBC_PIXEL_VER_SCOPE 0x1af0
395 #define AFBC_VD_CFMT_H 0x1af1
396 
397 /* vpp */
398 #define VPP_DUMMY_DATA 0x1d00
399 #define VPP_LINE_IN_LENGTH 0x1d01
400 #define VPP_PIC_IN_HEIGHT 0x1d02
401 #define VPP_SCALE_COEF_IDX 0x1d03
402 #define		VPP_SCALE_HORIZONTAL_COEF       BIT(8)
403 #define VPP_SCALE_COEF 0x1d04
404 #define VPP_VSC_REGION12_STARTP 0x1d05
405 #define VPP_VSC_REGION34_STARTP 0x1d06
406 #define VPP_VSC_REGION4_ENDP 0x1d07
407 #define VPP_VSC_START_PHASE_STEP 0x1d08
408 #define VPP_VSC_REGION0_PHASE_SLOPE 0x1d09
409 #define VPP_VSC_REGION1_PHASE_SLOPE 0x1d0a
410 #define VPP_VSC_REGION3_PHASE_SLOPE 0x1d0b
411 #define VPP_VSC_REGION4_PHASE_SLOPE 0x1d0c
412 #define VPP_VSC_PHASE_CTRL 0x1d0d
413 #define VPP_VSC_INI_PHASE 0x1d0e
414 #define VPP_HSC_REGION12_STARTP 0x1d10
415 #define VPP_HSC_REGION34_STARTP 0x1d11
416 #define VPP_HSC_REGION4_ENDP 0x1d12
417 #define VPP_HSC_START_PHASE_STEP 0x1d13
418 #define VPP_HSC_REGION0_PHASE_SLOPE 0x1d14
419 #define VPP_HSC_REGION1_PHASE_SLOPE 0x1d15
420 #define VPP_HSC_REGION3_PHASE_SLOPE 0x1d16
421 #define VPP_HSC_REGION4_PHASE_SLOPE 0x1d17
422 #define VPP_HSC_PHASE_CTRL 0x1d18
423 #define VPP_SC_MISC 0x1d19
424 #define		VPP_SC_VD_EN_ENABLE             BIT(15)
425 #define		VPP_SC_TOP_EN_ENABLE            BIT(16)
426 #define		VPP_SC_HSC_EN_ENABLE            BIT(17)
427 #define		VPP_SC_VSC_EN_ENABLE            BIT(18)
428 #define		VPP_VSC_BANK_LENGTH(length)     (length & 0x7)
429 #define		VPP_HSC_BANK_LENGTH(length)     ((length & 0x7) << 8)
430 #define VPP_PREBLEND_VD1_H_START_END 0x1d1a
431 #define VPP_PREBLEND_VD1_V_START_END 0x1d1b
432 #define VPP_POSTBLEND_VD1_H_START_END 0x1d1c
433 #define VPP_POSTBLEND_VD1_V_START_END 0x1d1d
434 #define VPP_BLEND_VD2_H_START_END 0x1d1e
435 #define VPP_BLEND_VD2_V_START_END 0x1d1f
436 #define VPP_PREBLEND_H_SIZE 0x1d20
437 #define VPP_POSTBLEND_H_SIZE 0x1d21
438 #define VPP_HOLD_LINES 0x1d22
439 #define		VPP_POSTBLEND_HOLD_LINES(lines) (lines & 0xf)
440 #define		VPP_PREBLEND_HOLD_LINES(lines)  ((lines & 0xf) << 8)
441 #define VPP_BLEND_ONECOLOR_CTRL 0x1d23
442 #define VPP_PREBLEND_CURRENT_XY 0x1d24
443 #define VPP_POSTBLEND_CURRENT_XY 0x1d25
444 #define VPP_MISC 0x1d26
445 #define		VPP_PREBLEND_ENABLE             BIT(6)
446 #define		VPP_POSTBLEND_ENABLE            BIT(7)
447 #define		VPP_OSD2_ALPHA_PREMULT          BIT(8)
448 #define		VPP_OSD1_ALPHA_PREMULT          BIT(9)
449 #define		VPP_VD1_POSTBLEND               BIT(10)
450 #define		VPP_VD2_POSTBLEND               BIT(11)
451 #define		VPP_OSD1_POSTBLEND              BIT(12)
452 #define		VPP_OSD2_POSTBLEND              BIT(13)
453 #define		VPP_VD1_PREBLEND                BIT(14)
454 #define		VPP_VD2_PREBLEND                BIT(15)
455 #define		VPP_OSD1_PREBLEND               BIT(16)
456 #define		VPP_OSD2_PREBLEND               BIT(17)
457 #define		VPP_COLOR_MNG_ENABLE            BIT(28)
458 #define VPP_OFIFO_SIZE 0x1d27
459 #define		VPP_OFIFO_SIZE_MASK             GENMASK(13, 0)
460 #define		VPP_OFIFO_SIZE_DEFAULT          (0xfff << 20 | 0x1000)
461 #define VPP_FIFO_STATUS 0x1d28
462 #define VPP_SMOKE_CTRL 0x1d29
463 #define VPP_SMOKE1_VAL 0x1d2a
464 #define VPP_SMOKE2_VAL 0x1d2b
465 #define VPP_SMOKE3_VAL 0x1d2c
466 #define VPP_SMOKE1_H_START_END 0x1d2d
467 #define VPP_SMOKE1_V_START_END 0x1d2e
468 #define VPP_SMOKE2_H_START_END 0x1d2f
469 #define VPP_SMOKE2_V_START_END 0x1d30
470 #define VPP_SMOKE3_H_START_END 0x1d31
471 #define VPP_SMOKE3_V_START_END 0x1d32
472 #define VPP_SCO_FIFO_CTRL 0x1d33
473 #define VPP_HSC_PHASE_CTRL1 0x1d34
474 #define VPP_HSC_INI_PAT_CTRL 0x1d35
475 #define VPP_VADJ_CTRL 0x1d40
476 #define		VPP_MINUS_BLACK_LVL_VADJ1_ENABLE BIT(1)
477 
478 #define VPP_VADJ1_Y 0x1d41
479 #define VPP_VADJ1_MA_MB 0x1d42
480 #define VPP_VADJ1_MC_MD 0x1d43
481 #define VPP_VADJ2_Y 0x1d44
482 #define VPP_VADJ2_MA_MB 0x1d45
483 #define VPP_VADJ2_MC_MD 0x1d46
484 #define VPP_HSHARP_CTRL 0x1d50
485 #define VPP_HSHARP_LUMA_THRESH01 0x1d51
486 #define VPP_HSHARP_LUMA_THRESH23 0x1d52
487 #define VPP_HSHARP_CHROMA_THRESH01 0x1d53
488 #define VPP_HSHARP_CHROMA_THRESH23 0x1d54
489 #define VPP_HSHARP_LUMA_GAIN 0x1d55
490 #define VPP_HSHARP_CHROMA_GAIN 0x1d56
491 #define VPP_MATRIX_PROBE_COLOR 0x1d5c
492 #define VPP_MATRIX_HL_COLOR 0x1d5d
493 #define VPP_MATRIX_PROBE_POS 0x1d5e
494 #define VPP_MATRIX_CTRL 0x1d5f
495 #define VPP_MATRIX_COEF00_01 0x1d60
496 #define VPP_MATRIX_COEF02_10 0x1d61
497 #define VPP_MATRIX_COEF11_12 0x1d62
498 #define VPP_MATRIX_COEF20_21 0x1d63
499 #define VPP_MATRIX_COEF22 0x1d64
500 #define VPP_MATRIX_OFFSET0_1 0x1d65
501 #define VPP_MATRIX_OFFSET2 0x1d66
502 #define VPP_MATRIX_PRE_OFFSET0_1 0x1d67
503 #define VPP_MATRIX_PRE_OFFSET2 0x1d68
504 #define VPP_DUMMY_DATA1 0x1d69
505 #define VPP_GAINOFF_CTRL0 0x1d6a
506 #define VPP_GAINOFF_CTRL1 0x1d6b
507 #define VPP_GAINOFF_CTRL2 0x1d6c
508 #define VPP_GAINOFF_CTRL3 0x1d6d
509 #define VPP_GAINOFF_CTRL4 0x1d6e
510 #define VPP_CHROMA_ADDR_PORT 0x1d70
511 #define VPP_CHROMA_DATA_PORT 0x1d71
512 #define VPP_GCLK_CTRL0 0x1d72
513 #define VPP_GCLK_CTRL1 0x1d73
514 #define VPP_SC_GCLK_CTRL 0x1d74
515 #define VPP_MISC1 0x1d76
516 #define VPP_BLACKEXT_CTRL 0x1d80
517 #define VPP_DNLP_CTRL_00 0x1d81
518 #define VPP_DNLP_CTRL_01 0x1d82
519 #define VPP_DNLP_CTRL_02 0x1d83
520 #define VPP_DNLP_CTRL_03 0x1d84
521 #define VPP_DNLP_CTRL_04 0x1d85
522 #define VPP_DNLP_CTRL_05 0x1d86
523 #define VPP_DNLP_CTRL_06 0x1d87
524 #define VPP_DNLP_CTRL_07 0x1d88
525 #define VPP_DNLP_CTRL_08 0x1d89
526 #define VPP_DNLP_CTRL_09 0x1d8a
527 #define VPP_DNLP_CTRL_10 0x1d8b
528 #define VPP_DNLP_CTRL_11 0x1d8c
529 #define VPP_DNLP_CTRL_12 0x1d8d
530 #define VPP_DNLP_CTRL_13 0x1d8e
531 #define VPP_DNLP_CTRL_14 0x1d8f
532 #define VPP_DNLP_CTRL_15 0x1d90
533 #define VPP_PEAKING_HGAIN 0x1d91
534 #define VPP_PEAKING_VGAIN 0x1d92
535 #define VPP_PEAKING_NLP_1 0x1d93
536 #define VPP_DOLBY_CTRL 0x1d93
537 #define VPP_PPS_DUMMY_DATA_MODE (1 << 17)
538 #define VPP_PEAKING_NLP_2 0x1d94
539 #define VPP_PEAKING_NLP_3 0x1d95
540 #define VPP_PEAKING_NLP_4 0x1d96
541 #define VPP_PEAKING_NLP_5 0x1d97
542 #define VPP_SHARP_LIMIT 0x1d98
543 #define VPP_VLTI_CTRL 0x1d99
544 #define VPP_HLTI_CTRL 0x1d9a
545 #define VPP_CTI_CTRL 0x1d9b
546 #define VPP_BLUE_STRETCH_1 0x1d9c
547 #define VPP_BLUE_STRETCH_2 0x1d9d
548 #define VPP_BLUE_STRETCH_3 0x1d9e
549 #define VPP_CCORING_CTRL 0x1da0
550 #define VPP_VE_ENABLE_CTRL 0x1da1
551 #define VPP_VE_DEMO_LEFT_TOP_SCREEN_WIDTH 0x1da2
552 #define VPP_VE_DEMO_CENTER_BAR 0x1da3
553 #define VPP_VE_H_V_SIZE 0x1da4
554 #define VPP_VDO_MEAS_CTRL 0x1da8
555 #define VPP_VDO_MEAS_VS_COUNT_HI 0x1da9
556 #define VPP_VDO_MEAS_VS_COUNT_LO 0x1daa
557 #define VPP_INPUT_CTRL 0x1dab
558 #define VPP_CTI_CTRL2 0x1dac
559 #define VPP_PEAKING_SAT_THD1 0x1dad
560 #define VPP_PEAKING_SAT_THD2 0x1dae
561 #define VPP_PEAKING_SAT_THD3 0x1daf
562 #define VPP_PEAKING_SAT_THD4 0x1db0
563 #define VPP_PEAKING_SAT_THD5 0x1db1
564 #define VPP_PEAKING_SAT_THD6 0x1db2
565 #define VPP_PEAKING_SAT_THD7 0x1db3
566 #define VPP_PEAKING_SAT_THD8 0x1db4
567 #define VPP_PEAKING_SAT_THD9 0x1db5
568 #define VPP_PEAKING_GAIN_ADD1 0x1db6
569 #define VPP_PEAKING_GAIN_ADD2 0x1db7
570 #define VPP_PEAKING_DNLP 0x1db8
571 #define VPP_SHARP_DEMO_WIN_CTRL1 0x1db9
572 #define VPP_SHARP_DEMO_WIN_CTRL2 0x1dba
573 #define VPP_FRONT_HLTI_CTRL 0x1dbb
574 #define VPP_FRONT_CTI_CTRL 0x1dbc
575 #define VPP_FRONT_CTI_CTRL2 0x1dbd
576 #define VPP_OSD_VSC_PHASE_STEP 0x1dc0
577 #define VPP_OSD_VSC_INI_PHASE 0x1dc1
578 #define VPP_OSD_VSC_CTRL0 0x1dc2
579 #define VPP_OSD_HSC_PHASE_STEP 0x1dc3
580 #define VPP_OSD_HSC_INI_PHASE 0x1dc4
581 #define VPP_OSD_HSC_CTRL0 0x1dc5
582 #define VPP_OSD_HSC_INI_PAT_CTRL 0x1dc6
583 #define VPP_OSD_SC_DUMMY_DATA 0x1dc7
584 #define VPP_OSD_SC_CTRL0 0x1dc8
585 #define VPP_OSD_SCI_WH_M1 0x1dc9
586 #define VPP_OSD_SCO_H_START_END 0x1dca
587 #define VPP_OSD_SCO_V_START_END 0x1dcb
588 #define VPP_OSD_SCALE_COEF_IDX 0x1dcc
589 #define VPP_OSD_SCALE_COEF 0x1dcd
590 #define VPP_INT_LINE_NUM 0x1dce
591 
592 #define VPP_WRAP_OSD1_MATRIX_COEF00_01 0x3d60
593 #define VPP_WRAP_OSD1_MATRIX_COEF02_10 0x3d61
594 #define VPP_WRAP_OSD1_MATRIX_COEF11_12 0x3d62
595 #define VPP_WRAP_OSD1_MATRIX_COEF20_21 0x3d63
596 #define VPP_WRAP_OSD1_MATRIX_COEF22 0x3d64
597 #define VPP_WRAP_OSD1_MATRIX_COEF13_14 0x3d65
598 #define VPP_WRAP_OSD1_MATRIX_COEF23_24 0x3d66
599 #define VPP_WRAP_OSD1_MATRIX_COEF15_25 0x3d67
600 #define VPP_WRAP_OSD1_MATRIX_CLIP 0x3d68
601 #define VPP_WRAP_OSD1_MATRIX_OFFSET0_1 0x3d69
602 #define VPP_WRAP_OSD1_MATRIX_OFFSET2 0x3d6a
603 #define VPP_WRAP_OSD1_MATRIX_PRE_OFFSET0_1 0x3d6b
604 #define VPP_WRAP_OSD1_MATRIX_PRE_OFFSET2 0x3d6c
605 #define VPP_WRAP_OSD1_MATRIX_EN_CTRL 0x3d6d
606 
607 #define VPP_WRAP_OSD2_MATRIX_COEF00_01 0x3d70
608 #define VPP_WRAP_OSD2_MATRIX_COEF02_10 0x3d71
609 #define VPP_WRAP_OSD2_MATRIX_COEF11_12 0x3d72
610 #define VPP_WRAP_OSD2_MATRIX_COEF20_21 0x3d73
611 #define VPP_WRAP_OSD2_MATRIX_COEF22 0x3d74
612 #define VPP_WRAP_OSD2_MATRIX_COEF13_14 0x3d75
613 #define VPP_WRAP_OSD2_MATRIX_COEF23_24 0x3d76
614 #define VPP_WRAP_OSD2_MATRIX_COEF15_25 0x3d77
615 #define VPP_WRAP_OSD2_MATRIX_CLIP 0x3d78
616 #define VPP_WRAP_OSD2_MATRIX_OFFSET0_1 0x3d79
617 #define VPP_WRAP_OSD2_MATRIX_OFFSET2 0x3d7a
618 #define VPP_WRAP_OSD2_MATRIX_PRE_OFFSET0_1 0x3d7b
619 #define VPP_WRAP_OSD2_MATRIX_PRE_OFFSET2 0x3d7c
620 #define VPP_WRAP_OSD2_MATRIX_EN_CTRL 0x3d7d
621 
622 #define VPP_WRAP_OSD3_MATRIX_COEF00_01 0x3db0
623 #define VPP_WRAP_OSD3_MATRIX_COEF02_10 0x3db1
624 #define VPP_WRAP_OSD3_MATRIX_COEF11_12 0x3db2
625 #define VPP_WRAP_OSD3_MATRIX_COEF20_21 0x3db3
626 #define VPP_WRAP_OSD3_MATRIX_COEF22 0x3db4
627 #define VPP_WRAP_OSD3_MATRIX_COEF13_14 0x3db5
628 #define VPP_WRAP_OSD3_MATRIX_COEF23_24 0x3db6
629 #define VPP_WRAP_OSD3_MATRIX_COEF15_25 0x3db7
630 #define VPP_WRAP_OSD3_MATRIX_CLIP 0x3db8
631 #define VPP_WRAP_OSD3_MATRIX_OFFSET0_1 0x3db9
632 #define VPP_WRAP_OSD3_MATRIX_OFFSET2 0x3dba
633 #define VPP_WRAP_OSD3_MATRIX_PRE_OFFSET0_1 0x3dbb
634 #define VPP_WRAP_OSD3_MATRIX_PRE_OFFSET2 0x3dbc
635 #define VPP_WRAP_OSD3_MATRIX_EN_CTRL 0x3dbd
636 
637 /* osd1 HDR */
638 #define OSD1_HDR2_CTRL 0x38a0
639 #define OSD1_HDR2_CTRL_VDIN0_HDR2_TOP_EN       BIT(13)
640 #define OSD1_HDR2_CTRL_REG_ONLY_MAT            BIT(16)
641 
642 /* osd2 scaler */
643 #define OSD2_VSC_PHASE_STEP 0x3d00
644 #define OSD2_VSC_INI_PHASE 0x3d01
645 #define OSD2_VSC_CTRL0 0x3d02
646 #define OSD2_HSC_PHASE_STEP 0x3d03
647 #define OSD2_HSC_INI_PHASE 0x3d04
648 #define OSD2_HSC_CTRL0 0x3d05
649 #define OSD2_HSC_INI_PAT_CTRL 0x3d06
650 #define OSD2_SC_DUMMY_DATA 0x3d07
651 #define OSD2_SC_CTRL0 0x3d08
652 #define OSD2_SCI_WH_M1 0x3d09
653 #define OSD2_SCO_H_START_END 0x3d0a
654 #define OSD2_SCO_V_START_END 0x3d0b
655 #define OSD2_SCALE_COEF_IDX 0x3d18
656 #define OSD2_SCALE_COEF 0x3d19
657 
658 /* osd34 scaler */
659 #define OSD34_SCALE_COEF_IDX 0x3d1e
660 #define OSD34_SCALE_COEF 0x3d1f
661 #define OSD34_VSC_PHASE_STEP 0x3d20
662 #define OSD34_VSC_INI_PHASE 0x3d21
663 #define OSD34_VSC_CTRL0 0x3d22
664 #define OSD34_HSC_PHASE_STEP 0x3d23
665 #define OSD34_HSC_INI_PHASE 0x3d24
666 #define OSD34_HSC_CTRL0 0x3d25
667 #define OSD34_HSC_INI_PAT_CTRL 0x3d26
668 #define OSD34_SC_DUMMY_DATA 0x3d27
669 #define OSD34_SC_CTRL0 0x3d28
670 #define OSD34_SCI_WH_M1 0x3d29
671 #define OSD34_SCO_H_START_END 0x3d2a
672 #define OSD34_SCO_V_START_END 0x3d2b
673 
674 /* viu2 */
675 #define VIU2_ADDR_START 0x1e00
676 #define VIU2_ADDR_END 0x1eff
677 #define VIU2_SW_RESET 0x1e01
678 #define VIU2_OSD1_CTRL_STAT 0x1e10
679 #define VIU2_OSD1_CTRL_STAT2 0x1e2d
680 #define VIU2_OSD1_COLOR_ADDR 0x1e11
681 #define VIU2_OSD1_COLOR 0x1e12
682 #define VIU2_OSD1_TCOLOR_AG0 0x1e17
683 #define VIU2_OSD1_TCOLOR_AG1 0x1e18
684 #define VIU2_OSD1_TCOLOR_AG2 0x1e19
685 #define VIU2_OSD1_TCOLOR_AG3 0x1e1a
686 #define VIU2_OSD1_BLK0_CFG_W0 0x1e1b
687 #define VIU2_OSD1_BLK1_CFG_W0 0x1e1f
688 #define VIU2_OSD1_BLK2_CFG_W0 0x1e23
689 #define VIU2_OSD1_BLK3_CFG_W0 0x1e27
690 #define VIU2_OSD1_BLK0_CFG_W1 0x1e1c
691 #define VIU2_OSD1_BLK1_CFG_W1 0x1e20
692 #define VIU2_OSD1_BLK2_CFG_W1 0x1e24
693 #define VIU2_OSD1_BLK3_CFG_W1 0x1e28
694 #define VIU2_OSD1_BLK0_CFG_W2 0x1e1d
695 #define VIU2_OSD1_BLK1_CFG_W2 0x1e21
696 #define VIU2_OSD1_BLK2_CFG_W2 0x1e25
697 #define VIU2_OSD1_BLK3_CFG_W2 0x1e29
698 #define VIU2_OSD1_BLK0_CFG_W3 0x1e1e
699 #define VIU2_OSD1_BLK1_CFG_W3 0x1e22
700 #define VIU2_OSD1_BLK2_CFG_W3 0x1e26
701 #define VIU2_OSD1_BLK3_CFG_W3 0x1e2a
702 #define VIU2_OSD1_BLK0_CFG_W4 0x1e13
703 #define VIU2_OSD1_BLK1_CFG_W4 0x1e14
704 #define VIU2_OSD1_BLK2_CFG_W4 0x1e15
705 #define VIU2_OSD1_BLK3_CFG_W4 0x1e16
706 #define VIU2_OSD1_FIFO_CTRL_STAT 0x1e2b
707 #define VIU2_OSD1_TEST_RDDATA 0x1e2c
708 #define VIU2_OSD1_PROT_CTRL 0x1e2e
709 #define VIU2_OSD2_CTRL_STAT 0x1e30
710 #define VIU2_OSD2_CTRL_STAT2 0x1e4d
711 #define VIU2_OSD2_COLOR_ADDR 0x1e31
712 #define VIU2_OSD2_COLOR 0x1e32
713 #define VIU2_OSD2_HL1_H_START_END 0x1e33
714 #define VIU2_OSD2_HL1_V_START_END 0x1e34
715 #define VIU2_OSD2_HL2_H_START_END 0x1e35
716 #define VIU2_OSD2_HL2_V_START_END 0x1e36
717 #define VIU2_OSD2_TCOLOR_AG0 0x1e37
718 #define VIU2_OSD2_TCOLOR_AG1 0x1e38
719 #define VIU2_OSD2_TCOLOR_AG2 0x1e39
720 #define VIU2_OSD2_TCOLOR_AG3 0x1e3a
721 #define VIU2_OSD2_BLK0_CFG_W0 0x1e3b
722 #define VIU2_OSD2_BLK1_CFG_W0 0x1e3f
723 #define VIU2_OSD2_BLK2_CFG_W0 0x1e43
724 #define VIU2_OSD2_BLK3_CFG_W0 0x1e47
725 #define VIU2_OSD2_BLK0_CFG_W1 0x1e3c
726 #define VIU2_OSD2_BLK1_CFG_W1 0x1e40
727 #define VIU2_OSD2_BLK2_CFG_W1 0x1e44
728 #define VIU2_OSD2_BLK3_CFG_W1 0x1e48
729 #define VIU2_OSD2_BLK0_CFG_W2 0x1e3d
730 #define VIU2_OSD2_BLK1_CFG_W2 0x1e41
731 #define VIU2_OSD2_BLK2_CFG_W2 0x1e45
732 #define VIU2_OSD2_BLK3_CFG_W2 0x1e49
733 #define VIU2_OSD2_BLK0_CFG_W3 0x1e3e
734 #define VIU2_OSD2_BLK1_CFG_W3 0x1e42
735 #define VIU2_OSD2_BLK2_CFG_W3 0x1e46
736 #define VIU2_OSD2_BLK3_CFG_W3 0x1e4a
737 #define VIU2_OSD2_BLK0_CFG_W4 0x1e64
738 #define VIU2_OSD2_BLK1_CFG_W4 0x1e65
739 #define VIU2_OSD2_BLK2_CFG_W4 0x1e66
740 #define VIU2_OSD2_BLK3_CFG_W4 0x1e67
741 #define VIU2_OSD2_FIFO_CTRL_STAT 0x1e4b
742 #define VIU2_OSD2_TEST_RDDATA 0x1e4c
743 #define VIU2_OSD2_PROT_CTRL 0x1e4e
744 #define VIU2_VD1_IF0_GEN_REG 0x1e50
745 #define VIU2_VD1_IF0_CANVAS0 0x1e51
746 #define VIU2_VD1_IF0_CANVAS1 0x1e52
747 #define VIU2_VD1_IF0_LUMA_X0 0x1e53
748 #define VIU2_VD1_IF0_LUMA_Y0 0x1e54
749 #define VIU2_VD1_IF0_CHROMA_X0 0x1e55
750 #define VIU2_VD1_IF0_CHROMA_Y0 0x1e56
751 #define VIU2_VD1_IF0_LUMA_X1 0x1e57
752 #define VIU2_VD1_IF0_LUMA_Y1 0x1e58
753 #define VIU2_VD1_IF0_CHROMA_X1 0x1e59
754 #define VIU2_VD1_IF0_CHROMA_Y1 0x1e5a
755 #define VIU2_VD1_IF0_RPT_LOOP 0x1e5b
756 #define VIU2_VD1_IF0_LUMA0_RPT_PAT 0x1e5c
757 #define VIU2_VD1_IF0_CHROMA0_RPT_PAT 0x1e5d
758 #define VIU2_VD1_IF0_LUMA1_RPT_PAT 0x1e5e
759 #define VIU2_VD1_IF0_CHROMA1_RPT_PAT 0x1e5f
760 #define VIU2_VD1_IF0_LUMA_PSEL 0x1e60
761 #define VIU2_VD1_IF0_CHROMA_PSEL 0x1e61
762 #define VIU2_VD1_IF0_DUMMY_PIXEL 0x1e62
763 #define VIU2_VD1_IF0_LUMA_FIFO_SIZE 0x1e63
764 #define VIU2_VD1_IF0_RANGE_MAP_Y 0x1e6a
765 #define VIU2_VD1_IF0_RANGE_MAP_CB 0x1e6b
766 #define VIU2_VD1_IF0_RANGE_MAP_CR 0x1e6c
767 #define VIU2_VD1_IF0_GEN_REG2 0x1e6d
768 #define VIU2_VD1_IF0_PROT_CNTL 0x1e6e
769 #define VIU2_VD1_FMT_CTRL 0x1e68
770 #define VIU2_VD1_FMT_W 0x1e69
771 
772 /* encode */
773 #define ENCP_VFIFO2VD_CTL 0x1b58
774 #define ENCP_VFIFO2VD_PIXEL_START 0x1b59
775 #define ENCP_VFIFO2VD_PIXEL_END 0x1b5a
776 #define ENCP_VFIFO2VD_LINE_TOP_START 0x1b5b
777 #define ENCP_VFIFO2VD_LINE_TOP_END 0x1b5c
778 #define ENCP_VFIFO2VD_LINE_BOT_START 0x1b5d
779 #define ENCP_VFIFO2VD_LINE_BOT_END 0x1b5e
780 #define VENC_SYNC_ROUTE 0x1b60
781 #define VENC_VIDEO_EXSRC 0x1b61
782 #define VENC_DVI_SETTING 0x1b62
783 #define VENC_C656_CTRL 0x1b63
784 #define VENC_UPSAMPLE_CTRL0 0x1b64
785 #define VENC_UPSAMPLE_CTRL1 0x1b65
786 #define VENC_UPSAMPLE_CTRL2 0x1b66
787 #define		VENC_UPSAMPLE_CTRL_F0_2_CLK_RATIO        BIT(0)
788 #define		VENC_UPSAMPLE_CTRL_F1_EN                 BIT(5)
789 #define		VENC_UPSAMPLE_CTRL_F1_UPSAMPLE_EN        BIT(6)
790 #define		VENC_UPSAMPLE_CTRL_INTERLACE_HIGH_LUMA   (0x0 << 12)
791 #define		VENC_UPSAMPLE_CTRL_CVBS                  (0x1 << 12)
792 #define		VENC_UPSAMPLE_CTRL_S_VIDEO_LUMA          (0x2 << 12)
793 #define		VENC_UPSAMPLE_CTRL_S_VIDEO_CHROMA        (0x3 << 12)
794 #define		VENC_UPSAMPLE_CTRL_INTERLACE_PB          (0x4 << 12)
795 #define		VENC_UPSAMPLE_CTRL_INTERLACE_PR          (0x5 << 12)
796 #define		VENC_UPSAMPLE_CTRL_INTERLACE_R           (0x6 << 12)
797 #define		VENC_UPSAMPLE_CTRL_INTERLACE_G           (0x7 << 12)
798 #define		VENC_UPSAMPLE_CTRL_INTERLACE_B           (0x8 << 12)
799 #define		VENC_UPSAMPLE_CTRL_PROGRESSIVE_Y         (0x9 << 12)
800 #define		VENC_UPSAMPLE_CTRL_PROGRESSIVE_PB        (0xa << 12)
801 #define		VENC_UPSAMPLE_CTRL_PROGRESSIVE_PR        (0xb << 12)
802 #define		VENC_UPSAMPLE_CTRL_PROGRESSIVE_R         (0xc << 12)
803 #define		VENC_UPSAMPLE_CTRL_PROGRESSIVE_G         (0xd << 12)
804 #define		VENC_UPSAMPLE_CTRL_PROGRESSIVE_B         (0xe << 12)
805 #define		VENC_UPSAMPLE_CTRL_VDAC_TEST_VALUE       (0xf << 12)
806 #define TCON_INVERT_CTL 0x1b67
807 #define VENC_VIDEO_PROG_MODE 0x1b68
808 #define VENC_ENCI_LINE 0x1b69
809 #define VENC_ENCI_PIXEL 0x1b6a
810 #define VENC_ENCP_LINE 0x1b6b
811 #define VENC_ENCP_PIXEL 0x1b6c
812 #define VENC_STATA 0x1b6d
813 #define VENC_INTCTRL 0x1b6e
814 #define		VENC_INTCTRL_ENCI_LNRST_INT_EN  BIT(1)
815 #define		VENC_INTCTRL_ENCP_LNRST_INT_EN  BIT(9)
816 #define VENC_INTFLAG 0x1b6f
817 #define VENC_VIDEO_TST_EN 0x1b70
818 #define VENC_VIDEO_TST_MDSEL 0x1b71
819 #define VENC_VIDEO_TST_Y 0x1b72
820 #define VENC_VIDEO_TST_CB 0x1b73
821 #define VENC_VIDEO_TST_CR 0x1b74
822 #define VENC_VIDEO_TST_CLRBAR_STRT 0x1b75
823 #define VENC_VIDEO_TST_CLRBAR_WIDTH 0x1b76
824 #define VENC_VIDEO_TST_VDCNT_STSET 0x1b77
825 #define VENC_VDAC_DACSEL0 0x1b78
826 #define		VENC_VDAC_SEL_ATV_DMD           BIT(5)
827 #define VENC_VDAC_DACSEL1 0x1b79
828 #define VENC_VDAC_DACSEL2 0x1b7a
829 #define VENC_VDAC_DACSEL3 0x1b7b
830 #define VENC_VDAC_DACSEL4 0x1b7c
831 #define VENC_VDAC_DACSEL5 0x1b7d
832 #define VENC_VDAC_SETTING 0x1b7e
833 #define VENC_VDAC_TST_VAL 0x1b7f
834 #define VENC_VDAC_DAC0_GAINCTRL 0x1bf0
835 #define VENC_VDAC_DAC0_OFFSET 0x1bf1
836 #define VENC_VDAC_DAC1_GAINCTRL 0x1bf2
837 #define VENC_VDAC_DAC1_OFFSET 0x1bf3
838 #define VENC_VDAC_DAC2_GAINCTRL 0x1bf4
839 #define VENC_VDAC_DAC2_OFFSET 0x1bf5
840 #define VENC_VDAC_DAC3_GAINCTRL 0x1bf6
841 #define VENC_VDAC_DAC3_OFFSET 0x1bf7
842 #define VENC_VDAC_DAC4_GAINCTRL 0x1bf8
843 #define VENC_VDAC_DAC4_OFFSET 0x1bf9
844 #define VENC_VDAC_DAC5_GAINCTRL 0x1bfa
845 #define VENC_VDAC_DAC5_OFFSET 0x1bfb
846 #define VENC_VDAC_FIFO_CTRL 0x1bfc
847 #define		VENC_VDAC_FIFO_EN_ENCI_ENABLE   BIT(13)
848 #define ENCL_TCON_INVERT_CTL 0x1bfd
849 #define ENCP_VIDEO_EN 0x1b80
850 #define ENCP_VIDEO_SYNC_MODE 0x1b81
851 #define ENCP_MACV_EN 0x1b82
852 #define ENCP_VIDEO_Y_SCL 0x1b83
853 #define ENCP_VIDEO_PB_SCL 0x1b84
854 #define ENCP_VIDEO_PR_SCL 0x1b85
855 #define ENCP_VIDEO_SYNC_SCL 0x1b86
856 #define ENCP_VIDEO_MACV_SCL 0x1b87
857 #define ENCP_VIDEO_Y_OFFST 0x1b88
858 #define ENCP_VIDEO_PB_OFFST 0x1b89
859 #define ENCP_VIDEO_PR_OFFST 0x1b8a
860 #define ENCP_VIDEO_SYNC_OFFST 0x1b8b
861 #define ENCP_VIDEO_MACV_OFFST 0x1b8c
862 #define ENCP_VIDEO_MODE 0x1b8d
863 #define		ENCP_VIDEO_MODE_DE_V_HIGH       BIT(14)
864 #define ENCP_VIDEO_MODE_ADV 0x1b8e
865 #define ENCP_DBG_PX_RST 0x1b90
866 #define ENCP_DBG_LN_RST 0x1b91
867 #define ENCP_DBG_PX_INT 0x1b92
868 #define ENCP_DBG_LN_INT 0x1b93
869 #define ENCP_VIDEO_YFP1_HTIME 0x1b94
870 #define ENCP_VIDEO_YFP2_HTIME 0x1b95
871 #define ENCP_VIDEO_YC_DLY 0x1b96
872 #define ENCP_VIDEO_MAX_PXCNT 0x1b97
873 #define ENCP_VIDEO_HSPULS_BEGIN 0x1b98
874 #define ENCP_VIDEO_HSPULS_END 0x1b99
875 #define ENCP_VIDEO_HSPULS_SWITCH 0x1b9a
876 #define ENCP_VIDEO_VSPULS_BEGIN 0x1b9b
877 #define ENCP_VIDEO_VSPULS_END 0x1b9c
878 #define ENCP_VIDEO_VSPULS_BLINE 0x1b9d
879 #define ENCP_VIDEO_VSPULS_ELINE 0x1b9e
880 #define ENCP_VIDEO_EQPULS_BEGIN 0x1b9f
881 #define ENCP_VIDEO_EQPULS_END 0x1ba0
882 #define ENCP_VIDEO_EQPULS_BLINE 0x1ba1
883 #define ENCP_VIDEO_EQPULS_ELINE 0x1ba2
884 #define ENCP_VIDEO_HAVON_END 0x1ba3
885 #define ENCP_VIDEO_HAVON_BEGIN 0x1ba4
886 #define ENCP_VIDEO_VAVON_ELINE 0x1baf
887 #define ENCP_VIDEO_VAVON_BLINE 0x1ba6
888 #define ENCP_VIDEO_HSO_BEGIN 0x1ba7
889 #define ENCP_VIDEO_HSO_END 0x1ba8
890 #define ENCP_VIDEO_VSO_BEGIN 0x1ba9
891 #define ENCP_VIDEO_VSO_END 0x1baa
892 #define ENCP_VIDEO_VSO_BLINE 0x1bab
893 #define ENCP_VIDEO_VSO_ELINE 0x1bac
894 #define ENCP_VIDEO_SYNC_WAVE_CURVE 0x1bad
895 #define ENCP_VIDEO_MAX_LNCNT 0x1bae
896 #define ENCP_VIDEO_SY_VAL 0x1bb0
897 #define ENCP_VIDEO_SY2_VAL 0x1bb1
898 #define ENCP_VIDEO_BLANKY_VAL 0x1bb2
899 #define ENCP_VIDEO_BLANKPB_VAL 0x1bb3
900 #define ENCP_VIDEO_BLANKPR_VAL 0x1bb4
901 #define ENCP_VIDEO_HOFFST 0x1bb5
902 #define ENCP_VIDEO_VOFFST 0x1bb6
903 #define ENCP_VIDEO_RGB_CTRL 0x1bb7
904 #define ENCP_VIDEO_FILT_CTRL 0x1bb8
905 #define ENCP_VIDEO_OFLD_VPEQ_OFST 0x1bb9
906 #define ENCP_VIDEO_OFLD_VOAV_OFST 0x1bba
907 #define ENCP_VIDEO_MATRIX_CB 0x1bbb
908 #define ENCP_VIDEO_MATRIX_CR 0x1bbc
909 #define ENCP_VIDEO_RGBIN_CTRL 0x1bbd
910 #define ENCP_MACV_BLANKY_VAL 0x1bc0
911 #define ENCP_MACV_MAXY_VAL 0x1bc1
912 #define ENCP_MACV_1ST_PSSYNC_STRT 0x1bc2
913 #define ENCP_MACV_PSSYNC_STRT 0x1bc3
914 #define ENCP_MACV_AGC_STRT 0x1bc4
915 #define ENCP_MACV_AGC_END 0x1bc5
916 #define ENCP_MACV_WAVE_END 0x1bc6
917 #define ENCP_MACV_STRTLINE 0x1bc7
918 #define ENCP_MACV_ENDLINE 0x1bc8
919 #define ENCP_MACV_TS_CNT_MAX_L 0x1bc9
920 #define ENCP_MACV_TS_CNT_MAX_H 0x1bca
921 #define ENCP_MACV_TIME_DOWN 0x1bcb
922 #define ENCP_MACV_TIME_LO 0x1bcc
923 #define ENCP_MACV_TIME_UP 0x1bcd
924 #define ENCP_MACV_TIME_RST 0x1bce
925 #define ENCP_VBI_CTRL 0x1bd0
926 #define ENCP_VBI_SETTING 0x1bd1
927 #define ENCP_VBI_BEGIN 0x1bd2
928 #define ENCP_VBI_WIDTH 0x1bd3
929 #define ENCP_VBI_HVAL 0x1bd4
930 #define ENCP_VBI_DATA0 0x1bd5
931 #define ENCP_VBI_DATA1 0x1bd6
932 #define C656_HS_ST 0x1be0
933 #define C656_HS_ED 0x1be1
934 #define C656_VS_LNST_E 0x1be2
935 #define C656_VS_LNST_O 0x1be3
936 #define C656_VS_LNED_E 0x1be4
937 #define C656_VS_LNED_O 0x1be5
938 #define C656_FS_LNST 0x1be6
939 #define C656_FS_LNED 0x1be7
940 #define ENCI_VIDEO_MODE 0x1b00
941 #define ENCI_VIDEO_MODE_ADV 0x1b01
942 #define		ENCI_VIDEO_MODE_ADV_DMXMD(val)          (val & 0x3)
943 #define		ENCI_VIDEO_MODE_ADV_VBICTL_LINE_17_22   BIT(2)
944 #define		ENCI_VIDEO_MODE_ADV_YBW_MEDIUM          (0 << 4)
945 #define		ENCI_VIDEO_MODE_ADV_YBW_LOW             (0x1 << 4)
946 #define		ENCI_VIDEO_MODE_ADV_YBW_HIGH            (0x2 << 4)
947 #define ENCI_VIDEO_FSC_ADJ 0x1b02
948 #define ENCI_VIDEO_BRIGHT 0x1b03
949 #define ENCI_VIDEO_CONT 0x1b04
950 #define ENCI_VIDEO_SAT 0x1b05
951 #define ENCI_VIDEO_HUE 0x1b06
952 #define ENCI_VIDEO_SCH 0x1b07
953 #define ENCI_SYNC_MODE 0x1b08
954 #define ENCI_SYNC_CTRL 0x1b09
955 #define ENCI_SYNC_HSO_BEGIN 0x1b0a
956 #define ENCI_SYNC_HSO_END 0x1b0b
957 #define ENCI_SYNC_VSO_EVN 0x1b0c
958 #define ENCI_SYNC_VSO_ODD 0x1b0d
959 #define ENCI_SYNC_VSO_EVNLN 0x1b0e
960 #define ENCI_SYNC_VSO_ODDLN 0x1b0f
961 #define ENCI_SYNC_HOFFST 0x1b10
962 #define ENCI_SYNC_VOFFST 0x1b11
963 #define ENCI_SYNC_ADJ 0x1b12
964 #define ENCI_RGB_SETTING 0x1b13
965 #define ENCI_DE_H_BEGIN 0x1b16
966 #define ENCI_DE_H_END 0x1b17
967 #define ENCI_DE_V_BEGIN_EVEN 0x1b18
968 #define ENCI_DE_V_END_EVEN 0x1b19
969 #define ENCI_DE_V_BEGIN_ODD 0x1b1a
970 #define ENCI_DE_V_END_ODD 0x1b1b
971 #define ENCI_VBI_SETTING 0x1b20
972 #define ENCI_VBI_CCDT_EVN 0x1b21
973 #define ENCI_VBI_CCDT_ODD 0x1b22
974 #define ENCI_VBI_CC525_LN 0x1b23
975 #define ENCI_VBI_CC625_LN 0x1b24
976 #define ENCI_VBI_WSSDT 0x1b25
977 #define ENCI_VBI_WSS_LN 0x1b26
978 #define ENCI_VBI_CGMSDT_L 0x1b27
979 #define ENCI_VBI_CGMSDT_H 0x1b28
980 #define ENCI_VBI_CGMS_LN 0x1b29
981 #define ENCI_VBI_TTX_HTIME 0x1b2a
982 #define ENCI_VBI_TTX_LN 0x1b2b
983 #define ENCI_VBI_TTXDT0 0x1b2c
984 #define ENCI_VBI_TTXDT1 0x1b2d
985 #define ENCI_VBI_TTXDT2 0x1b2e
986 #define ENCI_VBI_TTXDT3 0x1b2f
987 #define ENCI_MACV_N0 0x1b30
988 #define ENCI_MACV_N1 0x1b31
989 #define ENCI_MACV_N2 0x1b32
990 #define ENCI_MACV_N3 0x1b33
991 #define ENCI_MACV_N4 0x1b34
992 #define ENCI_MACV_N5 0x1b35
993 #define ENCI_MACV_N6 0x1b36
994 #define ENCI_MACV_N7 0x1b37
995 #define ENCI_MACV_N8 0x1b38
996 #define ENCI_MACV_N9 0x1b39
997 #define ENCI_MACV_N10 0x1b3a
998 #define ENCI_MACV_N11 0x1b3b
999 #define ENCI_MACV_N12 0x1b3c
1000 #define ENCI_MACV_N13 0x1b3d
1001 #define ENCI_MACV_N14 0x1b3e
1002 #define ENCI_MACV_N15 0x1b3f
1003 #define ENCI_MACV_N16 0x1b40
1004 #define ENCI_MACV_N17 0x1b41
1005 #define ENCI_MACV_N18 0x1b42
1006 #define ENCI_MACV_N19 0x1b43
1007 #define ENCI_MACV_N20 0x1b44
1008 #define ENCI_MACV_N21 0x1b45
1009 #define ENCI_MACV_N22 0x1b46
1010 #define ENCI_DBG_PX_RST 0x1b48
1011 #define ENCI_DBG_FLDLN_RST 0x1b49
1012 #define ENCI_DBG_PX_INT 0x1b4a
1013 #define ENCI_DBG_FLDLN_INT 0x1b4b
1014 #define ENCI_DBG_MAXPX 0x1b4c
1015 #define ENCI_DBG_MAXLN 0x1b4d
1016 #define ENCI_MACV_MAX_AMP 0x1b50
1017 #define		ENCI_MACV_MAX_AMP_ENABLE_CHANGE BIT(15)
1018 #define		ENCI_MACV_MAX_AMP_VAL(val)      (val & 0x83ff)
1019 #define ENCI_MACV_PULSE_LO 0x1b51
1020 #define ENCI_MACV_PULSE_HI 0x1b52
1021 #define ENCI_MACV_BKP_MAX 0x1b53
1022 #define ENCI_CFILT_CTRL 0x1b54
1023 #define		ENCI_CFILT_CMPT_SEL_HIGH        BIT(1)
1024 #define ENCI_CFILT7 0x1b55
1025 #define ENCI_YC_DELAY 0x1b56
1026 #define ENCI_VIDEO_EN 0x1b57
1027 #define		ENCI_VIDEO_EN_ENABLE            BIT(0)
1028 #define ENCI_DVI_HSO_BEGIN 0x1c00
1029 #define ENCI_DVI_HSO_END 0x1c01
1030 #define ENCI_DVI_VSO_BLINE_EVN 0x1c02
1031 #define ENCI_DVI_VSO_BLINE_ODD 0x1c03
1032 #define ENCI_DVI_VSO_ELINE_EVN 0x1c04
1033 #define ENCI_DVI_VSO_ELINE_ODD 0x1c05
1034 #define ENCI_DVI_VSO_BEGIN_EVN 0x1c06
1035 #define ENCI_DVI_VSO_BEGIN_ODD 0x1c07
1036 #define ENCI_DVI_VSO_END_EVN 0x1c08
1037 #define ENCI_DVI_VSO_END_ODD 0x1c09
1038 #define ENCI_CFILT_CTRL2 0x1c0a
1039 #define		ENCI_CFILT_CMPT_CR_DLY(delay)   (delay & 0xf)
1040 #define		ENCI_CFILT_CMPT_CB_DLY(delay)   ((delay & 0xf) << 4)
1041 #define		ENCI_CFILT_CVBS_CR_DLY(delay)   ((delay & 0xf) << 8)
1042 #define		ENCI_CFILT_CVBS_CB_DLY(delay)   ((delay & 0xf) << 12)
1043 #define ENCI_DACSEL_0 0x1c0b
1044 #define ENCI_DACSEL_1 0x1c0c
1045 #define ENCP_DACSEL_0 0x1c0d
1046 #define ENCP_DACSEL_1 0x1c0e
1047 #define ENCP_MAX_LINE_SWITCH_POINT 0x1c0f
1048 #define ENCI_TST_EN 0x1c10
1049 #define ENCI_TST_MDSEL 0x1c11
1050 #define ENCI_TST_Y 0x1c12
1051 #define ENCI_TST_CB 0x1c13
1052 #define ENCI_TST_CR 0x1c14
1053 #define ENCI_TST_CLRBAR_STRT 0x1c15
1054 #define ENCI_TST_CLRBAR_WIDTH 0x1c16
1055 #define ENCI_TST_VDCNT_STSET 0x1c17
1056 #define ENCI_VFIFO2VD_CTL 0x1c18
1057 #define		ENCI_VFIFO2VD_CTL_ENABLE        BIT(0)
1058 #define		ENCI_VFIFO2VD_CTL_VD_SEL(val)   ((val & 0xff) << 8)
1059 #define ENCI_VFIFO2VD_PIXEL_START 0x1c19
1060 #define ENCI_VFIFO2VD_PIXEL_END 0x1c1a
1061 #define ENCI_VFIFO2VD_LINE_TOP_START 0x1c1b
1062 #define ENCI_VFIFO2VD_LINE_TOP_END 0x1c1c
1063 #define ENCI_VFIFO2VD_LINE_BOT_START 0x1c1d
1064 #define ENCI_VFIFO2VD_LINE_BOT_END 0x1c1e
1065 #define ENCI_VFIFO2VD_CTL2 0x1c1f
1066 #define ENCT_VFIFO2VD_CTL 0x1c20
1067 #define ENCT_VFIFO2VD_PIXEL_START 0x1c21
1068 #define ENCT_VFIFO2VD_PIXEL_END 0x1c22
1069 #define ENCT_VFIFO2VD_LINE_TOP_START 0x1c23
1070 #define ENCT_VFIFO2VD_LINE_TOP_END 0x1c24
1071 #define ENCT_VFIFO2VD_LINE_BOT_START 0x1c25
1072 #define ENCT_VFIFO2VD_LINE_BOT_END 0x1c26
1073 #define ENCT_VFIFO2VD_CTL2 0x1c27
1074 #define ENCT_TST_EN 0x1c28
1075 #define ENCT_TST_MDSEL 0x1c29
1076 #define ENCT_TST_Y 0x1c2a
1077 #define ENCT_TST_CB 0x1c2b
1078 #define ENCT_TST_CR 0x1c2c
1079 #define ENCT_TST_CLRBAR_STRT 0x1c2d
1080 #define ENCT_TST_CLRBAR_WIDTH 0x1c2e
1081 #define ENCT_TST_VDCNT_STSET 0x1c2f
1082 #define ENCP_DVI_HSO_BEGIN 0x1c30
1083 #define ENCP_DVI_HSO_END 0x1c31
1084 #define ENCP_DVI_VSO_BLINE_EVN 0x1c32
1085 #define ENCP_DVI_VSO_BLINE_ODD 0x1c33
1086 #define ENCP_DVI_VSO_ELINE_EVN 0x1c34
1087 #define ENCP_DVI_VSO_ELINE_ODD 0x1c35
1088 #define ENCP_DVI_VSO_BEGIN_EVN 0x1c36
1089 #define ENCP_DVI_VSO_BEGIN_ODD 0x1c37
1090 #define ENCP_DVI_VSO_END_EVN 0x1c38
1091 #define ENCP_DVI_VSO_END_ODD 0x1c39
1092 #define ENCP_DE_H_BEGIN 0x1c3a
1093 #define ENCP_DE_H_END 0x1c3b
1094 #define ENCP_DE_V_BEGIN_EVEN 0x1c3c
1095 #define ENCP_DE_V_END_EVEN 0x1c3d
1096 #define ENCP_DE_V_BEGIN_ODD 0x1c3e
1097 #define ENCP_DE_V_END_ODD 0x1c3f
1098 #define ENCI_SYNC_LINE_LENGTH 0x1c40
1099 #define ENCI_SYNC_PIXEL_EN 0x1c41
1100 #define ENCI_SYNC_TO_LINE_EN 0x1c42
1101 #define ENCI_SYNC_TO_PIXEL 0x1c43
1102 #define ENCP_SYNC_LINE_LENGTH 0x1c44
1103 #define ENCP_SYNC_PIXEL_EN 0x1c45
1104 #define ENCP_SYNC_TO_LINE_EN 0x1c46
1105 #define ENCP_SYNC_TO_PIXEL 0x1c47
1106 #define ENCT_SYNC_LINE_LENGTH 0x1c48
1107 #define ENCT_SYNC_PIXEL_EN 0x1c49
1108 #define ENCT_SYNC_TO_LINE_EN 0x1c4a
1109 #define ENCT_SYNC_TO_PIXEL 0x1c4b
1110 #define ENCL_SYNC_LINE_LENGTH 0x1c4c
1111 #define ENCL_SYNC_PIXEL_EN 0x1c4d
1112 #define ENCL_SYNC_TO_LINE_EN 0x1c4e
1113 #define ENCL_SYNC_TO_PIXEL 0x1c4f
1114 #define ENCP_VFIFO2VD_CTL2 0x1c50
1115 #define VENC_DVI_SETTING_MORE 0x1c51
1116 #define VENC_VDAC_DAC4_FILT_CTRL0 0x1c54
1117 #define VENC_VDAC_DAC4_FILT_CTRL1 0x1c55
1118 #define VENC_VDAC_DAC5_FILT_CTRL0 0x1c56
1119 #define VENC_VDAC_DAC5_FILT_CTRL1 0x1c57
1120 #define VENC_VDAC_DAC0_FILT_CTRL0 0x1c58
1121 #define		VENC_VDAC_DAC0_FILT_CTRL0_EN    BIT(0)
1122 #define VENC_VDAC_DAC0_FILT_CTRL1 0x1c59
1123 #define VENC_VDAC_DAC1_FILT_CTRL0 0x1c5a
1124 #define VENC_VDAC_DAC1_FILT_CTRL1 0x1c5b
1125 #define VENC_VDAC_DAC2_FILT_CTRL0 0x1c5c
1126 #define VENC_VDAC_DAC2_FILT_CTRL1 0x1c5d
1127 #define VENC_VDAC_DAC3_FILT_CTRL0 0x1c5e
1128 #define VENC_VDAC_DAC3_FILT_CTRL1 0x1c5f
1129 #define ENCT_VIDEO_EN 0x1c60
1130 #define ENCT_VIDEO_Y_SCL 0x1c61
1131 #define ENCT_VIDEO_PB_SCL 0x1c62
1132 #define ENCT_VIDEO_PR_SCL 0x1c63
1133 #define ENCT_VIDEO_Y_OFFST 0x1c64
1134 #define ENCT_VIDEO_PB_OFFST 0x1c65
1135 #define ENCT_VIDEO_PR_OFFST 0x1c66
1136 #define ENCT_VIDEO_MODE 0x1c67
1137 #define ENCT_VIDEO_MODE_ADV 0x1c68
1138 #define ENCT_DBG_PX_RST 0x1c69
1139 #define ENCT_DBG_LN_RST 0x1c6a
1140 #define ENCT_DBG_PX_INT 0x1c6b
1141 #define ENCT_DBG_LN_INT 0x1c6c
1142 #define ENCT_VIDEO_YFP1_HTIME 0x1c6d
1143 #define ENCT_VIDEO_YFP2_HTIME 0x1c6e
1144 #define ENCT_VIDEO_YC_DLY 0x1c6f
1145 #define ENCT_VIDEO_MAX_PXCNT 0x1c70
1146 #define ENCT_VIDEO_HAVON_END 0x1c71
1147 #define ENCT_VIDEO_HAVON_BEGIN 0x1c72
1148 #define ENCT_VIDEO_VAVON_ELINE 0x1c73
1149 #define ENCT_VIDEO_VAVON_BLINE 0x1c74
1150 #define ENCT_VIDEO_HSO_BEGIN 0x1c75
1151 #define ENCT_VIDEO_HSO_END 0x1c76
1152 #define ENCT_VIDEO_VSO_BEGIN 0x1c77
1153 #define ENCT_VIDEO_VSO_END 0x1c78
1154 #define ENCT_VIDEO_VSO_BLINE 0x1c79
1155 #define ENCT_VIDEO_VSO_ELINE 0x1c7a
1156 #define ENCT_VIDEO_MAX_LNCNT 0x1c7b
1157 #define ENCT_VIDEO_BLANKY_VAL 0x1c7c
1158 #define ENCT_VIDEO_BLANKPB_VAL 0x1c7d
1159 #define ENCT_VIDEO_BLANKPR_VAL 0x1c7e
1160 #define ENCT_VIDEO_HOFFST 0x1c7f
1161 #define ENCT_VIDEO_VOFFST 0x1c80
1162 #define ENCT_VIDEO_RGB_CTRL 0x1c81
1163 #define ENCT_VIDEO_FILT_CTRL 0x1c82
1164 #define ENCT_VIDEO_OFLD_VPEQ_OFST 0x1c83
1165 #define ENCT_VIDEO_OFLD_VOAV_OFST 0x1c84
1166 #define ENCT_VIDEO_MATRIX_CB 0x1c85
1167 #define ENCT_VIDEO_MATRIX_CR 0x1c86
1168 #define ENCT_VIDEO_RGBIN_CTRL 0x1c87
1169 #define ENCT_MAX_LINE_SWITCH_POINT 0x1c88
1170 #define ENCT_DACSEL_0 0x1c89
1171 #define ENCT_DACSEL_1 0x1c8a
1172 #define ENCL_VFIFO2VD_CTL 0x1c90
1173 #define ENCL_VFIFO2VD_PIXEL_START 0x1c91
1174 #define ENCL_VFIFO2VD_PIXEL_END 0x1c92
1175 #define ENCL_VFIFO2VD_LINE_TOP_START 0x1c93
1176 #define ENCL_VFIFO2VD_LINE_TOP_END 0x1c94
1177 #define ENCL_VFIFO2VD_LINE_BOT_START 0x1c95
1178 #define ENCL_VFIFO2VD_LINE_BOT_END 0x1c96
1179 #define ENCL_VFIFO2VD_CTL2 0x1c97
1180 #define ENCL_TST_EN 0x1c98
1181 #define ENCL_TST_MDSEL 0x1c99
1182 #define ENCL_TST_Y 0x1c9a
1183 #define ENCL_TST_CB 0x1c9b
1184 #define ENCL_TST_CR 0x1c9c
1185 #define ENCL_TST_CLRBAR_STRT 0x1c9d
1186 #define ENCL_TST_CLRBAR_WIDTH 0x1c9e
1187 #define ENCL_TST_VDCNT_STSET 0x1c9f
1188 #define ENCL_VIDEO_EN 0x1ca0
1189 #define ENCL_VIDEO_Y_SCL 0x1ca1
1190 #define ENCL_VIDEO_PB_SCL 0x1ca2
1191 #define ENCL_VIDEO_PR_SCL 0x1ca3
1192 #define ENCL_VIDEO_Y_OFFST 0x1ca4
1193 #define ENCL_VIDEO_PB_OFFST 0x1ca5
1194 #define ENCL_VIDEO_PR_OFFST 0x1ca6
1195 #define ENCL_VIDEO_MODE 0x1ca7
1196 #define		ENCL_PX_LN_CNT_SHADOW_EN	BIT(15)
1197 #define ENCL_VIDEO_MODE_ADV 0x1ca8
1198 #define		ENCL_VIDEO_MODE_ADV_VFIFO_EN	BIT(3)
1199 #define		ENCL_VIDEO_MODE_ADV_GAIN_HDTV	BIT(4)
1200 #define		ENCL_SEL_GAMMA_RGB_IN		BIT(10)
1201 #define ENCL_DBG_PX_RST 0x1ca9
1202 #define ENCL_DBG_LN_RST 0x1caa
1203 #define ENCL_DBG_PX_INT 0x1cab
1204 #define ENCL_DBG_LN_INT 0x1cac
1205 #define ENCL_VIDEO_YFP1_HTIME 0x1cad
1206 #define ENCL_VIDEO_YFP2_HTIME 0x1cae
1207 #define ENCL_VIDEO_YC_DLY 0x1caf
1208 #define ENCL_VIDEO_MAX_PXCNT 0x1cb0
1209 #define ENCL_VIDEO_HAVON_END 0x1cb1
1210 #define ENCL_VIDEO_HAVON_BEGIN 0x1cb2
1211 #define ENCL_VIDEO_VAVON_ELINE 0x1cb3
1212 #define ENCL_VIDEO_VAVON_BLINE 0x1cb4
1213 #define ENCL_VIDEO_HSO_BEGIN 0x1cb5
1214 #define ENCL_VIDEO_HSO_END 0x1cb6
1215 #define ENCL_VIDEO_VSO_BEGIN 0x1cb7
1216 #define ENCL_VIDEO_VSO_END 0x1cb8
1217 #define ENCL_VIDEO_VSO_BLINE 0x1cb9
1218 #define ENCL_VIDEO_VSO_ELINE 0x1cba
1219 #define ENCL_VIDEO_MAX_LNCNT 0x1cbb
1220 #define ENCL_VIDEO_BLANKY_VAL 0x1cbc
1221 #define ENCL_VIDEO_BLANKPB_VAL 0x1cbd
1222 #define ENCL_VIDEO_BLANKPR_VAL 0x1cbe
1223 #define ENCL_VIDEO_HOFFST 0x1cbf
1224 #define ENCL_VIDEO_VOFFST 0x1cc0
1225 #define ENCL_VIDEO_RGB_CTRL 0x1cc1
1226 #define ENCL_VIDEO_FILT_CTRL 0x1cc2
1227 #define		ENCL_VIDEO_FILT_CTRL_BYPASS_FILTER	BIT(12)
1228 #define ENCL_VIDEO_OFLD_VPEQ_OFST 0x1cc3
1229 #define ENCL_VIDEO_OFLD_VOAV_OFST 0x1cc4
1230 #define ENCL_VIDEO_MATRIX_CB 0x1cc5
1231 #define ENCL_VIDEO_MATRIX_CR 0x1cc6
1232 #define ENCL_VIDEO_RGBIN_CTRL 0x1cc7
1233 #define		ENCL_VIDEO_RGBIN_RGB	BIT(0)
1234 #define		ENCL_VIDEO_RGBIN_ZBLK	BIT(1)
1235 #define ENCL_MAX_LINE_SWITCH_POINT 0x1cc8
1236 #define ENCL_DACSEL_0 0x1cc9
1237 #define ENCL_DACSEL_1 0x1cca
1238 #define RDMA_AHB_START_ADDR_MAN 0x1100
1239 #define RDMA_AHB_END_ADDR_MAN 0x1101
1240 #define RDMA_AHB_START_ADDR_1 0x1102
1241 #define RDMA_AHB_END_ADDR_1 0x1103
1242 #define RDMA_AHB_START_ADDR_2 0x1104
1243 #define RDMA_AHB_END_ADDR_2 0x1105
1244 #define RDMA_AHB_START_ADDR_3 0x1106
1245 #define RDMA_AHB_END_ADDR_3 0x1107
1246 #define RDMA_AHB_START_ADDR_4 0x1108
1247 #define RDMA_AHB_END_ADDR_4 0x1109
1248 #define RDMA_AHB_START_ADDR_5 0x110a
1249 #define RDMA_AHB_END_ADDR_5 0x110b
1250 #define RDMA_AHB_START_ADDR_6 0x110c
1251 #define RDMA_AHB_END_ADDR_6 0x110d
1252 #define RDMA_AHB_START_ADDR_7 0x110e
1253 #define RDMA_AHB_END_ADDR_7 0x110f
1254 #define RDMA_ACCESS_AUTO 0x1110
1255 #define		RDMA_ACCESS_TRIGGER_CHAN3	GENMASK(31, 24)
1256 #define		RDMA_ACCESS_TRIGGER_CHAN2	GENMASK(23, 16)
1257 #define		RDMA_ACCESS_TRIGGER_CHAN1	GENMASK(15, 8)
1258 #define		RDMA_ACCESS_TRIGGER_STOP	0
1259 #define		RDMA_ACCESS_TRIGGER_VSYNC	1
1260 #define		RDMA_ACCESS_TRIGGER_LINE	32
1261 #define		RDMA_ACCESS_RW_FLAG_CHAN3	BIT(7)
1262 #define		RDMA_ACCESS_RW_FLAG_CHAN2	BIT(6)
1263 #define		RDMA_ACCESS_RW_FLAG_CHAN1	BIT(5)
1264 #define		RDMA_ACCESS_ADDR_INC_CHAN3	BIT(3)
1265 #define		RDMA_ACCESS_ADDR_INC_CHAN2	BIT(2)
1266 #define		RDMA_ACCESS_ADDR_INC_CHAN1	BIT(1)
1267 #define RDMA_ACCESS_AUTO2 0x1111
1268 #define		RDMA_ACCESS_RW_FLAG_CHAN7	BIT(7)
1269 #define		RDMA_ACCESS_RW_FLAG_CHAN6	BIT(6)
1270 #define		RDMA_ACCESS_RW_FLAG_CHAN5	BIT(5)
1271 #define		RDMA_ACCESS_RW_FLAG_CHAN4	BIT(4)
1272 #define		RDMA_ACCESS_ADDR_INC_CHAN7	BIT(3)
1273 #define		RDMA_ACCESS_ADDR_INC_CHAN6	BIT(2)
1274 #define		RDMA_ACCESS_ADDR_INC_CHAN5	BIT(1)
1275 #define		RDMA_ACCESS_ADDR_INC_CHAN4	BIT(0)
1276 #define RDMA_ACCESS_AUTO3 0x1112
1277 #define		RDMA_ACCESS_TRIGGER_CHAN7	GENMASK(31, 24)
1278 #define		RDMA_ACCESS_TRIGGER_CHAN6	GENMASK(23, 16)
1279 #define		RDMA_ACCESS_TRIGGER_CHAN5	GENMASK(15, 8)
1280 #define		RDMA_ACCESS_TRIGGER_CHAN4	GENMASK(7, 0)
1281 #define RDMA_ACCESS_MAN 0x1113
1282 #define		RDMA_ACCESS_MAN_RW_FLAG		BIT(2)
1283 #define		RDMA_ACCESS_MAN_ADDR_INC	BIT(1)
1284 #define		RDMA_ACCESS_MAN_START		BIT(0)
1285 #define RDMA_CTRL 0x1114
1286 #define		RDMA_IRQ_CLEAR_CHAN7	BIT(31)
1287 #define		RDMA_IRQ_CLEAR_CHAN6	BIT(30)
1288 #define		RDMA_IRQ_CLEAR_CHAN5	BIT(29)
1289 #define		RDMA_IRQ_CLEAR_CHAN4	BIT(28)
1290 #define		RDMA_IRQ_CLEAR_CHAN3	BIT(27)
1291 #define		RDMA_IRQ_CLEAR_CHAN2	BIT(26)
1292 #define		RDMA_IRQ_CLEAR_CHAN1	BIT(25)
1293 #define		RDMA_IRQ_CLEAR_CHAN_MAN	BIT(24)
1294 #define		RDMA_DEFAULT_CONFIG	(BIT(7) | BIT(6))
1295 #define		RDMA_CTRL_AHB_WR_BURST	GENMASK(5, 4)
1296 #define		RDMA_CTRL_AHB_RD_BURST	GENMASK(3, 2)
1297 #define		RDMA_CTRL_SW_RESET	BIT(1)
1298 #define		RDMA_CTRL_FREE_CLK_EN	BIT(0)
1299 #define RDMA_STATUS 0x1115
1300 #define		RDMA_IRQ_STAT_CHAN7	BIT(31)
1301 #define		RDMA_IRQ_STAT_CHAN6	BIT(30)
1302 #define		RDMA_IRQ_STAT_CHAN5	BIT(29)
1303 #define		RDMA_IRQ_STAT_CHAN4	BIT(28)
1304 #define		RDMA_IRQ_STAT_CHAN3	BIT(27)
1305 #define		RDMA_IRQ_STAT_CHAN2	BIT(26)
1306 #define		RDMA_IRQ_STAT_CHAN1	BIT(25)
1307 #define		RDMA_IRQ_STAT_CHAN_MAN	BIT(24)
1308 #define RDMA_STATUS2 0x1116
1309 #define RDMA_STATUS3 0x1117
1310 #define L_GAMMA_CNTL_PORT 0x1400
1311 #define		L_GAMMA_CNTL_PORT_VCOM_POL	BIT(7)	/* RW */
1312 #define		L_GAMMA_CNTL_PORT_RVS_OUT	BIT(6)	/* RW */
1313 #define		L_GAMMA_CNTL_PORT_ADR_RDY	BIT(5)	/* Read Only */
1314 #define		L_GAMMA_CNTL_PORT_WR_RDY	BIT(4)	/* Read Only */
1315 #define		L_GAMMA_CNTL_PORT_RD_RDY	BIT(3)	/* Read Only */
1316 #define		L_GAMMA_CNTL_PORT_TR		BIT(2)	/* RW */
1317 #define		L_GAMMA_CNTL_PORT_SET		BIT(1)	/* RW */
1318 #define		L_GAMMA_CNTL_PORT_EN		BIT(0)	/* RW */
1319 #define L_GAMMA_DATA_PORT 0x1401
1320 #define L_GAMMA_ADDR_PORT 0x1402
1321 #define		L_GAMMA_ADDR_PORT_RD		BIT(12)
1322 #define		L_GAMMA_ADDR_PORT_AUTO_INC	BIT(11)
1323 #define		L_GAMMA_ADDR_PORT_SEL_R		BIT(10)
1324 #define		L_GAMMA_ADDR_PORT_SEL_G		BIT(9)
1325 #define		L_GAMMA_ADDR_PORT_SEL_B		BIT(8)
1326 #define		L_GAMMA_ADDR_PORT_ADDR		GENMASK(7, 0)
1327 #define L_GAMMA_VCOM_HSWITCH_ADDR 0x1403
1328 #define L_RGB_BASE_ADDR 0x1405
1329 #define L_RGB_COEFF_ADDR 0x1406
1330 #define L_POL_CNTL_ADDR 0x1407
1331 #define L_DITH_CNTL_ADDR 0x1408
1332 #define		L_DITH_CNTL_DITH10_EN	BIT(10)
1333 #define L_GAMMA_PROBE_CTRL 0x1409
1334 #define L_GAMMA_PROBE_COLOR_L 0x140a
1335 #define L_GAMMA_PROBE_COLOR_H 0x140b
1336 #define L_GAMMA_PROBE_HL_COLOR 0x140c
1337 #define L_GAMMA_PROBE_POS_X 0x140d
1338 #define L_GAMMA_PROBE_POS_Y 0x140e
1339 #define L_STH1_HS_ADDR 0x1410
1340 #define L_STH1_HE_ADDR 0x1411
1341 #define L_STH1_VS_ADDR 0x1412
1342 #define L_STH1_VE_ADDR 0x1413
1343 #define L_STH2_HS_ADDR 0x1414
1344 #define L_STH2_HE_ADDR 0x1415
1345 #define L_STH2_VS_ADDR 0x1416
1346 #define L_STH2_VE_ADDR 0x1417
1347 #define L_OEH_HS_ADDR 0x1418
1348 #define L_OEH_HE_ADDR 0x1419
1349 #define L_OEH_VS_ADDR 0x141a
1350 #define L_OEH_VE_ADDR 0x141b
1351 #define L_VCOM_HSWITCH_ADDR 0x141c
1352 #define L_VCOM_VS_ADDR 0x141d
1353 #define L_VCOM_VE_ADDR 0x141e
1354 #define L_CPV1_HS_ADDR 0x141f
1355 #define L_CPV1_HE_ADDR 0x1420
1356 #define L_CPV1_VS_ADDR 0x1421
1357 #define L_CPV1_VE_ADDR 0x1422
1358 #define L_CPV2_HS_ADDR 0x1423
1359 #define L_CPV2_HE_ADDR 0x1424
1360 #define L_CPV2_VS_ADDR 0x1425
1361 #define L_CPV2_VE_ADDR 0x1426
1362 #define L_STV1_HS_ADDR 0x1427
1363 #define L_STV1_HE_ADDR 0x1428
1364 #define L_STV1_VS_ADDR 0x1429
1365 #define L_STV1_VE_ADDR 0x142a
1366 #define L_STV2_HS_ADDR 0x142b
1367 #define L_STV2_HE_ADDR 0x142c
1368 #define L_STV2_VS_ADDR 0x142d
1369 #define L_STV2_VE_ADDR 0x142e
1370 #define L_OEV1_HS_ADDR 0x142f
1371 #define L_OEV1_HE_ADDR 0x1430
1372 #define L_OEV1_VS_ADDR 0x1431
1373 #define L_OEV1_VE_ADDR 0x1432
1374 #define L_OEV2_HS_ADDR 0x1433
1375 #define L_OEV2_HE_ADDR 0x1434
1376 #define L_OEV2_VS_ADDR 0x1435
1377 #define L_OEV2_VE_ADDR 0x1436
1378 #define L_OEV3_HS_ADDR 0x1437
1379 #define L_OEV3_HE_ADDR 0x1438
1380 #define L_OEV3_VS_ADDR 0x1439
1381 #define L_OEV3_VE_ADDR 0x143a
1382 #define L_LCD_PWR_ADDR 0x143b
1383 #define L_LCD_PWM0_LO_ADDR 0x143c
1384 #define L_LCD_PWM0_HI_ADDR 0x143d
1385 #define L_LCD_PWM1_LO_ADDR 0x143e
1386 #define L_LCD_PWM1_HI_ADDR 0x143f
1387 #define L_INV_CNT_ADDR 0x1440
1388 #define L_TCON_MISC_SEL_ADDR 0x1441
1389 #define		L_TCON_MISC_SEL_STV1	BIT(4)
1390 #define		L_TCON_MISC_SEL_STV2	BIT(5)
1391 #define L_DUAL_PORT_CNTL_ADDR 0x1442
1392 #define MLVDS_CLK_CTL1_HI 0x1443
1393 #define MLVDS_CLK_CTL1_LO 0x1444
1394 #define L_TCON_DOUBLE_CTL 0x1449
1395 #define L_TCON_PATTERN_HI 0x144a
1396 #define L_TCON_PATTERN_LO 0x144b
1397 #define LDIM_BL_ADDR_PORT 0x144e
1398 #define LDIM_BL_DATA_PORT 0x144f
1399 #define L_DE_HS_ADDR 0x1451
1400 #define L_DE_HE_ADDR 0x1452
1401 #define L_DE_VS_ADDR 0x1453
1402 #define L_DE_VE_ADDR 0x1454
1403 #define L_HSYNC_HS_ADDR 0x1455
1404 #define L_HSYNC_HE_ADDR 0x1456
1405 #define L_HSYNC_VS_ADDR 0x1457
1406 #define L_HSYNC_VE_ADDR 0x1458
1407 #define L_VSYNC_HS_ADDR 0x1459
1408 #define L_VSYNC_HE_ADDR 0x145a
1409 #define L_VSYNC_VS_ADDR 0x145b
1410 #define L_VSYNC_VE_ADDR 0x145c
1411 #define L_LCD_MCU_CTL 0x145d
1412 #define DUAL_MLVDS_CTL 0x1460
1413 #define DUAL_MLVDS_LINE_START 0x1461
1414 #define DUAL_MLVDS_LINE_END 0x1462
1415 #define DUAL_MLVDS_PIXEL_W_START_L 0x1463
1416 #define DUAL_MLVDS_PIXEL_W_END_L 0x1464
1417 #define DUAL_MLVDS_PIXEL_W_START_R 0x1465
1418 #define DUAL_MLVDS_PIXEL_W_END_R 0x1466
1419 #define DUAL_MLVDS_PIXEL_R_START_L 0x1467
1420 #define DUAL_MLVDS_PIXEL_R_CNT_L 0x1468
1421 #define DUAL_MLVDS_PIXEL_R_START_R 0x1469
1422 #define DUAL_MLVDS_PIXEL_R_CNT_R 0x146a
1423 #define V_INVERSION_PIXEL 0x1470
1424 #define V_INVERSION_LINE 0x1471
1425 #define V_INVERSION_CONTROL 0x1472
1426 #define MLVDS2_CONTROL 0x1474
1427 #define MLVDS2_CONFIG_HI 0x1475
1428 #define MLVDS2_CONFIG_LO 0x1476
1429 #define MLVDS2_DUAL_GATE_WR_START 0x1477
1430 #define MLVDS2_DUAL_GATE_WR_END 0x1478
1431 #define MLVDS2_DUAL_GATE_RD_START 0x1479
1432 #define MLVDS2_DUAL_GATE_RD_END 0x147a
1433 #define MLVDS2_SECOND_RESET_CTL 0x147b
1434 #define MLVDS2_DUAL_GATE_CTL_HI 0x147c
1435 #define MLVDS2_DUAL_GATE_CTL_LO 0x147d
1436 #define MLVDS2_RESET_CONFIG_HI 0x147e
1437 #define MLVDS2_RESET_CONFIG_LO 0x147f
1438 #define GAMMA_CNTL_PORT 0x1480
1439 #define GAMMA_DATA_PORT 0x1481
1440 #define GAMMA_ADDR_PORT 0x1482
1441 #define GAMMA_VCOM_HSWITCH_ADDR 0x1483
1442 #define RGB_BASE_ADDR 0x1485
1443 #define RGB_COEFF_ADDR 0x1486
1444 #define POL_CNTL_ADDR 0x1487
1445 #define DITH_CNTL_ADDR 0x1488
1446 #define GAMMA_PROBE_CTRL 0x1489
1447 #define GAMMA_PROBE_COLOR_L 0x148a
1448 #define GAMMA_PROBE_COLOR_H 0x148b
1449 #define GAMMA_PROBE_HL_COLOR 0x148c
1450 #define GAMMA_PROBE_POS_X 0x148d
1451 #define GAMMA_PROBE_POS_Y 0x148e
1452 #define STH1_HS_ADDR 0x1490
1453 #define STH1_HE_ADDR 0x1491
1454 #define STH1_VS_ADDR 0x1492
1455 #define STH1_VE_ADDR 0x1493
1456 #define STH2_HS_ADDR 0x1494
1457 #define STH2_HE_ADDR 0x1495
1458 #define STH2_VS_ADDR 0x1496
1459 #define STH2_VE_ADDR 0x1497
1460 #define OEH_HS_ADDR 0x1498
1461 #define OEH_HE_ADDR 0x1499
1462 #define OEH_VS_ADDR 0x149a
1463 #define OEH_VE_ADDR 0x149b
1464 #define VCOM_HSWITCH_ADDR 0x149c
1465 #define VCOM_VS_ADDR 0x149d
1466 #define VCOM_VE_ADDR 0x149e
1467 #define CPV1_HS_ADDR 0x149f
1468 #define CPV1_HE_ADDR 0x14a0
1469 #define CPV1_VS_ADDR 0x14a1
1470 #define CPV1_VE_ADDR 0x14a2
1471 #define CPV2_HS_ADDR 0x14a3
1472 #define CPV2_HE_ADDR 0x14a4
1473 #define CPV2_VS_ADDR 0x14a5
1474 #define CPV2_VE_ADDR 0x14a6
1475 #define STV1_HS_ADDR 0x14a7
1476 #define STV1_HE_ADDR 0x14a8
1477 #define STV1_VS_ADDR 0x14a9
1478 #define STV1_VE_ADDR 0x14aa
1479 #define STV2_HS_ADDR 0x14ab
1480 #define STV2_HE_ADDR 0x14ac
1481 #define STV2_VS_ADDR 0x14ad
1482 #define STV2_VE_ADDR 0x14ae
1483 #define OEV1_HS_ADDR 0x14af
1484 #define OEV1_HE_ADDR 0x14b0
1485 #define OEV1_VS_ADDR 0x14b1
1486 #define OEV1_VE_ADDR 0x14b2
1487 #define OEV2_HS_ADDR 0x14b3
1488 #define OEV2_HE_ADDR 0x14b4
1489 #define OEV2_VS_ADDR 0x14b5
1490 #define OEV2_VE_ADDR 0x14b6
1491 #define OEV3_HS_ADDR 0x14b7
1492 #define OEV3_HE_ADDR 0x14b8
1493 #define OEV3_VS_ADDR 0x14b9
1494 #define OEV3_VE_ADDR 0x14ba
1495 #define LCD_PWR_ADDR 0x14bb
1496 #define LCD_PWM0_LO_ADDR 0x14bc
1497 #define LCD_PWM0_HI_ADDR 0x14bd
1498 #define LCD_PWM1_LO_ADDR 0x14be
1499 #define LCD_PWM1_HI_ADDR 0x14bf
1500 #define INV_CNT_ADDR 0x14c0
1501 #define TCON_MISC_SEL_ADDR 0x14c1
1502 #define DUAL_PORT_CNTL_ADDR 0x14c2
1503 #define MLVDS_CONTROL 0x14c3
1504 #define MLVDS_RESET_PATTERN_HI 0x14c4
1505 #define MLVDS_RESET_PATTERN_LO 0x14c5
1506 #define MLVDS_RESET_PATTERN_EXT 0x14c6
1507 #define MLVDS_CONFIG_HI 0x14c7
1508 #define MLVDS_CONFIG_LO 0x14c8
1509 #define TCON_DOUBLE_CTL 0x14c9
1510 #define TCON_PATTERN_HI 0x14ca
1511 #define TCON_PATTERN_LO 0x14cb
1512 #define TCON_CONTROL_HI 0x14cc
1513 #define TCON_CONTROL_LO 0x14cd
1514 #define LVDS_BLANK_DATA_HI 0x14ce
1515 #define LVDS_BLANK_DATA_LO 0x14cf
1516 #define LVDS_PACK_CNTL_ADDR 0x14d0
1517 #define DE_HS_ADDR 0x14d1
1518 #define DE_HE_ADDR 0x14d2
1519 #define DE_VS_ADDR 0x14d3
1520 #define DE_VE_ADDR 0x14d4
1521 #define HSYNC_HS_ADDR 0x14d5
1522 #define HSYNC_HE_ADDR 0x14d6
1523 #define HSYNC_VS_ADDR 0x14d7
1524 #define HSYNC_VE_ADDR 0x14d8
1525 #define VSYNC_HS_ADDR 0x14d9
1526 #define VSYNC_HE_ADDR 0x14da
1527 #define VSYNC_VS_ADDR 0x14db
1528 #define VSYNC_VE_ADDR 0x14dc
1529 #define LCD_MCU_CTL 0x14dd
1530 #define LCD_MCU_DATA_0 0x14de
1531 #define LCD_MCU_DATA_1 0x14df
1532 #define LVDS_GEN_CNTL 0x14e0
1533 #define LVDS_PHY_CNTL0 0x14e1
1534 #define LVDS_PHY_CNTL1 0x14e2
1535 #define LVDS_PHY_CNTL2 0x14e3
1536 #define LVDS_PHY_CNTL3 0x14e4
1537 #define LVDS_PHY_CNTL4 0x14e5
1538 #define LVDS_PHY_CNTL5 0x14e6
1539 #define LVDS_SRG_TEST 0x14e8
1540 #define LVDS_BIST_MUX0 0x14e9
1541 #define LVDS_BIST_MUX1 0x14ea
1542 #define LVDS_BIST_FIXED0 0x14eb
1543 #define LVDS_BIST_FIXED1 0x14ec
1544 #define LVDS_BIST_CNTL0 0x14ed
1545 #define LVDS_CLKB_CLKA 0x14ee
1546 #define LVDS_PHY_CLK_CNTL 0x14ef
1547 #define LVDS_SER_EN 0x14f0
1548 #define LVDS_PHY_CNTL6 0x14f1
1549 #define LVDS_PHY_CNTL7 0x14f2
1550 #define LVDS_PHY_CNTL8 0x14f3
1551 #define MLVDS_CLK_CTL0_HI 0x14f4
1552 #define MLVDS_CLK_CTL0_LO 0x14f5
1553 #define MLVDS_DUAL_GATE_WR_START 0x14f6
1554 #define MLVDS_DUAL_GATE_WR_END 0x14f7
1555 #define MLVDS_DUAL_GATE_RD_START 0x14f8
1556 #define MLVDS_DUAL_GATE_RD_END 0x14f9
1557 #define MLVDS_SECOND_RESET_CTL 0x14fa
1558 #define MLVDS_DUAL_GATE_CTL_HI 0x14fb
1559 #define MLVDS_DUAL_GATE_CTL_LO 0x14fc
1560 #define MLVDS_RESET_CONFIG_HI 0x14fd
1561 #define MLVDS_RESET_CONFIG_LO 0x14fe
1562 #define VPU_OSD1_MMC_CTRL 0x2701
1563 #define VPU_OSD2_MMC_CTRL 0x2702
1564 #define VPU_VD1_MMC_CTRL 0x2703
1565 #define VPU_VD2_MMC_CTRL 0x2704
1566 #define VPU_DI_IF1_MMC_CTRL 0x2705
1567 #define VPU_DI_MEM_MMC_CTRL 0x2706
1568 #define VPU_DI_INP_MMC_CTRL 0x2707
1569 #define VPU_DI_MTNRD_MMC_CTRL 0x2708
1570 #define VPU_DI_CHAN2_MMC_CTRL 0x2709
1571 #define VPU_DI_MTNWR_MMC_CTRL 0x270a
1572 #define VPU_DI_NRWR_MMC_CTRL 0x270b
1573 #define VPU_DI_DIWR_MMC_CTRL 0x270c
1574 #define VPU_VDIN0_MMC_CTRL 0x270d
1575 #define VPU_VDIN1_MMC_CTRL 0x270e
1576 #define VPU_BT656_MMC_CTRL 0x270f
1577 #define VPU_TVD3D_MMC_CTRL 0x2710
1578 #define VPU_TVDVBI_MMC_CTRL 0x2711
1579 #define VPU_TVDVBI_VSLATCH_ADDR 0x2712
1580 #define VPU_TVDVBI_WRRSP_ADDR 0x2713
1581 #define VPU_VDIN_PRE_ARB_CTRL 0x2714
1582 #define VPU_VDISP_PRE_ARB_CTRL 0x2715
1583 #define VPU_VPUARB2_PRE_ARB_CTRL 0x2716
1584 #define VPU_OSD3_MMC_CTRL 0x2717
1585 #define VPU_OSD4_MMC_CTRL 0x2718
1586 #define VPU_VD3_MMC_CTRL 0x2719
1587 #define VPU_VIU_VENC_MUX_CTRL 0x271a
1588 #define		VIU1_SEL_VENC_MASK	0x3
1589 #define		VIU1_SEL_VENC_ENCL	0
1590 #define		VIU1_SEL_VENC_ENCI	1
1591 #define		VIU1_SEL_VENC_ENCP	2
1592 #define		VIU1_SEL_VENC_ENCT	3
1593 #define		VIU2_SEL_VENC_MASK	0xc
1594 #define		VIU2_SEL_VENC_ENCL	0
1595 #define		VIU2_SEL_VENC_ENCI	(1 << 2)
1596 #define		VIU2_SEL_VENC_ENCP	(2 << 2)
1597 #define		VIU2_SEL_VENC_ENCT	(3 << 2)
1598 #define VPU_HDMI_SETTING 0x271b
1599 #define		VPU_HDMI_ENCI_DATA_TO_HDMI      BIT(0)
1600 #define		VPU_HDMI_ENCP_DATA_TO_HDMI      BIT(1)
1601 #define		VPU_HDMI_INV_HSYNC              BIT(2)
1602 #define		VPU_HDMI_INV_VSYNC              BIT(3)
1603 #define		VPU_HDMI_OUTPUT_CRYCB           (0 << 5)
1604 #define		VPU_HDMI_OUTPUT_YCBCR           (1 << 5)
1605 #define		VPU_HDMI_OUTPUT_YCRCB           (2 << 5)
1606 #define		VPU_HDMI_OUTPUT_CBCRY           (3 << 5)
1607 #define		VPU_HDMI_OUTPUT_CBYCR           (4 << 5)
1608 #define		VPU_HDMI_OUTPUT_CRCBY           (5 << 5)
1609 #define		VPU_HDMI_WR_RATE(rate)          (((rate & 0x1f) - 1) << 8)
1610 #define		VPU_HDMI_RD_RATE(rate)          (((rate & 0x1f) - 1) << 12)
1611 #define ENCI_INFO_READ 0x271c
1612 #define ENCP_INFO_READ 0x271d
1613 #define ENCT_INFO_READ 0x271e
1614 #define ENCL_INFO_READ 0x271f
1615 #define VPU_SW_RESET 0x2720
1616 #define VPU_D2D3_MMC_CTRL 0x2721
1617 #define VPU_CONT_MMC_CTRL 0x2722
1618 #define VPU_CLK_GATE 0x2723
1619 #define VPU_RDMA_MMC_CTRL 0x2724
1620 #define VPU_MEM_PD_REG0 0x2725
1621 #define VPU_MEM_PD_REG1 0x2726
1622 #define VPU_HDMI_DATA_OVR 0x2727
1623 #define VPU_PROT1_MMC_CTRL 0x2728
1624 #define VPU_PROT2_MMC_CTRL 0x2729
1625 #define VPU_PROT3_MMC_CTRL 0x272a
1626 #define VPU_ARB4_V1_MMC_CTRL 0x272b
1627 #define VPU_ARB4_V2_MMC_CTRL 0x272c
1628 #define VPU_VPU_PWM_V0 0x2730
1629 #define VPU_VPU_PWM_V1 0x2731
1630 #define VPU_VPU_PWM_V2 0x2732
1631 #define VPU_VPU_PWM_V3 0x2733
1632 #define VPU_VPU_PWM_H0 0x2734
1633 #define VPU_VPU_PWM_H1 0x2735
1634 #define VPU_VPU_PWM_H2 0x2736
1635 #define VPU_VPU_PWM_H3 0x2737
1636 #define VPU_MISC_CTRL 0x2740
1637 #define VPU_ISP_GCLK_CTRL0 0x2741
1638 #define VPU_ISP_GCLK_CTRL1 0x2742
1639 #define VPU_HDMI_FMT_CTRL 0x2743
1640 #define VPU_VDIN_ASYNC_HOLD_CTRL 0x2743
1641 #define VPU_VDISP_ASYNC_HOLD_CTRL 0x2744
1642 #define VPU_VPUARB2_ASYNC_HOLD_CTRL 0x2745
1643 
1644 #define VPU_PROT1_CLK_GATE 0x2750
1645 #define VPU_PROT1_GEN_CNTL 0x2751
1646 #define VPU_PROT1_X_START_END 0x2752
1647 #define VPU_PROT1_Y_START_END 0x2753
1648 #define VPU_PROT1_Y_LEN_STEP 0x2754
1649 #define VPU_PROT1_RPT_LOOP 0x2755
1650 #define VPU_PROT1_RPT_PAT 0x2756
1651 #define VPU_PROT1_DDR 0x2757
1652 #define VPU_PROT1_RBUF_ROOM 0x2758
1653 #define VPU_PROT1_STAT_0 0x2759
1654 #define VPU_PROT1_STAT_1 0x275a
1655 #define VPU_PROT1_STAT_2 0x275b
1656 #define VPU_PROT1_REQ_ONOFF 0x275c
1657 #define VPU_PROT2_CLK_GATE 0x2760
1658 #define VPU_PROT2_GEN_CNTL 0x2761
1659 #define VPU_PROT2_X_START_END 0x2762
1660 #define VPU_PROT2_Y_START_END 0x2763
1661 #define VPU_PROT2_Y_LEN_STEP 0x2764
1662 #define VPU_PROT2_RPT_LOOP 0x2765
1663 #define VPU_PROT2_RPT_PAT 0x2766
1664 #define VPU_PROT2_DDR 0x2767
1665 #define VPU_PROT2_RBUF_ROOM 0x2768
1666 #define VPU_PROT2_STAT_0 0x2769
1667 #define VPU_PROT2_STAT_1 0x276a
1668 #define VPU_PROT2_STAT_2 0x276b
1669 #define VPU_PROT2_REQ_ONOFF 0x276c
1670 #define VPU_PROT3_CLK_GATE 0x2770
1671 #define VPU_PROT3_GEN_CNTL 0x2771
1672 #define VPU_PROT3_X_START_END 0x2772
1673 #define VPU_PROT3_Y_START_END 0x2773
1674 #define VPU_PROT3_Y_LEN_STEP 0x2774
1675 #define VPU_PROT3_RPT_LOOP 0x2775
1676 #define VPU_PROT3_RPT_PAT 0x2776
1677 #define VPU_PROT3_DDR 0x2777
1678 #define VPU_PROT3_RBUF_ROOM 0x2778
1679 #define VPU_PROT3_STAT_0 0x2779
1680 #define VPU_PROT3_STAT_1 0x277a
1681 #define VPU_PROT3_STAT_2 0x277b
1682 #define VPU_PROT3_REQ_ONOFF 0x277c
1683 #define VPU_RDARB_MODE_L1C1 0x2790
1684 #define VPU_RDARB_MODE_L1C2 0x2799
1685 #define VPU_RDARB_MODE_L2C1 0x279d
1686 #define VPU_WRARB_MODE_L2C1 0x27a2
1687 #define		VPU_RDARB_SLAVE_TO_MASTER_PORT(dc, port) (port << (16 + dc))
1688 
1689 /* osd super scale */
1690 #define OSDSR_HV_SIZEIN 0x3130
1691 #define OSDSR_CTRL_MODE 0x3131
1692 #define OSDSR_ABIC_HCOEF 0x3132
1693 #define OSDSR_YBIC_HCOEF 0x3133
1694 #define OSDSR_CBIC_HCOEF 0x3134
1695 #define OSDSR_ABIC_VCOEF 0x3135
1696 #define OSDSR_YBIC_VCOEF 0x3136
1697 #define OSDSR_CBIC_VCOEF 0x3137
1698 #define OSDSR_VAR_PARA 0x3138
1699 #define OSDSR_CONST_PARA 0x3139
1700 #define OSDSR_RKE_EXTWIN 0x313a
1701 #define OSDSR_UK_GRAD2DDIAG_TH_RATE 0x313b
1702 #define OSDSR_UK_GRAD2DDIAG_LIMIT 0x313c
1703 #define OSDSR_UK_GRAD2DADJA_TH_RATE 0x313d
1704 #define OSDSR_UK_GRAD2DADJA_LIMIT 0x313e
1705 #define OSDSR_UK_BST_GAIN 0x313f
1706 #define OSDSR_HVBLEND_TH 0x3140
1707 #define OSDSR_DEMO_WIND_TB 0x3141
1708 #define OSDSR_DEMO_WIND_LR 0x3142
1709 #define OSDSR_INT_BLANK_NUM 0x3143
1710 #define OSDSR_FRM_END_STAT 0x3144
1711 #define OSDSR_ABIC_HCOEF0 0x3145
1712 #define OSDSR_YBIC_HCOEF0 0x3146
1713 #define OSDSR_CBIC_HCOEF0 0x3147
1714 #define OSDSR_ABIC_VCOEF0 0x3148
1715 #define OSDSR_YBIC_VCOEF0 0x3149
1716 #define OSDSR_CBIC_VCOEF0 0x314a
1717 
1718 /* osd afbcd on gxtvbb */
1719 #define OSD1_AFBCD_ENABLE 0x31a0
1720 #define		OSD1_AFBCD_ID_FIFO_THRD			GENMASK(15, 9)
1721 #define		OSD1_AFBCD_DEC_ENABLE			BIT(8)
1722 #define		OSD1_AFBCD_FRM_START			BIT(0)
1723 #define OSD1_AFBCD_MODE 0x31a1
1724 #define		OSD1_AFBCD_SOFT_RESET			BIT(31)
1725 #define		OSD1_AFBCD_AXI_REORDER_MODE		BIT(28)
1726 #define		OSD1_AFBCD_MIF_URGENT			GENMASK(25, 24)
1727 #define		OSD1_AFBCD_HOLD_LINE_NUM		GENMASK(22, 16)
1728 #define		OSD1_AFBCD_RGBA_EXCHAN_CTRL		GENMASK(15, 8)
1729 #define		OSD1_AFBCD_HREG_BLOCK_SPLIT		BIT(6)
1730 #define		OSD1_AFBCD_HREG_HALF_BLOCK		BIT(5)
1731 #define		OSD1_AFBCD_HREG_PIXEL_PACKING_FMT	GENMASK(4, 0)
1732 #define OSD1_AFBCD_SIZE_IN 0x31a2
1733 #define		OSD1_AFBCD_HREG_VSIZE_IN		GENMASK(31, 16)
1734 #define		OSD1_AFBCD_HREG_HSIZE_IN		GENMASK(15, 0)
1735 #define OSD1_AFBCD_HDR_PTR 0x31a3
1736 #define OSD1_AFBCD_FRAME_PTR 0x31a4
1737 #define OSD1_AFBCD_CHROMA_PTR 0x31a5
1738 #define OSD1_AFBCD_CONV_CTRL 0x31a6
1739 #define		OSD1_AFBCD_CONV_LBUF_LEN		GENMASK(15, 0)
1740 #define OSD1_AFBCD_STATUS 0x31a8
1741 #define OSD1_AFBCD_PIXEL_HSCOPE 0x31a9
1742 #define		OSD1_AFBCD_DEC_PIXEL_BGN_H		GENMASK(31, 16)
1743 #define		OSD1_AFBCD_DEC_PIXEL_END_H		GENMASK(15, 0)
1744 #define OSD1_AFBCD_PIXEL_VSCOPE 0x31aa
1745 #define		OSD1_AFBCD_DEC_PIXEL_BGN_V		GENMASK(31, 16)
1746 #define		OSD1_AFBCD_DEC_PIXEL_END_V		GENMASK(15, 0)
1747 
1748 /* add for gxm and 962e dv core2 */
1749 #define DOLBY_CORE2A_SWAP_CTRL1	0x3434
1750 #define DOLBY_CORE2A_SWAP_CTRL2	0x3435
1751 
1752 /* osd afbc on g12a */
1753 #define VPU_MAFBC_BLOCK_ID 0x3a00
1754 #define VPU_MAFBC_IRQ_RAW_STATUS 0x3a01
1755 #define VPU_MAFBC_IRQ_CLEAR 0x3a02
1756 #define VPU_MAFBC_IRQ_MASK 0x3a03
1757 #define VPU_MAFBC_IRQ_STATUS 0x3a04
1758 #define		VPU_MAFBC_IRQ_SECURE_ID_ERROR		BIT(5)
1759 #define		VPU_MAFBC_IRQ_AXI_ERROR			BIT(4)
1760 #define		VPU_MAFBC_IRQ_DETILING_ERROR		BIT(3)
1761 #define		VPU_MAFBC_IRQ_DECODE_ERROR		BIT(2)
1762 #define		VPU_MAFBC_IRQ_CONFIGURATION_SWAPPED	BIT(1)
1763 #define		VPU_MAFBC_IRQ_SURFACES_COMPLETED	BIT(0)
1764 #define VPU_MAFBC_COMMAND 0x3a05
1765 #define		VPU_MAFBC_PENDING_SWAP	BIT(1)
1766 #define		VPU_MAFBC_DIRECT_SWAP	BIT(0)
1767 #define VPU_MAFBC_STATUS 0x3a06
1768 #define		VPU_MAFBC_ERROR		BIT(2)
1769 #define		VPU_MAFBC_SWAPPING	BIT(1)
1770 #define		VPU_MAFBC_ACTIVE	BIT(0)
1771 #define VPU_MAFBC_SURFACE_CFG 0x3a07
1772 #define		VPU_MAFBC_CONTINUOUS_DECODING_ENABLE	BIT(16)
1773 #define		VPU_MAFBC_S3_ENABLE			BIT(3)
1774 #define		VPU_MAFBC_S2_ENABLE			BIT(2)
1775 #define		VPU_MAFBC_S1_ENABLE			BIT(1)
1776 #define		VPU_MAFBC_S0_ENABLE			BIT(0)
1777 #define VPU_MAFBC_HEADER_BUF_ADDR_LOW_S0 0x3a10
1778 #define VPU_MAFBC_HEADER_BUF_ADDR_HIGH_S0 0x3a11
1779 #define VPU_MAFBC_FORMAT_SPECIFIER_S0 0x3a12
1780 #define		VPU_MAFBC_PAYLOAD_LIMIT_EN	BIT(19)
1781 #define		VPU_MAFBC_TILED_HEADER_EN	BIT(18)
1782 #define		VPU_MAFBC_SUPER_BLOCK_ASPECT	GENMASK(17, 16)
1783 #define		VPU_MAFBC_BLOCK_SPLIT		BIT(9)
1784 #define		VPU_MAFBC_YUV_TRANSFORM		BIT(8)
1785 #define		VPU_MAFBC_PIXEL_FORMAT		GENMASK(3, 0)
1786 #define VPU_MAFBC_BUFFER_WIDTH_S0 0x3a13
1787 #define VPU_MAFBC_BUFFER_HEIGHT_S0 0x3a14
1788 #define VPU_MAFBC_BOUNDING_BOX_X_START_S0 0x3a15
1789 #define VPU_MAFBC_BOUNDING_BOX_X_END_S0 0x3a16
1790 #define VPU_MAFBC_BOUNDING_BOX_Y_START_S0 0x3a17
1791 #define VPU_MAFBC_BOUNDING_BOX_Y_END_S0 0x3a18
1792 #define VPU_MAFBC_OUTPUT_BUF_ADDR_LOW_S0 0x3a19
1793 #define VPU_MAFBC_OUTPUT_BUF_ADDR_HIGH_S0 0x3a1a
1794 #define VPU_MAFBC_OUTPUT_BUF_STRIDE_S0 0x3a1b
1795 #define VPU_MAFBC_PREFETCH_CFG_S0 0x3a1c
1796 #define		VPU_MAFBC_PREFETCH_READ_DIRECTION_Y	BIT(1)
1797 #define		VPU_MAFBC_PREFETCH_READ_DIRECTION_X	BIT(0)
1798 
1799 #define VPU_MAFBC_HEADER_BUF_ADDR_LOW_S1 0x3a30
1800 #define VPU_MAFBC_HEADER_BUF_ADDR_HIGH_S1 0x3a31
1801 #define VPU_MAFBC_FORMAT_SPECIFIER_S1 0x3a32
1802 #define VPU_MAFBC_BUFFER_WIDTH_S1 0x3a33
1803 #define VPU_MAFBC_BUFFER_HEIGHT_S1 0x3a34
1804 #define VPU_MAFBC_BOUNDING_BOX_X_START_S1 0x3a35
1805 #define VPU_MAFBC_BOUNDING_BOX_X_END_S1 0x3a36
1806 #define VPU_MAFBC_BOUNDING_BOX_Y_START_S1 0x3a37
1807 #define VPU_MAFBC_BOUNDING_BOX_Y_END_S1 0x3a38
1808 #define VPU_MAFBC_OUTPUT_BUF_ADDR_LOW_S1 0x3a39
1809 #define VPU_MAFBC_OUTPUT_BUF_ADDR_HIGH_S1 0x3a3a
1810 #define VPU_MAFBC_OUTPUT_BUF_STRIDE_S1 0x3a3b
1811 #define VPU_MAFBC_PREFETCH_CFG_S1 0x3a3c
1812 
1813 #define VPU_MAFBC_HEADER_BUF_ADDR_LOW_S2 0x3a50
1814 #define VPU_MAFBC_HEADER_BUF_ADDR_HIGH_S2 0x3a51
1815 #define VPU_MAFBC_FORMAT_SPECIFIER_S2 0x3a52
1816 #define VPU_MAFBC_BUFFER_WIDTH_S2 0x3a53
1817 #define VPU_MAFBC_BUFFER_HEIGHT_S2 0x3a54
1818 #define VPU_MAFBC_BOUNDING_BOX_X_START_S2 0x3a55
1819 #define VPU_MAFBC_BOUNDING_BOX_X_END_S2 0x3a56
1820 #define VPU_MAFBC_BOUNDING_BOX_Y_START_S2 0x3a57
1821 #define VPU_MAFBC_BOUNDING_BOX_Y_END_S2 0x3a58
1822 #define VPU_MAFBC_OUTPUT_BUF_ADDR_LOW_S2 0x3a59
1823 #define VPU_MAFBC_OUTPUT_BUF_ADDR_HIGH_S2 0x3a5a
1824 #define VPU_MAFBC_OUTPUT_BUF_STRIDE_S2 0x3a5b
1825 #define VPU_MAFBC_PREFETCH_CFG_S2 0x3a5c
1826 
1827 #define VPU_MAFBC_HEADER_BUF_ADDR_LOW_S3 0x3a70
1828 #define VPU_MAFBC_HEADER_BUF_ADDR_HIGH_S3 0x3a71
1829 #define VPU_MAFBC_FORMAT_SPECIFIER_S3 0x3a72
1830 #define VPU_MAFBC_BUFFER_WIDTH_S3 0x3a73
1831 #define VPU_MAFBC_BUFFER_HEIGHT_S3 0x3a74
1832 #define VPU_MAFBC_BOUNDING_BOX_X_START_S3 0x3a75
1833 #define VPU_MAFBC_BOUNDING_BOX_X_END_S3 0x3a76
1834 #define VPU_MAFBC_BOUNDING_BOX_Y_START_S3 0x3a77
1835 #define VPU_MAFBC_BOUNDING_BOX_Y_END_S3 0x3a78
1836 #define VPU_MAFBC_OUTPUT_BUF_ADDR_LOW_S3 0x3a79
1837 #define VPU_MAFBC_OUTPUT_BUF_ADDR_HIGH_S3 0x3a7a
1838 #define VPU_MAFBC_OUTPUT_BUF_STRIDE_S3 0x3a7b
1839 #define VPU_MAFBC_PREFETCH_CFG_S3 0x3a7c
1840 
1841 #define DOLBY_PATH_CTRL 0x1a0c
1842 #define		DOLBY_BYPASS_EN(val)            (val & 0xf)
1843 #define OSD_PATH_MISC_CTRL 0x1a0e
1844 #define		OSD_PATH_OSD_AXI_SEL_OSD1_AFBCD	BIT(4)
1845 #define		OSD_PATH_OSD_AXI_SEL_OSD2_AFBCD	BIT(5)
1846 #define		OSD_PATH_OSD_AXI_SEL_OSD3_AFBCD	BIT(6)
1847 #define MALI_AFBCD_TOP_CTRL 0x1a0f
1848 #define		MALI_AFBCD_MANUAL_RESET		BIT(23)
1849 
1850 #define VIU_OSD_BLEND_CTRL 0x39b0
1851 #define		VIU_OSD_BLEND_REORDER(dest, src)      ((src) << (dest * 4))
1852 #define		VIU_OSD_BLEND_DIN_EN(bits)            ((bits & 0xf) << 20)
1853 #define		VIU_OSD_BLEND1_DIN3_BYPASS_TO_DOUT1   BIT(24)
1854 #define		VIU_OSD_BLEND1_DOUT_BYPASS_TO_BLEND2  BIT(25)
1855 #define		VIU_OSD_BLEND_DIN0_BYPASS_TO_DOUT0    BIT(26)
1856 #define		VIU_OSD_BLEND_BLEN2_PREMULT_EN(input) ((input & 0x3) << 27)
1857 #define		VIU_OSD_BLEND_HOLD_LINES(lines)       ((lines & 0x7) << 29)
1858 #define VIU_OSD_BLEND_CTRL1 0x39c0
1859 #define VIU_OSD_BLEND_DIN0_SCOPE_H 0x39b1
1860 #define VIU_OSD_BLEND_DIN0_SCOPE_V 0x39b2
1861 #define VIU_OSD_BLEND_DIN1_SCOPE_H 0x39b3
1862 #define VIU_OSD_BLEND_DIN1_SCOPE_V 0x39b4
1863 #define VIU_OSD_BLEND_DIN2_SCOPE_H 0x39b5
1864 #define VIU_OSD_BLEND_DIN2_SCOPE_V 0x39b6
1865 #define VIU_OSD_BLEND_DIN3_SCOPE_H 0x39b7
1866 #define VIU_OSD_BLEND_DIN3_SCOPE_V 0x39b8
1867 #define VIU_OSD_BLEND_DUMMY_DATA0 0x39b9
1868 #define VIU_OSD_BLEND_DUMMY_ALPHA 0x39ba
1869 #define VIU_OSD_BLEND_BLEND0_SIZE 0x39bb
1870 #define VIU_OSD_BLEND_BLEND1_SIZE 0x39bc
1871 #define VIU_OSD_BLEND_RO_CURRENT_XY 0x39bf
1872 
1873 #define VPP_OUT_H_V_SIZE 0x1da5
1874 
1875 #define VPP_VD2_HDR_IN_SIZE 0x1df0
1876 #define VPP_OSD1_IN_SIZE 0x1df1
1877 #define VPP_GCLK_CTRL2 0x1df2
1878 #define VD2_PPS_DUMMY_DATA 0x1df4
1879 #define VPP_OSD1_BLD_H_SCOPE 0x1df5
1880 #define VPP_OSD1_BLD_V_SCOPE 0x1df6
1881 #define VPP_OSD2_BLD_H_SCOPE 0x1df7
1882 #define VPP_OSD2_BLD_V_SCOPE 0x1df8
1883 #define VPP_WRBAK_CTRL 0x1df9
1884 #define VPP_SLEEP_CTRL 0x1dfa
1885 #define VD1_BLEND_SRC_CTRL 0x1dfb
1886 #define VD2_BLEND_SRC_CTRL 0x1dfc
1887 #define		VD_BLEND_PREBLD_SRC_VD1         (1 << 0)
1888 #define		VD_BLEND_PREBLD_SRC_VD2         (2 << 0)
1889 #define		VD_BLEND_PREBLD_SRC_OSD1        (3 << 0)
1890 #define		VD_BLEND_PREBLD_SRC_OSD2        (4 << 0)
1891 #define		VD_BLEND_PREBLD_PREMULT_EN      BIT(4)
1892 #define		VD_BLEND_POSTBLD_SRC_VD1        (1 << 8)
1893 #define		VD_BLEND_POSTBLD_SRC_VD2        (2 << 8)
1894 #define		VD_BLEND_POSTBLD_SRC_OSD1       (3 << 8)
1895 #define		VD_BLEND_POSTBLD_SRC_OSD2       (4 << 8)
1896 #define		VD_BLEND_POSTBLD_PREMULT_EN     BIT(16)
1897 #define OSD1_BLEND_SRC_CTRL 0x1dfd
1898 #define OSD2_BLEND_SRC_CTRL 0x1dfe
1899 #define		OSD_BLEND_POSTBLD_SRC_VD1       (1 << 8)
1900 #define		OSD_BLEND_POSTBLD_SRC_VD2       (2 << 8)
1901 #define		OSD_BLEND_POSTBLD_SRC_OSD1      (3 << 8)
1902 #define		OSD_BLEND_POSTBLD_SRC_OSD2      (4 << 8)
1903 #define		OSD_BLEND_PATH_SEL_ENABLE       BIT(20)
1904 
1905 #define VPP_POST_BLEND_BLEND_DUMMY_DATA 0x3968
1906 #define VPP_POST_BLEND_DUMMY_ALPHA 0x3969
1907 #define VPP_RDARB_MODE 0x3978
1908 #define VPP_RDARB_REQEN_SLV 0x3979
1909 
1910 #endif /* __MESON_REGISTERS_H */
1911