xref: /freebsd-src/sys/contrib/device-tree/include/dt-bindings/clock/omap5.h (revision 2eb4d8dc723da3cf7d735a3226ae49da4c8c5dbc)
1c66ec88fSEmmanuel Vadot /* SPDX-License-Identifier: GPL-2.0-only */
2c66ec88fSEmmanuel Vadot /*
3c66ec88fSEmmanuel Vadot  * Copyright 2017 Texas Instruments, Inc.
4c66ec88fSEmmanuel Vadot  */
5c66ec88fSEmmanuel Vadot #ifndef __DT_BINDINGS_CLK_OMAP5_H
6c66ec88fSEmmanuel Vadot #define __DT_BINDINGS_CLK_OMAP5_H
7c66ec88fSEmmanuel Vadot 
8c66ec88fSEmmanuel Vadot #define OMAP5_CLKCTRL_OFFSET	0x20
9c66ec88fSEmmanuel Vadot #define OMAP5_CLKCTRL_INDEX(offset)	((offset) - OMAP5_CLKCTRL_OFFSET)
10c66ec88fSEmmanuel Vadot 
11c66ec88fSEmmanuel Vadot /* mpu clocks */
12c66ec88fSEmmanuel Vadot #define OMAP5_MPU_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x20)
13c66ec88fSEmmanuel Vadot 
14c66ec88fSEmmanuel Vadot /* dsp clocks */
15c66ec88fSEmmanuel Vadot #define OMAP5_MMU_DSP_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x20)
16c66ec88fSEmmanuel Vadot 
17c66ec88fSEmmanuel Vadot /* abe clocks */
18c66ec88fSEmmanuel Vadot #define OMAP5_L4_ABE_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x20)
19c66ec88fSEmmanuel Vadot #define OMAP5_AESS_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x28)
20c66ec88fSEmmanuel Vadot #define OMAP5_MCPDM_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x30)
21c66ec88fSEmmanuel Vadot #define OMAP5_DMIC_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x38)
22c66ec88fSEmmanuel Vadot #define OMAP5_MCBSP1_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x48)
23c66ec88fSEmmanuel Vadot #define OMAP5_MCBSP2_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x50)
24c66ec88fSEmmanuel Vadot #define OMAP5_MCBSP3_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x58)
25c66ec88fSEmmanuel Vadot #define OMAP5_TIMER5_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x68)
26c66ec88fSEmmanuel Vadot #define OMAP5_TIMER6_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x70)
27c66ec88fSEmmanuel Vadot #define OMAP5_TIMER7_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x78)
28c66ec88fSEmmanuel Vadot #define OMAP5_TIMER8_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x80)
29c66ec88fSEmmanuel Vadot 
30c66ec88fSEmmanuel Vadot /* l3main1 clocks */
31c66ec88fSEmmanuel Vadot #define OMAP5_L3_MAIN_1_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x20)
32c66ec88fSEmmanuel Vadot 
33c66ec88fSEmmanuel Vadot /* l3main2 clocks */
34c66ec88fSEmmanuel Vadot #define OMAP5_L3_MAIN_2_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x20)
35*2eb4d8dcSEmmanuel Vadot #define OMAP5_L3_MAIN_2_GPMC_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x28)
36*2eb4d8dcSEmmanuel Vadot #define OMAP5_L3_MAIN_2_OCMC_RAM_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x30)
37c66ec88fSEmmanuel Vadot 
38c66ec88fSEmmanuel Vadot /* ipu clocks */
39c66ec88fSEmmanuel Vadot #define OMAP5_MMU_IPU_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x20)
40c66ec88fSEmmanuel Vadot 
41c66ec88fSEmmanuel Vadot /* dma clocks */
42c66ec88fSEmmanuel Vadot #define OMAP5_DMA_SYSTEM_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x20)
43c66ec88fSEmmanuel Vadot 
44c66ec88fSEmmanuel Vadot /* emif clocks */
45c66ec88fSEmmanuel Vadot #define OMAP5_DMM_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x20)
46c66ec88fSEmmanuel Vadot #define OMAP5_EMIF1_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x30)
47c66ec88fSEmmanuel Vadot #define OMAP5_EMIF2_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x38)
48c66ec88fSEmmanuel Vadot 
49c66ec88fSEmmanuel Vadot /* l4cfg clocks */
50c66ec88fSEmmanuel Vadot #define OMAP5_L4_CFG_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x20)
51c66ec88fSEmmanuel Vadot #define OMAP5_SPINLOCK_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x28)
52c66ec88fSEmmanuel Vadot #define OMAP5_MAILBOX_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x30)
53c66ec88fSEmmanuel Vadot 
54c66ec88fSEmmanuel Vadot /* l3instr clocks */
55c66ec88fSEmmanuel Vadot #define OMAP5_L3_MAIN_3_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x20)
56c66ec88fSEmmanuel Vadot #define OMAP5_L3_INSTR_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x28)
57c66ec88fSEmmanuel Vadot 
58c66ec88fSEmmanuel Vadot /* l4per clocks */
59c66ec88fSEmmanuel Vadot #define OMAP5_TIMER10_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x28)
60c66ec88fSEmmanuel Vadot #define OMAP5_TIMER11_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x30)
61c66ec88fSEmmanuel Vadot #define OMAP5_TIMER2_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x38)
62c66ec88fSEmmanuel Vadot #define OMAP5_TIMER3_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x40)
63c66ec88fSEmmanuel Vadot #define OMAP5_TIMER4_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x48)
64c66ec88fSEmmanuel Vadot #define OMAP5_TIMER9_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x50)
65c66ec88fSEmmanuel Vadot #define OMAP5_GPIO2_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x60)
66c66ec88fSEmmanuel Vadot #define OMAP5_GPIO3_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x68)
67c66ec88fSEmmanuel Vadot #define OMAP5_GPIO4_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x70)
68c66ec88fSEmmanuel Vadot #define OMAP5_GPIO5_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x78)
69c66ec88fSEmmanuel Vadot #define OMAP5_GPIO6_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x80)
70c66ec88fSEmmanuel Vadot #define OMAP5_I2C1_CLKCTRL	OMAP5_CLKCTRL_INDEX(0xa0)
71c66ec88fSEmmanuel Vadot #define OMAP5_I2C2_CLKCTRL	OMAP5_CLKCTRL_INDEX(0xa8)
72c66ec88fSEmmanuel Vadot #define OMAP5_I2C3_CLKCTRL	OMAP5_CLKCTRL_INDEX(0xb0)
73c66ec88fSEmmanuel Vadot #define OMAP5_I2C4_CLKCTRL	OMAP5_CLKCTRL_INDEX(0xb8)
74c66ec88fSEmmanuel Vadot #define OMAP5_L4_PER_CLKCTRL	OMAP5_CLKCTRL_INDEX(0xc0)
75c66ec88fSEmmanuel Vadot #define OMAP5_MCSPI1_CLKCTRL	OMAP5_CLKCTRL_INDEX(0xf0)
76c66ec88fSEmmanuel Vadot #define OMAP5_MCSPI2_CLKCTRL	OMAP5_CLKCTRL_INDEX(0xf8)
77c66ec88fSEmmanuel Vadot #define OMAP5_MCSPI3_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x100)
78c66ec88fSEmmanuel Vadot #define OMAP5_MCSPI4_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x108)
79c66ec88fSEmmanuel Vadot #define OMAP5_GPIO7_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x110)
80c66ec88fSEmmanuel Vadot #define OMAP5_GPIO8_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x118)
81c66ec88fSEmmanuel Vadot #define OMAP5_MMC3_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x120)
82c66ec88fSEmmanuel Vadot #define OMAP5_MMC4_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x128)
83c66ec88fSEmmanuel Vadot #define OMAP5_UART1_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x140)
84c66ec88fSEmmanuel Vadot #define OMAP5_UART2_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x148)
85c66ec88fSEmmanuel Vadot #define OMAP5_UART3_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x150)
86c66ec88fSEmmanuel Vadot #define OMAP5_UART4_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x158)
87c66ec88fSEmmanuel Vadot #define OMAP5_MMC5_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x160)
88c66ec88fSEmmanuel Vadot #define OMAP5_I2C5_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x168)
89c66ec88fSEmmanuel Vadot #define OMAP5_UART5_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x170)
90c66ec88fSEmmanuel Vadot #define OMAP5_UART6_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x178)
91c66ec88fSEmmanuel Vadot 
92c66ec88fSEmmanuel Vadot /* l4_secure clocks */
93c66ec88fSEmmanuel Vadot #define OMAP5_L4_SECURE_CLKCTRL_OFFSET	0x1a0
94c66ec88fSEmmanuel Vadot #define OMAP5_L4_SECURE_CLKCTRL_INDEX(offset)	((offset) - OMAP5_L4_SECURE_CLKCTRL_OFFSET)
95c66ec88fSEmmanuel Vadot #define OMAP5_AES1_CLKCTRL	OMAP5_L4_SECURE_CLKCTRL_INDEX(0x1a0)
96c66ec88fSEmmanuel Vadot #define OMAP5_AES2_CLKCTRL	OMAP5_L4_SECURE_CLKCTRL_INDEX(0x1a8)
97c66ec88fSEmmanuel Vadot #define OMAP5_DES3DES_CLKCTRL	OMAP5_L4_SECURE_CLKCTRL_INDEX(0x1b0)
98c66ec88fSEmmanuel Vadot #define OMAP5_FPKA_CLKCTRL	OMAP5_L4_SECURE_CLKCTRL_INDEX(0x1b8)
99c66ec88fSEmmanuel Vadot #define OMAP5_RNG_CLKCTRL	OMAP5_L4_SECURE_CLKCTRL_INDEX(0x1c0)
100c66ec88fSEmmanuel Vadot #define OMAP5_SHA2MD5_CLKCTRL	OMAP5_L4_SECURE_CLKCTRL_INDEX(0x1c8)
101c66ec88fSEmmanuel Vadot #define OMAP5_DMA_CRYPTO_CLKCTRL	OMAP5_L4_SECURE_CLKCTRL_INDEX(0x1d8)
102c66ec88fSEmmanuel Vadot 
103c66ec88fSEmmanuel Vadot /* iva clocks */
104c66ec88fSEmmanuel Vadot #define OMAP5_IVA_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x20)
105c66ec88fSEmmanuel Vadot #define OMAP5_SL2IF_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x28)
106c66ec88fSEmmanuel Vadot 
107c66ec88fSEmmanuel Vadot /* dss clocks */
108c66ec88fSEmmanuel Vadot #define OMAP5_DSS_CORE_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x20)
109c66ec88fSEmmanuel Vadot 
110c66ec88fSEmmanuel Vadot /* gpu clocks */
111c66ec88fSEmmanuel Vadot #define OMAP5_GPU_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x20)
112c66ec88fSEmmanuel Vadot 
113c66ec88fSEmmanuel Vadot /* l3init clocks */
114c66ec88fSEmmanuel Vadot #define OMAP5_MMC1_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x28)
115c66ec88fSEmmanuel Vadot #define OMAP5_MMC2_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x30)
116c66ec88fSEmmanuel Vadot #define OMAP5_USB_HOST_HS_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x58)
117c66ec88fSEmmanuel Vadot #define OMAP5_USB_TLL_HS_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x68)
118c66ec88fSEmmanuel Vadot #define OMAP5_SATA_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x88)
119c66ec88fSEmmanuel Vadot #define OMAP5_OCP2SCP1_CLKCTRL	OMAP5_CLKCTRL_INDEX(0xe0)
120c66ec88fSEmmanuel Vadot #define OMAP5_OCP2SCP3_CLKCTRL	OMAP5_CLKCTRL_INDEX(0xe8)
121c66ec88fSEmmanuel Vadot #define OMAP5_USB_OTG_SS_CLKCTRL	OMAP5_CLKCTRL_INDEX(0xf0)
122c66ec88fSEmmanuel Vadot 
123c66ec88fSEmmanuel Vadot /* wkupaon clocks */
124c66ec88fSEmmanuel Vadot #define OMAP5_L4_WKUP_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x20)
125c66ec88fSEmmanuel Vadot #define OMAP5_WD_TIMER2_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x30)
126c66ec88fSEmmanuel Vadot #define OMAP5_GPIO1_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x38)
127c66ec88fSEmmanuel Vadot #define OMAP5_TIMER1_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x40)
128c66ec88fSEmmanuel Vadot #define OMAP5_COUNTER_32K_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x50)
129c66ec88fSEmmanuel Vadot #define OMAP5_KBD_CLKCTRL	OMAP5_CLKCTRL_INDEX(0x78)
130c66ec88fSEmmanuel Vadot 
131c66ec88fSEmmanuel Vadot #endif
132