xref: /netbsd-src/sys/arch/arm/sunxi/sun6i_a31_ccu.h (revision ddb9dd9c9b08a178fc6090283fe29c04d9b88a52)
1*ddb9dd9cSjmcneill /* $NetBSD: sun6i_a31_ccu.h,v 1.1 2017/07/02 00:14:09 jmcneill Exp $ */
2*ddb9dd9cSjmcneill 
3*ddb9dd9cSjmcneill /*-
4*ddb9dd9cSjmcneill  * Copyright (c) 2017 Emmanuel Vadot <manu@freebsd.org>
5*ddb9dd9cSjmcneill  * All rights reserved.
6*ddb9dd9cSjmcneill  *
7*ddb9dd9cSjmcneill  * Redistribution and use in source and binary forms, with or without
8*ddb9dd9cSjmcneill  * modification, are permitted provided that the following conditions
9*ddb9dd9cSjmcneill  * are met:
10*ddb9dd9cSjmcneill  * 1. Redistributions of source code must retain the above copyright
11*ddb9dd9cSjmcneill  *    notice, this list of conditions and the following disclaimer.
12*ddb9dd9cSjmcneill  * 2. Redistributions in binary form must reproduce the above copyright
13*ddb9dd9cSjmcneill  *    notice, this list of conditions and the following disclaimer in the
14*ddb9dd9cSjmcneill  *    documentation and/or other materials provided with the distribution.
15*ddb9dd9cSjmcneill  *
16*ddb9dd9cSjmcneill  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
17*ddb9dd9cSjmcneill  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
18*ddb9dd9cSjmcneill  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
19*ddb9dd9cSjmcneill  * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
20*ddb9dd9cSjmcneill  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
21*ddb9dd9cSjmcneill  * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
22*ddb9dd9cSjmcneill  * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
23*ddb9dd9cSjmcneill  * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
24*ddb9dd9cSjmcneill  * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
25*ddb9dd9cSjmcneill  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
26*ddb9dd9cSjmcneill  * SUCH DAMAGE.
27*ddb9dd9cSjmcneill  *
28*ddb9dd9cSjmcneill  * $FreeBSD$
29*ddb9dd9cSjmcneill  */
30*ddb9dd9cSjmcneill 
31*ddb9dd9cSjmcneill #ifndef __CCU_A31_H__
32*ddb9dd9cSjmcneill #define __CCU_A31_H__
33*ddb9dd9cSjmcneill 
34*ddb9dd9cSjmcneill #define	A31_RST_USB_PHY0		0
35*ddb9dd9cSjmcneill #define	A31_RST_USB_PHY1		1
36*ddb9dd9cSjmcneill #define	A31_RST_USB_PHY2		2
37*ddb9dd9cSjmcneill #define	A31_RST_AHB1_MIPI_DSI		3
38*ddb9dd9cSjmcneill #define	A31_RST_AHB1_SS			4
39*ddb9dd9cSjmcneill #define	A31_RST_AHB1_DMA		5
40*ddb9dd9cSjmcneill #define	A31_RST_AHB1_MMC0		6
41*ddb9dd9cSjmcneill #define	A31_RST_AHB1_MMC1		7
42*ddb9dd9cSjmcneill #define	A31_RST_AHB1_MMC2		8
43*ddb9dd9cSjmcneill #define	A31_RST_AHB1_MMC3		9
44*ddb9dd9cSjmcneill #define	A31_RST_AHB1_NAND1		10
45*ddb9dd9cSjmcneill #define	A31_RST_AHB1_NAND0		11
46*ddb9dd9cSjmcneill #define	A31_RST_AHB1_SDRAM		12
47*ddb9dd9cSjmcneill #define	A31_RST_AHB1_EMAC		13
48*ddb9dd9cSjmcneill #define	A31_RST_AHB1_TS			14
49*ddb9dd9cSjmcneill #define	A31_RST_AHB1_HSTIMER		15
50*ddb9dd9cSjmcneill #define	A31_RST_AHB1_SPI0		16
51*ddb9dd9cSjmcneill #define	A31_RST_AHB1_SPI1		17
52*ddb9dd9cSjmcneill #define	A31_RST_AHB1_SPI2		18
53*ddb9dd9cSjmcneill #define	A31_RST_AHB1_SPI3		19
54*ddb9dd9cSjmcneill #define	A31_RST_AHB1_OTG		20
55*ddb9dd9cSjmcneill #define	A31_RST_AHB1_EHCI0		21
56*ddb9dd9cSjmcneill #define	A31_RST_AHB1_EHCI1		22
57*ddb9dd9cSjmcneill #define	A31_RST_AHB1_OHCI0		23
58*ddb9dd9cSjmcneill #define	A31_RST_AHB1_OHCI1		24
59*ddb9dd9cSjmcneill #define	A31_RST_AHB1_OHCI2		25
60*ddb9dd9cSjmcneill #define	A31_RST_AHB1_VE			26
61*ddb9dd9cSjmcneill #define	A31_RST_AHB1_LCD0		27
62*ddb9dd9cSjmcneill #define	A31_RST_AHB1_LCD1		28
63*ddb9dd9cSjmcneill #define	A31_RST_AHB1_CSI		29
64*ddb9dd9cSjmcneill #define	A31_RST_AHB1_HDMI		30
65*ddb9dd9cSjmcneill #define	A31_RST_AHB1_BE0		31
66*ddb9dd9cSjmcneill #define	A31_RST_AHB1_BE1		32
67*ddb9dd9cSjmcneill #define	A31_RST_AHB1_FE0		33
68*ddb9dd9cSjmcneill #define	A31_RST_AHB1_FE1		34
69*ddb9dd9cSjmcneill #define	A31_RST_AHB1_MP			35
70*ddb9dd9cSjmcneill #define	A31_RST_AHB1_GPU		36
71*ddb9dd9cSjmcneill #define	A31_RST_AHB1_DEU0		37
72*ddb9dd9cSjmcneill #define	A31_RST_AHB1_DEU1		38
73*ddb9dd9cSjmcneill #define	A31_RST_AHB1_DRC0		39
74*ddb9dd9cSjmcneill #define	A31_RST_AHB1_DRC1		40
75*ddb9dd9cSjmcneill #define	A31_RST_AHB1_LVDS		41
76*ddb9dd9cSjmcneill #define	A31_RST_APB1_CODEC		42
77*ddb9dd9cSjmcneill #define	A31_RST_APB1_SPDIF		43
78*ddb9dd9cSjmcneill #define	A31_RST_APB1_DIGITAL_MIC	44
79*ddb9dd9cSjmcneill #define	A31_RST_APB1_DAUDIO0		45
80*ddb9dd9cSjmcneill #define	A31_RST_APB1_DAUDIO1		46
81*ddb9dd9cSjmcneill #define	A31_RST_APB2_I2C0		47
82*ddb9dd9cSjmcneill #define	A31_RST_APB2_I2C1		48
83*ddb9dd9cSjmcneill #define	A31_RST_APB2_I2C2		49
84*ddb9dd9cSjmcneill #define	A31_RST_APB2_I2C3		50
85*ddb9dd9cSjmcneill #define	A31_RST_APB2_UART0		51
86*ddb9dd9cSjmcneill #define	A31_RST_APB2_UART1		52
87*ddb9dd9cSjmcneill #define	A31_RST_APB2_UART2		53
88*ddb9dd9cSjmcneill #define	A31_RST_APB2_UART3		54
89*ddb9dd9cSjmcneill #define	A31_RST_APB2_UART4		55
90*ddb9dd9cSjmcneill #define	A31_RST_APB2_UART5		56
91*ddb9dd9cSjmcneill 
92*ddb9dd9cSjmcneill #define	A31_CLK_PLL_CPU			0
93*ddb9dd9cSjmcneill #define	A31_CLK_PLL_AUDIO_BASE		1
94*ddb9dd9cSjmcneill #define	A31_CLK_PLL_AUDIO		2
95*ddb9dd9cSjmcneill #define	A31_CLK_PLL_AUDIO_2X		3
96*ddb9dd9cSjmcneill #define	A31_CLK_PLL_AUDIO_4X		4
97*ddb9dd9cSjmcneill #define	A31_CLK_PLL_AUDIO_8X		5
98*ddb9dd9cSjmcneill #define	A31_CLK_PLL_VIDEO0		6
99*ddb9dd9cSjmcneill #define	A31_CLK_PLL_VIDEO0_2X		7
100*ddb9dd9cSjmcneill #define	A31_CLK_PLL_VE			8
101*ddb9dd9cSjmcneill #define	A31_CLK_PLL_DDR			9
102*ddb9dd9cSjmcneill #define	A31_CLK_PLL_PERIPH		10
103*ddb9dd9cSjmcneill #define	A31_CLK_PLL_PERIPH_2X		11
104*ddb9dd9cSjmcneill #define	A31_CLK_PLL_VIDEO1		12
105*ddb9dd9cSjmcneill #define	A31_CLK_PLL_VIDEO1_2X		13
106*ddb9dd9cSjmcneill #define	A31_CLK_PLL_GPU			14
107*ddb9dd9cSjmcneill #define	A31_CLK_PLL_MIPI		15
108*ddb9dd9cSjmcneill #define	A31_CLK_PLL9			16
109*ddb9dd9cSjmcneill #define	A31_CLK_PLL10			17
110*ddb9dd9cSjmcneill #define	A31_CLK_CPU			18
111*ddb9dd9cSjmcneill #define	A31_CLK_AXI			19
112*ddb9dd9cSjmcneill #define	A31_CLK_AHB1			20
113*ddb9dd9cSjmcneill #define	A31_CLK_APB1			21
114*ddb9dd9cSjmcneill #define	A31_CLK_APB2			22
115*ddb9dd9cSjmcneill #define	A31_CLK_AHB1_MIPIDSI		23
116*ddb9dd9cSjmcneill #define	A31_CLK_AHB1_SS			24
117*ddb9dd9cSjmcneill #define	A31_CLK_AHB1_DMA		25
118*ddb9dd9cSjmcneill #define	A31_CLK_AHB1_MMC0		26
119*ddb9dd9cSjmcneill #define	A31_CLK_AHB1_MMC1		27
120*ddb9dd9cSjmcneill #define	A31_CLK_AHB1_MMC2		28
121*ddb9dd9cSjmcneill #define	A31_CLK_AHB1_MMC3		29
122*ddb9dd9cSjmcneill #define	A31_CLK_AHB1_NAND1		30
123*ddb9dd9cSjmcneill #define	A31_CLK_AHB1_NAND0		31
124*ddb9dd9cSjmcneill #define	A31_CLK_AHB1_SDRAM		32
125*ddb9dd9cSjmcneill #define	A31_CLK_AHB1_EMAC		33
126*ddb9dd9cSjmcneill #define	A31_CLK_AHB1_TS			34
127*ddb9dd9cSjmcneill #define	A31_CLK_AHB1_HSTIMER		35
128*ddb9dd9cSjmcneill #define	A31_CLK_AHB1_SPI0		36
129*ddb9dd9cSjmcneill #define	A31_CLK_AHB1_SPI1		37
130*ddb9dd9cSjmcneill #define	A31_CLK_AHB1_SPI2		38
131*ddb9dd9cSjmcneill #define	A31_CLK_AHB1_SPI3		39
132*ddb9dd9cSjmcneill #define	A31_CLK_AHB1_OTG		40
133*ddb9dd9cSjmcneill #define	A31_CLK_AHB1_EHCI0		41
134*ddb9dd9cSjmcneill #define	A31_CLK_AHB1_EHCI1		42
135*ddb9dd9cSjmcneill #define	A31_CLK_AHB1_OHCI0		43
136*ddb9dd9cSjmcneill #define	A31_CLK_AHB1_OHCI1		44
137*ddb9dd9cSjmcneill #define	A31_CLK_AHB1_OHCI2		45
138*ddb9dd9cSjmcneill #define	A31_CLK_AHB1_VE			46
139*ddb9dd9cSjmcneill #define	A31_CLK_AHB1_LCD0		47
140*ddb9dd9cSjmcneill #define	A31_CLK_AHB1_LCD1		48
141*ddb9dd9cSjmcneill #define	A31_CLK_AHB1_CSI		49
142*ddb9dd9cSjmcneill #define	A31_CLK_AHB1_HDMI		50
143*ddb9dd9cSjmcneill #define	A31_CLK_AHB1_BE0		51
144*ddb9dd9cSjmcneill #define	A31_CLK_AHB1_BE1		52
145*ddb9dd9cSjmcneill #define	A31_CLK_AHB1_FE0		53
146*ddb9dd9cSjmcneill #define	A31_CLK_AHB1_FE1		54
147*ddb9dd9cSjmcneill #define	A31_CLK_AHB1_MP			55
148*ddb9dd9cSjmcneill #define	A31_CLK_AHB1_GPU		56
149*ddb9dd9cSjmcneill #define	A31_CLK_AHB1_DEU0		57
150*ddb9dd9cSjmcneill #define	A31_CLK_AHB1_DEU1		58
151*ddb9dd9cSjmcneill #define	A31_CLK_AHB1_DRC0		59
152*ddb9dd9cSjmcneill #define	A31_CLK_AHB1_DRC1		60
153*ddb9dd9cSjmcneill #define	A31_CLK_APB1_CODEC		61
154*ddb9dd9cSjmcneill #define	A31_CLK_APB1_SPDIF		62
155*ddb9dd9cSjmcneill #define	A31_CLK_APB1_DIGITAL_MIC	63
156*ddb9dd9cSjmcneill #define	A31_CLK_APB1_PIO		64
157*ddb9dd9cSjmcneill #define	A31_CLK_APB1_DAUDIO0		65
158*ddb9dd9cSjmcneill #define	A31_CLK_APB1_DAUDIO1		66
159*ddb9dd9cSjmcneill #define	A31_CLK_APB2_I2C0		67
160*ddb9dd9cSjmcneill #define	A31_CLK_APB2_I2C1		68
161*ddb9dd9cSjmcneill #define	A31_CLK_APB2_I2C2		69
162*ddb9dd9cSjmcneill #define	A31_CLK_APB2_I2C3		70
163*ddb9dd9cSjmcneill #define	A31_CLK_APB2_UART0		71
164*ddb9dd9cSjmcneill #define	A31_CLK_APB2_UART1		72
165*ddb9dd9cSjmcneill #define	A31_CLK_APB2_UART2		73
166*ddb9dd9cSjmcneill #define	A31_CLK_APB2_UART3		74
167*ddb9dd9cSjmcneill #define	A31_CLK_APB2_UART4		75
168*ddb9dd9cSjmcneill #define	A31_CLK_APB2_UART5		76
169*ddb9dd9cSjmcneill #define	A31_CLK_NAND0			77
170*ddb9dd9cSjmcneill #define	A31_CLK_NAND1			78
171*ddb9dd9cSjmcneill #define	A31_CLK_MMC0			79
172*ddb9dd9cSjmcneill #define	A31_CLK_MMC0_SAMPLE		80
173*ddb9dd9cSjmcneill #define	A31_CLK_MMC0_OUTPUT		81
174*ddb9dd9cSjmcneill #define	A31_CLK_MMC1			82
175*ddb9dd9cSjmcneill #define	A31_CLK_MMC1_SAMPLE		83
176*ddb9dd9cSjmcneill #define	A31_CLK_MMC1_OUTPUT		84
177*ddb9dd9cSjmcneill #define	A31_CLK_MMC2			85
178*ddb9dd9cSjmcneill #define	A31_CLK_MMC2_SAMPLE		86
179*ddb9dd9cSjmcneill #define	A31_CLK_MMC2_OUTPUT		87
180*ddb9dd9cSjmcneill #define	A31_CLK_MMC3			88
181*ddb9dd9cSjmcneill #define	A31_CLK_MMC3_SAMPLE		89
182*ddb9dd9cSjmcneill #define	A31_CLK_MMC3_OUTPUT		90
183*ddb9dd9cSjmcneill #define	A31_CLK_TS			91
184*ddb9dd9cSjmcneill #define	A31_CLK_SS			92
185*ddb9dd9cSjmcneill #define	A31_CLK_SPI0			93
186*ddb9dd9cSjmcneill #define	A31_CLK_SPI1			94
187*ddb9dd9cSjmcneill #define	A31_CLK_SPI2			95
188*ddb9dd9cSjmcneill #define	A31_CLK_SPI3			96
189*ddb9dd9cSjmcneill #define	A31_CLK_DAUDIO0			97
190*ddb9dd9cSjmcneill #define	A31_CLK_DAUDIO1			98
191*ddb9dd9cSjmcneill #define	A31_CLK_SPDIF			99
192*ddb9dd9cSjmcneill #define	A31_CLK_USB_PHY0		100
193*ddb9dd9cSjmcneill #define	A31_CLK_USB_PHY1		101
194*ddb9dd9cSjmcneill #define	A31_CLK_USB_PHY2		102
195*ddb9dd9cSjmcneill #define	A31_CLK_USB_OHCI0		103
196*ddb9dd9cSjmcneill #define	A31_CLK_USB_OHCI1		104
197*ddb9dd9cSjmcneill #define	A31_CLK_USB_OHCI2		105
198*ddb9dd9cSjmcneill #define	A31_CLK_MDFS			107
199*ddb9dd9cSjmcneill #define	A31_CLK_SDRAM0			108
200*ddb9dd9cSjmcneill #define	A31_CLK_SDRAM1			109
201*ddb9dd9cSjmcneill #define	A31_CLK_DRAM_VE			110
202*ddb9dd9cSjmcneill #define	A31_CLK_DRAM_CSI_ISP		111
203*ddb9dd9cSjmcneill #define	A31_CLK_DRAM_TS			112
204*ddb9dd9cSjmcneill #define	A31_CLK_DRAM_DRC0		113
205*ddb9dd9cSjmcneill #define	A31_CLK_DRAM_DRC1		114
206*ddb9dd9cSjmcneill #define	A31_CLK_DRAM_DEU0		115
207*ddb9dd9cSjmcneill #define	A31_CLK_DRAM_DEU1		116
208*ddb9dd9cSjmcneill #define	A31_CLK_DRAM_FE0		117
209*ddb9dd9cSjmcneill #define	A31_CLK_DRAM_FE1		118
210*ddb9dd9cSjmcneill #define	A31_CLK_DRAM_BE0		119
211*ddb9dd9cSjmcneill #define	A31_CLK_DRAM_BE1		120
212*ddb9dd9cSjmcneill #define	A31_CLK_DRAM_MP			121
213*ddb9dd9cSjmcneill #define	A31_CLK_BE0			122
214*ddb9dd9cSjmcneill #define	A31_CLK_BE1			123
215*ddb9dd9cSjmcneill #define	A31_CLK_FE0			124
216*ddb9dd9cSjmcneill #define	A31_CLK_FE1			125
217*ddb9dd9cSjmcneill #define	A31_CLK_MP			126
218*ddb9dd9cSjmcneill #define	A31_CLK_LCD0_CH0		127
219*ddb9dd9cSjmcneill #define	A31_CLK_LCD1_CH0		128
220*ddb9dd9cSjmcneill #define	A31_CLK_LCD0_CH1		129
221*ddb9dd9cSjmcneill #define	A31_CLK_LCD1_CH1		130
222*ddb9dd9cSjmcneill #define	A31_CLK_CSI0_SCLK		131
223*ddb9dd9cSjmcneill #define	A31_CLK_CSI0_MCLK		132
224*ddb9dd9cSjmcneill #define	A31_CLK_CSI1_MCLK		133
225*ddb9dd9cSjmcneill #define	A31_CLK_VE			134
226*ddb9dd9cSjmcneill #define	A31_CLK_CODEC			135
227*ddb9dd9cSjmcneill #define	A31_CLK_AVS			136
228*ddb9dd9cSjmcneill #define	A31_CLK_DIGITAL_MIC		137
229*ddb9dd9cSjmcneill #define	A31_CLK_HDMI			138
230*ddb9dd9cSjmcneill #define	A31_CLK_HDMI_DDC		139
231*ddb9dd9cSjmcneill #define	A31_CLK_PS			140
232*ddb9dd9cSjmcneill #define	A31_CLK_MBUS0			141
233*ddb9dd9cSjmcneill #define	A31_CLK_MBUS1			142
234*ddb9dd9cSjmcneill #define	A31_CLK_MIPI_DSI		143
235*ddb9dd9cSjmcneill #define	A31_CLK_MIPI_DSI_DPHY		144
236*ddb9dd9cSjmcneill #define	A31_CLK_MIPI_CSI_DPHY		145
237*ddb9dd9cSjmcneill #define	A31_CLK_IEP_DRC0		146
238*ddb9dd9cSjmcneill #define	A31_CLK_IEP_DRC1		147
239*ddb9dd9cSjmcneill #define	A31_CLK_IEP_DEU0		148
240*ddb9dd9cSjmcneill #define	A31_CLK_IEP_DEU1		149
241*ddb9dd9cSjmcneill #define	A31_CLK_GPU_CORE		150
242*ddb9dd9cSjmcneill #define	A31_CLK_GPU_MEMORY		151
243*ddb9dd9cSjmcneill #define	A31_CLK_GPU_HYD			152
244*ddb9dd9cSjmcneill #define	A31_CLK_ATS			153
245*ddb9dd9cSjmcneill #define	A31_CLK_TRACE			154
246*ddb9dd9cSjmcneill #define	A31_CLK_OUT_A			155
247*ddb9dd9cSjmcneill #define	A31_CLK_OUT_B			156
248*ddb9dd9cSjmcneill #define	A31_CLK_OUT_C			157
249*ddb9dd9cSjmcneill 
250*ddb9dd9cSjmcneill #endif	/* __CCU_A31		H__ */
251