/* SPDX-License-Identifier: GPL-2.0 */
/*
* Copyright 2016 Freescale Semiconductor, Inc.
* Copyright 2017 NXP
*/
#ifndef __DT_BINDINGS_CLOCK_IMX8MQ_H
#define __DT_BINDINGS_CLOCK_IMX8MQ_H
#define IMX8MQ_CLK_DUMMY 0
#define IMX8MQ_CLK_32K 1
#define IMX8MQ_CLK_25M 2
#define IMX8MQ_CLK_27M 3
#define IMX8MQ_CLK_EXT1 4
#define IMX8MQ_CLK_EXT2 5
#define IMX8MQ_CLK_EXT3 6
#define IMX8MQ_CLK_EXT4 7
/* ANAMIX PLL clocks */
/* FRAC PLLs */
/* ARM PLL */
#define IMX8MQ_ARM_PLL_REF_SEL 8
#define IMX8MQ_ARM_PLL_REF_DIV 9
#define IMX8MQ_ARM_PLL 10
#define IMX8MQ_ARM_PLL_BYPASS 11
#define IMX8MQ_ARM_PLL_OUT 12
/* GPU PLL */
#define IMX8MQ_GPU_PLL_REF_SEL 13
#define IMX8MQ_GPU_PLL_REF_DIV 14
#define IMX8MQ_GPU_PLL 15
#define IMX8MQ_GPU_PLL_BYPASS 16
#define IMX8MQ_GPU_PLL_OUT 17
/* VPU PLL */
#define IMX8MQ_VPU_PLL_REF_SEL 18
#define IMX8MQ_VPU_PLL_REF_DIV 19
#define IMX8MQ_VPU_PLL 20
#define IMX8MQ_VPU_PLL_BYPASS 21
#define IMX8MQ_VPU_PLL_OUT 22
/* AUDIO PLL1 */
#define IMX8MQ_AUDIO_PLL1_REF_SEL 23
#define IMX8MQ_AUDIO_PLL1_REF_DIV 24
#define IMX8MQ_AUDIO_PLL1 25
#define IMX8MQ_AUDIO_PLL1_BYPASS 26
#define IMX8MQ_AUDIO_PLL1_OUT 27
/* AUDIO PLL2 */
#define IMX8MQ_AUDIO_PLL2_REF_SEL 28
#define IMX8MQ_AUDIO_PLL2_REF_DIV 29
#define IMX8MQ_AUDIO_PLL2 30
#define IMX8MQ_AUDIO_PLL2_BYPASS 31
#define IMX8MQ_AUDIO_PLL2_OUT 32
/* VIDEO PLL1 */
#define IMX8MQ_VIDEO_PLL1_REF_SEL 33
#define IMX8MQ_VIDEO_PLL1_REF_DIV 34
#define IMX8MQ_VIDEO_PLL1 35
#define IMX8MQ_VIDEO_PLL1_BYPASS 36
#define IMX8MQ_VIDEO_PLL1_OUT 37
/* SYS1 PLL */
#define IMX8MQ_SYS1_PLL1_REF_SEL 38
#define IMX8MQ_SYS1_PLL1_REF_DIV 39
#define IMX8MQ_SYS1_PLL1 40
#define IMX8MQ_SYS1_PLL1_OUT 41
#define IMX8MQ_SYS1_PLL1_OUT_DIV 42
#define IMX8MQ_SYS1_PLL2 43
#define IMX8MQ_SYS1_PLL2_DIV 44
#define IMX8MQ_SYS1_PLL2_OUT 45
/* SYS2 PLL */
#define IMX8MQ_SYS2_PLL1_REF_SEL 46
#define IMX8MQ_SYS2_PLL1_REF_DIV 47
#define IMX8MQ_SYS2_PLL1 48
#define IMX8MQ_SYS2_PLL1_OUT 49
#define IMX8MQ_SYS2_PLL1_OUT_DIV 50
#define IMX8MQ_SYS2_PLL2 51
#define IMX8MQ_SYS2_PLL2_DIV 52
#define IMX8MQ_SYS2_PLL2_OUT 53
/* SYS3 PLL */
#define IMX8MQ_SYS3_PLL1_REF_SEL 54
#define IMX8MQ_SYS3_PLL1_REF_DIV 55
#define IMX8MQ_SYS3_PLL1 56
#define IMX8MQ_SYS3_PLL1_OUT 57
#define IMX8MQ_SYS3_PLL1_OUT_DIV 58
#define IMX8MQ_SYS3_PLL2 59
#define IMX8MQ_SYS3_PLL2_DIV 60
#define IMX8MQ_SYS3_PLL2_OUT 61
/* DRAM PLL */
#define IMX8MQ_DRAM_PLL1_REF_SEL 62
#define IMX8MQ_DRAM_PLL1_REF_DIV 63
#define IMX8MQ_DRAM_PLL1 64
#define IMX8MQ_DRAM_PLL1_OUT 65
#define IMX8MQ_DRAM_PLL1_OUT_DIV 66
#define IMX8MQ_DRAM_PLL2 67
#define IMX8MQ_DRAM_PLL2_DIV 68
#define IMX8MQ_DRAM_PLL2_OUT 69
/* SYS PLL DIV */
#define IMX8MQ_SYS1_PLL_40M 70
#define IMX8MQ_SYS1_PLL_80M 71
#define IMX8MQ_SYS1_PLL_100M 72
#define IMX8MQ_SYS1_PLL_133M 73
#define IMX8MQ_SYS1_PLL_160M 74
#define IMX8MQ_SYS1_PLL_200M 75
#define IMX8MQ_SYS1_PLL_266M 76
#define IMX8MQ_SYS1_PLL_400M 77
#define IMX8MQ_SYS1_PLL_800M 78
#define IMX8MQ_SYS2_PLL_50M 79
#define IMX8MQ_SYS2_PLL_100M 80
#define IMX8MQ_SYS2_PLL_125M 81
#define IMX8MQ_SYS2_PLL_166M 82
#define IMX8MQ_SYS2_PLL_200M 83
#define IMX8MQ_SYS2_PLL_250M 84
#define IMX8MQ_SYS2_PLL_333M 85
#define IMX8MQ_SYS2_PLL_500M 86
#define IMX8MQ_SYS2_PLL_1000M 87
/* CCM ROOT clocks */
/* A53 */
#define IMX8MQ_CLK_A53_SRC 88
#define IMX8MQ_CLK_A53_CG 89
#define IMX8MQ_CLK_A53_DIV 90
/* M4 */
#define IMX8MQ_CLK_M4_SRC 91
#define IMX8MQ_CLK_M4_CG 92
#define IMX8MQ_CLK_M4_DIV 93
/* VPU */
#define IMX8MQ_CLK_VPU_SRC 94
#define IMX8MQ_CLK_VPU_CG 95
#define IMX8MQ_CLK_VPU_DIV 96
/* GPU CORE */
#define IMX8MQ_CLK_GPU_CORE_SRC 97
#define IMX8MQ_CLK_GPU_CORE_CG 98
#define IMX8MQ_CLK_GPU_CORE_DIV 99
/* GPU SHADER */
#define IMX8MQ_CLK_GPU_SHADER_SRC 100
#define IMX8MQ_CLK_GPU_SHADER_CG 101
#define IMX8MQ_CLK_GPU_SHADER_DIV 102
/* BUS TYPE */
/* MAIN AXI */
#define IMX8MQ_CLK_MAIN_AXI 103
/* ENET AXI */
#define IMX8MQ_CLK_ENET_AXI 104
/* NAND_USDHC_BUS */
#define IMX8MQ_CLK_NAND_USDHC_BUS 105
/* VPU BUS */
#define IMX8MQ_CLK_VPU_BUS 106
/* DISP_AXI */
#define IMX8MQ_CLK_DISP_AXI 107
/* DISP APB */
#define IMX8MQ_CLK_DISP_APB 108
/* DISP RTRM */
#define IMX8MQ_CLK_DISP_RTRM 109
/* USB_BUS */
#define IMX8MQ_CLK_USB_BUS 110
/* GPU_AXI */
#define IMX8MQ_CLK_GPU_AXI 111
/* GPU_AHB */
#define IMX8MQ_CLK_GPU_AHB 112
/* NOC */
#define IMX8MQ_CLK_NOC 113
/* NOC_APB */
#define IMX8MQ_CLK_NOC_APB 115
/* AHB */
#define IMX8MQ_CLK_AHB 116
/* AUDIO AHB */
#define IMX8MQ_CLK_AUDIO_AHB 117
/* DRAM_ALT */
#define IMX8MQ_CLK_DRAM_ALT 118
/* DRAM APB */
#define IMX8MQ_CLK_DRAM_APB 119
/* VPU_G1 */
#define IMX8MQ_CLK_VPU_G1 120
/* VPU_G2 */
#define IMX8MQ_CLK_VPU_G2 121
/* DISP_DTRC */
#define IMX8MQ_CLK_DISP_DTRC 122
/* DISP_DC8000 */
#define IMX8MQ_CLK_DISP_DC8000 123
/* PCIE_CTRL */
#define IMX8MQ_CLK_PCIE1_CTRL 124
/* PCIE_PHY */
#define IMX8MQ_CLK_PCIE1_PHY 125
/* PCIE_AUX */
#define IMX8MQ_CLK_PCIE1_AUX 126
/* DC_PIXEL */
#define IMX8MQ_CLK_DC_PIXEL 127
/* LCDIF_PIXEL */
#define IMX8MQ_CLK_LCDIF_PIXEL 128
/* SAI1~6 */
#define IMX8MQ_CLK_SAI1 129
#define IMX8MQ_CLK_SAI2 130
#define IMX8MQ_CLK_SAI3 131
#define IMX8MQ_CLK_SAI4 132
#define IMX8MQ_CLK_SAI5 133
#define IMX8MQ_CLK_SAI6 134
/* SPDIF1 */
#define IMX8MQ_CLK_SPDIF1 135
/* SPDIF2 */
#define IMX8MQ_CLK_SPDIF2 136
/* ENET_REF */
#define IMX8MQ_CLK_ENET_REF 137
/* ENET_TIMER */
#define IMX8MQ_CLK_ENET_TIMER 138
/* ENET_PHY */
#define IMX8MQ_CLK_ENET_PHY_REF 139
/* NAND */
#define IMX8MQ_CLK_NAND 140
/* QSPI */
#define IMX8MQ_CLK_QSPI 141
/* USDHC1 */
#define IMX8MQ_CLK_USDHC1 142
/* USDHC2 */
#define IMX8MQ_CLK_USDHC2 143
/* I2C1 */
#define IMX8MQ_CLK_I2C1 144
/* I2C2 */
#define IMX8MQ_CLK_I2C2 145
/* I2C3 */
#define IMX8MQ_CLK_I2C3 146
/* I2C4 */
#define IMX8MQ_CLK_I2C4 147
/* UART1 */
#define IMX8MQ_CLK_UART1 148
/* UART2 */
#define IMX8MQ_CLK_UART2 149
/* UART3 */
#define IMX8MQ_CLK_UART3 150
/* UART4 */
#define IMX8MQ_CLK_UART4 151
/* USB_CORE_REF */
#define IMX8MQ_CLK_USB_CORE_REF 152
/* USB_PHY_REF */
#define IMX8MQ_CLK_USB_PHY_REF 153
/* ECSPI1 */
#define IMX8MQ_CLK_ECSPI1 154
/* ECSPI2 */
#define IMX8MQ_CLK_ECSPI2 155
/* PWM1 */
#define IMX8MQ_CLK_PWM1 156
/* PWM2 */
#define IMX8MQ_CLK_PWM2 157
/* PWM3 */
#define IMX8MQ_CLK_PWM3 158
/* PWM4 */
#define IMX8MQ_CLK_PWM4 159
/* GPT1 */
#define IMX8MQ_CLK_GPT1 160
/* WDOG */
#define IMX8MQ_CLK_WDOG 161
/* WRCLK */
#define IMX8MQ_CLK_WRCLK 162
/* DSI_CORE */
#define IMX8MQ_CLK_DSI_CORE 163
/* DSI_PHY */
#define IMX8MQ_CLK_DSI_PHY_REF 164
/* DSI_DBI */
#define IMX8MQ_CLK_DSI_DBI 165
/*DSI_ESC */
#define IMX8MQ_CLK_DSI_ESC 166
/* CSI1_CORE */
#define IMX8MQ_CLK_CSI1_CORE 167
/* CSI1_PHY */
#define IMX8MQ_CLK_CSI1_PHY_REF 168
/* CSI_ESC */
#define IMX8MQ_CLK_CSI1_ESC 169
/* CSI2_CORE */
#define IMX8MQ_CLK_CSI2_CORE 170
/* CSI2_PHY */
#define IMX8MQ_CLK_CSI2_PHY_REF 171
/* CSI2_ESC */
#define IMX8MQ_CLK_CSI2_ESC 172
/* PCIE2_CTRL */
#define IMX8MQ_CLK_PCIE2_CTRL 173
/* PCIE2_PHY */
#define IMX8MQ_CLK_PCIE2_PHY 174
/* PCIE2_AUX */
#define IMX8MQ_CLK_PCIE2_AUX 175
/* ECSPI3 */
#define IMX8MQ_CLK_ECSPI3 176
/* CCGR clocks */
#define IMX8MQ_CLK_A53_ROOT 177
#define IMX8MQ_CLK_DRAM_ROOT 178
#define IMX8MQ_CLK_ECSPI1_ROOT 179
#define IMX8MQ_CLK_ECSPI2_ROOT 180
#define IMX8MQ_CLK_ECSPI3_ROOT 181
#define IMX8MQ_CLK_ENET1_ROOT 182
#define IMX8MQ_CLK_GPT1_ROOT 183
#define IMX8MQ_CLK_I2C1_ROOT 184
#define IMX8MQ_CLK_I2C2_ROOT 185
#define IMX8MQ_CLK_I2C3_ROOT 186
#define IMX8MQ_CLK_I2C4_ROOT 187
#define IMX8MQ_CLK_M4_ROOT 188
#define IMX8MQ_CLK_PCIE1_ROOT 189
#define IMX8MQ_CLK_PCIE2_ROOT 190
#define IMX8MQ_CLK_PWM1_ROOT 191
#define IMX8MQ_CLK_PWM2_ROOT 192
#define IMX8MQ_CLK_PWM3_ROOT 193
#define IMX8MQ_CLK_PWM4_ROOT 194
#define IMX8MQ_CLK_QSPI_ROOT 195
#define IMX8MQ_CLK_SAI1_ROOT 196
#define IMX8MQ_CLK_SAI2_ROOT 197
#define IMX8MQ_CLK_SAI3_ROOT 198
#define IMX8MQ_CLK_SAI4_ROOT 199
#define IMX8MQ_CLK_SAI5_ROOT 200
#define IMX8MQ_CLK_SAI6_ROOT 201
#define IMX8MQ_CLK_UART1_ROOT 202
#define IMX8MQ_CLK_UART2_ROOT 203
#define IMX8MQ_CLK_UART3_ROOT 204
#define IMX8MQ_CLK_UART4_ROOT 205
#define IMX8MQ_CLK_USB1_CTRL_ROOT 206
#define IMX8MQ_CLK_USB2_CTRL_ROOT 207
#define IMX8MQ_CLK_USB1_PHY_ROOT 208
#define IMX8MQ_CLK_USB2_PHY_ROOT 209
#define IMX8MQ_CLK_USDHC1_ROOT 210
#define IMX8MQ_CLK_USDHC2_ROOT 211
#define IMX8MQ_CLK_WDOG1_ROOT 212
#define IMX8MQ_CLK_WDOG2_ROOT 213
#define IMX8MQ_CLK_WDOG3_ROOT 214
#define IMX8MQ_CLK_GPU_ROOT 215
#define IMX8MQ_CLK_HEVC_ROOT 216
#define IMX8MQ_CLK_AVC_ROOT 217
#define IMX8MQ_CLK_VP9_ROOT 218
#define IMX8MQ_CLK_HEVC_INTER_ROOT 219
#define IMX8MQ_CLK_DISP_ROOT 220
#define IMX8MQ_CLK_HDMI_ROOT 221
#define IMX8MQ_CLK_HDMI_PHY_ROOT 222
#define IMX8MQ_CLK_VPU_DEC_ROOT 223
#define IMX8MQ_CLK_CSI1_ROOT 224
#define IMX8MQ_CLK_CSI2_ROOT 225
#define IMX8MQ_CLK_RAWNAND_ROOT 226
#define IMX8MQ_CLK_SDMA1_ROOT 227
#define IMX8MQ_CLK_SDMA2_ROOT 228
#define IMX8MQ_CLK_VPU_G1_ROOT 229
#define IMX8MQ_CLK_VPU_G2_ROOT 230
/* SCCG PLL GATE */
#define IMX8MQ_SYS1_PLL_OUT 231
#define IMX8MQ_SYS2_PLL_OUT 232
#define IMX8MQ_SYS3_PLL_OUT 233
#define IMX8MQ_DRAM_PLL_OUT 234
#define IMX8MQ_GPT_3M_CLK 235
#define IMX8MQ_CLK_IPG_ROOT 236
#define IMX8MQ_CLK_IPG_AUDIO_ROOT 237
#define IMX8MQ_CLK_SAI1_IPG 238
#define IMX8MQ_CLK_SAI2_IPG 239
#define IMX8MQ_CLK_SAI3_IPG 240
#define IMX8MQ_CLK_SAI4_IPG 241
#define IMX8MQ_CLK_SAI5_IPG 242
#define IMX8MQ_CLK_SAI6_IPG 243
/* DSI AHB/IPG clocks */
/* rxesc clock */
#define IMX8MQ_CLK_DSI_AHB 244
/* txesc clock */
#define IMX8MQ_CLK_DSI_IPG_DIV 245
#define IMX8MQ_CLK_TMU_ROOT 246
/* Display root clocks */
#define IMX8MQ_CLK_DISP_AXI_ROOT 247
#define IMX8MQ_CLK_DISP_APB_ROOT 248
#define IMX8MQ_CLK_DISP_RTRM_ROOT 249
#define IMX8MQ_CLK_OCOTP_ROOT 250
#define IMX8MQ_CLK_DRAM_ALT_ROOT 251
#define IMX8MQ_CLK_DRAM_CORE 252
#define IMX8MQ_CLK_MU_ROOT 253
#define IMX8MQ_VIDEO2_PLL_OUT 254
#define IMX8MQ_CLK_CLKO2 255
#define IMX8MQ_CLK_NAND_USDHC_BUS_RAWNAND_CLK 256
#define IMX8MQ_CLK_CLKO1 257
#define IMX8MQ_CLK_ARM 258
#define IMX8MQ_CLK_GPIO1_ROOT 259
#define IMX8MQ_CLK_GPIO2_ROOT 260
#define IMX8MQ_CLK_GPIO3_ROOT 261
#define IMX8MQ_CLK_GPIO4_ROOT 262
#define IMX8MQ_CLK_GPIO5_ROOT 263
#define IMX8MQ_CLK_SNVS_ROOT 264
#define IMX8MQ_CLK_GIC 265
#define IMX8MQ_VIDEO2_PLL1_REF_SEL 266
#define IMX8MQ_CLK_GPU_CORE 285
#define IMX8MQ_CLK_GPU_SHADER 286
#define IMX8MQ_CLK_M4_CORE 287
#define IMX8MQ_CLK_VPU_CORE 288
#define IMX8MQ_CLK_A53_CORE 289
#define IMX8MQ_CLK_MON_AUDIO_PLL1_DIV 290
#define IMX8MQ_CLK_MON_AUDIO_PLL2_DIV 291
#define IMX8MQ_CLK_MON_VIDEO_PLL1_DIV 292
#define IMX8MQ_CLK_MON_GPU_PLL_DIV 293
#define IMX8MQ_CLK_MON_VPU_PLL_DIV 294
#define IMX8MQ_CLK_MON_ARM_PLL_DIV 295
#define IMX8MQ_CLK_MON_SYS_PLL1_DIV 296
#define IMX8MQ_CLK_MON_SYS_PLL2_DIV 297
#define IMX8MQ_CLK_MON_SYS_PLL3_DIV 298
#define IMX8MQ_CLK_MON_DRAM_PLL_DIV 299
#define IMX8MQ_CLK_MON_VIDEO_PLL2_DIV 300
#define IMX8MQ_CLK_MON_SEL 301
#define IMX8MQ_CLK_MON_CLK2_OUT 302
#define IMX8MQ_CLK_END 303
#endif /* __DT_BINDINGS_CLOCK_IMX8MQ_H */