xref: /rk3399_rockchip-uboot/drivers/video/drm/rockchip_vop_reg.h (revision b899f9cc52a89a296bb7fb20ae923e9dd77b13a8)
1186f8572SMark Yao /*
2186f8572SMark Yao  * (C) Copyright 2008-2017 Fuzhou Rockchip Electronics Co., Ltd
3186f8572SMark Yao  *
4186f8572SMark Yao  * SPDX-License-Identifier:	GPL-2.0+
5186f8572SMark Yao  */
6186f8572SMark Yao 
7186f8572SMark Yao #ifndef _ROCKCHIP_VOP_REG_H
8186f8572SMark Yao #define _ROCKCHIP_VOP_REG_H
9186f8572SMark Yao 
10186f8572SMark Yao /* rk3288 register definition */
11186f8572SMark Yao #define RK3288_REG_CFG_DONE			0x0000
12186f8572SMark Yao #define RK3288_VERSION_INFO			0x0004
13186f8572SMark Yao #define RK3288_SYS_CTRL				0x0008
14186f8572SMark Yao #define RK3288_SYS_CTRL1			0x000c
15186f8572SMark Yao #define RK3288_DSP_CTRL0			0x0010
16186f8572SMark Yao #define RK3288_DSP_CTRL1			0x0014
17186f8572SMark Yao #define RK3288_DSP_BG				0x0018
18186f8572SMark Yao #define RK3288_MCU_CTRL				0x001c
19186f8572SMark Yao #define RK3288_INTR_CTRL0			0x0020
20186f8572SMark Yao #define RK3288_INTR_CTRL1			0x0024
21186f8572SMark Yao #define RK3288_WIN0_CTRL0			0x0030
22186f8572SMark Yao #define RK3288_WIN0_CTRL1			0x0034
23186f8572SMark Yao #define RK3288_WIN0_COLOR_KEY			0x0038
24186f8572SMark Yao #define RK3288_WIN0_VIR				0x003c
25186f8572SMark Yao #define RK3288_WIN0_YRGB_MST			0x0040
26186f8572SMark Yao #define RK3288_WIN0_CBR_MST			0x0044
27186f8572SMark Yao #define RK3288_WIN0_ACT_INFO			0x0048
28186f8572SMark Yao #define RK3288_WIN0_DSP_INFO			0x004c
29186f8572SMark Yao #define RK3288_WIN0_DSP_ST			0x0050
30186f8572SMark Yao #define RK3288_WIN0_SCL_FACTOR_YRGB		0x0054
31186f8572SMark Yao #define RK3288_WIN0_SCL_FACTOR_CBR		0x0058
32186f8572SMark Yao #define RK3288_WIN0_SCL_OFFSET			0x005c
33186f8572SMark Yao #define RK3288_WIN0_SRC_ALPHA_CTRL		0x0060
34186f8572SMark Yao #define RK3288_WIN0_DST_ALPHA_CTRL		0x0064
35186f8572SMark Yao #define RK3288_WIN0_FADING_CTRL			0x0068
36186f8572SMark Yao 
37186f8572SMark Yao /* win1 register */
38186f8572SMark Yao #define RK3288_WIN1_CTRL0			0x0070
39186f8572SMark Yao #define RK3288_WIN1_CTRL1			0x0074
40186f8572SMark Yao #define RK3288_WIN1_COLOR_KEY			0x0078
41186f8572SMark Yao #define RK3288_WIN1_VIR				0x007c
42186f8572SMark Yao #define RK3288_WIN1_YRGB_MST			0x0080
43186f8572SMark Yao #define RK3288_WIN1_CBR_MST			0x0084
44186f8572SMark Yao #define RK3288_WIN1_ACT_INFO			0x0088
45186f8572SMark Yao #define RK3288_WIN1_DSP_INFO			0x008c
46186f8572SMark Yao #define RK3288_WIN1_DSP_ST			0x0090
47186f8572SMark Yao #define RK3288_WIN1_SCL_FACTOR_YRGB		0x0094
48186f8572SMark Yao #define RK3288_WIN1_SCL_FACTOR_CBR		0x0098
49186f8572SMark Yao #define RK3288_WIN1_SCL_OFFSET			0x009c
50186f8572SMark Yao #define RK3288_WIN1_SRC_ALPHA_CTRL		0x00a0
51186f8572SMark Yao #define RK3288_WIN1_DST_ALPHA_CTRL		0x00a4
52186f8572SMark Yao #define RK3288_WIN1_FADING_CTRL			0x00a8
53186f8572SMark Yao /* win2 register */
54186f8572SMark Yao #define RK3288_WIN2_CTRL0			0x00b0
55186f8572SMark Yao #define RK3288_WIN2_CTRL1			0x00b4
56186f8572SMark Yao #define RK3288_WIN2_VIR0_1			0x00b8
57186f8572SMark Yao #define RK3288_WIN2_VIR2_3			0x00bc
58186f8572SMark Yao #define RK3288_WIN2_MST0			0x00c0
59186f8572SMark Yao #define RK3288_WIN2_DSP_INFO0			0x00c4
60186f8572SMark Yao #define RK3288_WIN2_DSP_ST0			0x00c8
61186f8572SMark Yao #define RK3288_WIN2_COLOR_KEY			0x00cc
62186f8572SMark Yao #define RK3288_WIN2_MST1			0x00d0
63186f8572SMark Yao #define RK3288_WIN2_DSP_INFO1			0x00d4
64186f8572SMark Yao #define RK3288_WIN2_DSP_ST1			0x00d8
65186f8572SMark Yao #define RK3288_WIN2_SRC_ALPHA_CTRL		0x00dc
66186f8572SMark Yao #define RK3288_WIN2_MST2			0x00e0
67186f8572SMark Yao #define RK3288_WIN2_DSP_INFO2			0x00e4
68186f8572SMark Yao #define RK3288_WIN2_DSP_ST2			0x00e8
69186f8572SMark Yao #define RK3288_WIN2_DST_ALPHA_CTRL		0x00ec
70186f8572SMark Yao #define RK3288_WIN2_MST3			0x00f0
71186f8572SMark Yao #define RK3288_WIN2_DSP_INFO3			0x00f4
72186f8572SMark Yao #define RK3288_WIN2_DSP_ST3			0x00f8
73186f8572SMark Yao #define RK3288_WIN2_FADING_CTRL			0x00fc
74186f8572SMark Yao /* win3 register */
75186f8572SMark Yao #define RK3288_WIN3_CTRL0			0x0100
76186f8572SMark Yao #define RK3288_WIN3_CTRL1			0x0104
77186f8572SMark Yao #define RK3288_WIN3_VIR0_1			0x0108
78186f8572SMark Yao #define RK3288_WIN3_VIR2_3			0x010c
79186f8572SMark Yao #define RK3288_WIN3_MST0			0x0110
80186f8572SMark Yao #define RK3288_WIN3_DSP_INFO0			0x0114
81186f8572SMark Yao #define RK3288_WIN3_DSP_ST0			0x0118
82186f8572SMark Yao #define RK3288_WIN3_COLOR_KEY			0x011c
83186f8572SMark Yao #define RK3288_WIN3_MST1			0x0120
84186f8572SMark Yao #define RK3288_WIN3_DSP_INFO1			0x0124
85186f8572SMark Yao #define RK3288_WIN3_DSP_ST1			0x0128
86186f8572SMark Yao #define RK3288_WIN3_SRC_ALPHA_CTRL		0x012c
87186f8572SMark Yao #define RK3288_WIN3_MST2			0x0130
88186f8572SMark Yao #define RK3288_WIN3_DSP_INFO2			0x0134
89186f8572SMark Yao #define RK3288_WIN3_DSP_ST2			0x0138
90186f8572SMark Yao #define RK3288_WIN3_DST_ALPHA_CTRL		0x013c
91186f8572SMark Yao #define RK3288_WIN3_MST3			0x0140
92186f8572SMark Yao #define RK3288_WIN3_DSP_INFO3			0x0144
93186f8572SMark Yao #define RK3288_WIN3_DSP_ST3			0x0148
94186f8572SMark Yao #define RK3288_WIN3_FADING_CTRL			0x014c
95186f8572SMark Yao /* hwc register */
96186f8572SMark Yao #define RK3288_HWC_CTRL0			0x0150
97186f8572SMark Yao #define RK3288_HWC_CTRL1			0x0154
98186f8572SMark Yao #define RK3288_HWC_MST				0x0158
99186f8572SMark Yao #define RK3288_HWC_DSP_ST			0x015c
100186f8572SMark Yao #define RK3288_HWC_SRC_ALPHA_CTRL		0x0160
101186f8572SMark Yao #define RK3288_HWC_DST_ALPHA_CTRL		0x0164
102186f8572SMark Yao #define RK3288_HWC_FADING_CTRL			0x0168
103186f8572SMark Yao /* post process register */
104186f8572SMark Yao #define RK3288_POST_DSP_HACT_INFO		0x0170
105186f8572SMark Yao #define RK3288_POST_DSP_VACT_INFO		0x0174
106186f8572SMark Yao #define RK3288_POST_SCL_FACTOR_YRGB		0x0178
107186f8572SMark Yao #define RK3288_POST_SCL_CTRL			0x0180
108186f8572SMark Yao #define RK3288_POST_DSP_VACT_INFO_F1		0x0184
109186f8572SMark Yao #define RK3288_DSP_HTOTAL_HS_END		0x0188
110186f8572SMark Yao #define RK3288_DSP_HACT_ST_END			0x018c
111186f8572SMark Yao #define RK3288_DSP_VTOTAL_VS_END		0x0190
112186f8572SMark Yao #define RK3288_DSP_VACT_ST_END			0x0194
113186f8572SMark Yao #define RK3288_DSP_VS_ST_END_F1			0x0198
114186f8572SMark Yao #define RK3288_DSP_VACT_ST_END_F1		0x019c
11579feefb1SSandy Huang 
11679feefb1SSandy Huang #define RK3288_BCSH_COLOR_BAR			0x01b0
11779feefb1SSandy Huang #define RK3288_BCSH_BCS				0x01b4
11879feefb1SSandy Huang #define RK3288_BCSH_H				0x01b8
1193a06149eSSandy Huang #define RK3288_GRF_SOC_CON15			0x03a4
1206b898587SDamon Ding 
1216b898587SDamon Ding #define RK3288_MCU_BYPASS_WPORT			0x2200
122186f8572SMark Yao /* register definition end */
123186f8572SMark Yao 
124186f8572SMark Yao /* rk3368 register definition */
125186f8572SMark Yao #define RK3368_REG_CFG_DONE			0x0000
126186f8572SMark Yao #define RK3368_VERSION_INFO			0x0004
127186f8572SMark Yao #define RK3368_SYS_CTRL				0x0008
128186f8572SMark Yao #define RK3368_SYS_CTRL1			0x000c
129186f8572SMark Yao #define RK3368_DSP_CTRL0			0x0010
130186f8572SMark Yao #define RK3368_DSP_CTRL1			0x0014
131186f8572SMark Yao #define RK3368_DSP_BG				0x0018
132186f8572SMark Yao #define RK3368_MCU_CTRL				0x001c
133186f8572SMark Yao #define RK3368_LINE_FLAG			0x0020
134186f8572SMark Yao #define RK3368_INTR_EN				0x0024
135186f8572SMark Yao #define RK3368_INTR_CLEAR			0x0028
136186f8572SMark Yao #define RK3368_INTR_STATUS			0x002c
137186f8572SMark Yao #define RK3368_WIN0_CTRL0			0x0030
138186f8572SMark Yao #define RK3368_WIN0_CTRL1			0x0034
139186f8572SMark Yao #define RK3368_WIN0_COLOR_KEY			0x0038
140186f8572SMark Yao #define RK3368_WIN0_VIR				0x003c
141186f8572SMark Yao #define RK3368_WIN0_YRGB_MST			0x0040
142186f8572SMark Yao #define RK3368_WIN0_CBR_MST			0x0044
143186f8572SMark Yao #define RK3368_WIN0_ACT_INFO			0x0048
144186f8572SMark Yao #define RK3368_WIN0_DSP_INFO			0x004c
145186f8572SMark Yao #define RK3368_WIN0_DSP_ST			0x0050
146186f8572SMark Yao #define RK3368_WIN0_SCL_FACTOR_YRGB		0x0054
147186f8572SMark Yao #define RK3368_WIN0_SCL_FACTOR_CBR		0x0058
148186f8572SMark Yao #define RK3368_WIN0_SCL_OFFSET			0x005c
149186f8572SMark Yao #define RK3368_WIN0_SRC_ALPHA_CTRL		0x0060
150186f8572SMark Yao #define RK3368_WIN0_DST_ALPHA_CTRL		0x0064
151186f8572SMark Yao #define RK3368_WIN0_FADING_CTRL			0x0068
152186f8572SMark Yao #define RK3368_WIN0_CTRL2			0x006c
153186f8572SMark Yao #define RK3368_WIN1_CTRL0			0x0070
154186f8572SMark Yao #define RK3368_WIN1_CTRL1			0x0074
155186f8572SMark Yao #define RK3368_WIN1_COLOR_KEY			0x0078
156186f8572SMark Yao #define RK3368_WIN1_VIR				0x007c
157186f8572SMark Yao #define RK3368_WIN1_YRGB_MST			0x0080
158186f8572SMark Yao #define RK3368_WIN1_CBR_MST			0x0084
159186f8572SMark Yao #define RK3368_WIN1_ACT_INFO			0x0088
160186f8572SMark Yao #define RK3368_WIN1_DSP_INFO			0x008c
161186f8572SMark Yao #define RK3368_WIN1_DSP_ST			0x0090
162186f8572SMark Yao #define RK3368_WIN1_SCL_FACTOR_YRGB		0x0094
163186f8572SMark Yao #define RK3368_WIN1_SCL_FACTOR_CBR		0x0098
164186f8572SMark Yao #define RK3368_WIN1_SCL_OFFSET			0x009c
165186f8572SMark Yao #define RK3368_WIN1_SRC_ALPHA_CTRL		0x00a0
166186f8572SMark Yao #define RK3368_WIN1_DST_ALPHA_CTRL		0x00a4
167186f8572SMark Yao #define RK3368_WIN1_FADING_CTRL			0x00a8
168186f8572SMark Yao #define RK3368_WIN1_CTRL2			0x00ac
169186f8572SMark Yao #define RK3368_WIN2_CTRL0			0x00b0
170186f8572SMark Yao #define RK3368_WIN2_CTRL1			0x00b4
171186f8572SMark Yao #define RK3368_WIN2_VIR0_1			0x00b8
172186f8572SMark Yao #define RK3368_WIN2_VIR2_3			0x00bc
173186f8572SMark Yao #define RK3368_WIN2_MST0			0x00c0
174186f8572SMark Yao #define RK3368_WIN2_DSP_INFO0			0x00c4
175186f8572SMark Yao #define RK3368_WIN2_DSP_ST0			0x00c8
176186f8572SMark Yao #define RK3368_WIN2_COLOR_KEY			0x00cc
177186f8572SMark Yao #define RK3368_WIN2_MST1			0x00d0
178186f8572SMark Yao #define RK3368_WIN2_DSP_INFO1			0x00d4
179186f8572SMark Yao #define RK3368_WIN2_DSP_ST1			0x00d8
180186f8572SMark Yao #define RK3368_WIN2_SRC_ALPHA_CTRL		0x00dc
181186f8572SMark Yao #define RK3368_WIN2_MST2			0x00e0
182186f8572SMark Yao #define RK3368_WIN2_DSP_INFO2			0x00e4
183186f8572SMark Yao #define RK3368_WIN2_DSP_ST2			0x00e8
184186f8572SMark Yao #define RK3368_WIN2_DST_ALPHA_CTRL		0x00ec
185186f8572SMark Yao #define RK3368_WIN2_MST3			0x00f0
186186f8572SMark Yao #define RK3368_WIN2_DSP_INFO3			0x00f4
187186f8572SMark Yao #define RK3368_WIN2_DSP_ST3			0x00f8
188186f8572SMark Yao #define RK3368_WIN2_FADING_CTRL			0x00fc
189186f8572SMark Yao #define RK3368_WIN3_CTRL0			0x0100
190186f8572SMark Yao #define RK3368_WIN3_CTRL1			0x0104
191186f8572SMark Yao #define RK3368_WIN3_VIR0_1			0x0108
192186f8572SMark Yao #define RK3368_WIN3_VIR2_3			0x010c
193186f8572SMark Yao #define RK3368_WIN3_MST0			0x0110
194186f8572SMark Yao #define RK3368_WIN3_DSP_INFO0			0x0114
195186f8572SMark Yao #define RK3368_WIN3_DSP_ST0			0x0118
196186f8572SMark Yao #define RK3368_WIN3_COLOR_KEY			0x011c
197186f8572SMark Yao #define RK3368_WIN3_MST1			0x0120
198186f8572SMark Yao #define RK3368_WIN3_DSP_INFO1			0x0124
199186f8572SMark Yao #define RK3368_WIN3_DSP_ST1			0x0128
200186f8572SMark Yao #define RK3368_WIN3_SRC_ALPHA_CTRL		0x012c
201186f8572SMark Yao #define RK3368_WIN3_MST2			0x0130
202186f8572SMark Yao #define RK3368_WIN3_DSP_INFO2			0x0134
203186f8572SMark Yao #define RK3368_WIN3_DSP_ST2			0x0138
204186f8572SMark Yao #define RK3368_WIN3_DST_ALPHA_CTRL		0x013c
205186f8572SMark Yao #define RK3368_WIN3_MST3			0x0140
206186f8572SMark Yao #define RK3368_WIN3_DSP_INFO3			0x0144
207186f8572SMark Yao #define RK3368_WIN3_DSP_ST3			0x0148
208186f8572SMark Yao #define RK3368_WIN3_FADING_CTRL			0x014c
209186f8572SMark Yao #define RK3368_HWC_CTRL0			0x0150
210186f8572SMark Yao #define RK3368_HWC_CTRL1			0x0154
211186f8572SMark Yao #define RK3368_HWC_MST				0x0158
212186f8572SMark Yao #define RK3368_HWC_DSP_ST			0x015c
213186f8572SMark Yao #define RK3368_HWC_SRC_ALPHA_CTRL		0x0160
214186f8572SMark Yao #define RK3368_HWC_DST_ALPHA_CTRL		0x0164
215186f8572SMark Yao #define RK3368_HWC_FADING_CTRL			0x0168
216186f8572SMark Yao #define RK3368_HWC_RESERVED1			0x016c
217186f8572SMark Yao #define RK3368_POST_DSP_HACT_INFO		0x0170
218186f8572SMark Yao #define RK3368_POST_DSP_VACT_INFO		0x0174
219186f8572SMark Yao #define RK3368_POST_SCL_FACTOR_YRGB		0x0178
220186f8572SMark Yao #define RK3368_POST_RESERVED			0x017c
221186f8572SMark Yao #define RK3368_POST_SCL_CTRL			0x0180
222186f8572SMark Yao #define RK3368_POST_DSP_VACT_INFO_F1		0x0184
223186f8572SMark Yao #define RK3368_DSP_HTOTAL_HS_END		0x0188
224186f8572SMark Yao #define RK3368_DSP_HACT_ST_END			0x018c
225186f8572SMark Yao #define RK3368_DSP_VTOTAL_VS_END		0x0190
226186f8572SMark Yao #define RK3368_DSP_VACT_ST_END			0x0194
227186f8572SMark Yao #define RK3368_DSP_VS_ST_END_F1			0x0198
228186f8572SMark Yao #define RK3368_DSP_VACT_ST_END_F1		0x019c
229186f8572SMark Yao #define RK3368_PWM_CTRL				0x01a0
230186f8572SMark Yao #define RK3368_PWM_PERIOD_HPR			0x01a4
231186f8572SMark Yao #define RK3368_PWM_DUTY_LPR			0x01a8
232186f8572SMark Yao #define RK3368_PWM_CNT				0x01ac
233186f8572SMark Yao #define RK3368_BCSH_COLOR_BAR			0x01b0
234186f8572SMark Yao #define RK3368_BCSH_BCS				0x01b4
235186f8572SMark Yao #define RK3368_BCSH_H				0x01b8
236186f8572SMark Yao #define RK3368_BCSH_CTRL			0x01bc
237186f8572SMark Yao #define RK3368_CABC_CTRL0			0x01c0
238186f8572SMark Yao #define RK3368_CABC_CTRL1			0x01c4
239186f8572SMark Yao #define RK3368_CABC_CTRL2			0x01c8
240186f8572SMark Yao #define RK3368_CABC_CTRL3			0x01cc
241186f8572SMark Yao #define RK3368_CABC_GAUSS_LINE0_0		0x01d0
242186f8572SMark Yao #define RK3368_CABC_GAUSS_LINE0_1		0x01d4
243186f8572SMark Yao #define RK3368_CABC_GAUSS_LINE1_0		0x01d8
244186f8572SMark Yao #define RK3368_CABC_GAUSS_LINE1_1		0x01dc
245186f8572SMark Yao #define RK3368_CABC_GAUSS_LINE2_0		0x01e0
246186f8572SMark Yao #define RK3368_CABC_GAUSS_LINE2_1		0x01e4
247186f8572SMark Yao #define RK3368_FRC_LOWER01_0			0x01e8
248186f8572SMark Yao #define RK3368_FRC_LOWER01_1			0x01ec
249186f8572SMark Yao #define RK3368_FRC_LOWER10_0			0x01f0
250186f8572SMark Yao #define RK3368_FRC_LOWER10_1			0x01f4
251186f8572SMark Yao #define RK3368_FRC_LOWER11_0			0x01f8
252186f8572SMark Yao #define RK3368_FRC_LOWER11_1			0x01fc
253186f8572SMark Yao #define RK3368_IFBDC_CTRL			0x0200
254186f8572SMark Yao #define RK3368_IFBDC_TILES_NUM			0x0204
255186f8572SMark Yao #define RK3368_IFBDC_FRAME_RST_CYCLE		0x0208
256186f8572SMark Yao #define RK3368_IFBDC_BASE_ADDR			0x020c
257186f8572SMark Yao #define RK3368_IFBDC_MB_SIZE			0x0210
258186f8572SMark Yao #define RK3368_IFBDC_CMP_INDEX_INIT		0x0214
259186f8572SMark Yao #define RK3368_IFBDC_VIR			0x0220
260186f8572SMark Yao #define RK3368_IFBDC_DEBUG0			0x0230
261186f8572SMark Yao #define RK3368_IFBDC_DEBUG1			0x0234
262186f8572SMark Yao #define RK3368_LATENCY_CTRL0			0x0250
263186f8572SMark Yao #define RK3368_RD_MAX_LATENCY_NUM0		0x0254
264186f8572SMark Yao #define RK3368_RD_LATENCY_THR_NUM0		0x0258
265186f8572SMark Yao #define RK3368_RD_LATENCY_SAMP_NUM0		0x025c
266186f8572SMark Yao #define RK3368_WIN0_DSP_BG			0x0260
267186f8572SMark Yao #define RK3368_WIN1_DSP_BG			0x0264
268186f8572SMark Yao #define RK3368_WIN2_DSP_BG			0x0268
269186f8572SMark Yao #define RK3368_WIN3_DSP_BG			0x026c
270186f8572SMark Yao #define RK3368_SCAN_LINE_NUM			0x0270
271186f8572SMark Yao #define RK3368_CABC_DEBUG0			0x0274
272186f8572SMark Yao #define RK3368_CABC_DEBUG1			0x0278
273186f8572SMark Yao #define RK3368_CABC_DEBUG2			0x027c
274186f8572SMark Yao #define RK3368_DBG_REG_000			0x0280
275186f8572SMark Yao #define RK3368_DBG_REG_001			0x0284
276186f8572SMark Yao #define RK3368_DBG_REG_002			0x0288
277186f8572SMark Yao #define RK3368_DBG_REG_003			0x028c
278186f8572SMark Yao #define RK3368_DBG_REG_004			0x0290
279186f8572SMark Yao #define RK3368_DBG_REG_005			0x0294
280186f8572SMark Yao #define RK3368_DBG_REG_006			0x0298
281186f8572SMark Yao #define RK3368_DBG_REG_007			0x029c
282186f8572SMark Yao #define RK3368_DBG_REG_008			0x02a0
283186f8572SMark Yao #define RK3368_DBG_REG_016			0x02c0
284186f8572SMark Yao #define RK3368_DBG_REG_017			0x02c4
285186f8572SMark Yao #define RK3368_DBG_REG_018			0x02c8
286186f8572SMark Yao #define RK3368_DBG_REG_019			0x02cc
287186f8572SMark Yao #define RK3368_DBG_REG_020			0x02d0
288186f8572SMark Yao #define RK3368_DBG_REG_021			0x02d4
289186f8572SMark Yao #define RK3368_DBG_REG_022			0x02d8
290186f8572SMark Yao #define RK3368_DBG_REG_023			0x02dc
291186f8572SMark Yao #define RK3368_DBG_REG_028			0x02f0
292186f8572SMark Yao #define RK3368_MMU_DTE_ADDR			0x0300
293186f8572SMark Yao #define RK3368_MMU_STATUS			0x0304
294186f8572SMark Yao #define RK3368_MMU_COMMAND			0x0308
295186f8572SMark Yao #define RK3368_MMU_PAGE_FAULT_ADDR		0x030c
296186f8572SMark Yao #define RK3368_MMU_ZAP_ONE_LINE			0x0310
297186f8572SMark Yao #define RK3368_MMU_INT_RAWSTAT			0x0314
298186f8572SMark Yao #define RK3368_MMU_INT_CLEAR			0x0318
299186f8572SMark Yao #define RK3368_MMU_INT_MASK			0x031c
300186f8572SMark Yao #define RK3368_MMU_INT_STATUS			0x0320
301186f8572SMark Yao #define RK3368_MMU_AUTO_GATING			0x0324
302186f8572SMark Yao #define RK3368_WIN2_LUT_ADDR			0x0400
303186f8572SMark Yao #define RK3368_WIN3_LUT_ADDR			0x0800
304186f8572SMark Yao #define RK3368_HWC_LUT_ADDR			0x0c00
305186f8572SMark Yao #define RK3368_GAMMA_LUT_ADDR			0x1000
306186f8572SMark Yao #define RK3368_CABC_GAMMA_LUT_ADDR		0x1800
307186f8572SMark Yao #define RK3368_MCU_BYPASS_WPORT			0x2200
308186f8572SMark Yao #define RK3368_MCU_BYPASS_RPORT			0x2300
3093a06149eSSandy Huang #define RK3368_GRF_SOC_CON6			0x0418
310186f8572SMark Yao /* rk3368 register definition end */
311186f8572SMark Yao 
312186f8572SMark Yao #define RK3366_REG_CFG_DONE			0x0000
313186f8572SMark Yao #define RK3366_VERSION_INFO			0x0004
314186f8572SMark Yao #define RK3366_SYS_CTRL				0x0008
315186f8572SMark Yao #define RK3366_SYS_CTRL1			0x000c
316186f8572SMark Yao #define RK3366_DSP_CTRL0			0x0010
317186f8572SMark Yao #define RK3366_DSP_CTRL1			0x0014
318186f8572SMark Yao #define RK3366_DSP_BG				0x0018
319186f8572SMark Yao #define RK3366_MCU_CTRL				0x001c
320186f8572SMark Yao #define RK3366_WB_CTRL0				0x0020
321186f8572SMark Yao #define RK3366_WB_CTRL1				0x0024
322186f8572SMark Yao #define RK3366_WB_YRGB_MST			0x0028
323186f8572SMark Yao #define RK3366_WB_CBR_MST			0x002c
324186f8572SMark Yao #define RK3366_WIN0_CTRL0			0x0030
325186f8572SMark Yao #define RK3366_WIN0_CTRL1			0x0034
326186f8572SMark Yao #define RK3366_WIN0_COLOR_KEY			0x0038
327186f8572SMark Yao #define RK3366_WIN0_VIR				0x003c
328186f8572SMark Yao #define RK3366_WIN0_YRGB_MST			0x0040
329186f8572SMark Yao #define RK3366_WIN0_CBR_MST			0x0044
330186f8572SMark Yao #define RK3366_WIN0_ACT_INFO			0x0048
331186f8572SMark Yao #define RK3366_WIN0_DSP_INFO			0x004c
332186f8572SMark Yao #define RK3366_WIN0_DSP_ST			0x0050
333186f8572SMark Yao #define RK3366_WIN0_SCL_FACTOR_YRGB		0x0054
334186f8572SMark Yao #define RK3366_WIN0_SCL_FACTOR_CBR		0x0058
335186f8572SMark Yao #define RK3366_WIN0_SCL_OFFSET			0x005c
336186f8572SMark Yao #define RK3366_WIN0_SRC_ALPHA_CTRL		0x0060
337186f8572SMark Yao #define RK3366_WIN0_DST_ALPHA_CTRL		0x0064
338186f8572SMark Yao #define RK3366_WIN0_FADING_CTRL			0x0068
339186f8572SMark Yao #define RK3366_WIN0_CTRL2			0x006c
340186f8572SMark Yao #define RK3366_WIN1_CTRL0			0x0070
341186f8572SMark Yao #define RK3366_WIN1_CTRL1			0x0074
342186f8572SMark Yao #define RK3366_WIN1_COLOR_KEY			0x0078
343186f8572SMark Yao #define RK3366_WIN1_VIR				0x007c
344186f8572SMark Yao #define RK3366_WIN1_YRGB_MST			0x0080
345186f8572SMark Yao #define RK3366_WIN1_CBR_MST			0x0084
346186f8572SMark Yao #define RK3366_WIN1_ACT_INFO			0x0088
347186f8572SMark Yao #define RK3366_WIN1_DSP_INFO			0x008c
348186f8572SMark Yao #define RK3366_WIN1_DSP_ST			0x0090
349186f8572SMark Yao #define RK3366_WIN1_SCL_FACTOR_YRGB		0x0094
350186f8572SMark Yao #define RK3366_WIN1_SCL_FACTOR_CBR		0x0098
351186f8572SMark Yao #define RK3366_WIN1_SCL_OFFSET			0x009c
352186f8572SMark Yao #define RK3366_WIN1_SRC_ALPHA_CTRL		0x00a0
353186f8572SMark Yao #define RK3366_WIN1_DST_ALPHA_CTRL		0x00a4
354186f8572SMark Yao #define RK3366_WIN1_FADING_CTRL			0x00a8
355186f8572SMark Yao #define RK3366_WIN1_CTRL2			0x00ac
356186f8572SMark Yao #define RK3366_WIN2_CTRL0			0x00b0
357186f8572SMark Yao #define RK3366_WIN2_CTRL1			0x00b4
358186f8572SMark Yao #define RK3366_WIN2_VIR0_1			0x00b8
359186f8572SMark Yao #define RK3366_WIN2_VIR2_3			0x00bc
360186f8572SMark Yao #define RK3366_WIN2_MST0			0x00c0
361186f8572SMark Yao #define RK3366_WIN2_DSP_INFO0			0x00c4
362186f8572SMark Yao #define RK3366_WIN2_DSP_ST0			0x00c8
363186f8572SMark Yao #define RK3366_WIN2_COLOR_KEY			0x00cc
364186f8572SMark Yao #define RK3366_WIN2_MST1			0x00d0
365186f8572SMark Yao #define RK3366_WIN2_DSP_INFO1			0x00d4
366186f8572SMark Yao #define RK3366_WIN2_DSP_ST1			0x00d8
367186f8572SMark Yao #define RK3366_WIN2_SRC_ALPHA_CTRL		0x00dc
368186f8572SMark Yao #define RK3366_WIN2_MST2			0x00e0
369186f8572SMark Yao #define RK3366_WIN2_DSP_INFO2			0x00e4
370186f8572SMark Yao #define RK3366_WIN2_DSP_ST2			0x00e8
371186f8572SMark Yao #define RK3366_WIN2_DST_ALPHA_CTRL		0x00ec
372186f8572SMark Yao #define RK3366_WIN2_MST3			0x00f0
373186f8572SMark Yao #define RK3366_WIN2_DSP_INFO3			0x00f4
374186f8572SMark Yao #define RK3366_WIN2_DSP_ST3			0x00f8
375186f8572SMark Yao #define RK3366_WIN2_FADING_CTRL			0x00fc
376186f8572SMark Yao #define RK3366_WIN3_CTRL0			0x0100
377186f8572SMark Yao #define RK3366_WIN3_CTRL1			0x0104
378186f8572SMark Yao #define RK3366_WIN3_VIR0_1			0x0108
379186f8572SMark Yao #define RK3366_WIN3_VIR2_3			0x010c
380186f8572SMark Yao #define RK3366_WIN3_MST0			0x0110
381186f8572SMark Yao #define RK3366_WIN3_DSP_INFO0			0x0114
382186f8572SMark Yao #define RK3366_WIN3_DSP_ST0			0x0118
383186f8572SMark Yao #define RK3366_WIN3_COLOR_KEY			0x011c
384186f8572SMark Yao #define RK3366_WIN3_MST1			0x0120
385186f8572SMark Yao #define RK3366_WIN3_DSP_INFO1			0x0124
386186f8572SMark Yao #define RK3366_WIN3_DSP_ST1			0x0128
387186f8572SMark Yao #define RK3366_WIN3_SRC_ALPHA_CTRL		0x012c
388186f8572SMark Yao #define RK3366_WIN3_MST2			0x0130
389186f8572SMark Yao #define RK3366_WIN3_DSP_INFO2			0x0134
390186f8572SMark Yao #define RK3366_WIN3_DSP_ST2			0x0138
391186f8572SMark Yao #define RK3366_WIN3_DST_ALPHA_CTRL		0x013c
392186f8572SMark Yao #define RK3366_WIN3_MST3			0x0140
393186f8572SMark Yao #define RK3366_WIN3_DSP_INFO3			0x0144
394186f8572SMark Yao #define RK3366_WIN3_DSP_ST3			0x0148
395186f8572SMark Yao #define RK3366_WIN3_FADING_CTRL			0x014c
396186f8572SMark Yao #define RK3366_HWC_CTRL0			0x0150
397186f8572SMark Yao #define RK3366_HWC_CTRL1			0x0154
398186f8572SMark Yao #define RK3366_HWC_MST				0x0158
399186f8572SMark Yao #define RK3366_HWC_DSP_ST			0x015c
400186f8572SMark Yao #define RK3366_HWC_SRC_ALPHA_CTRL		0x0160
401186f8572SMark Yao #define RK3366_HWC_DST_ALPHA_CTRL		0x0164
402186f8572SMark Yao #define RK3366_HWC_FADING_CTRL			0x0168
403186f8572SMark Yao #define RK3366_HWC_RESERVED1			0x016c
404186f8572SMark Yao #define RK3366_POST_DSP_HACT_INFO		0x0170
405186f8572SMark Yao #define RK3366_POST_DSP_VACT_INFO		0x0174
406186f8572SMark Yao #define RK3366_POST_SCL_FACTOR_YRGB		0x0178
407186f8572SMark Yao #define RK3366_POST_RESERVED			0x017c
408186f8572SMark Yao #define RK3366_POST_SCL_CTRL			0x0180
409186f8572SMark Yao #define RK3366_POST_DSP_VACT_INFO_F1		0x0184
410186f8572SMark Yao #define RK3366_DSP_HTOTAL_HS_END		0x0188
411186f8572SMark Yao #define RK3366_DSP_HACT_ST_END			0x018c
412186f8572SMark Yao #define RK3366_DSP_VTOTAL_VS_END		0x0190
413186f8572SMark Yao #define RK3366_DSP_VACT_ST_END			0x0194
414186f8572SMark Yao #define RK3366_DSP_VS_ST_END_F1			0x0198
415186f8572SMark Yao #define RK3366_DSP_VACT_ST_END_F1		0x019c
416186f8572SMark Yao #define RK3366_PWM_CTRL				0x01a0
417186f8572SMark Yao #define RK3366_PWM_PERIOD_HPR			0x01a4
418186f8572SMark Yao #define RK3366_PWM_DUTY_LPR			0x01a8
419186f8572SMark Yao #define RK3366_PWM_CNT				0x01ac
420186f8572SMark Yao #define RK3366_BCSH_COLOR_BAR			0x01b0
421186f8572SMark Yao #define RK3366_BCSH_BCS				0x01b4
422186f8572SMark Yao #define RK3366_BCSH_H				0x01b8
423186f8572SMark Yao #define RK3366_BCSH_CTRL			0x01bc
424186f8572SMark Yao #define RK3366_CABC_CTRL0			0x01c0
425186f8572SMark Yao #define RK3366_CABC_CTRL1			0x01c4
426186f8572SMark Yao #define RK3366_CABC_CTRL2			0x01c8
427186f8572SMark Yao #define RK3366_CABC_CTRL3			0x01cc
428186f8572SMark Yao #define RK3366_CABC_GAUSS_LINE0_0		0x01d0
429186f8572SMark Yao #define RK3366_CABC_GAUSS_LINE0_1		0x01d4
430186f8572SMark Yao #define RK3366_CABC_GAUSS_LINE1_0		0x01d8
431186f8572SMark Yao #define RK3366_CABC_GAUSS_LINE1_1		0x01dc
432186f8572SMark Yao #define RK3366_CABC_GAUSS_LINE2_0		0x01e0
433186f8572SMark Yao #define RK3366_CABC_GAUSS_LINE2_1		0x01e4
434186f8572SMark Yao #define RK3366_FRC_LOWER01_0			0x01e8
435186f8572SMark Yao #define RK3366_FRC_LOWER01_1			0x01ec
436186f8572SMark Yao #define RK3366_FRC_LOWER10_0			0x01f0
437186f8572SMark Yao #define RK3366_FRC_LOWER10_1			0x01f4
438186f8572SMark Yao #define RK3366_FRC_LOWER11_0			0x01f8
439186f8572SMark Yao #define RK3366_FRC_LOWER11_1			0x01fc
440186f8572SMark Yao #define RK3366_INTR_EN0				0x0280
441186f8572SMark Yao #define RK3366_INTR_CLEAR0			0x0284
442186f8572SMark Yao #define RK3366_INTR_STATUS0			0x0288
443186f8572SMark Yao #define RK3366_INTR_RAW_STATUS0			0x028c
444186f8572SMark Yao #define RK3366_INTR_EN1				0x0290
445186f8572SMark Yao #define RK3366_INTR_CLEAR1			0x0294
446186f8572SMark Yao #define RK3366_INTR_STATUS1			0x0298
447186f8572SMark Yao #define RK3366_INTR_RAW_STATUS1			0x029c
448186f8572SMark Yao #define RK3366_LINE_FLAG			0x02a0
449186f8572SMark Yao #define RK3366_VOP_STATUS			0x02a4
450186f8572SMark Yao #define RK3366_BLANKING_VALUE			0x02a8
451186f8572SMark Yao #define RK3366_WIN0_DSP_BG			0x02b0
452186f8572SMark Yao #define RK3366_WIN1_DSP_BG			0x02b4
453186f8572SMark Yao #define RK3366_WIN2_DSP_BG			0x02b8
454186f8572SMark Yao #define RK3366_WIN3_DSP_BG			0x02bc
455186f8572SMark Yao #define RK3366_WIN2_LUT_ADDR			0x0400
456186f8572SMark Yao #define RK3366_WIN3_LUT_ADDR			0x0800
457186f8572SMark Yao #define RK3366_HWC_LUT_ADDR			0x0c00
458186f8572SMark Yao #define RK3366_GAMMA0_LUT_ADDR			0x1000
459186f8572SMark Yao #define RK3366_GAMMA1_LUT_ADDR			0x1400
460186f8572SMark Yao #define RK3366_CABC_GAMMA_LUT_ADDR		0x1800
461186f8572SMark Yao #define RK3366_MCU_BYPASS_WPORT			0x2200
462186f8572SMark Yao #define RK3366_MCU_BYPASS_RPORT			0x2300
463186f8572SMark Yao #define RK3366_MMU_DTE_ADDR			0x2400
464186f8572SMark Yao #define RK3366_MMU_STATUS			0x2404
465186f8572SMark Yao #define RK3366_MMU_COMMAND			0x2408
466186f8572SMark Yao #define RK3366_MMU_PAGE_FAULT_ADDR		0x240c
467186f8572SMark Yao #define RK3366_MMU_ZAP_ONE_LINE 		0x2410
468186f8572SMark Yao #define RK3366_MMU_INT_RAWSTAT			0x2414
469186f8572SMark Yao #define RK3366_MMU_INT_CLEAR			0x2418
470186f8572SMark Yao #define RK3366_MMU_INT_MASK			0x241c
471186f8572SMark Yao #define RK3366_MMU_INT_STATUS			0x2420
472186f8572SMark Yao #define RK3366_MMU_AUTO_GATING			0x2424
473186f8572SMark Yao 
474186f8572SMark Yao /* rk3399 register definition */
475186f8572SMark Yao #define RK3399_REG_CFG_DONE			0x0000
476186f8572SMark Yao #define RK3399_VERSION_INFO			0x0004
477186f8572SMark Yao #define RK3399_SYS_CTRL				0x0008
478186f8572SMark Yao #define RK3399_SYS_CTRL1			0x000c
479186f8572SMark Yao #define RK3399_DSP_CTRL0			0x0010
480186f8572SMark Yao #define RK3399_DSP_CTRL1			0x0014
481186f8572SMark Yao #define RK3399_DSP_BG				0x0018
482186f8572SMark Yao #define RK3399_MCU_CTRL				0x001c
483186f8572SMark Yao #define RK3399_WB_CTRL0				0x0020
484186f8572SMark Yao #define RK3399_WB_CTRL1				0x0024
485186f8572SMark Yao #define RK3399_WB_YRGB_MST			0x0028
486186f8572SMark Yao #define RK3399_WB_CBR_MST			0x002c
487186f8572SMark Yao #define RK3399_WIN0_CTRL0			0x0030
488186f8572SMark Yao #define RK3399_WIN0_CTRL1			0x0034
489186f8572SMark Yao #define RK3399_WIN0_COLOR_KEY			0x0038
490186f8572SMark Yao #define RK3399_WIN0_VIR				0x003c
491186f8572SMark Yao #define RK3399_WIN0_YRGB_MST			0x0040
492186f8572SMark Yao #define RK3399_WIN0_CBR_MST			0x0044
493186f8572SMark Yao #define RK3399_WIN0_ACT_INFO			0x0048
494186f8572SMark Yao #define RK3399_WIN0_DSP_INFO			0x004c
495186f8572SMark Yao #define RK3399_WIN0_DSP_ST			0x0050
496186f8572SMark Yao #define RK3399_WIN0_SCL_FACTOR_YRGB		0x0054
497186f8572SMark Yao #define RK3399_WIN0_SCL_FACTOR_CBR		0x0058
498186f8572SMark Yao #define RK3399_WIN0_SCL_OFFSET			0x005c
499186f8572SMark Yao #define RK3399_WIN0_SRC_ALPHA_CTRL		0x0060
500186f8572SMark Yao #define RK3399_WIN0_DST_ALPHA_CTRL		0x0064
501186f8572SMark Yao #define RK3399_WIN0_FADING_CTRL			0x0068
502186f8572SMark Yao #define RK3399_WIN0_CTRL2			0x006c
503186f8572SMark Yao #define RK3399_WIN1_CTRL0			0x0070
504186f8572SMark Yao #define RK3399_WIN1_CTRL1			0x0074
505186f8572SMark Yao #define RK3399_WIN1_COLOR_KEY			0x0078
506186f8572SMark Yao #define RK3399_WIN1_VIR				0x007c
507186f8572SMark Yao #define RK3399_WIN1_YRGB_MST			0x0080
508186f8572SMark Yao #define RK3399_WIN1_CBR_MST			0x0084
509186f8572SMark Yao #define RK3399_WIN1_ACT_INFO			0x0088
510186f8572SMark Yao #define RK3399_WIN1_DSP_INFO			0x008c
511186f8572SMark Yao #define RK3399_WIN1_DSP_ST			0x0090
512186f8572SMark Yao #define RK3399_WIN1_SCL_FACTOR_YRGB		0x0094
513186f8572SMark Yao #define RK3399_WIN1_SCL_FACTOR_CBR		0x0098
514186f8572SMark Yao #define RK3399_WIN1_SCL_OFFSET			0x009c
515186f8572SMark Yao #define RK3399_WIN1_SRC_ALPHA_CTRL		0x00a0
516186f8572SMark Yao #define RK3399_WIN1_DST_ALPHA_CTRL		0x00a4
517186f8572SMark Yao #define RK3399_WIN1_FADING_CTRL			0x00a8
518186f8572SMark Yao #define RK3399_WIN1_CTRL2			0x00ac
519186f8572SMark Yao #define RK3399_WIN2_CTRL0			0x00b0
520186f8572SMark Yao #define RK3399_WIN2_CTRL1			0x00b4
521186f8572SMark Yao #define RK3399_WIN2_VIR0_1			0x00b8
522186f8572SMark Yao #define RK3399_WIN2_VIR2_3			0x00bc
523186f8572SMark Yao #define RK3399_WIN2_MST0			0x00c0
524186f8572SMark Yao #define RK3399_WIN2_DSP_INFO0			0x00c4
525186f8572SMark Yao #define RK3399_WIN2_DSP_ST0			0x00c8
526186f8572SMark Yao #define RK3399_WIN2_COLOR_KEY			0x00cc
527186f8572SMark Yao #define RK3399_WIN2_MST1			0x00d0
528186f8572SMark Yao #define RK3399_WIN2_DSP_INFO1			0x00d4
529186f8572SMark Yao #define RK3399_WIN2_DSP_ST1			0x00d8
530186f8572SMark Yao #define RK3399_WIN2_SRC_ALPHA_CTRL		0x00dc
531186f8572SMark Yao #define RK3399_WIN2_MST2			0x00e0
532186f8572SMark Yao #define RK3399_WIN2_DSP_INFO2			0x00e4
533186f8572SMark Yao #define RK3399_WIN2_DSP_ST2			0x00e8
534186f8572SMark Yao #define RK3399_WIN2_DST_ALPHA_CTRL		0x00ec
535186f8572SMark Yao #define RK3399_WIN2_MST3			0x00f0
536186f8572SMark Yao #define RK3399_WIN2_DSP_INFO3			0x00f4
537186f8572SMark Yao #define RK3399_WIN2_DSP_ST3			0x00f8
538186f8572SMark Yao #define RK3399_WIN2_FADING_CTRL			0x00fc
539186f8572SMark Yao #define RK3399_WIN3_CTRL0			0x0100
540186f8572SMark Yao #define RK3399_WIN3_CTRL1			0x0104
541186f8572SMark Yao #define RK3399_WIN3_VIR0_1			0x0108
542186f8572SMark Yao #define RK3399_WIN3_VIR2_3			0x010c
543186f8572SMark Yao #define RK3399_WIN3_MST0			0x0110
544186f8572SMark Yao #define RK3399_WIN3_DSP_INFO0			0x0114
545186f8572SMark Yao #define RK3399_WIN3_DSP_ST0			0x0118
546186f8572SMark Yao #define RK3399_WIN3_COLOR_KEY			0x011c
547186f8572SMark Yao #define RK3399_WIN3_MST1			0x0120
548186f8572SMark Yao #define RK3399_WIN3_DSP_INFO1			0x0124
549186f8572SMark Yao #define RK3399_WIN3_DSP_ST1			0x0128
550186f8572SMark Yao #define RK3399_WIN3_SRC_ALPHA_CTRL		0x012c
551186f8572SMark Yao #define RK3399_WIN3_MST2			0x0130
552186f8572SMark Yao #define RK3399_WIN3_DSP_INFO2			0x0134
553186f8572SMark Yao #define RK3399_WIN3_DSP_ST2			0x0138
554186f8572SMark Yao #define RK3399_WIN3_DST_ALPHA_CTRL		0x013c
555186f8572SMark Yao #define RK3399_WIN3_MST3			0x0140
556186f8572SMark Yao #define RK3399_WIN3_DSP_INFO3			0x0144
557186f8572SMark Yao #define RK3399_WIN3_DSP_ST3			0x0148
558186f8572SMark Yao #define RK3399_WIN3_FADING_CTRL			0x014c
559186f8572SMark Yao #define RK3399_HWC_CTRL0			0x0150
560186f8572SMark Yao #define RK3399_HWC_CTRL1			0x0154
561186f8572SMark Yao #define RK3399_HWC_MST				0x0158
562186f8572SMark Yao #define RK3399_HWC_DSP_ST			0x015c
563186f8572SMark Yao #define RK3399_HWC_SRC_ALPHA_CTRL		0x0160
564186f8572SMark Yao #define RK3399_HWC_DST_ALPHA_CTRL		0x0164
565186f8572SMark Yao #define RK3399_HWC_FADING_CTRL			0x0168
566186f8572SMark Yao #define RK3399_HWC_RESERVED1			0x016c
567186f8572SMark Yao #define RK3399_POST_DSP_HACT_INFO		0x0170
568186f8572SMark Yao #define RK3399_POST_DSP_VACT_INFO		0x0174
569186f8572SMark Yao #define RK3399_POST_SCL_FACTOR_YRGB		0x0178
570186f8572SMark Yao #define RK3399_POST_RESERVED			0x017c
571186f8572SMark Yao #define RK3399_POST_SCL_CTRL			0x0180
572186f8572SMark Yao #define RK3399_POST_DSP_VACT_INFO_F1		0x0184
573186f8572SMark Yao #define RK3399_DSP_HTOTAL_HS_END		0x0188
574186f8572SMark Yao #define RK3399_DSP_HACT_ST_END			0x018c
575186f8572SMark Yao #define RK3399_DSP_VTOTAL_VS_END		0x0190
576186f8572SMark Yao #define RK3399_DSP_VACT_ST_END			0x0194
577186f8572SMark Yao #define RK3399_DSP_VS_ST_END_F1			0x0198
578186f8572SMark Yao #define RK3399_DSP_VACT_ST_END_F1		0x019c
579186f8572SMark Yao #define RK3399_PWM_CTRL				0x01a0
580186f8572SMark Yao #define RK3399_PWM_PERIOD_HPR			0x01a4
581186f8572SMark Yao #define RK3399_PWM_DUTY_LPR			0x01a8
582186f8572SMark Yao #define RK3399_PWM_CNT				0x01ac
583186f8572SMark Yao #define RK3399_BCSH_COLOR_BAR			0x01b0
584186f8572SMark Yao #define RK3399_BCSH_BCS				0x01b4
585186f8572SMark Yao #define RK3399_BCSH_H				0x01b8
586186f8572SMark Yao #define RK3399_BCSH_CTRL			0x01bc
587186f8572SMark Yao #define RK3399_CABC_CTRL0			0x01c0
588186f8572SMark Yao #define RK3399_CABC_CTRL1			0x01c4
589186f8572SMark Yao #define RK3399_CABC_CTRL2			0x01c8
590186f8572SMark Yao #define RK3399_CABC_CTRL3			0x01cc
591186f8572SMark Yao #define RK3399_CABC_GAUSS_LINE0_0		0x01d0
592186f8572SMark Yao #define RK3399_CABC_GAUSS_LINE0_1		0x01d4
593186f8572SMark Yao #define RK3399_CABC_GAUSS_LINE1_0		0x01d8
594186f8572SMark Yao #define RK3399_CABC_GAUSS_LINE1_1		0x01dc
595186f8572SMark Yao #define RK3399_CABC_GAUSS_LINE2_0		0x01e0
596186f8572SMark Yao #define RK3399_CABC_GAUSS_LINE2_1		0x01e4
597186f8572SMark Yao #define RK3399_FRC_LOWER01_0			0x01e8
598186f8572SMark Yao #define RK3399_FRC_LOWER01_1			0x01ec
599186f8572SMark Yao #define RK3399_FRC_LOWER10_0			0x01f0
600186f8572SMark Yao #define RK3399_FRC_LOWER10_1			0x01f4
601186f8572SMark Yao #define RK3399_FRC_LOWER11_0			0x01f8
602186f8572SMark Yao #define RK3399_FRC_LOWER11_1			0x01fc
603186f8572SMark Yao #define RK3399_AFBCD0_CTRL			0x0200
604186f8572SMark Yao #define RK3399_AFBCD0_HDR_PTR			0x0204
605186f8572SMark Yao #define RK3399_AFBCD0_PIC_SIZE			0x0208
606186f8572SMark Yao #define RK3399_AFBCD0_STATUS			0x020c
607186f8572SMark Yao #define RK3399_AFBCD1_CTRL			0x0220
608186f8572SMark Yao #define RK3399_AFBCD1_HDR_PTR			0x0224
609186f8572SMark Yao #define RK3399_AFBCD1_PIC_SIZE			0x0228
610186f8572SMark Yao #define RK3399_AFBCD1_STATUS			0x022c
611186f8572SMark Yao #define RK3399_AFBCD2_CTRL			0x0240
612186f8572SMark Yao #define RK3399_AFBCD2_HDR_PTR			0x0244
613186f8572SMark Yao #define RK3399_AFBCD2_PIC_SIZE			0x0248
614186f8572SMark Yao #define RK3399_AFBCD2_STATUS			0x024c
615186f8572SMark Yao #define RK3399_AFBCD3_CTRL			0x0260
616186f8572SMark Yao #define RK3399_AFBCD3_HDR_PTR			0x0264
617186f8572SMark Yao #define RK3399_AFBCD3_PIC_SIZE			0x0268
618186f8572SMark Yao #define RK3399_AFBCD3_STATUS			0x026c
619186f8572SMark Yao #define RK3399_INTR_EN0				0x0280
620186f8572SMark Yao #define RK3399_INTR_CLEAR0			0x0284
621186f8572SMark Yao #define RK3399_INTR_STATUS0			0x0288
622186f8572SMark Yao #define RK3399_INTR_RAW_STATUS0			0x028c
623186f8572SMark Yao #define RK3399_INTR_EN1				0x0290
624186f8572SMark Yao #define RK3399_INTR_CLEAR1			0x0294
625186f8572SMark Yao #define RK3399_INTR_STATUS1			0x0298
626186f8572SMark Yao #define RK3399_INTR_RAW_STATUS1			0x029c
627186f8572SMark Yao #define RK3399_LINE_FLAG			0x02a0
628186f8572SMark Yao #define RK3399_VOP_STATUS			0x02a4
629186f8572SMark Yao #define RK3399_BLANKING_VALUE			0x02a8
630186f8572SMark Yao #define RK3399_MCU_BYPASS_PORT			0x02ac
631186f8572SMark Yao #define RK3399_WIN0_DSP_BG			0x02b0
632186f8572SMark Yao #define RK3399_WIN1_DSP_BG			0x02b4
633186f8572SMark Yao #define RK3399_WIN2_DSP_BG			0x02b8
634186f8572SMark Yao #define RK3399_WIN3_DSP_BG			0x02bc
635186f8572SMark Yao #define RK3399_YUV2YUV_WIN			0x02c0
636186f8572SMark Yao #define RK3399_YUV2YUV_POST			0x02c4
637186f8572SMark Yao #define RK3399_AUTO_GATING_EN			0x02cc
638186f8572SMark Yao #define RK3399_WIN0_CSC_COE			0x03a0
639186f8572SMark Yao #define RK3399_WIN1_CSC_COE			0x03c0
640186f8572SMark Yao #define RK3399_WIN2_CSC_COE			0x03e0
641186f8572SMark Yao #define RK3399_WIN3_CSC_COE			0x0400
642186f8572SMark Yao #define RK3399_HWC_CSC_COE			0x0420
643186f8572SMark Yao #define RK3399_BCSH_R2Y_CSC_COE			0x0440
644186f8572SMark Yao #define RK3399_BCSH_Y2R_CSC_COE			0x0460
645186f8572SMark Yao #define RK3399_POST_YUV2YUV_Y2R_COE		0x0480
646186f8572SMark Yao #define RK3399_POST_YUV2YUV_3X3_COE		0x04a0
647186f8572SMark Yao #define RK3399_POST_YUV2YUV_R2Y_COE		0x04c0
648186f8572SMark Yao #define RK3399_WIN0_YUV2YUV_Y2R			0x04e0
649186f8572SMark Yao #define RK3399_WIN0_YUV2YUV_3X3			0x0500
650186f8572SMark Yao #define RK3399_WIN0_YUV2YUV_R2Y			0x0520
651186f8572SMark Yao #define RK3399_WIN1_YUV2YUV_Y2R			0x0540
652186f8572SMark Yao #define RK3399_WIN1_YUV2YUV_3X3			0x0560
653186f8572SMark Yao #define RK3399_WIN1_YUV2YUV_R2Y			0x0580
654186f8572SMark Yao #define RK3399_WIN2_YUV2YUV_Y2R			0x05a0
655186f8572SMark Yao #define RK3399_WIN2_YUV2YUV_3X3			0x05c0
656186f8572SMark Yao #define RK3399_WIN2_YUV2YUV_R2Y			0x05e0
657186f8572SMark Yao #define RK3399_WIN3_YUV2YUV_Y2R			0x0600
658186f8572SMark Yao #define RK3399_WIN3_YUV2YUV_3X3			0x0620
659186f8572SMark Yao #define RK3399_WIN3_YUV2YUV_R2Y			0x0640
660186f8572SMark Yao #define RK3399_WIN2_LUT_ADDR			0x1000
661186f8572SMark Yao #define RK3399_WIN3_LUT_ADDR			0x1400
662186f8572SMark Yao #define RK3399_HWC_LUT_ADDR			0x1800
663186f8572SMark Yao #define RK3399_CABC_GAMMA_LUT_ADDR		0x1c00
664186f8572SMark Yao #define RK3399_GAMMA_LUT_ADDR			0x2000
665186f8572SMark Yao /* rk3399 register definition end */
666186f8572SMark Yao 
667186f8572SMark Yao /* rk3328 register definition end */
668186f8572SMark Yao #define RK3328_REG_CFG_DONE			0x00000000
669186f8572SMark Yao #define RK3328_VERSION_INFO			0x00000004
670186f8572SMark Yao #define RK3328_SYS_CTRL				0x00000008
671186f8572SMark Yao #define RK3328_SYS_CTRL1			0x0000000c
672186f8572SMark Yao #define RK3328_DSP_CTRL0			0x00000010
673186f8572SMark Yao #define RK3328_DSP_CTRL1			0x00000014
674186f8572SMark Yao #define RK3328_DSP_BG				0x00000018
675186f8572SMark Yao #define RK3328_AUTO_GATING_EN			0x0000003c
676186f8572SMark Yao #define RK3328_LINE_FLAG			0x00000040
677186f8572SMark Yao #define RK3328_VOP_STATUS			0x00000044
678186f8572SMark Yao #define RK3328_BLANKING_VALUE			0x00000048
679186f8572SMark Yao #define RK3328_WIN0_DSP_BG			0x00000050
680186f8572SMark Yao #define RK3328_WIN1_DSP_BG			0x00000054
681186f8572SMark Yao #define RK3328_DBG_PERF_LATENCY_CTRL0		0x000000c0
682186f8572SMark Yao #define RK3328_DBG_PERF_RD_MAX_LATENCY_NUM0	0x000000c4
683186f8572SMark Yao #define RK3328_DBG_PERF_RD_LATENCY_THR_NUM0	0x000000c8
684186f8572SMark Yao #define RK3328_DBG_PERF_RD_LATENCY_SAMP_NUM0	0x000000cc
685186f8572SMark Yao #define RK3328_INTR_EN0				0x000000e0
686186f8572SMark Yao #define RK3328_INTR_CLEAR0			0x000000e4
687186f8572SMark Yao #define RK3328_INTR_STATUS0			0x000000e8
688186f8572SMark Yao #define RK3328_INTR_RAW_STATUS0			0x000000ec
689186f8572SMark Yao #define RK3328_INTR_EN1				0x000000f0
690186f8572SMark Yao #define RK3328_INTR_CLEAR1			0x000000f4
691186f8572SMark Yao #define RK3328_INTR_STATUS1			0x000000f8
692186f8572SMark Yao #define RK3328_INTR_RAW_STATUS1			0x000000fc
693186f8572SMark Yao #define RK3328_WIN0_CTRL0			0x00000100
694186f8572SMark Yao #define RK3328_WIN0_CTRL1			0x00000104
695186f8572SMark Yao #define RK3328_WIN0_COLOR_KEY			0x00000108
696186f8572SMark Yao #define RK3328_WIN0_VIR				0x0000010c
697186f8572SMark Yao #define RK3328_WIN0_YRGB_MST			0x00000110
698186f8572SMark Yao #define RK3328_WIN0_CBR_MST			0x00000114
699186f8572SMark Yao #define RK3328_WIN0_ACT_INFO			0x00000118
700186f8572SMark Yao #define RK3328_WIN0_DSP_INFO			0x0000011c
701186f8572SMark Yao #define RK3328_WIN0_DSP_ST			0x00000120
702186f8572SMark Yao #define RK3328_WIN0_SCL_FACTOR_YRGB		0x00000124
703186f8572SMark Yao #define RK3328_WIN0_SCL_FACTOR_CBR		0x00000128
704186f8572SMark Yao #define RK3328_WIN0_SCL_OFFSET			0x0000012c
705186f8572SMark Yao #define RK3328_WIN0_SRC_ALPHA_CTRL		0x00000130
706186f8572SMark Yao #define RK3328_WIN0_DST_ALPHA_CTRL		0x00000134
707186f8572SMark Yao #define RK3328_WIN0_FADING_CTRL			0x00000138
708186f8572SMark Yao #define RK3328_WIN0_CTRL2			0x0000013c
709186f8572SMark Yao #define RK3328_DBG_WIN0_REG0			0x000001f0
710186f8572SMark Yao #define RK3328_DBG_WIN0_REG1			0x000001f4
711186f8572SMark Yao #define RK3328_DBG_WIN0_REG2			0x000001f8
712186f8572SMark Yao #define RK3328_DBG_WIN0_RESERVED		0x000001fc
713186f8572SMark Yao #define RK3328_WIN1_CTRL0			0x00000200
714186f8572SMark Yao #define RK3328_WIN1_CTRL1			0x00000204
715186f8572SMark Yao #define RK3328_WIN1_COLOR_KEY			0x00000208
716186f8572SMark Yao #define RK3328_WIN1_VIR				0x0000020c
717186f8572SMark Yao #define RK3328_WIN1_YRGB_MST			0x00000210
718186f8572SMark Yao #define RK3328_WIN1_CBR_MST			0x00000214
719186f8572SMark Yao #define RK3328_WIN1_ACT_INFO			0x00000218
720186f8572SMark Yao #define RK3328_WIN1_DSP_INFO			0x0000021c
721186f8572SMark Yao #define RK3328_WIN1_DSP_ST			0x00000220
722186f8572SMark Yao #define RK3328_WIN1_SCL_FACTOR_YRGB		0x00000224
723186f8572SMark Yao #define RK3328_WIN1_SCL_FACTOR_CBR		0x00000228
724186f8572SMark Yao #define RK3328_WIN1_SCL_OFFSET			0x0000022c
725186f8572SMark Yao #define RK3328_WIN1_SRC_ALPHA_CTRL		0x00000230
726186f8572SMark Yao #define RK3328_WIN1_DST_ALPHA_CTRL		0x00000234
727186f8572SMark Yao #define RK3328_WIN1_FADING_CTRL			0x00000238
728186f8572SMark Yao #define RK3328_WIN1_CTRL2			0x0000023c
729186f8572SMark Yao #define RK3328_DBG_WIN1_REG0			0x000002f0
730186f8572SMark Yao #define RK3328_DBG_WIN1_REG1			0x000002f4
731186f8572SMark Yao #define RK3328_DBG_WIN1_REG2			0x000002f8
732186f8572SMark Yao #define RK3328_DBG_WIN1_RESERVED		0x000002fc
733186f8572SMark Yao #define RK3328_WIN2_CTRL0			0x00000300
734186f8572SMark Yao #define RK3328_WIN2_CTRL1			0x00000304
735186f8572SMark Yao #define RK3328_WIN2_COLOR_KEY			0x00000308
736186f8572SMark Yao #define RK3328_WIN2_VIR				0x0000030c
737186f8572SMark Yao #define RK3328_WIN2_YRGB_MST			0x00000310
738186f8572SMark Yao #define RK3328_WIN2_CBR_MST			0x00000314
739186f8572SMark Yao #define RK3328_WIN2_ACT_INFO			0x00000318
740186f8572SMark Yao #define RK3328_WIN2_DSP_INFO			0x0000031c
741186f8572SMark Yao #define RK3328_WIN2_DSP_ST			0x00000320
742186f8572SMark Yao #define RK3328_WIN2_SCL_FACTOR_YRGB		0x00000324
743186f8572SMark Yao #define RK3328_WIN2_SCL_FACTOR_CBR		0x00000328
744186f8572SMark Yao #define RK3328_WIN2_SCL_OFFSET			0x0000032c
745186f8572SMark Yao #define RK3328_WIN2_SRC_ALPHA_CTRL		0x00000330
746186f8572SMark Yao #define RK3328_WIN2_DST_ALPHA_CTRL		0x00000334
747186f8572SMark Yao #define RK3328_WIN2_FADING_CTRL			0x00000338
748186f8572SMark Yao #define RK3328_WIN2_CTRL2			0x0000033c
749186f8572SMark Yao #define RK3328_DBG_WIN2_REG0			0x000003f0
750186f8572SMark Yao #define RK3328_DBG_WIN2_REG1			0x000003f4
751186f8572SMark Yao #define RK3328_DBG_WIN2_REG2			0x000003f8
752186f8572SMark Yao #define RK3328_DBG_WIN2_RESERVED		0x000003fc
753186f8572SMark Yao #define RK3328_WIN3_CTRL0			0x00000400
754186f8572SMark Yao #define RK3328_WIN3_CTRL1			0x00000404
755186f8572SMark Yao #define RK3328_WIN3_COLOR_KEY			0x00000408
756186f8572SMark Yao #define RK3328_WIN3_VIR				0x0000040c
757186f8572SMark Yao #define RK3328_WIN3_YRGB_MST			0x00000410
758186f8572SMark Yao #define RK3328_WIN3_CBR_MST			0x00000414
759186f8572SMark Yao #define RK3328_WIN3_ACT_INFO			0x00000418
760186f8572SMark Yao #define RK3328_WIN3_DSP_INFO			0x0000041c
761186f8572SMark Yao #define RK3328_WIN3_DSP_ST			0x00000420
762186f8572SMark Yao #define RK3328_WIN3_SCL_FACTOR_YRGB		0x00000424
763186f8572SMark Yao #define RK3328_WIN3_SCL_FACTOR_CBR		0x00000428
764186f8572SMark Yao #define RK3328_WIN3_SCL_OFFSET			0x0000042c
765186f8572SMark Yao #define RK3328_WIN3_SRC_ALPHA_CTRL		0x00000430
766186f8572SMark Yao #define RK3328_WIN3_DST_ALPHA_CTRL		0x00000434
767186f8572SMark Yao #define RK3328_WIN3_FADING_CTRL			0x00000438
768186f8572SMark Yao #define RK3328_WIN3_CTRL2			0x0000043c
769186f8572SMark Yao #define RK3328_DBG_WIN3_REG0			0x000004f0
770186f8572SMark Yao #define RK3328_DBG_WIN3_REG1			0x000004f4
771186f8572SMark Yao #define RK3328_DBG_WIN3_REG2			0x000004f8
772186f8572SMark Yao #define RK3328_DBG_WIN3_RESERVED		0x000004fc
773186f8572SMark Yao 
774186f8572SMark Yao #define RK3328_HWC_CTRL0			0x00000500
775186f8572SMark Yao #define RK3328_HWC_CTRL1			0x00000504
776186f8572SMark Yao #define RK3328_HWC_MST				0x00000508
777186f8572SMark Yao #define RK3328_HWC_DSP_ST			0x0000050c
778186f8572SMark Yao #define RK3328_HWC_SRC_ALPHA_CTRL		0x00000510
779186f8572SMark Yao #define RK3328_HWC_DST_ALPHA_CTRL		0x00000514
780186f8572SMark Yao #define RK3328_HWC_FADING_CTRL			0x00000518
781186f8572SMark Yao #define RK3328_HWC_RESERVED1			0x0000051c
782186f8572SMark Yao #define RK3328_POST_DSP_HACT_INFO		0x00000600
783186f8572SMark Yao #define RK3328_POST_DSP_VACT_INFO		0x00000604
784186f8572SMark Yao #define RK3328_POST_SCL_FACTOR_YRGB		0x00000608
785186f8572SMark Yao #define RK3328_POST_RESERVED			0x0000060c
786186f8572SMark Yao #define RK3328_POST_SCL_CTRL			0x00000610
787186f8572SMark Yao #define RK3328_POST_DSP_VACT_INFO_F1		0x00000614
788186f8572SMark Yao #define RK3328_DSP_HTOTAL_HS_END		0x00000618
789186f8572SMark Yao #define RK3328_DSP_HACT_ST_END			0x0000061c
790186f8572SMark Yao #define RK3328_DSP_VTOTAL_VS_END		0x00000620
791186f8572SMark Yao #define RK3328_DSP_VACT_ST_END			0x00000624
792186f8572SMark Yao #define RK3328_DSP_VS_ST_END_F1			0x00000628
793186f8572SMark Yao #define RK3328_DSP_VACT_ST_END_F1		0x0000062c
794186f8572SMark Yao #define RK3328_BCSH_COLOR_BAR			0x00000640
795186f8572SMark Yao #define RK3328_BCSH_BCS				0x00000644
796186f8572SMark Yao #define RK3328_BCSH_H				0x00000648
797186f8572SMark Yao #define RK3328_BCSH_CTRL			0x0000064c
798186f8572SMark Yao #define RK3328_FRC_LOWER01_0			0x00000678
799186f8572SMark Yao #define RK3328_FRC_LOWER01_1			0x0000067c
800186f8572SMark Yao #define RK3328_FRC_LOWER10_0			0x00000680
801186f8572SMark Yao #define RK3328_FRC_LOWER10_1			0x00000684
802186f8572SMark Yao #define RK3328_FRC_LOWER11_0			0x00000688
803186f8572SMark Yao #define RK3328_FRC_LOWER11_1			0x0000068c
804186f8572SMark Yao #define RK3328_DBG_POST_REG0			0x000006e8
805186f8572SMark Yao #define RK3328_DBG_POST_RESERVED		0x000006ec
806186f8572SMark Yao #define RK3328_DBG_DATAO			0x000006f0
807186f8572SMark Yao #define RK3328_DBG_DATAO_2			0x000006f4
808186f8572SMark Yao 
809186f8572SMark Yao /* sdr to hdr */
810186f8572SMark Yao #define RK3328_SDR2HDR_CTRL			0x00000700
811186f8572SMark Yao #define RK3328_EOTF_OETF_Y0			0x00000704
812186f8572SMark Yao #define RK3328_RESERVED0001			0x00000708
813186f8572SMark Yao #define RK3328_RESERVED0002			0x0000070c
814186f8572SMark Yao #define RK3328_EOTF_OETF_Y1			0x00000710
815186f8572SMark Yao #define RK3328_EOTF_OETF_Y64			0x0000080c
816186f8572SMark Yao #define RK3328_OETF_DX_DXPOW1			0x00000810
817186f8572SMark Yao #define RK3328_OETF_DX_DXPOW64			0x0000090c
818186f8572SMark Yao #define RK3328_OETF_XN1				0x00000910
819186f8572SMark Yao #define RK3328_OETF_XN63			0x00000a08
820186f8572SMark Yao 
821186f8572SMark Yao /* hdr to sdr */
822186f8572SMark Yao #define RK3328_HDR2SDR_CTRL			0x00000a10
823186f8572SMark Yao #define RK3328_HDR2SDR_SRC_RANGE		0x00000a14
824186f8572SMark Yao #define RK3328_HDR2SDR_NORMFACEETF		0x00000a18
825186f8572SMark Yao #define RK3328_RESERVED0003			0x00000a1c
826186f8572SMark Yao #define RK3328_HDR2SDR_DST_RANGE		0x00000a20
827186f8572SMark Yao #define RK3328_HDR2SDR_NORMFACCGAMMA		0x00000a24
828186f8572SMark Yao #define RK3328_EETF_OETF_Y0			0x00000a28
829186f8572SMark Yao #define RK3328_SAT_Y0				0x00000a2c
830186f8572SMark Yao #define RK3328_EETF_OETF_Y1			0x00000a30
831186f8572SMark Yao #define RK3328_SAT_Y1				0x00000ab0
832186f8572SMark Yao #define RK3328_SAT_Y8				0x00000acc
833186f8572SMark Yao 
834186f8572SMark Yao #define RK3328_HWC_LUT_ADDR			0x00000c00
835186f8572SMark Yao 
836186f8572SMark Yao /* rk3036 register definition */
837186f8572SMark Yao #define RK3036_SYS_CTRL			0x00
838186f8572SMark Yao #define RK3036_DSP_CTRL0		0x04
839186f8572SMark Yao #define RK3036_DSP_CTRL1		0x08
840513e5cb6SSandy Huang #define RK3036_INT_SCALER		0x0c
841186f8572SMark Yao #define RK3036_INT_STATUS		0x10
842186f8572SMark Yao #define RK3036_ALPHA_CTRL		0x14
843186f8572SMark Yao #define RK3036_WIN0_COLOR_KEY		0x18
844186f8572SMark Yao #define RK3036_WIN1_COLOR_KEY		0x1c
845186f8572SMark Yao #define RK3036_WIN0_YRGB_MST		0x20
846186f8572SMark Yao #define RK3036_WIN0_CBR_MST		0x24
847186f8572SMark Yao #define RK3036_WIN1_VIR			0x28
848186f8572SMark Yao #define RK3036_AXI_BUS_CTRL		0x2c
849186f8572SMark Yao #define RK3036_WIN0_VIR			0x30
850186f8572SMark Yao #define RK3036_WIN0_ACT_INFO		0x34
851186f8572SMark Yao #define RK3036_WIN0_DSP_INFO		0x38
852186f8572SMark Yao #define RK3036_WIN0_DSP_ST		0x3c
853186f8572SMark Yao #define RK3036_WIN0_SCL_FACTOR_YRGB	0x40
854186f8572SMark Yao #define RK3036_WIN0_SCL_FACTOR_CBR	0x44
855186f8572SMark Yao #define RK3036_WIN0_SCL_OFFSET		0x48
856186f8572SMark Yao #define RK3036_HWC_MST			0x58
857186f8572SMark Yao #define RK3036_HWC_DSP_ST		0x5c
858186f8572SMark Yao #define RK3036_DSP_HTOTAL_HS_END	0x6c
859186f8572SMark Yao #define RK3036_DSP_HACT_ST_END		0x70
860186f8572SMark Yao #define RK3036_DSP_VTOTAL_VS_END	0x74
861186f8572SMark Yao #define RK3036_DSP_VACT_ST_END		0x78
862186f8572SMark Yao #define RK3036_DSP_VS_ST_END_F1		0x7c
863186f8572SMark Yao #define RK3036_DSP_VACT_ST_END_F1	0x80
864186f8572SMark Yao #define RK3036_GATHER_TRANSFER		0x84
865186f8572SMark Yao #define RK3036_VERSION_INFO		0x94
866186f8572SMark Yao #define RK3036_REG_CFG_DONE		0x90
867186f8572SMark Yao #define RK3036_WIN1_MST			0xa0
868186f8572SMark Yao #define RK3036_WIN1_ACT_INFO		0xb4
869186f8572SMark Yao #define RK3036_WIN1_DSP_INFO		0xb8
870186f8572SMark Yao #define RK3036_WIN1_DSP_ST		0xbc
871186f8572SMark Yao #define RK3036_WIN1_SCL_FACTOR_YRGB	0xc0
872186f8572SMark Yao #define RK3036_WIN1_SCL_OFFSET		0xc8
873186f8572SMark Yao #define RK3036_BCSH_CTRL		0xd0
874186f8572SMark Yao #define RK3036_BCSH_COLOR_BAR		0xd4
875186f8572SMark Yao #define RK3036_BCSH_BCS			0xd8
876186f8572SMark Yao #define RK3036_BCSH_H			0xdc
877186f8572SMark Yao #define RK3036_WIN1_LUT_ADDR		0x400
878186f8572SMark Yao #define RK3036_HWC_LUT_ADDR		0x800
879186f8572SMark Yao /* rk3036 register definition end */
880186f8572SMark Yao 
88148efbc7eSSandy Huang /* rk3126 register definition */
88248efbc7eSSandy Huang #define RK3126_WIN1_MST				0x0004c
88348efbc7eSSandy Huang #define RK3126_WIN1_DSP_INFO			0x00050
88448efbc7eSSandy Huang #define RK3126_WIN1_DSP_ST			0x00054
88548efbc7eSSandy Huang /* rk3126 register definition end */
88648efbc7eSSandy Huang 
8877130fbf6SSandy Huang /* rk3366 register definition */
8887130fbf6SSandy Huang #define RK3366_LIT_REG_CFG_DONE			0x00000
8897130fbf6SSandy Huang #define RK3366_LIT_VERSION			0x00004
8907130fbf6SSandy Huang #define RK3366_LIT_DSP_BG			0x00008
8917130fbf6SSandy Huang #define RK3366_LIT_MCU_CTRL			0x0000c
8927130fbf6SSandy Huang #define RK3366_LIT_SYS_CTRL0			0x00010
8937130fbf6SSandy Huang #define RK3366_LIT_SYS_CTRL1			0x00014
8947130fbf6SSandy Huang #define RK3366_LIT_SYS_CTRL2			0x00018
8957130fbf6SSandy Huang #define RK3366_LIT_DSP_CTRL0			0x00020
8967130fbf6SSandy Huang #define RK3366_LIT_DSP_CTRL2			0x00028
8977130fbf6SSandy Huang #define RK3366_LIT_VOP_STATUS			0x0002c
8987130fbf6SSandy Huang #define RK3366_LIT_LINE_FLAG			0x00030
8997130fbf6SSandy Huang #define RK3366_LIT_INTR_EN			0x00034
9007130fbf6SSandy Huang #define RK3366_LIT_INTR_CLEAR			0x00038
9017130fbf6SSandy Huang #define RK3366_LIT_INTR_STATUS			0x0003c
9027130fbf6SSandy Huang #define RK3366_LIT_WIN0_CTRL0			0x00050
9037130fbf6SSandy Huang #define RK3366_LIT_WIN0_CTRL1			0x00054
9047130fbf6SSandy Huang #define RK3366_LIT_WIN0_COLOR_KEY		0x00058
9057130fbf6SSandy Huang #define RK3366_LIT_WIN0_VIR			0x0005c
9067130fbf6SSandy Huang #define RK3366_LIT_WIN0_YRGB_MST0		0x00060
9077130fbf6SSandy Huang #define RK3366_LIT_WIN0_CBR_MST0		0x00064
9087130fbf6SSandy Huang #define RK3366_LIT_WIN0_ACT_INFO		0x00068
9097130fbf6SSandy Huang #define RK3366_LIT_WIN0_DSP_INFO		0x0006c
9107130fbf6SSandy Huang #define RK3366_LIT_WIN0_DSP_ST			0x00070
9117130fbf6SSandy Huang #define RK3366_LIT_WIN0_SCL_FACTOR_YRGB		0x00074
9127130fbf6SSandy Huang #define RK3366_LIT_WIN0_SCL_FACTOR_CBR		0x00078
9137130fbf6SSandy Huang #define RK3366_LIT_WIN0_SCL_OFFSET		0x0007c
9147130fbf6SSandy Huang #define RK3366_LIT_WIN0_ALPHA_CTRL		0x00080
9157130fbf6SSandy Huang #define RK3366_LIT_WIN1_CTRL0			0x00090
9167130fbf6SSandy Huang #define RK3366_LIT_WIN1_CTRL1			0x00094
9177130fbf6SSandy Huang #define RK3366_LIT_WIN1_VIR			0x00098
9187130fbf6SSandy Huang #define RK3366_LIT_WIN1_MST			0x000a0
9197130fbf6SSandy Huang #define RK3366_LIT_WIN1_DSP_INFO		0x000a4
9207130fbf6SSandy Huang #define RK3366_LIT_WIN1_DSP_ST			0x000a8
9217130fbf6SSandy Huang #define RK3366_LIT_WIN1_COLOR_KEY		0x000ac
9227130fbf6SSandy Huang #define RK3366_LIT_WIN1_ALPHA_CTRL		0x000bc
9237130fbf6SSandy Huang #define RK3366_LIT_HWC_CTRL0			0x000e0
9247130fbf6SSandy Huang #define RK3366_LIT_HWC_CTRL1			0x000e4
9257130fbf6SSandy Huang #define RK3366_LIT_HWC_MST			0x000e8
9267130fbf6SSandy Huang #define RK3366_LIT_HWC_DSP_ST			0x000ec
9277130fbf6SSandy Huang #define RK3366_LIT_HWC_ALPHA_CTRL		0x000f0
9287130fbf6SSandy Huang #define RK3366_LIT_DSP_HTOTAL_HS_END		0x00100
9297130fbf6SSandy Huang #define RK3366_LIT_DSP_HACT_ST_END		0x00104
9307130fbf6SSandy Huang #define RK3366_LIT_DSP_VTOTAL_VS_END		0x00108
9317130fbf6SSandy Huang #define RK3366_LIT_DSP_VACT_ST_END		0x0010c
9327130fbf6SSandy Huang #define RK3366_LIT_DSP_VS_ST_END_F1		0x00110
9337130fbf6SSandy Huang #define RK3366_LIT_DSP_VACT_ST_END_F1		0x00114
9347130fbf6SSandy Huang #define RK3366_LIT_BCSH_CTRL			0x00160
9357130fbf6SSandy Huang #define RK3366_LIT_BCSH_COL_BAR			0x00164
9367130fbf6SSandy Huang #define RK3366_LIT_BCSH_BCS			0x00168
9377130fbf6SSandy Huang #define RK3366_LIT_BCSH_H			0x0016c
9387130fbf6SSandy Huang #define RK3366_LIT_FRC_LOWER01_0		0x00170
9397130fbf6SSandy Huang #define RK3366_LIT_FRC_LOWER01_1		0x00174
9407130fbf6SSandy Huang #define RK3366_LIT_FRC_LOWER10_0		0x00178
9417130fbf6SSandy Huang #define RK3366_LIT_FRC_LOWER10_1		0x0017c
9427130fbf6SSandy Huang #define RK3366_LIT_FRC_LOWER11_0		0x00180
9437130fbf6SSandy Huang #define RK3366_LIT_FRC_LOWER11_1		0x00184
9447130fbf6SSandy Huang #define RK3366_LIT_MCU_RW_BYPASS_PORT		0x0018c
9457130fbf6SSandy Huang #define RK3366_LIT_DBG_REG_000			0x00190
9467130fbf6SSandy Huang #define RK3366_LIT_BLANKING_VALUE		0x001f4
9477130fbf6SSandy Huang #define RK3366_LIT_FLAG_REG_FRM_VALID		0x001f8
9487130fbf6SSandy Huang #define RK3366_LIT_FLAG_REG			0x001fc
9497130fbf6SSandy Huang #define RK3366_LIT_HWC_LUT_ADDR			0x00600
9507130fbf6SSandy Huang #define RK3366_LIT_GAMMA_LUT_ADDR		0x00a00
9517130fbf6SSandy Huang /* rk3366 register definition end */
9527130fbf6SSandy Huang 
9537130fbf6SSandy Huang /* px30 register definition */
9547130fbf6SSandy Huang #define PX30_CABC_CTRL0				0x00200
9557130fbf6SSandy Huang #define PX30_CABC_CTRL1				0x00204
9567130fbf6SSandy Huang #define PX30_CABC_CTRL2				0x00208
9577130fbf6SSandy Huang #define PX30_CABC_CTRL3				0x0020c
9587130fbf6SSandy Huang #define PX30_CABC_GAUSS_LINE0_0			0x00210
9597130fbf6SSandy Huang #define PX30_CABC_GAUSS_LINE0_1			0x00214
9607130fbf6SSandy Huang #define PX30_CABC_GAUSS_LINE1_0			0x00218
9617130fbf6SSandy Huang #define PX30_CABC_GAUSS_LINE1_1			0x0021c
9627130fbf6SSandy Huang #define PX30_CABC_GAUSS_LINE2_0			0x00220
9637130fbf6SSandy Huang #define PX30_CABC_GAUSS_LINE2_1			0x00224
9647130fbf6SSandy Huang #define PX30_AFBCD0_CTRL			0x00240
9657130fbf6SSandy Huang #define PX30_AFBCD0_HDR_PTR			0x00244
9667130fbf6SSandy Huang #define PX30_AFBCD0_PIC_SIZE			0x00248
9677130fbf6SSandy Huang #define PX30_AFBCD0_PIC_OFFSET			0x0024c
9687130fbf6SSandy Huang #define PX30_AFBCD0_AXI_CTRL			0x00250
9693a06149eSSandy Huang #define PX30_GRF_PD_VO_CON1			0x00438
9707130fbf6SSandy Huang /* px30 register definition end */
971ad3aa75aSSandy Huang 
972ad3aa75aSSandy Huang /* rk1808 register definition start*/
973ad3aa75aSSandy Huang #define RK1808_GRF_PD_VO_CON1			0x00000444
974ad3aa75aSSandy Huang /* rk1808 register definition end*/
975ad3aa75aSSandy Huang 
976a144d23dSAndy Yan /* RV1126 register definition start */
977a144d23dSAndy Yan #define RV1126_WIN2_CTRL0			0x0190
978a144d23dSAndy Yan #define RV1126_WIN2_VIR0_1			0x0198
979a144d23dSAndy Yan #define RV1126_WIN2_MST0			0x01a0
980a144d23dSAndy Yan #define RV1126_WIN2_DSP_INFO0			0x01a4
981a144d23dSAndy Yan #define RV1126_WIN2_DSP_ST0			0x01a8
982a144d23dSAndy Yan /* RV1126 register definition end   */
98372f233a9SDamon Ding 
98472f233a9SDamon Ding /* RK3576 EBC VOP register definition start */
98572f233a9SDamon Ding #define EBC_CONFIG_DONE				0x0050
98672f233a9SDamon Ding #define EBC_WIN_MST2				0x0058
98772f233a9SDamon Ding #define EBC_WIN2_CTRL				0x006c
98872f233a9SDamon Ding 
98972f233a9SDamon Ding #define EBC_VOP_SYS_CTRL			0x0100
99072f233a9SDamon Ding #define EBC_VOP_DSP_CTRL0			0x0104
99172f233a9SDamon Ding #define EBC_VOP_DSP_CTRL1			0x0108
99272f233a9SDamon Ding #define EBC_VOP_MCU_CTRL			0x010c
99372f233a9SDamon Ding #define EBC_DSP_HTOTAL_HS_END			0x0110
99472f233a9SDamon Ding #define EBC_DSP_HACT_ST_END			0x0114
99572f233a9SDamon Ding #define EBC_DSP_VTOTAL_VS_END			0x0118
99672f233a9SDamon Ding #define EBC_DSP_VACT_ST_END			0x011c
99772f233a9SDamon Ding #define EBC_DSP_VS_ST_END_F1			0x0120
99872f233a9SDamon Ding #define EBC_DSP_VACT_ST_END_F1			0x0124
99972f233a9SDamon Ding #define EBC_DSP_BG				0x0128
100072f233a9SDamon Ding #define EBC_BLANKING_VALUE			0x012c
100172f233a9SDamon Ding #define EBC_FRC_LOWER01_0			0x0130
100272f233a9SDamon Ding #define EBC_FRC_LOWER01_1			0x0134
100372f233a9SDamon Ding #define EBC_FRC_LOWER10_0			0x0138
100472f233a9SDamon Ding #define EBC_FRC_LOWER10_1			0x013c
100572f233a9SDamon Ding #define EBC_FRC_LOWER11_0			0x0140
100672f233a9SDamon Ding #define EBC_FRC_LOWER11_1			0x0144
100772f233a9SDamon Ding #define EBC_LINE_FLAG				0x0148
100872f233a9SDamon Ding #define EBC_VOP_SCAN_LINE_NUM			0x014c
100972f233a9SDamon Ding #define EBC_VOP_WIN_VIR				0x0150
101072f233a9SDamon Ding #define EBC_VOP_INT_EN				0x0154
101172f233a9SDamon Ding #define EBC_VOP_WIN_DSP_INFO			0x0158
101272f233a9SDamon Ding #define EBC_VOP_WIN_DSP_ST			0x015c
101372f233a9SDamon Ding #define EBC_MCU_RW_BYPASS_PORT			0x0160
101472f233a9SDamon Ding #define EBC_VOP_INT_CLR				0x0164
101572f233a9SDamon Ding #define EBC_VOP_INT_STATUS			0x0168
101672f233a9SDamon Ding 
101772f233a9SDamon Ding #define RK3576_VO0_GRF_SOC_CON9			0x0024
101872f233a9SDamon Ding #define RK3576_VO0_GRF_SOC_CON13		0x0034
101972f233a9SDamon Ding #define RK3576_IOC_GRF_MISC_CON8		0x6420
102072f233a9SDamon Ding /* RK3576 EBC VOP register definition end */
102172f233a9SDamon Ding 
1022*b899f9ccSChaoyi Chen /* RV1126B VOP register definition start */
1023*b899f9ccSChaoyi Chen #define RV1126B_DSP_CTRL1			0x0024
1024*b899f9ccSChaoyi Chen /* RV1126B VOP register definition end */
1025*b899f9ccSChaoyi Chen 
1026186f8572SMark Yao #endif /* _ROCKCHIP_VOP_REG_H */
1027