116216333SThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-or-later */
20aa0c95fSHaojian Zhuang /*
30aa0c95fSHaojian Zhuang  * Copyright (c) 2012-2013 Hisilicon Limited.
40aa0c95fSHaojian Zhuang  * Copyright (c) 2012-2013 Linaro Limited.
50aa0c95fSHaojian Zhuang  *
60aa0c95fSHaojian Zhuang  * Author: Haojian Zhuang <haojian.zhuang@linaro.org>
70aa0c95fSHaojian Zhuang  *	   Xin Li <li.xin@linaro.org>
80aa0c95fSHaojian Zhuang  */
90aa0c95fSHaojian Zhuang 
100aa0c95fSHaojian Zhuang #ifndef __DTS_HI3620_CLOCK_H
110aa0c95fSHaojian Zhuang #define __DTS_HI3620_CLOCK_H
120aa0c95fSHaojian Zhuang 
130aa0c95fSHaojian Zhuang #define HI3620_NONE_CLOCK	0
140aa0c95fSHaojian Zhuang 
150aa0c95fSHaojian Zhuang /* fixed rate & fixed factor clocks */
160aa0c95fSHaojian Zhuang #define HI3620_OSC32K		1
170aa0c95fSHaojian Zhuang #define HI3620_OSC26M		2
180aa0c95fSHaojian Zhuang #define HI3620_PCLK		3
190aa0c95fSHaojian Zhuang #define HI3620_PLL_ARM0		4
200aa0c95fSHaojian Zhuang #define HI3620_PLL_ARM1		5
210aa0c95fSHaojian Zhuang #define HI3620_PLL_PERI		6
220aa0c95fSHaojian Zhuang #define HI3620_PLL_USB		7
230aa0c95fSHaojian Zhuang #define HI3620_PLL_HDMI		8
240aa0c95fSHaojian Zhuang #define HI3620_PLL_GPU		9
250aa0c95fSHaojian Zhuang #define HI3620_RCLK_TCXO	10
260aa0c95fSHaojian Zhuang #define HI3620_RCLK_CFGAXI	11
270aa0c95fSHaojian Zhuang #define HI3620_RCLK_PICO	12
280aa0c95fSHaojian Zhuang 
290aa0c95fSHaojian Zhuang /* mux clocks */
300aa0c95fSHaojian Zhuang #define HI3620_TIMER0_MUX	32
310aa0c95fSHaojian Zhuang #define HI3620_TIMER1_MUX	33
320aa0c95fSHaojian Zhuang #define HI3620_TIMER2_MUX	34
330aa0c95fSHaojian Zhuang #define HI3620_TIMER3_MUX	35
340aa0c95fSHaojian Zhuang #define HI3620_TIMER4_MUX	36
350aa0c95fSHaojian Zhuang #define HI3620_TIMER5_MUX	37
360aa0c95fSHaojian Zhuang #define HI3620_TIMER6_MUX	38
370aa0c95fSHaojian Zhuang #define HI3620_TIMER7_MUX	39
380aa0c95fSHaojian Zhuang #define HI3620_TIMER8_MUX	40
390aa0c95fSHaojian Zhuang #define HI3620_TIMER9_MUX	41
400aa0c95fSHaojian Zhuang #define HI3620_UART0_MUX	42
410aa0c95fSHaojian Zhuang #define HI3620_UART1_MUX	43
420aa0c95fSHaojian Zhuang #define HI3620_UART2_MUX	44
430aa0c95fSHaojian Zhuang #define HI3620_UART3_MUX	45
440aa0c95fSHaojian Zhuang #define HI3620_UART4_MUX	46
450aa0c95fSHaojian Zhuang #define HI3620_SPI0_MUX		47
460aa0c95fSHaojian Zhuang #define HI3620_SPI1_MUX		48
470aa0c95fSHaojian Zhuang #define HI3620_SPI2_MUX		49
480aa0c95fSHaojian Zhuang #define HI3620_SAXI_MUX		50
490aa0c95fSHaojian Zhuang #define HI3620_PWM0_MUX		51
500aa0c95fSHaojian Zhuang #define HI3620_PWM1_MUX		52
510aa0c95fSHaojian Zhuang #define HI3620_SD_MUX		53
520aa0c95fSHaojian Zhuang #define HI3620_MMC1_MUX		54
530aa0c95fSHaojian Zhuang #define HI3620_MMC1_MUX2	55
540aa0c95fSHaojian Zhuang #define HI3620_G2D_MUX		56
550aa0c95fSHaojian Zhuang #define HI3620_VENC_MUX		57
560aa0c95fSHaojian Zhuang #define HI3620_VDEC_MUX		58
570aa0c95fSHaojian Zhuang #define HI3620_VPP_MUX		59
580aa0c95fSHaojian Zhuang #define HI3620_EDC0_MUX		60
590aa0c95fSHaojian Zhuang #define HI3620_LDI0_MUX		61
600aa0c95fSHaojian Zhuang #define HI3620_EDC1_MUX		62
610aa0c95fSHaojian Zhuang #define HI3620_LDI1_MUX		63
620aa0c95fSHaojian Zhuang #define HI3620_RCLK_HSIC	64
630aa0c95fSHaojian Zhuang #define HI3620_MMC2_MUX		65
640aa0c95fSHaojian Zhuang #define HI3620_MMC3_MUX		66
650aa0c95fSHaojian Zhuang 
660aa0c95fSHaojian Zhuang /* divider clocks */
670aa0c95fSHaojian Zhuang #define HI3620_SHAREAXI_DIV	128
680aa0c95fSHaojian Zhuang #define HI3620_CFGAXI_DIV	129
690aa0c95fSHaojian Zhuang #define HI3620_SD_DIV		130
700aa0c95fSHaojian Zhuang #define HI3620_MMC1_DIV		131
710aa0c95fSHaojian Zhuang #define HI3620_HSIC_DIV		132
720aa0c95fSHaojian Zhuang #define HI3620_MMC2_DIV		133
730aa0c95fSHaojian Zhuang #define HI3620_MMC3_DIV		134
740aa0c95fSHaojian Zhuang 
750aa0c95fSHaojian Zhuang /* gate clocks */
760aa0c95fSHaojian Zhuang #define HI3620_TIMERCLK01	160
770aa0c95fSHaojian Zhuang #define HI3620_TIMER_RCLK01	161
780aa0c95fSHaojian Zhuang #define HI3620_TIMERCLK23	162
790aa0c95fSHaojian Zhuang #define HI3620_TIMER_RCLK23	163
800aa0c95fSHaojian Zhuang #define HI3620_TIMERCLK45	164
810aa0c95fSHaojian Zhuang #define HI3620_TIMERCLK67	165
820aa0c95fSHaojian Zhuang #define HI3620_TIMERCLK89	166
830aa0c95fSHaojian Zhuang #define HI3620_RTCCLK		167
840aa0c95fSHaojian Zhuang #define HI3620_KPC_CLK		168
850aa0c95fSHaojian Zhuang #define HI3620_GPIOCLK0		169
860aa0c95fSHaojian Zhuang #define HI3620_GPIOCLK1		170
870aa0c95fSHaojian Zhuang #define HI3620_GPIOCLK2		171
880aa0c95fSHaojian Zhuang #define HI3620_GPIOCLK3		172
890aa0c95fSHaojian Zhuang #define HI3620_GPIOCLK4		173
900aa0c95fSHaojian Zhuang #define HI3620_GPIOCLK5		174
910aa0c95fSHaojian Zhuang #define HI3620_GPIOCLK6		175
920aa0c95fSHaojian Zhuang #define HI3620_GPIOCLK7		176
930aa0c95fSHaojian Zhuang #define HI3620_GPIOCLK8		177
940aa0c95fSHaojian Zhuang #define HI3620_GPIOCLK9		178
950aa0c95fSHaojian Zhuang #define HI3620_GPIOCLK10	179
960aa0c95fSHaojian Zhuang #define HI3620_GPIOCLK11	180
970aa0c95fSHaojian Zhuang #define HI3620_GPIOCLK12	181
980aa0c95fSHaojian Zhuang #define HI3620_GPIOCLK13	182
990aa0c95fSHaojian Zhuang #define HI3620_GPIOCLK14	183
1000aa0c95fSHaojian Zhuang #define HI3620_GPIOCLK15	184
1010aa0c95fSHaojian Zhuang #define HI3620_GPIOCLK16	185
1020aa0c95fSHaojian Zhuang #define HI3620_GPIOCLK17	186
1030aa0c95fSHaojian Zhuang #define HI3620_GPIOCLK18	187
1040aa0c95fSHaojian Zhuang #define HI3620_GPIOCLK19	188
1050aa0c95fSHaojian Zhuang #define HI3620_GPIOCLK20	189
1060aa0c95fSHaojian Zhuang #define HI3620_GPIOCLK21	190
1070aa0c95fSHaojian Zhuang #define HI3620_DPHY0_CLK	191
1080aa0c95fSHaojian Zhuang #define HI3620_DPHY1_CLK	192
1090aa0c95fSHaojian Zhuang #define HI3620_DPHY2_CLK	193
1100aa0c95fSHaojian Zhuang #define HI3620_USBPHY_CLK	194
1110aa0c95fSHaojian Zhuang #define HI3620_ACP_CLK		195
1120aa0c95fSHaojian Zhuang #define HI3620_PWMCLK0		196
1130aa0c95fSHaojian Zhuang #define HI3620_PWMCLK1		197
1140aa0c95fSHaojian Zhuang #define HI3620_UARTCLK0		198
1150aa0c95fSHaojian Zhuang #define HI3620_UARTCLK1		199
1160aa0c95fSHaojian Zhuang #define HI3620_UARTCLK2		200
1170aa0c95fSHaojian Zhuang #define HI3620_UARTCLK3		201
1180aa0c95fSHaojian Zhuang #define HI3620_UARTCLK4		202
1190aa0c95fSHaojian Zhuang #define HI3620_SPICLK0		203
1200aa0c95fSHaojian Zhuang #define HI3620_SPICLK1		204
1210aa0c95fSHaojian Zhuang #define HI3620_SPICLK2		205
1220aa0c95fSHaojian Zhuang #define HI3620_I2CCLK0		206
1230aa0c95fSHaojian Zhuang #define HI3620_I2CCLK1		207
1240aa0c95fSHaojian Zhuang #define HI3620_I2CCLK2		208
1250aa0c95fSHaojian Zhuang #define HI3620_I2CCLK3		209
1260aa0c95fSHaojian Zhuang #define HI3620_SCI_CLK		210
1270aa0c95fSHaojian Zhuang #define HI3620_DDRC_PER_CLK	211
1280aa0c95fSHaojian Zhuang #define HI3620_DMAC_CLK		212
1290aa0c95fSHaojian Zhuang #define HI3620_USB2DVC_CLK	213
1300aa0c95fSHaojian Zhuang #define HI3620_SD_CLK		214
1310aa0c95fSHaojian Zhuang #define HI3620_MMC_CLK1		215
1320aa0c95fSHaojian Zhuang #define HI3620_MMC_CLK2		216
1330aa0c95fSHaojian Zhuang #define HI3620_MMC_CLK3		217
1340aa0c95fSHaojian Zhuang #define HI3620_MCU_CLK		218
1350aa0c95fSHaojian Zhuang 
13662ac983bSZhangfei Gao #define HI3620_SD_CIUCLK	0
13762ac983bSZhangfei Gao #define HI3620_MMC_CIUCLK1	1
13862ac983bSZhangfei Gao #define HI3620_MMC_CIUCLK2	2
13962ac983bSZhangfei Gao #define HI3620_MMC_CIUCLK3	3
14062ac983bSZhangfei Gao 
1410aa0c95fSHaojian Zhuang #define HI3620_NR_CLKS		219
1420aa0c95fSHaojian Zhuang 
1430aa0c95fSHaojian Zhuang #endif	/* __DTS_HI3620_CLOCK_H */
144