xref: /netbsd-src/sys/arch/arm/imx/imx51_ipuv3reg.h (revision a656470b019eef959fdfc4c24a9418871e2d7ae9)
1*a656470bShkenken /*	$NetBSD: imx51_ipuv3reg.h,v 1.2 2014/11/07 11:54:18 hkenken Exp $	*/
2456cfa81Sbsh /*
3456cfa81Sbsh  * Copyright (c) 2011, 2012  Genetec Corporation.  All rights reserved.
4456cfa81Sbsh  * Written by Hashimoto Kenichi for Genetec Corporation.
5456cfa81Sbsh  *
6456cfa81Sbsh  * Redistribution and use in source and binary forms, with or without
7456cfa81Sbsh  * modification, are permitted provided that the following conditions
8456cfa81Sbsh  * are met:
9456cfa81Sbsh  * 1. Redistributions of source code must retain the above copyright
10456cfa81Sbsh  *    notice, this list of conditions and the following disclaimer.
11456cfa81Sbsh  * 2. Redistributions in binary form must reproduce the above copyright
12456cfa81Sbsh  *    notice, this list of conditions and the following disclaimer in the
13456cfa81Sbsh  *    documentation and/or other materials provided with the distribution.
14456cfa81Sbsh  *
15456cfa81Sbsh  * THIS SOFTWARE IS PROVIDED BY GENETEC CORPORATION ``AS IS'' AND
16456cfa81Sbsh  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
17456cfa81Sbsh  * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
18456cfa81Sbsh  * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL GENETEC CORPORATION
19456cfa81Sbsh  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
20456cfa81Sbsh  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
21456cfa81Sbsh  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
22456cfa81Sbsh  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
23456cfa81Sbsh  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
24456cfa81Sbsh  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
25456cfa81Sbsh  * POSSIBILITY OF SUCH DAMAGE.
26456cfa81Sbsh  */
27456cfa81Sbsh #ifndef _ARM_IMX_IMX51_IPUV3REG_H
28456cfa81Sbsh #define _ARM_IMX_IMX51_IPUV3REG_H
29456cfa81Sbsh 
30456cfa81Sbsh /* register offset address */
31456cfa81Sbsh 
32456cfa81Sbsh /*
33456cfa81Sbsh  * CM
34456cfa81Sbsh  * Control Module
35456cfa81Sbsh  */
36456cfa81Sbsh #define IPU_CM_CONF			0x00000000
37456cfa81Sbsh #define  CM_CONF_CSI_SEL		__BIT(31)
38456cfa81Sbsh #define  CM_CONF_IC_INPUT		__BIT(30)
39456cfa81Sbsh #define  CM_CONF_CSI1_DATA_SOURCE	__BIT(29)
40456cfa81Sbsh #define  CM_CONF_CSI0_DATA_SOURCE	__BIT(28)
41456cfa81Sbsh #define  CM_CONF_VDI_DMFC_SYNC		__BIT(27)
42456cfa81Sbsh #define  CM_CONF_IC_DMFC_SYNC		__BIT(26)
43456cfa81Sbsh #define  CM_CONF_IC_DMFC_SEL		__BIT(25)
44456cfa81Sbsh #define  CM_CONF_ISP_DOUBLE_FLOW	__BIT(24)
45456cfa81Sbsh #define  CM_CONF_IDMAC_DISABLE		__BIT(22)
46456cfa81Sbsh #define  CM_CONF_IPU_DIAGBUS_ON		__BIT(21)
47456cfa81Sbsh #define  CM_CONF_IPU_DIAGBUS_MODE	__BITS(20, 16)
48456cfa81Sbsh #define  CM_CONF_VDI_EN			__BIT(12)
49456cfa81Sbsh #define  CM_CONF_SISG_EN		__BIT(11)
50456cfa81Sbsh #define  CM_CONF_DMFC_EN		__BIT(10)
51456cfa81Sbsh #define  CM_CONF_DC_EN			__BIT(9)
52456cfa81Sbsh #define  CM_CONF_SMFC_EN		__BIT(8)
53456cfa81Sbsh #define  CM_CONF_DI1_EN			__BIT(7)
54456cfa81Sbsh #define  CM_CONF_DI0_EN			__BIT(6)
55456cfa81Sbsh #define  CM_CONF_DP_EN			__BIT(5)
56456cfa81Sbsh #define  CM_CONF_ISP_EN			__BIT(4)
57456cfa81Sbsh #define  CM_CONF_IRT_EN			__BIT(3)
58456cfa81Sbsh #define  CM_CONF_IC_EN			__BIT(2)
59456cfa81Sbsh #define  CM_CONF_CSI1_EN		__BIT(1)
60456cfa81Sbsh #define  CM_CONF_CSI0_EN		__BIT(0)
61456cfa81Sbsh #define IPU_SISG_CTRL0			0x00000004
62456cfa81Sbsh #define IPU_SISG_CTRL1			0x00000008
63456cfa81Sbsh #define IPU_CM_INT_CTRL_1		0x0000003c
64456cfa81Sbsh #define IPU_CM_INT_CTRL_2		0x00000040
65456cfa81Sbsh #define IPU_CM_INT_CTRL_3		0x00000044
66456cfa81Sbsh #define IPU_CM_INT_CTRL_4		0x00000048
67456cfa81Sbsh #define IPU_CM_INT_CTRL_5		0x0000004c
68456cfa81Sbsh #define IPU_CM_INT_CTRL_6		0x00000050
69456cfa81Sbsh #define IPU_CM_INT_CTRL_7		0x00000054
70456cfa81Sbsh #define IPU_CM_INT_CTRL_8		0x00000058
71456cfa81Sbsh #define IPU_CM_INT_CTRL_9		0x0000005c
72456cfa81Sbsh #define IPU_CM_INT_CTRL_10		0x00000060
73456cfa81Sbsh #define IPU_CM_INT_CTRL_11		0x00000064
74456cfa81Sbsh #define IPU_CM_INT_CTRL_12		0x00000068
75456cfa81Sbsh #define IPU_CM_INT_CTRL_13		0x0000006c
76456cfa81Sbsh #define IPU_CM_INT_CTRL_14		0x00000070
77456cfa81Sbsh #define IPU_CM_INT_CTRL_15		0x00000074
78456cfa81Sbsh #define IPU_CM_SDMA_EVENT_1		0x00000078
79456cfa81Sbsh #define IPU_CM_SDMA_EVENT_2		0x0000007c
80456cfa81Sbsh #define IPU_CM_SDMA_EVENT_3		0x00000080
81456cfa81Sbsh #define IPU_CM_SDMA_EVENT_4		0x00000084
82456cfa81Sbsh #define IPU_CM_SDMA_EVENT_7		0x00000088
83456cfa81Sbsh #define IPU_CM_SDMA_EVENT_8		0x0000008c
84456cfa81Sbsh #define IPU_CM_SDMA_EVENT_11		0x00000090
85456cfa81Sbsh #define IPU_CM_SDMA_EVENT_12		0x00000094
86456cfa81Sbsh #define IPU_CM_SDMA_EVENT_13		0x00000098
87456cfa81Sbsh #define IPU_CM_SDMA_EVENT_14		0x0000009c
88456cfa81Sbsh #define IPU_CM_SRM_PRI1			0x000000a0
89456cfa81Sbsh #define IPU_CM_SRM_PRI2			0x000000a4
90456cfa81Sbsh #define IPU_CM_FS_PROC_FLOW1		0x000000a8
91456cfa81Sbsh #define IPU_CM_FS_PROC_FLOW2		0x000000ac
92456cfa81Sbsh #define IPU_CM_FS_PROC_FLOW3		0x000000b0
93456cfa81Sbsh #define IPU_CM_FS_DISP_FLOW1		0x000000b4
94456cfa81Sbsh #define IPU_CM_FS_DISP_FLOW2		0x000000b8
95456cfa81Sbsh #define IPU_CM_SKIP			0x000000bc
96456cfa81Sbsh #define IPU_CM_DISP_ALT_CONF		0x000000c0
97456cfa81Sbsh #define IPU_CM_DISP_GEN			0x000000c4
98*a656470bShkenken #define  CM_DISP_GEN_DI1_COUNTER_RELEASE	__BIT(25)
99456cfa81Sbsh #define  CM_DISP_GEN_DI0_COUNTER_RELEASE	__BIT(24)
100*a656470bShkenken #define  CM_DISP_GEN_MCU_CSI_VSYNC_DEST	__BIT(23)
101456cfa81Sbsh #define  CM_DISP_GEN_MCU_MAX_BURST_STOP	__BIT(22)
102*a656470bShkenken #define  CM_DISP_GEN_MCU_T		__BITS(18, 21)
103456cfa81Sbsh #define IPU_CM_DISP_ALT1		0x000000c8
104456cfa81Sbsh #define IPU_CM_DISP_ALT2		0x000000cc
105456cfa81Sbsh #define IPU_CM_DISP_ALT3		0x000000d0
106456cfa81Sbsh #define IPU_CM_DISP_ALT4		0x000000d4
107456cfa81Sbsh #define IPU_CM_SNOOP			0x000000d8
108456cfa81Sbsh #define IPU_CM_MEM_RST			0x000000dc
109456cfa81Sbsh #define  CM_MEM_START			__BIT(31)
110456cfa81Sbsh #define  CM_MEM_EN			__BITS(22, 0)
111456cfa81Sbsh #define IPU_CM_PM			0x000000e0
112456cfa81Sbsh #define IPU_CM_GPR			0x000000e4
113456cfa81Sbsh #define  CM_GPR_IPU_CH_BUF1_RDY1_CLR		__BIT(31)
114456cfa81Sbsh #define  CM_GPR_IPU_CH_BUF1_RDY0_CLR		__BIT(30)
115456cfa81Sbsh #define  CM_GPR_IPU_CH_BUF0_RDY1_CLR		__BIT(29)
116456cfa81Sbsh #define  CM_GPR_IPU_CH_BUF0_RDY0_CLR		__BIT(28)
117456cfa81Sbsh #define  CM_GPR_IPU_ALT_CH_BUF1_RDY1_CLR	__BIT(27)
118456cfa81Sbsh #define  CM_GPR_IPU_ALT_CH_BUF1_RDY0_CLR	__BIT(26)
119456cfa81Sbsh #define  CM_GPR_IPU_ALT_CH_BUF0_RDY1_CLR	__BIT(25)
120456cfa81Sbsh #define  CM_GPR_IPU_ALT_CH_BUF0_RDY0_CLR	__BIT(24)
121456cfa81Sbsh #define  CM_GPR_IPU_DI1_CLK_CHANGE_ACK_DIS	__BIT(23)
122456cfa81Sbsh #define  CM_GPR_IPU_DI0_CLK_CHANGE_ACK_DIS	__BIT(22)
123456cfa81Sbsh #define  CM_GPR_IPU_CH_BUF2_RDY1_CLR		__BIT(21)
124456cfa81Sbsh #define  CM_GPR_IPU_CH_BUF2_RDY0_CLR		__BIT(20)
125456cfa81Sbsh #define  CM_GPR_IPU_GP(n)			__BIT((n))
126456cfa81Sbsh #define IPU_CM_CH_DB_MODE_SEL_0		0x00000150
127456cfa81Sbsh #define IPU_CM_CH_DB_MODE_SEL_1		0x00000154
128456cfa81Sbsh #define IPU_CM_ALT_CH_DB_MODE_SEL_0	0x00000168
129456cfa81Sbsh #define IPU_CM_ALT_CH_DB_MODE_SEL_1	0x0000016c
130456cfa81Sbsh #define IPU_CM_CH_TRB_MODE_SEL_0	0x00000178
131456cfa81Sbsh #define IPU_CM_CH_TRB_MODE_SEL_1	0x0000017c
132456cfa81Sbsh #define IPU_CM_INT_STAT_1		0x00000200
133456cfa81Sbsh #define IPU_CM_INT_STAT_2		0x00000204
134456cfa81Sbsh #define IPU_CM_INT_STAT_3		0x00000208
135456cfa81Sbsh #define IPU_CM_INT_STAT_4		0x0000020c
136456cfa81Sbsh #define IPU_CM_INT_STAT_5		0x00000210
137456cfa81Sbsh #define IPU_CM_INT_STAT_6		0x00000214
138456cfa81Sbsh #define IPU_CM_INT_STAT_7		0x00000218
139456cfa81Sbsh #define IPU_CM_INT_STAT_8		0x0000021c
140456cfa81Sbsh #define IPU_CM_INT_STAT_9		0x00000220
141456cfa81Sbsh #define IPU_CM_INT_STAT_10		0x00000224
142456cfa81Sbsh #define IPU_CM_INT_STAT_11		0x00000228
143456cfa81Sbsh #define IPU_CM_INT_STAT_12		0x0000022c
144456cfa81Sbsh #define IPU_CM_INT_STAT_13		0x00000230
145456cfa81Sbsh #define IPU_CM_INT_STAT_14		0x00000234
146456cfa81Sbsh #define IPU_CM_INT_STAT_15		0x00000238
147456cfa81Sbsh #define IPU_CM_CUR_BUF_0		0x0000023c
148456cfa81Sbsh #define IPU_CM_CUR_BUF_1		0x00000240
149456cfa81Sbsh #define IPU_CM_ALT_CUR_BUF_0		0x00000244
150456cfa81Sbsh #define IPU_CM_ALT_CUR_BUF_1		0x00000248
151456cfa81Sbsh #define IPU_CM_SRM_STAT			0x0000024c
152456cfa81Sbsh #define IPU_CM_PROC_TASKS_STAT		0x00000250
153456cfa81Sbsh #define IPU_CM_DISP_TASKS_STAT		0x00000254
154456cfa81Sbsh #define IPU_CM_TRIPLE_CUR_BUF_0		0x00000258
155456cfa81Sbsh #define IPU_CM_TRIPLE_CUR_BUF_1		0x0000025c
156456cfa81Sbsh #define IPU_CM_TRIPLE_CUR_BUF_2		0x00000260
157456cfa81Sbsh #define IPU_CM_TRIPLE_CUR_BUF_3		0x00000264
158456cfa81Sbsh #define IPU_CM_CH_BUF0_RDY0		0x00000268
159456cfa81Sbsh #define IPU_CM_CH_BUF0_RDY1		0x0000026c
160456cfa81Sbsh #define IPU_CM_CH_BUF1_RDY0		0x00000270
161456cfa81Sbsh #define IPU_CM_CH_BUF1_RDY1		0x00000274
162456cfa81Sbsh #define IPU_CM_ALT_CH_BUF0_RDY0		0x00000278
163456cfa81Sbsh #define IPU_CM_ALT_CH_BUF0_RDY1		0x0000027c
164456cfa81Sbsh #define IPU_CM_ALT_CH_BUF1_RDY0		0x00000280
165456cfa81Sbsh #define IPU_CM_ALT_CH_BUF1_RDY1		0x00000284
166456cfa81Sbsh #define IPU_CM_CH_BUF2_RDY0		0x00000288
167456cfa81Sbsh #define IPU_CM_CH_BUF2_RDY1		0x0000028c
168456cfa81Sbsh 
169456cfa81Sbsh /*
170456cfa81Sbsh  * IDMAC
171456cfa81Sbsh  * Image DMA Controller
172456cfa81Sbsh  */
173456cfa81Sbsh #define IPU_IDMAC_CONF		0x00000000
174456cfa81Sbsh #define IPU_IDMAC_CH_EN_1	0x00000004
175456cfa81Sbsh #define IPU_IDMAC_CH_EN_2	0x00000008
176456cfa81Sbsh #define IPU_IDMAC_SEP_ALPHA	0x0000000c
177456cfa81Sbsh #define IPU_IDMAC_ALT_SEP_ALPHA	0x00000010
178456cfa81Sbsh #define IPU_IDMAC_CH_PRI_1	0x00000014
179456cfa81Sbsh #define IPU_IDMAC_CH_PRI_2	0x00000018
180456cfa81Sbsh #define IPU_IDMAC_WM_EN_1	0x0000001c
181456cfa81Sbsh #define IPU_IDMAC_WM_EN_2	0x00000020
182456cfa81Sbsh #define IPU_IDMAC_LOCK_EN_1	0x00000024
183456cfa81Sbsh #define IPU_IDMAC_LOCK_EN_2	0x00000028
184456cfa81Sbsh #define IPU_IDMAC_SUB_ADDR_0	0x0000002c
185456cfa81Sbsh #define IPU_IDMAC_SUB_ADDR_1	0x00000030
186456cfa81Sbsh #define IPU_IDMAC_SUB_ADDR_2	0x00000034
187456cfa81Sbsh #define IPU_IDMAC_SUB_ADDR_3	0x00000038
188456cfa81Sbsh #define IPU_IDMAC_SUB_ADDR_4	0x0000003c
189456cfa81Sbsh #define IPU_IDMAC_BNDM_EN_1	0x00000040
190456cfa81Sbsh #define IPU_IDMAC_BNDM_EN_2	0x00000044
191456cfa81Sbsh #define IPU_IDMAC_SC_CORD	0x00000048
192456cfa81Sbsh #define IPU_IDMAC_SC_CORD1	0x0000004c
193456cfa81Sbsh #define IPU_IDMAC_CH_BUSY_1	0x00000100
194456cfa81Sbsh #define IPU_IDMAC_CH_BUSY_2	0x00000104
195456cfa81Sbsh 
196456cfa81Sbsh #define CH_PANNEL_BG	23
197456cfa81Sbsh #define CH_PANNEL_FG	27
198456cfa81Sbsh 
199456cfa81Sbsh /*
200456cfa81Sbsh  * DP
201456cfa81Sbsh  * Display Port
202456cfa81Sbsh  */
203456cfa81Sbsh #define IPU_DP_DEBUG_CNT	0x000000bc
204456cfa81Sbsh #define IPU_DP_DEBUG_STAT	0x000000c0
205456cfa81Sbsh 
206456cfa81Sbsh /*
207456cfa81Sbsh  * IC
208456cfa81Sbsh  * Image Converter
209456cfa81Sbsh  */
210456cfa81Sbsh #define IPU_IC_CONF		0x00000000
211456cfa81Sbsh #define IPU_IC_PRP_ENC_RSC	0x00000004
212456cfa81Sbsh #define IPU_IC_PRP_VF_RSC	0x00000008
213456cfa81Sbsh #define IPU_IC_PP_RSC		0x0000000c
214456cfa81Sbsh #define IPU_IC_CMBP_1		0x00000010
215456cfa81Sbsh #define IPU_IC_CMBP_2		0x00000014
216456cfa81Sbsh #define IPU_IC_IDMAC_1		0x00000018
217456cfa81Sbsh #define IPU_IC_IDMAC_2		0x0000001c
218456cfa81Sbsh #define IPU_IC_IDMAC_3		0x00000020
219456cfa81Sbsh #define IPU_IC_IDMAC_4		0x00000024
220456cfa81Sbsh 
221456cfa81Sbsh /*
222456cfa81Sbsh  * CSI
223456cfa81Sbsh  * Camera Sensor Interface
224456cfa81Sbsh  */
225456cfa81Sbsh #define IPU_CSI0_SENS_CONF	0x00000000
226456cfa81Sbsh #define IPU_CSI0_SENS_FRM_SIZE	0x00000004
227456cfa81Sbsh #define IPU_CSI0_ACT_FRM_SIZE	0x00000008
228456cfa81Sbsh #define IPU_CSI0_OUT_FRM_CTRL	0x0000000c
229456cfa81Sbsh #define IPU_CSI0_TST_CTRL	0x00000010
230456cfa81Sbsh #define IPU_CSI0_CCIR_CODE_1	0x00000014
231456cfa81Sbsh #define IPU_CSI0_CCIR_CODE_2	0x00000018
232456cfa81Sbsh #define IPU_CSI0_CCIR_CODE_3	0x0000001c
233456cfa81Sbsh #define IPU_CSI0_DI		0x00000020
234456cfa81Sbsh #define IPU_CSI0_SKIP		0x00000024
235456cfa81Sbsh #define IPU_CSI0_CPD_CTRL	0x00000028
236456cfa81Sbsh #define IPU_CSI0_CPD_OFFSET1	0x000000ec
237456cfa81Sbsh #define IPU_CSI0_CPD_OFFSET2	0x000000f0
238456cfa81Sbsh 
239456cfa81Sbsh #define IPU_CSI1_SENS_CONF	0x00000000
240456cfa81Sbsh #define IPU_CSI1_SENS_FRM_SIZE	0x00000004
241456cfa81Sbsh #define IPU_CSI1_ACT_FRM_SIZE	0x00000008
242456cfa81Sbsh #define IPU_CSI1_OUT_FRM_CTRL	0x0000000c
243456cfa81Sbsh #define IPU_CSI1_TST_CTRL	0x00000010
244456cfa81Sbsh #define IPU_CSI1_CCIR_CODE_1	0x00000014
245456cfa81Sbsh #define IPU_CSI1_CCIR_CODE_2	0x00000018
246456cfa81Sbsh #define IPU_CSI1_CCIR_CODE_3	0x0000001c
247456cfa81Sbsh #define IPU_CSI1_DI		0x00000020
248456cfa81Sbsh #define IPU_CSI1_SKIP		0x00000024
249456cfa81Sbsh #define IPU_CSI1_CPD_CTRL	0x00000028
250456cfa81Sbsh #define IPU_CSI1_CPD_OFFSET1	0x000000ec
251456cfa81Sbsh #define IPU_CSI1_CPD_OFFSET2	0x000000f0
252456cfa81Sbsh 
253456cfa81Sbsh /*
254456cfa81Sbsh  * DI
255456cfa81Sbsh  * Display Interface
256456cfa81Sbsh  */
257456cfa81Sbsh #define IPU_DI_GENERAL			0x00000000
258456cfa81Sbsh #define  DI_GENERAL_DISP_Y_SEL		__BITS(30, 28)
259456cfa81Sbsh #define  DI_GENERAL_CLOCK_STOP_MODE	__BITS(27, 24)
260456cfa81Sbsh #define  DI_GENERAL_DISP_CLOCK_INIT	__BIT(23)
261456cfa81Sbsh #define  DI_GENERAL_MASK_SEL		__BIT(22)
262456cfa81Sbsh #define  DI_GENERAL_VSYNC_EXT		__BIT(21)
263456cfa81Sbsh #define  DI_GENERAL_CLK_EXT		__BIT(20)
264456cfa81Sbsh #define  DI_GENERAL_WATCHDOG_MODE	__BITS(19, 18)
265456cfa81Sbsh #define  DI_GENERAL_POLARITY_DISP_CLK	__BIT(17)
266456cfa81Sbsh #define  DI_GENERAL_SYNC_COUNT_SEL	__BITS(15, 12)
267456cfa81Sbsh #define  DI_GENERAL_ERR_TREATMENT	__BIT(11)
268456cfa81Sbsh #define  DI_GENERAL_ERM_VSYNC_SEL	__BIT(10)
269456cfa81Sbsh #define  DI_GENERAL_POLARITY_CS(n)	(1 << ((n) + 8))
270456cfa81Sbsh #define  DI_GENERAL_POLARITY(n)		(1 << ((n) - 1))
271456cfa81Sbsh 
272456cfa81Sbsh #define IPU_DI_BS_CLKGEN0		0x00000004
273*a656470bShkenken #define  DI_BS_CLKGEN0_OFFSET		__BITS(24, 16)
274*a656470bShkenken #define  DI_BS_CLKGEN0_PERIOD		__BITS(11, 0)
275456cfa81Sbsh #define IPU_DI_BS_CLKGEN1		0x00000008
276*a656470bShkenken #define  DI_BS_CLKGEN1_DOWN		__BITS(24, 16)
277*a656470bShkenken #define  DI_BS_CLKGEN1_UP		__BITS(8, 0)
278456cfa81Sbsh #define IPU_DI_SW_GEN0(n)		(0x0000000c + ((n) - 1) * 4)
279456cfa81Sbsh #define  DI_SW_GEN0_RUN_VAL		__BITS(30, 19)
280456cfa81Sbsh #define  DI_SW_GEN0_RUN_RESOL		__BITS(18, 16)
281456cfa81Sbsh #define  DI_SW_GEN0_OFFSET_VAL		__BITS(14,  3)
282456cfa81Sbsh #define  DI_SW_GEN0_OFFSET_RESOL	__BITS( 2,  0)
283456cfa81Sbsh #define  __DI_SW_GEN0(run_val, run_resol, offset_val, offset_resol)	\
284456cfa81Sbsh 	(((run_val) << 19) | ((run_resol) << 16) | 			\
285456cfa81Sbsh 	 ((offset_val) << 3) | (offset_resol))
286456cfa81Sbsh #define IPU_DI_SW_GEN1(n)		(0x00000030 + ((n) - 1) * 4)
287456cfa81Sbsh #define  DI_SW_GEN1_CNT_POL_GEN_EN	__BITS(30, 29)
288456cfa81Sbsh #define  DI_SW_GEN1_CNT_AUTO_RELOAD	__BIT(28)
289456cfa81Sbsh #define  DI_SW_GEN1_CNT_CLR_SEL		__BITS(27, 25)
290456cfa81Sbsh #define  DI_SW_GEN1_CNT_DOWN		__BITS(24, 16)
291456cfa81Sbsh #define  DI_SW_GEN1_CNT_POL_TRIG_SEL	__BITS(14, 12)
292456cfa81Sbsh #define  DI_SW_GEN1_CNT_POL_CLR_SEL	__BITS(11,  9)
293456cfa81Sbsh #define  DI_SW_GEN1_CNT_UP		__BITS( 8,  0)
294456cfa81Sbsh #define  __DI_SW_GEN1(pol_gen_en, auto_reload, clr_sel, down, pol_trig_sel, pol_clr_sel, up) \
295456cfa81Sbsh 	(((pol_gen_en) << 29) | ((auto_reload) << 28) | \
296456cfa81Sbsh 	 ((clr_sel) << 25) |				\
297456cfa81Sbsh 	    ((down) << 16) | ((pol_trig_sel) << 12) |	\
298456cfa81Sbsh 	 ((pol_clr_sel) << 9) | (up))
299456cfa81Sbsh #define IPU_DI_SYNC_AS_GEN		0x00000054
300456cfa81Sbsh #define  DI_SYNC_AS_GEN_SYNC_START_EN	__BIT(28)
301456cfa81Sbsh #define  DI_SYNC_AS_GEN_VSYNC_SEL	__BITS(15, 13)
302*a656470bShkenken #define  DI_SYNC_AS_GEN_SYNC_START	__BITS(11,  0)
303456cfa81Sbsh #define IPU_DI_DW_GEN(n)		(0x00000058 + (n) * 4)
304*a656470bShkenken #define  DI_DW_GEN_ACCESS_SIZE		__BITS(31, 24)
305*a656470bShkenken #define  DI_DW_GEN_COMPONNENT_SIZE	__BITS(23, 16)
306*a656470bShkenken #define  DI_DW_GEN_PIN(n)		__BITS((((n) - 11) * 2) + 1, \
307*a656470bShkenken 					       ((n) - 11) * 2)
308456cfa81Sbsh #define IPU_DI_DW_SET(n, m)	(0x00000088 + (n) * 4 + (m) * 0x30)
309*a656470bShkenken #define  DI_DW_SET_DOWN		__BITS(24, 16)
310*a656470bShkenken #define  DI_DW_SET_UP		__BITS(8, 0)
311456cfa81Sbsh #define IPU_DI_STP_REP(n)	(0x00000148 + ((n - 1) / 2) * 4)
312*a656470bShkenken #define  DI_STP_REP(n)		(__BITS(11, 0) << (((n - 1) % 2) * 16))
313456cfa81Sbsh #define IPU_DI_SER_CONF			0x0000015c
314456cfa81Sbsh #define IPU_DI_SSC			0x00000160
315456cfa81Sbsh #define IPU_DI_POL			0x00000164
316456cfa81Sbsh #define  DI_POL_DRDY_POLARITY_17 	__BIT(6)
317456cfa81Sbsh #define  DI_POL_DRDY_POLARITY_16 	__BIT(5)
318456cfa81Sbsh #define  DI_POL_DRDY_POLARITY_15 	__BIT(4)
319456cfa81Sbsh #define  DI_POL_DRDY_POLARITY_14 	__BIT(3)
320456cfa81Sbsh #define  DI_POL_DRDY_POLARITY_13 	__BIT(2)
321456cfa81Sbsh #define  DI_POL_DRDY_POLARITY_12 	__BIT(1)
322456cfa81Sbsh #define  DI_POL_DRDY_POLARITY_11 	__BIT(0)
323456cfa81Sbsh #define IPU_DI_AW0			0x00000168
324456cfa81Sbsh #define IPU_DI_AW1			0x0000016c
325456cfa81Sbsh #define IPU_DI_SCR_CONF			0x00000170
326456cfa81Sbsh #define IPU_DI_STAT			0x00000174
327456cfa81Sbsh 
328456cfa81Sbsh /*
329456cfa81Sbsh  * SMFC
330456cfa81Sbsh  * Sensor Multi FIFO Controller
331456cfa81Sbsh  */
332456cfa81Sbsh #define IPU_SMFC_MAP	0x00000000
333456cfa81Sbsh #define IPU_SMFC_WMC	0x00000004
334456cfa81Sbsh #define IPU_SMFC_BS	0x00000008
335456cfa81Sbsh 
336456cfa81Sbsh /*
337456cfa81Sbsh  * DC
338456cfa81Sbsh  * Display Controller
339456cfa81Sbsh  */
340456cfa81Sbsh #define IPU_DC_READ_CH_CONF	0x00000000
341456cfa81Sbsh #define IPU_DC_READ_CH_ADDR	0x00000004
342456cfa81Sbsh 
343456cfa81Sbsh #define IPU_DC_RL0_CH_0		0x00000008
344456cfa81Sbsh #define IPU_DC_RL1_CH_0		0x0000000c
345456cfa81Sbsh #define IPU_DC_RL2_CH_0		0x00000010
346456cfa81Sbsh #define IPU_DC_RL3_CH_0		0x00000014
347456cfa81Sbsh #define IPU_DC_RL4_CH_0		0x00000018
348456cfa81Sbsh #define IPU_DC_WR_CH_CONF_1	0x0000001c
349456cfa81Sbsh #define IPU_DC_WR_CH_ADDR_1	0x00000020
350456cfa81Sbsh #define IPU_DC_RL0_CH_1		0x00000024
351456cfa81Sbsh #define IPU_DC_RL1_CH_1		0x00000028
352456cfa81Sbsh #define IPU_DC_RL2_CH_1		0x0000002c
353456cfa81Sbsh #define IPU_DC_RL3_CH_1		0x00000030
354456cfa81Sbsh #define IPU_DC_RL4_CH_1		0x00000034
355456cfa81Sbsh #define IPU_DC_WR_CH_CONF_2	0x00000038
356456cfa81Sbsh #define IPU_DC_WR_CH_ADDR_2	0x0000003c
357456cfa81Sbsh #define IPU_DC_RL0_CH_2		0x00000040
358456cfa81Sbsh #define IPU_DC_RL1_CH_2		0x00000044
359456cfa81Sbsh #define IPU_DC_RL2_CH_2		0x00000048
360456cfa81Sbsh #define IPU_DC_RL3_CH_2		0x0000004c
361456cfa81Sbsh #define IPU_DC_RL4_CH_2		0x00000050
362456cfa81Sbsh #define IPU_DC_CMD_CH_CONF_3	0x00000054
363456cfa81Sbsh #define IPU_DC_CMD_CH_CONF_4	0x00000058
364456cfa81Sbsh #define IPU_DC_WR_CH_CONF_5	0x0000005c
365456cfa81Sbsh #define IPU_DC_WR_CH_ADDR_5	0x00000060
366456cfa81Sbsh #define IPU_DC_RL0_CH_5		0x00000064
367456cfa81Sbsh #define IPU_DC_RL1_CH_5		0x00000068
368456cfa81Sbsh #define IPU_DC_RL2_CH_5		0x0000006c
369456cfa81Sbsh #define IPU_DC_RL3_CH_5		0x00000070
370456cfa81Sbsh #define IPU_DC_RL4_CH_5		0x00000074
371456cfa81Sbsh #define IPU_DC_WR_CH_CONF_6	0x00000078
372456cfa81Sbsh #define IPU_DC_WR_CH_ADDR_6	0x0000007c
373456cfa81Sbsh #define IPU_DC_RL0_CH_6		0x00000080
374456cfa81Sbsh #define IPU_DC_RL1_CH_6		0x00000084
375456cfa81Sbsh #define IPU_DC_RL2_CH_6		0x00000088
376456cfa81Sbsh #define IPU_DC_RL3_CH_6		0x0000008c
377456cfa81Sbsh #define IPU_DC_RL4_CH_6		0x00000090
378456cfa81Sbsh #define IPU_DC_WR_CH_CONF1_8	0x00000094
379456cfa81Sbsh #define IPU_DC_WR_CH_CONF2_8	0x00000098
380456cfa81Sbsh #define IPU_DC_RL1_CH_8		0x0000009c
381456cfa81Sbsh #define IPU_DC_RL2_CH_8		0x000000a0
382456cfa81Sbsh #define IPU_DC_RL3_CH_8		0x000000a4
383456cfa81Sbsh #define IPU_DC_RL4_CH_8		0x000000a8
384456cfa81Sbsh #define IPU_DC_RL5_CH_8		0x000000ac
385456cfa81Sbsh #define IPU_DC_RL6_CH_8		0x000000b0
386456cfa81Sbsh #define IPU_DC_WR_CH_CONF1_9	0x000000b4
387456cfa81Sbsh #define IPU_DC_WR_CH_CONF2_9	0x000000b8
388456cfa81Sbsh #define IPU_DC_RL1_CH_9		0x000000bc
389456cfa81Sbsh #define IPU_DC_RL2_CH_9		0x000000c0
390456cfa81Sbsh #define IPU_DC_RL3_CH_9		0x000000c4
391456cfa81Sbsh #define IPU_DC_RL4_CH_9		0x000000c8
392456cfa81Sbsh #define IPU_DC_RL5_CH_9		0x000000cc
393456cfa81Sbsh #define IPU_DC_RL6_CH_9		0x000000d0
394456cfa81Sbsh 
395456cfa81Sbsh #define IPU_DC_RL(chan_base, evt)	((chan_base) + (evt / 2) *0x4)
396456cfa81Sbsh #define  DC_RL_CH_0		IPU_DC_RL0_CH_0
397456cfa81Sbsh #define  DC_RL_CH_1		IPU_DC_RL0_CH_1
398456cfa81Sbsh #define  DC_RL_CH_2		IPU_DC_RL0_CH_2
399456cfa81Sbsh #define  DC_RL_CH_5		IPU_DC_RL0_CH_5
400456cfa81Sbsh #define  DC_RL_CH_6		IPU_DC_RL0_CH_6
401456cfa81Sbsh #define  DC_RL_CH_8		IPU_DC_RL0_CH_8
402456cfa81Sbsh 
403456cfa81Sbsh #define  DC_RL_EVT_NF		0
404456cfa81Sbsh #define  DC_RL_EVT_NL		1
405456cfa81Sbsh #define  DC_RL_EVT_EOF		2
406456cfa81Sbsh #define  DC_RL_EVT_NFIELD	3
407456cfa81Sbsh #define  DC_RL_EVT_EOL		4
408456cfa81Sbsh #define  DC_RL_EVT_EOFIELD	5
409456cfa81Sbsh #define  DC_RL_EVT_NEW_ADDR	6
410456cfa81Sbsh #define  DC_RL_EVT_NEW_CHAN	7
411456cfa81Sbsh #define  DC_RL_EVT_NEW_DATA	8
412456cfa81Sbsh 
413456cfa81Sbsh #define IPU_DC_GEN		0x000000d4
414456cfa81Sbsh #define IPU_DC_DISP_CONF1_0	0x000000d8
415456cfa81Sbsh #define IPU_DC_DISP_CONF1_1	0x000000dc
416456cfa81Sbsh #define IPU_DC_DISP_CONF1_2	0x000000e0
417456cfa81Sbsh #define IPU_DC_DISP_CONF1_3	0x000000e4
418456cfa81Sbsh #define IPU_DC_DISP_CONF2_0	0x000000e8
419456cfa81Sbsh #define IPU_DC_DISP_CONF2_1	0x000000ec
420456cfa81Sbsh #define IPU_DC_DISP_CONF2_2	0x000000f0
421456cfa81Sbsh #define IPU_DC_DISP_CONF2_3	0x000000f4
422456cfa81Sbsh #define IPU_DC_DI0_CONF_1	0x000000f8
423456cfa81Sbsh #define IPU_DC_DI0_CONF_2	0x000000fc
424456cfa81Sbsh #define IPU_DC_DI1_CONF_1	0x00000100
425456cfa81Sbsh #define IPU_DC_DI1_CONF_2	0x00000104
426456cfa81Sbsh 
427456cfa81Sbsh #define IPU_DC_MAP_CONF_PNTR(n)	(0x00000108 + (n) * 4)
428456cfa81Sbsh #define IPU_DC_MAP_CONF_0	0x00000108
429456cfa81Sbsh #define IPU_DC_MAP_CONF_1	0x0000010c
430456cfa81Sbsh #define IPU_DC_MAP_CONF_2	0x00000110
431456cfa81Sbsh #define IPU_DC_MAP_CONF_3	0x00000114
432456cfa81Sbsh #define IPU_DC_MAP_CONF_4	0x00000118
433456cfa81Sbsh #define IPU_DC_MAP_CONF_5	0x0000011c
434456cfa81Sbsh #define IPU_DC_MAP_CONF_6	0x00000120
435456cfa81Sbsh #define IPU_DC_MAP_CONF_7	0x00000124
436456cfa81Sbsh #define IPU_DC_MAP_CONF_8	0x00000128
437456cfa81Sbsh #define IPU_DC_MAP_CONF_9	0x0000012c
438456cfa81Sbsh #define IPU_DC_MAP_CONF_10	0x00000130
439456cfa81Sbsh #define IPU_DC_MAP_CONF_11	0x00000134
440456cfa81Sbsh #define IPU_DC_MAP_CONF_12	0x00000138
441456cfa81Sbsh #define IPU_DC_MAP_CONF_13	0x0000013c
442456cfa81Sbsh #define IPU_DC_MAP_CONF_14	0x00000140
443456cfa81Sbsh 
444456cfa81Sbsh #define IPU_DC_MAP_CONF_MASK(n)	(0x00000144 + (n) * 4)
445456cfa81Sbsh #define IPU_DC_MAP_CONF_15	0x00000144
446456cfa81Sbsh #define IPU_DC_MAP_CONF_16	0x00000148
447456cfa81Sbsh #define IPU_DC_MAP_CONF_17	0x0000014c
448456cfa81Sbsh #define IPU_DC_MAP_CONF_18	0x00000150
449456cfa81Sbsh #define IPU_DC_MAP_CONF_19	0x00000154
450456cfa81Sbsh #define IPU_DC_MAP_CONF_20	0x00000158
451456cfa81Sbsh #define IPU_DC_MAP_CONF_21	0x0000015c
452456cfa81Sbsh #define IPU_DC_MAP_CONF_22	0x00000160
453456cfa81Sbsh #define IPU_DC_MAP_CONF_23	0x00000164
454456cfa81Sbsh #define IPU_DC_MAP_CONF_24	0x00000168
455456cfa81Sbsh #define IPU_DC_MAP_CONF_25	0x0000016c
456456cfa81Sbsh #define IPU_DC_MAP_CONF_26	0x00000170
457456cfa81Sbsh 
458456cfa81Sbsh #define IPU_DC_UGDE(m, n)	(0x00000174 + (m) * 0x10 + (n) +4)
459456cfa81Sbsh #define IPU_DC_UGDE0_0		0x00000174
460456cfa81Sbsh #define IPU_DC_UGDE0_1		0x00000178
461456cfa81Sbsh #define IPU_DC_UGDE0_2		0x0000017c
462456cfa81Sbsh #define IPU_DC_UGDE0_3		0x00000180
463456cfa81Sbsh #define IPU_DC_UGDE1_0		0x00000184
464456cfa81Sbsh #define IPU_DC_UGDE1_1		0x00000188
465456cfa81Sbsh #define IPU_DC_UGDE1_2		0x0000018c
466456cfa81Sbsh #define IPU_DC_UGDE1_3		0x00000190
467456cfa81Sbsh #define IPU_DC_UGDE2_0		0x00000194
468456cfa81Sbsh #define IPU_DC_UGDE2_1		0x00000198
469456cfa81Sbsh #define IPU_DC_UGDE2_2		0x0000019c
470456cfa81Sbsh #define IPU_DC_UGDE2_3		0x000001a0
471456cfa81Sbsh #define IPU_DC_UGDE3_0		0x000001a4
472456cfa81Sbsh #define IPU_DC_UGDE3_1		0x000001a8
473456cfa81Sbsh #define IPU_DC_UGDE3_2		0x000001ac
474456cfa81Sbsh #define IPU_DC_UGDE3_3		0x000001b0
475456cfa81Sbsh #define IPU_DC_LLA0		0x000001b4
476456cfa81Sbsh #define IPU_DC_LLA1		0x000001b8
477456cfa81Sbsh #define IPU_DC_R_LLA0		0x000001bc
478456cfa81Sbsh #define IPU_DC_R_LLA1		0x000001c0
479456cfa81Sbsh #define IPU_DC_WR_CH_ADDR_5_ALT	0x000001c4
480456cfa81Sbsh #define IPU_DC_STAT		0x000001c8
481456cfa81Sbsh 
482456cfa81Sbsh /*
483456cfa81Sbsh  * DMFC
484456cfa81Sbsh  * Display Multi FIFO Controller
485456cfa81Sbsh  */
486456cfa81Sbsh #define IPU_DMFC_RD_CHAN		0x00000000
487456cfa81Sbsh #define  DMFC_RD_CHAN_PPW_C		__BITS(25,24)
488456cfa81Sbsh #define  DMFC_RD_CHAN_WM_DR_0		__BITS(23,21)
489456cfa81Sbsh #define  DMFC_RD_CHAN_WM_SET_0		__BITS(20,18)
490456cfa81Sbsh #define  DMFC_RD_CHAN_WM_EN_0		__BIT(17)
491456cfa81Sbsh #define  DMFC_RD_CHAN_BURST_SIZE_0	__BITS( 7, 6)
492456cfa81Sbsh #define IPU_DMFC_WR_CHAN		0x00000004
493456cfa81Sbsh #define  DMFC_WR_CHAN_BUSRT_SIZE_2C	__BITS(31,30)
494456cfa81Sbsh #define  DMFC_WR_CHAN_FIFO_SIZE_2C	__BITS(29,27)
495456cfa81Sbsh #define  DMFC_WR_CHAN_ST_ADDR_2C	__BITS(26,24)
496456cfa81Sbsh #define  DMFC_WR_CHAN_BURST_SIZE_1C	__BITS(23,22)
497456cfa81Sbsh #define  DMFC_WR_CHAN_FIFO_SIZE_1C	__BITS(21,19)
498456cfa81Sbsh #define  DMFC_WR_CHAN_ST_ADDR_1C	__BITS(18,16)
499456cfa81Sbsh #define  DMFC_WR_CHAN_BURST_SIZE_2	__BITS(15,14)
500456cfa81Sbsh #define  DMFC_WR_CHAN_FIFO_SIZE_2	__BITS(13,11)
501456cfa81Sbsh #define  DMFC_WR_CHAN_ST_ADDR_2		__BITS(10, 8)
502456cfa81Sbsh #define  DMFC_WR_CHAN_BURST_SIZE_1	__BITS( 7, 6)
503456cfa81Sbsh #define  DMFC_WR_CHAN_FIFO_SIZE_1	__BITS( 5, 3)
504456cfa81Sbsh #define  DMFC_WR_CHAN_ST_ADDR_1		__BITS( 2, 0)
505456cfa81Sbsh #define IPU_DMFC_WR_CHAN_DEF		0x00000008
506456cfa81Sbsh #define  DMFC_WR_CHAN_DEF_WM_CLR_2C	__BITS(31,29)
507456cfa81Sbsh #define  DMFC_WR_CHAN_DEF_WM_SET_2C	__BITS(28,26)
508456cfa81Sbsh #define  DMFC_WR_CHAN_DEF_WM_EN_2C	__BIT(25)
509456cfa81Sbsh #define  DMFC_WR_CHAN_DEF_WM_CLR_1C	__BITS(23,21)
510456cfa81Sbsh #define  DMFC_WR_CHAN_DEF_WM_SET_1C	__BITS(20,18)
511456cfa81Sbsh #define  DMFC_WR_CHAN_DEF_WM_EN_1C	__BIT(17)
512456cfa81Sbsh #define  DMFC_WR_CHAN_DEF_WM_CLR_2	__BITS(15,13)
513456cfa81Sbsh #define  DMFC_WR_CHAN_DEF_WM_SET_2	__BITS(12,10)
514456cfa81Sbsh #define  DMFC_WR_CHAN_DEF_WM_EN_2	__BIT(9)
515456cfa81Sbsh #define  DMFC_WR_CHAN_DEF_WM_CLR_1	__BITS( 7, 5)
516456cfa81Sbsh #define  DMFC_WR_CHAN_DEF_WM_SET_1	__BITS( 3, 2)
517456cfa81Sbsh #define  DMFC_WR_CHAN_DEF_WM_EN_1	__BIT(1)
518456cfa81Sbsh #define IPU_DMFC_DP_CHAN		0x0000000c
519456cfa81Sbsh #define  DMFC_DP_CHAN_BUSRT_SIZE_6F	__BITS(31,30)
520456cfa81Sbsh #define  DMFC_DP_CHAN_FIFO_SIZE_6F	__BITS(29,27)
521456cfa81Sbsh #define  DMFC_DP_CHAN_ST_ADDR_6F	__BITS(26,24)
522456cfa81Sbsh #define  DMFC_DP_CHAN_BURST_SIZE_6B	__BITS(23,22)
523456cfa81Sbsh #define  DMFC_DP_CHAN_FIFO_SIZE_6B	__BITS(21,19)
524456cfa81Sbsh #define  DMFC_DP_CHAN_ST_ADDR_6B	__BITS(18,16)
525456cfa81Sbsh #define  DMFC_DP_CHAN_BURST_SIZE_5F	__BITS(15,14)
526456cfa81Sbsh #define  DMFC_DP_CHAN_FIFO_SIZE_5F	__BITS(13,11)
527456cfa81Sbsh #define  DMFC_DP_CHAN_ST_ADDR_5F	__BITS(10, 8)
528456cfa81Sbsh #define  DMFC_DP_CHAN_BURST_SIZE_5B	__BITS( 7, 6)
529456cfa81Sbsh #define  DMFC_DP_CHAN_FIFO_SIZE_5B	__BITS( 5, 3)
530456cfa81Sbsh #define  DMFC_DP_CHAN_ST_ADDR_5B	__BITS( 2, 0)
531456cfa81Sbsh #define IPU_DMFC_DP_CHAN_DEF		0x00000010
532456cfa81Sbsh #define  DMFC_DP_CHAN_DEF_WM_CLR_6F	__BITS(31,29)
533456cfa81Sbsh #define  DMFC_DP_CHAN_DEF_WM_SET_6F	__BITS(28,26)
534456cfa81Sbsh #define  DMFC_DP_CHAN_DEF_WM_EN_6F	__BIT(25)
535456cfa81Sbsh #define  DMFC_DP_CHAN_DEF_WM_CLR_6B	__BITS(23,21)
536456cfa81Sbsh #define  DMFC_DP_CHAN_DEF_WM_SET_6B	__BITS(20,18)
537456cfa81Sbsh #define  DMFC_DP_CHAN_DEF_WM_EN_6B	__BIT(17)
538456cfa81Sbsh #define  DMFC_DP_CHAN_DEF_WM_CLR_5F	__BITS(15,13)
539456cfa81Sbsh #define  DMFC_DP_CHAN_DEF_WM_SET_5F	__BITS(12,10)
540456cfa81Sbsh #define  DMFC_DP_CHAN_DEF_WM_EN_5F	__BIT(9)
541456cfa81Sbsh #define  DMFC_DP_CHAN_DEF_WM_CLR_5B	__BITS( 7, 5)
542456cfa81Sbsh #define  DMFC_DP_CHAN_DEF_WM_SET_5B	__BITS( 4, 2)
543456cfa81Sbsh #define  DMFC_DP_CHAN_DEF_WM_EN_5B	__BIT(1)
544456cfa81Sbsh #define IPU_DMFC_GENERAL1		0x00000014
545456cfa81Sbsh #define  DMFC_GENERAL1_WAIT4EOT_9	__BIT(24)
546456cfa81Sbsh #define  DMFC_GENERAL1_WAIT4EOT_6F	__BIT(23)
547456cfa81Sbsh #define  DMFC_GENERAL1_WAIT4EOT_6B	__BIT(22)
548456cfa81Sbsh #define  DMFC_GENERAL1_WAIT4EOT_5F	__BIT(21)
549456cfa81Sbsh #define  DMFC_GENERAL1_WAIT4EOT_5B	__BIT(20)
550456cfa81Sbsh #define  DMFC_GENERAL1_WAIT4EOT_4	__BIT(19)
551456cfa81Sbsh #define  DMFC_GENERAL1_WAIT4EOT_3	__BIT(18)
552456cfa81Sbsh #define  DMFC_GENERAL1_WAIT4EOT_2	__BIT(17)
553456cfa81Sbsh #define  DMFC_GENERAL1_WAIT4EOT_1	__BIT(16)
554456cfa81Sbsh #define  DMFC_GENERAL1_WM_CLR_9		__BITS(15,13)
555456cfa81Sbsh #define  DMFC_GENERAL1_WM_SET_9		__BITS(12,10)
556456cfa81Sbsh #define  DMFC_GENERAL1_BURST_SIZE_9	__BITS( 6, 5)
557456cfa81Sbsh #define  DMFC_GENERAL1_DCDP_SYNC_PR	__BITS( 1, 0)
558456cfa81Sbsh #define   DCDP_SYNC_PR_FORBIDDEN	0
559456cfa81Sbsh #define   DCDP_SYNC_PR_DC_DP		1
560456cfa81Sbsh #define   DCDP_SYNC_PR_DP_DC		2
561456cfa81Sbsh #define   DCDP_SYNC_PR_ROUNDROBIN	3
562456cfa81Sbsh #define IPU_DMFC_GENERAL2		0x00000018
563456cfa81Sbsh #define  DMFC_GENERAL2_FRAME_HEIGHT_RD	__BITS(28,16)
564456cfa81Sbsh #define  DMFC_GENERAL2_FRAME_WIDTH_RD	__BITS(12, 0)
565456cfa81Sbsh #define IPU_DMFC_IC_CTRL		0x0000001c
566456cfa81Sbsh #define  DMFC_IC_CTRL_IC_FRAME_HEIGHT_RD	__BITS(31,19)
567456cfa81Sbsh #define  DMFC_IC_CTRL_IC_FRAME_WIDTH_RD		__BITS(18, 6)
568456cfa81Sbsh #define  DMFC_IC_CTRL_IC_PPW_C			__BITS( 5, 4)
569456cfa81Sbsh #define  DMFC_IC_CTRL_IC_IN_PORT		__BITS( 2, 0)
570456cfa81Sbsh #define   IC_IN_PORT_CH28		0
571456cfa81Sbsh #define   IC_IN_PORT_CH41		1
572456cfa81Sbsh #define   IC_IN_PORT_DISABLE		2
573456cfa81Sbsh #define   IC_IN_PORT_CH23		4
574456cfa81Sbsh #define   IC_IN_PORT_CH27		5
575456cfa81Sbsh #define   IC_IN_PORT_CH24		6
576456cfa81Sbsh #define   IC_IN_PORT_CH29		7
577456cfa81Sbsh #define IPU_DMFC_WR_CHAN_ALT		0x00000020
578456cfa81Sbsh #define IPU_DMFC_WR_CHAN_DEF_ALT	0x00000024
579456cfa81Sbsh #define IPU_DMFC_DP_CHAN_ALT		0x00000028
580456cfa81Sbsh #define IPU_DMFC_DP_CHAN_DEF_ALT	0x0000002c
581456cfa81Sbsh #define  DMFC_DP_CHAN_DEF_ALT_WM_CLR_6F_ALT	__BITS(31,29)
582456cfa81Sbsh #define  DMFC_DP_CHAN_DEF_ALT_WM_SET_6F_ALT	__BITS(28,26)
583456cfa81Sbsh #define  DMFC_DP_CHAN_DEF_ALT_WM_EN_6F_ALT	__BIT(25)
584456cfa81Sbsh #define  DMFC_DP_CHAN_DEF_ALT_WM_CLR_6B_ALT	__BITS(23,21)
585456cfa81Sbsh #define  DMFC_DP_CHAN_DEF_ALT_WM_SET_6B_ALT	__BITS(20,18)
586456cfa81Sbsh #define  DMFC_DP_CHAN_DEF_ALT_WM_EN_6B_ALT	__BIT(17)
587456cfa81Sbsh #define  DMFC_DP_CHAN_DEF_ALT_WM_CLR_5B_ALT	__BITS( 7, 5)
588456cfa81Sbsh #define  DMFC_DP_CHAN_DEF_ALT_WM_SET_5B_ALT	__BITS( 4, 2)
589456cfa81Sbsh #define  DMFC_DP_CHAN_DEF_ALT_WM_EN_5B_ALT	__BIT(1)
590456cfa81Sbsh #define IPU_DMFC_GENERAL1_ALT		0x00000030
591456cfa81Sbsh #define  DMFC_GENERAL1_ALT_WAIT4EOT_6F_ALT	__BIT(23)
592456cfa81Sbsh #define  DMFC_GENERAL1_ALT_WAIT4EOT_6B_ALT	__BIT(22)
593456cfa81Sbsh #define  DMFC_GENERAL1_ALT_WAIT4EOT_5B_ALT	__BIT(20)
594456cfa81Sbsh #define  DMFC_GENERAL1_ALT_WAIT4EOT_2_ALT	__BIT(17)
595456cfa81Sbsh #define IPU_DMFC_STAT			0x00000034
596456cfa81Sbsh #define  DMFC_STAT_IC_BUFFER_EMPTY	__BIT(25)
597456cfa81Sbsh #define  DMFC_STAT_IC_BUFFER_FULL	__BIT(24)
598456cfa81Sbsh #define  DMFC_STAT_FIFO_EMPTY(n)	__BIT(12 + (n))
599456cfa81Sbsh #define  DMFC_STAT_FIFO_FULL(n)		__BIT((n))
600456cfa81Sbsh 
601456cfa81Sbsh /*
602456cfa81Sbsh  * VCI
603456cfa81Sbsh  * Video De Interkacing Module
604456cfa81Sbsh  */
605456cfa81Sbsh #define IPU_VDI_FSIZE	0x00000000
606456cfa81Sbsh #define IPU_VDI_C	0x00000004
607456cfa81Sbsh 
608456cfa81Sbsh /*
609456cfa81Sbsh  * DP
610456cfa81Sbsh  * Display Processor
611456cfa81Sbsh  */
612456cfa81Sbsh #define IPU_DP_COM_CONF_SYNC		0x00000000
613456cfa81Sbsh #define  DP_FG_EN_SYNC			__BIT(0)
614456cfa81Sbsh #define  DP_DP_GWAM_SYNC		__BIT(2)
615456cfa81Sbsh #define IPU_DP_GRAPH_WIND_CTRL_SYNC	0x00000004
616456cfa81Sbsh #define IPU_DP_FG_POS_SYNC		0x00000008
617456cfa81Sbsh #define IPU_DP_CUR_POS_SYNC		0x0000000c
618456cfa81Sbsh #define IPU_DP_CUR_MAP_SYNC		0x00000010
619456cfa81Sbsh #define IPU_DP_CSC_SYNC_0		0x00000054
620456cfa81Sbsh #define IPU_DP_CSC_SYNC_1		0x00000058
621456cfa81Sbsh #define IPU_DP_CUR_POS_ALT		0x0000005c
622456cfa81Sbsh #define IPU_DP_COM_CONF_ASYNC0		0x00000060
623456cfa81Sbsh #define IPU_DP_GRAPH_WIND_CTRL_ASYNC0	0x00000064
624456cfa81Sbsh #define IPU_DP_FG_POS_ASYNC0		0x00000068
625456cfa81Sbsh #define IPU_DP_CUR_POS_ASYNC0		0x0000006c
626456cfa81Sbsh #define IPU_DP_CUR_MAP_ASYNC0		0x00000070
627456cfa81Sbsh #define IPU_DP_CSC_ASYNC0_0		0x000000b4
628456cfa81Sbsh #define IPU_DP_CSC_ASYNC0_1		0x000000b8
629456cfa81Sbsh #define IPU_DP_COM_CONF_ASYNC1		0x000000bc
630456cfa81Sbsh #define IPU_DP_GRAPH_WIND_CTRL_ASYNC1	0x000000c0
631456cfa81Sbsh #define IPU_DP_FG_POS_ASYNC1		0x000000c4
632456cfa81Sbsh #define IPU_DP_CUR_POS_ASYNC1		0x000000c8
633456cfa81Sbsh #define IPU_DP_CUR_MAP_ASYNC1		0x000000cc
634456cfa81Sbsh #define IPU_DP_CSC_ASYNC1_0		0x00000110
635456cfa81Sbsh #define IPU_DP_CSC_ASYNC1_1		0x00000114
636456cfa81Sbsh 
637456cfa81Sbsh /* IDMA parameter */
638456cfa81Sbsh 	/*
639456cfa81Sbsh 	 * non-Interleaved parameter
640456cfa81Sbsh 	 *
641456cfa81Sbsh 	 * param 0: XV W0[ 9: 0]
642456cfa81Sbsh 	 *          YV W0[18:10]
643456cfa81Sbsh 	 *          XB W0[31:19]
644456cfa81Sbsh 	 * param 1: YB W0[43:32]
645456cfa81Sbsh 	 *          NSB W0[44]
646456cfa81Sbsh 	 *          CF W0[45]
647456cfa81Sbsh 	 *          UBO W0[61:46]
648456cfa81Sbsh 	 * param 2: UBO W0[67:62]
649456cfa81Sbsh 	 *          VBO W0[89:68]
650456cfa81Sbsh 	 *          IOX W0[93:90]
651456cfa81Sbsh 	 *          RDRW W0[94]
652456cfa81Sbsh 	 *          Reserved W0[95]
653456cfa81Sbsh 	 * param 3: Reserved W0[112:96]
654456cfa81Sbsh 	 *          S0 W0[113]
655456cfa81Sbsh 	 *          BNDM W0[116:114]
656456cfa81Sbsh 	 *          BM W0[118:117]
657456cfa81Sbsh 	 *          ROT W0[119]
658456cfa81Sbsh 	 *          HF W0[120]
659456cfa81Sbsh 	 *          VF W0[121]
660456cfa81Sbsh 	 *          THF W0[122]
661456cfa81Sbsh 	 *          CAP W0[123]
662456cfa81Sbsh 	 *          CAE W0[124]
663456cfa81Sbsh 	 *          FW W0[127:125]
664456cfa81Sbsh 	 * param 4: FW W0[137:128]
665456cfa81Sbsh 	 *          FH W0[149:138]
666456cfa81Sbsh 	 * param 5: EBA0 W1[28:0]
667456cfa81Sbsh 	 *          EBA1 W1[31:29]
668456cfa81Sbsh 	 * param 6: EBA1 W1[57:32]
669456cfa81Sbsh 	 *          ILO W1[63:58]
670456cfa81Sbsh 	 * param 7: ILO W1[77:64]
671456cfa81Sbsh 	 *          NPB W1[84:78]
672456cfa81Sbsh 	 *          PFS W1[88:85]
673456cfa81Sbsh 	 *          ALU W1[89]
674456cfa81Sbsh 	 *          ALBM W1[92:90]
675456cfa81Sbsh 	 *          ID W1[94:93]
676456cfa81Sbsh 	 *          TH W1[95]
677456cfa81Sbsh 	 * param 8: TH W1[101:96]
678456cfa81Sbsh 	 *          SLY W1[115:102]
679456cfa81Sbsh 	 *          WID3 W1[127:125]
680456cfa81Sbsh 	 * param 9: SLUV W1[141:128]
681456cfa81Sbsh 	 *          CRE W1[149]
682456cfa81Sbsh 	 *
683456cfa81Sbsh 	 * Interleaved parameter
684456cfa81Sbsh 	 *
685456cfa81Sbsh 	 * param 0: XV W0[ 9: 0]
686456cfa81Sbsh 	 *          YV W0[18:10]
687456cfa81Sbsh 	 *          XB W0[31:19]
688456cfa81Sbsh 	 * param 1: YB W0[43:32]
689456cfa81Sbsh 	 *          NSB W0[44]
690456cfa81Sbsh 	 *          CF W0[45]
691456cfa81Sbsh 	 *          SX W0[57:46]
692456cfa81Sbsh 	 *          SY W0[61:58]
693456cfa81Sbsh 	 * param 2: SY W0[68:62]
694456cfa81Sbsh 	 *          NS W0[78:69]
695456cfa81Sbsh 	 *          SDX W0[85:79]
696456cfa81Sbsh 	 *          SM W0[95:86]
697456cfa81Sbsh 	 * param 3: SCC W0[96]
698456cfa81Sbsh 	 *          SCE W0[97]
699456cfa81Sbsh 	 *          SDY W0[104:98]
700456cfa81Sbsh 	 *          SDRX W0[105]
701456cfa81Sbsh 	 *          SDRY W0[106]
702456cfa81Sbsh 	 *          BPP W0[109:107]
703456cfa81Sbsh 	 *	    DEC_SEL W0[111:110]
704456cfa81Sbsh 	 *          DIM W0[112]
705456cfa81Sbsh 	 *          SO W0[113]
706456cfa81Sbsh 	 *          BNDM W0[116:114]
707456cfa81Sbsh 	 *          BM W0[118:117]
708456cfa81Sbsh 	 *          ROT W0[119]
709456cfa81Sbsh 	 *          HF W0[120]
710456cfa81Sbsh 	 *          VF W0[121]
711456cfa81Sbsh 	 *          THF W0[122]
712456cfa81Sbsh 	 *          CAP W0[123]
713456cfa81Sbsh 	 *          CAE W0[124]
714456cfa81Sbsh 	 *          FW W0[127:125]
715456cfa81Sbsh 	 * param 4: FW W0[137:128]
716456cfa81Sbsh 	 *          FH W0[149:138]
717456cfa81Sbsh 	 * param 5: EBA0 W1[28:0]
718456cfa81Sbsh 	 *          EBA1 W1[31:29]
719456cfa81Sbsh 	 * param 6: EBA1 W1[57:32]
720456cfa81Sbsh 	 *          ILO W1[63:58]
721456cfa81Sbsh 	 * param 7: ILO W1[77:64]
722456cfa81Sbsh 	 *          NPB W1[84:78]
723456cfa81Sbsh 	 *          PFS W1[88:85]
724456cfa81Sbsh 	 *          ALU W1[89]
725456cfa81Sbsh 	 *          ALBM W1[92:90]
726456cfa81Sbsh 	 *          ID W1[94:93]
727456cfa81Sbsh 	 *          TH W1[95]
728456cfa81Sbsh 	 * param 8: TH W1[101:96]
729456cfa81Sbsh 	 *          SL W1[115:102]
730456cfa81Sbsh 	 *          WID0 W1[118:116]
731456cfa81Sbsh 	 *          WID1 W1[121:119]
732456cfa81Sbsh 	 *          WID2 W1[124:122]
733456cfa81Sbsh 	 *          WID3 W1[127:125]
734456cfa81Sbsh 	 * param 9: OFS0 W1[132:128]
735456cfa81Sbsh 	 *          OFS1 W1[137:133]
736456cfa81Sbsh 	 *          OFS2 W1[142:138]
737456cfa81Sbsh 	 *          OFS3 W1[147:143]
738456cfa81Sbsh 	 *          SXYS W1[148]
739456cfa81Sbsh 	 *          CRE W1[149]
740456cfa81Sbsh 	 *          DEC_SEL2 W1[150]
741456cfa81Sbsh 	 */
742456cfa81Sbsh 
743456cfa81Sbsh #define __IDMA_PARAM(word, shift, size) \
744456cfa81Sbsh 	((((word) & 0xff) << 16) | (((shift) & 0xff) << 8) | ((size) & 0xff))
745456cfa81Sbsh 
746456cfa81Sbsh /* non-Interleaved parameter */
747456cfa81Sbsh /* W0 */
748456cfa81Sbsh #define IDMAC_Ch_PARAM_XV	__IDMA_PARAM(0,  0, 10)
749456cfa81Sbsh #define IDMAC_Ch_PARAM_YV	__IDMA_PARAM(0, 10,  9)
750456cfa81Sbsh #define IDMAC_Ch_PARAM_XB	__IDMA_PARAM(0, 19, 13)
751456cfa81Sbsh #define IDMAC_Ch_PARAM_YB	__IDMA_PARAM(0, 32, 12)
752456cfa81Sbsh #define IDMAC_Ch_PARAM_NSB	__IDMA_PARAM(0, 44,  1)
753456cfa81Sbsh #define IDMAC_Ch_PARAM_CF	__IDMA_PARAM(0, 45,  1)
754456cfa81Sbsh #define IDMAC_Ch_PARAM_UBO	__IDMA_PARAM(0, 46, 22)
755456cfa81Sbsh #define IDMAC_Ch_PARAM_VBO	__IDMA_PARAM(0, 68, 22)
756456cfa81Sbsh #define IDMAC_Ch_PARAM_IOX	__IDMA_PARAM(0, 90,  4)
757456cfa81Sbsh #define IDMAC_Ch_PARAM_RDRW	__IDMA_PARAM(0, 94,  1)
758456cfa81Sbsh #define IDMAC_Ch_PARAM_S0	__IDMA_PARAM(0,113,  1)
759456cfa81Sbsh #define IDMAC_Ch_PARAM_BNDM	__IDMA_PARAM(0,114,  3)
760456cfa81Sbsh #define IDMAC_Ch_PARAM_BM	__IDMA_PARAM(0,117,  2)
761456cfa81Sbsh #define IDMAC_Ch_PARAM_ROT	__IDMA_PARAM(0,119,  1)
762456cfa81Sbsh #define IDMAC_Ch_PARAM_HF	__IDMA_PARAM(0,120,  1)
763456cfa81Sbsh #define IDMAC_Ch_PARAM_VF	__IDMA_PARAM(0,121,  1)
764456cfa81Sbsh #define IDMAC_Ch_PARAM_THF	__IDMA_PARAM(0,122,  1)
765456cfa81Sbsh #define IDMAC_Ch_PARAM_CAP	__IDMA_PARAM(0,123,  1)
766456cfa81Sbsh #define IDMAC_Ch_PARAM_CAE	__IDMA_PARAM(0,124,  1)
767456cfa81Sbsh #define IDMAC_Ch_PARAM_FW	__IDMA_PARAM(0,125, 13)
768456cfa81Sbsh #define IDMAC_Ch_PARAM_FH	__IDMA_PARAM(0,138, 12)
769456cfa81Sbsh /* W1 */
770456cfa81Sbsh #define IDMAC_Ch_PARAM_EBA0	__IDMA_PARAM(1,  0, 29)
771456cfa81Sbsh #define IDMAC_Ch_PARAM_EBA1	__IDMA_PARAM(1, 29, 29)
772456cfa81Sbsh #define IDMAC_Ch_PARAM_ILO	__IDMA_PARAM(1, 58, 20)
773456cfa81Sbsh #define IDMAC_Ch_PARAM_NPB	__IDMA_PARAM(1, 78,  7)
774456cfa81Sbsh #define IDMAC_Ch_PARAM_PFS	__IDMA_PARAM(1, 85,  4)
775456cfa81Sbsh #define IDMAC_Ch_PARAM_ALU	__IDMA_PARAM(1, 89,  1)
776456cfa81Sbsh #define IDMAC_Ch_PARAM_ALBM	__IDMA_PARAM(1, 90,  3)
777456cfa81Sbsh #define IDMAC_Ch_PARAM_ID	__IDMA_PARAM(1, 93,  2)
778456cfa81Sbsh #define IDMAC_Ch_PARAM_TH	__IDMA_PARAM(1, 95,  7)
779456cfa81Sbsh #define IDMAC_Ch_PARAM_SL	__IDMA_PARAM(1,102, 14)
780456cfa81Sbsh #define IDMAC_Ch_PARAM_WID3	__IDMA_PARAM(1,125,  3)
781456cfa81Sbsh #define IDMAC_Ch_PARAM_SLUV	__IDMA_PARAM(1,128, 14)
782456cfa81Sbsh #define IDMAC_Ch_PARAM_CRE	__IDMA_PARAM(1,149,  1)
783456cfa81Sbsh 
784456cfa81Sbsh /* Interleaved parameter */
785456cfa81Sbsh /* W0 */
786456cfa81Sbsh #define IDMAC_Ch_PARAM_XV	__IDMA_PARAM(0,  0, 10)
787456cfa81Sbsh #define IDMAC_Ch_PARAM_YV	__IDMA_PARAM(0, 10,  9)
788456cfa81Sbsh #define IDMAC_Ch_PARAM_XB	__IDMA_PARAM(0, 19, 13)
789456cfa81Sbsh #define IDMAC_Ch_PARAM_YB	__IDMA_PARAM(0, 32, 12)
790456cfa81Sbsh #define IDMAC_Ch_PARAM_NSB	__IDMA_PARAM(0, 44,  1)
791456cfa81Sbsh #define IDMAC_Ch_PARAM_CF	__IDMA_PARAM(0, 45,  1)
792456cfa81Sbsh #define IDMAC_Ch_PARAM_SX	__IDMA_PARAM(0, 46, 12)
793456cfa81Sbsh #define IDMAC_Ch_PARAM_SY	__IDMA_PARAM(0, 58, 11)
794456cfa81Sbsh #define IDMAC_Ch_PARAM_NS	__IDMA_PARAM(0, 69, 10)
795456cfa81Sbsh #define IDMAC_Ch_PARAM_SDX	__IDMA_PARAM(0, 79,  7)
796456cfa81Sbsh #define IDMAC_Ch_PARAM_SM	__IDMA_PARAM(0, 86, 10)
797456cfa81Sbsh #define IDMAC_Ch_PARAM_SCC	__IDMA_PARAM(0, 96,  1)
798456cfa81Sbsh #define IDMAC_Ch_PARAM_SCE	__IDMA_PARAM(0, 97,  1)
799456cfa81Sbsh #define IDMAC_Ch_PARAM_SDY	__IDMA_PARAM(0, 98,  7)
800456cfa81Sbsh #define IDMAC_Ch_PARAM_SDRX	__IDMA_PARAM(0,105,  1)
801456cfa81Sbsh #define IDMAC_Ch_PARAM_SDRY	__IDMA_PARAM(0,106,  1)
802456cfa81Sbsh #define IDMAC_Ch_PARAM_BPP	__IDMA_PARAM(0,107,  3)
803456cfa81Sbsh #define IDMAC_Ch_PARAM_DEC_SEL	__IDMA_PARAM(0,110,  2)
804456cfa81Sbsh #define IDMAC_Ch_PARAM_DIM	__IDMA_PARAM(0,112,  1)
805456cfa81Sbsh #define IDMAC_Ch_PARAM_SO	__IDMA_PARAM(0,113,  1)
806456cfa81Sbsh #define IDMAC_Ch_PARAM_BNDM	__IDMA_PARAM(0,114,  3)
807456cfa81Sbsh #define IDMAC_Ch_PARAM_BM	__IDMA_PARAM(0,117,  2)
808456cfa81Sbsh #define IDMAC_Ch_PARAM_ROT	__IDMA_PARAM(0,119,  1)
809456cfa81Sbsh #define IDMAC_Ch_PARAM_HF	__IDMA_PARAM(0,120,  1)
810456cfa81Sbsh #define IDMAC_Ch_PARAM_VF	__IDMA_PARAM(0,121,  1)
811456cfa81Sbsh #define IDMAC_Ch_PARAM_THF	__IDMA_PARAM(0,122,  1)
812456cfa81Sbsh #define IDMAC_Ch_PARAM_CAP	__IDMA_PARAM(0,123,  1)
813456cfa81Sbsh #define IDMAC_Ch_PARAM_CAE	__IDMA_PARAM(0,124,  1)
814456cfa81Sbsh #define IDMAC_Ch_PARAM_FW	__IDMA_PARAM(0,125, 13)
815456cfa81Sbsh #define IDMAC_Ch_PARAM_FH	__IDMA_PARAM(0,138, 12)
816456cfa81Sbsh /* W1 */
817456cfa81Sbsh #define IDMAC_Ch_PARAM_EBA0	__IDMA_PARAM(1,  0, 29)
818456cfa81Sbsh #define IDMAC_Ch_PARAM_EBA1	__IDMA_PARAM(1, 29, 29)
819456cfa81Sbsh #define IDMAC_Ch_PARAM_ILO	__IDMA_PARAM(1, 58, 20)
820456cfa81Sbsh #define IDMAC_Ch_PARAM_NPB	__IDMA_PARAM(1, 78,  7)
821456cfa81Sbsh #define IDMAC_Ch_PARAM_PFS	__IDMA_PARAM(1, 85,  4)
822456cfa81Sbsh #define IDMAC_Ch_PARAM_ALU	__IDMA_PARAM(1, 89,  1)
823456cfa81Sbsh #define IDMAC_Ch_PARAM_ALBM	__IDMA_PARAM(1, 90,  3)
824456cfa81Sbsh #define IDMAC_Ch_PARAM_ID	__IDMA_PARAM(1, 93,  2)
825456cfa81Sbsh #define IDMAC_Ch_PARAM_TH	__IDMA_PARAM(1, 95,  7)
826456cfa81Sbsh #define IDMAC_Ch_PARAM_SL	__IDMA_PARAM(1,102, 14)
827456cfa81Sbsh #define IDMAC_Ch_PARAM_WID0	__IDMA_PARAM(1,116,  3)
828456cfa81Sbsh #define IDMAC_Ch_PARAM_WID1	__IDMA_PARAM(1,119,  3)
829456cfa81Sbsh #define IDMAC_Ch_PARAM_WID2	__IDMA_PARAM(1,122,  3)
830456cfa81Sbsh #define IDMAC_Ch_PARAM_WID3	__IDMA_PARAM(1,125,  3)
831456cfa81Sbsh #define IDMAC_Ch_PARAM_OFS0	__IDMA_PARAM(1,128,  5)
832456cfa81Sbsh #define IDMAC_Ch_PARAM_OFS1	__IDMA_PARAM(1,133,  5)
833456cfa81Sbsh #define IDMAC_Ch_PARAM_OFS2	__IDMA_PARAM(1,138,  5)
834456cfa81Sbsh #define IDMAC_Ch_PARAM_OFS3	__IDMA_PARAM(1,143,  5)
835456cfa81Sbsh #define IDMAC_Ch_PARAM_SXYS	__IDMA_PARAM(1,148,  1)
836456cfa81Sbsh #define IDMAC_Ch_PARAM_CRE	__IDMA_PARAM(1,149,  1)
837456cfa81Sbsh #define IDMAC_Ch_PARAM_DEC_SEL2 __IDMA_PARAM(1,150,  1)
838456cfa81Sbsh 
839456cfa81Sbsh #endif /* _ARM_IMX_IMX51_IPUV3REG_H */
840