Home | History | Annotate | Line # | Download | only in nxp
      1  1.1  skrll /* $NetBSD: imx8mq_ccm.h,v 1.1 2020/12/23 14:42:38 skrll Exp $ */
      2  1.1  skrll 
      3  1.1  skrll /*-
      4  1.1  skrll  * Copyright (c) 2020 Jared McNeill <jmcneill (at) invisible.ca>
      5  1.1  skrll  * All rights reserved.
      6  1.1  skrll  *
      7  1.1  skrll  * Redistribution and use in source and binary forms, with or without
      8  1.1  skrll  * modification, are permitted provided that the following conditions
      9  1.1  skrll  * are met:
     10  1.1  skrll  * 1. Redistributions of source code must retain the above copyright
     11  1.1  skrll  *    notice, this list of conditions and the following disclaimer.
     12  1.1  skrll  * 2. Redistributions in binary form must reproduce the above copyright
     13  1.1  skrll  *    notice, this list of conditions and the following disclaimer in the
     14  1.1  skrll  *    documentation and/or other materials provided with the distribution.
     15  1.1  skrll  *
     16  1.1  skrll  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
     17  1.1  skrll  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
     18  1.1  skrll  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
     19  1.1  skrll  * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
     20  1.1  skrll  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
     21  1.1  skrll  * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
     22  1.1  skrll  * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
     23  1.1  skrll  * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
     24  1.1  skrll  * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
     25  1.1  skrll  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
     26  1.1  skrll  * SUCH DAMAGE.
     27  1.1  skrll  */
     28  1.1  skrll 
     29  1.1  skrll #ifndef _IMX8MQ_CCM_H
     30  1.1  skrll #define _IMX8MQ_CCM_H
     31  1.1  skrll 
     32  1.1  skrll /*
     33  1.1  skrll  * Clocks
     34  1.1  skrll  */
     35  1.1  skrll 
     36  1.1  skrll #define	CLK_DUMMY 0
     37  1.1  skrll #define	CLK_32K 1
     38  1.1  skrll #define	CLK_25M 2
     39  1.1  skrll #define	CLK_27M 3
     40  1.1  skrll #define	CLK_EXT1 4
     41  1.1  skrll #define	CLK_EXT2 5
     42  1.1  skrll #define	CLK_EXT3 6
     43  1.1  skrll #define	CLK_EXT4 7
     44  1.1  skrll #define	ARM_PLL_REF_SEL 8
     45  1.1  skrll #define	ARM_PLL_REF_DIV 9
     46  1.1  skrll #define	ARM_PLL 10
     47  1.1  skrll #define	ARM_PLL_BYPASS 11
     48  1.1  skrll #define	ARM_PLL_OUT 12
     49  1.1  skrll #define	GPU_PLL_REF_SEL 13
     50  1.1  skrll #define	GPU_PLL_REF_DIV 14
     51  1.1  skrll #define	GPU_PLL 15
     52  1.1  skrll #define	GPU_PLL_BYPASS 16
     53  1.1  skrll #define	GPU_PLL_OUT 17
     54  1.1  skrll #define	VPU_PLL_REF_SEL 18
     55  1.1  skrll #define	VPU_PLL_REF_DIV 19
     56  1.1  skrll #define	VPU_PLL 20
     57  1.1  skrll #define	VPU_PLL_BYPASS 21
     58  1.1  skrll #define	VPU_PLL_OUT 22
     59  1.1  skrll #define	AUDIO_PLL1_REF_SEL 23
     60  1.1  skrll #define	AUDIO_PLL1_REF_DIV 24
     61  1.1  skrll #define	AUDIO_PLL1 25
     62  1.1  skrll #define	AUDIO_PLL1_BYPASS 26
     63  1.1  skrll #define	AUDIO_PLL1_OUT 27
     64  1.1  skrll #define	AUDIO_PLL2_REF_SEL 28
     65  1.1  skrll #define	AUDIO_PLL2_REF_DIV 29
     66  1.1  skrll #define	AUDIO_PLL2 30
     67  1.1  skrll #define	AUDIO_PLL2_BYPASS 31
     68  1.1  skrll #define	AUDIO_PLL2_OUT 32
     69  1.1  skrll #define	VIDEO_PLL1_REF_SEL 33
     70  1.1  skrll #define	VIDEO_PLL1_REF_DIV 34
     71  1.1  skrll #define	VIDEO_PLL1 35
     72  1.1  skrll #define	VIDEO_PLL1_BYPASS 36
     73  1.1  skrll #define	VIDEO_PLL1_OUT 37
     74  1.1  skrll #define	SYS1_PLL1_REF_SEL 38
     75  1.1  skrll #define	SYS1_PLL1_REF_DIV 39
     76  1.1  skrll #define	SYS1_PLL1 40
     77  1.1  skrll #define	SYS1_PLL1_OUT 41
     78  1.1  skrll #define	SYS1_PLL1_OUT_DIV 42
     79  1.1  skrll #define	SYS1_PLL2 43
     80  1.1  skrll #define	SYS1_PLL2_DIV 44
     81  1.1  skrll #define	SYS1_PLL2_OUT 45
     82  1.1  skrll #define	SYS2_PLL1_REF_SEL 46
     83  1.1  skrll #define	SYS2_PLL1_REF_DIV 47
     84  1.1  skrll #define	SYS2_PLL1 48
     85  1.1  skrll #define	SYS2_PLL1_OUT 49
     86  1.1  skrll #define	SYS2_PLL1_OUT_DIV 50
     87  1.1  skrll #define	SYS2_PLL2 51
     88  1.1  skrll #define	SYS2_PLL2_DIV 52
     89  1.1  skrll #define	SYS2_PLL2_OUT 53
     90  1.1  skrll #define	SYS3_PLL1_REF_SEL 54
     91  1.1  skrll #define	SYS3_PLL1_REF_DIV 55
     92  1.1  skrll #define	SYS3_PLL1 56
     93  1.1  skrll #define	SYS3_PLL1_OUT 57
     94  1.1  skrll #define	SYS3_PLL1_OUT_DIV 58
     95  1.1  skrll #define	SYS3_PLL2 59
     96  1.1  skrll #define	SYS3_PLL2_DIV 60
     97  1.1  skrll #define	SYS3_PLL2_OUT 61
     98  1.1  skrll #define	DRAM_PLL1_REF_SEL 62
     99  1.1  skrll #define	DRAM_PLL1_REF_DIV 63
    100  1.1  skrll #define	DRAM_PLL1 64
    101  1.1  skrll #define	DRAM_PLL1_OUT 65
    102  1.1  skrll #define	DRAM_PLL1_OUT_DIV 66
    103  1.1  skrll #define	DRAM_PLL2 67
    104  1.1  skrll #define	DRAM_PLL2_DIV 68
    105  1.1  skrll #define	DRAM_PLL2_OUT 69
    106  1.1  skrll #define	SYS1_PLL_40M 70
    107  1.1  skrll #define	SYS1_PLL_80M 71
    108  1.1  skrll #define	SYS1_PLL_100M 72
    109  1.1  skrll #define	SYS1_PLL_133M 73
    110  1.1  skrll #define	SYS1_PLL_160M 74
    111  1.1  skrll #define	SYS1_PLL_200M 75
    112  1.1  skrll #define	SYS1_PLL_266M 76
    113  1.1  skrll #define	SYS1_PLL_400M 77
    114  1.1  skrll #define	SYS1_PLL_800M 78
    115  1.1  skrll #define	SYS2_PLL_50M 79
    116  1.1  skrll #define	SYS2_PLL_100M 80
    117  1.1  skrll #define	SYS2_PLL_125M 81
    118  1.1  skrll #define	SYS2_PLL_166M 82
    119  1.1  skrll #define	SYS2_PLL_200M 83
    120  1.1  skrll #define	SYS2_PLL_250M 84
    121  1.1  skrll #define	SYS2_PLL_333M 85
    122  1.1  skrll #define	SYS2_PLL_500M 86
    123  1.1  skrll #define	SYS2_PLL_1000M 87
    124  1.1  skrll #define	CLK_A53_SRC 88
    125  1.1  skrll #define	CLK_A53_CG 89
    126  1.1  skrll #define	CLK_A53_DIV 90
    127  1.1  skrll #define	CLK_M4_SRC 91
    128  1.1  skrll #define	CLK_M4_CG 92
    129  1.1  skrll #define	CLK_M4_DIV 93
    130  1.1  skrll #define	CLK_VPU_SRC 94
    131  1.1  skrll #define	CLK_VPU_CG 95
    132  1.1  skrll #define	CLK_VPU_DIV 96
    133  1.1  skrll #define	CLK_GPU_CORE_SRC 97
    134  1.1  skrll #define	CLK_GPU_CORE_CG 98
    135  1.1  skrll #define	CLK_GPU_CORE_DIV 99
    136  1.1  skrll #define	CLK_GPU_SHADER_SRC 100
    137  1.1  skrll #define	CLK_GPU_SHADER_CG 101
    138  1.1  skrll #define	CLK_GPU_SHADER_DIV 102
    139  1.1  skrll #define	CLK_MAIN_AXI 103
    140  1.1  skrll #define	CLK_ENET_AXI 104
    141  1.1  skrll #define	CLK_NAND_USDHC_BUS 105
    142  1.1  skrll #define	CLK_VPU_BUS 106
    143  1.1  skrll #define	CLK_DISP_AXI 107
    144  1.1  skrll #define	CLK_DISP_APB 108
    145  1.1  skrll #define	CLK_DISP_RTRM 109
    146  1.1  skrll #define	CLK_USB_BUS 110
    147  1.1  skrll #define	CLK_GPU_AXI 111
    148  1.1  skrll #define	CLK_GPU_AHB 112
    149  1.1  skrll #define	CLK_NOC 113
    150  1.1  skrll #define	CLK_NOC_APB 115
    151  1.1  skrll #define	CLK_AHB 116
    152  1.1  skrll #define	CLK_AUDIO_AHB 117
    153  1.1  skrll #define	CLK_DRAM_ALT 118
    154  1.1  skrll #define	CLK_DRAM_APB 119
    155  1.1  skrll #define	CLK_VPU_G1 120
    156  1.1  skrll #define	CLK_VPU_G2 121
    157  1.1  skrll #define	CLK_DISP_DTRC 122
    158  1.1  skrll #define	CLK_DISP_DC8000 123
    159  1.1  skrll #define	CLK_PCIE1_CTRL 124
    160  1.1  skrll #define	CLK_PCIE1_PHY 125
    161  1.1  skrll #define	CLK_PCIE1_AUX 126
    162  1.1  skrll #define	CLK_DC_PIXEL 127
    163  1.1  skrll #define	CLK_LCDIF_PIXEL 128
    164  1.1  skrll #define	CLK_SAI1 129
    165  1.1  skrll #define	CLK_SAI2 130
    166  1.1  skrll #define	CLK_SAI3 131
    167  1.1  skrll #define	CLK_SAI4 132
    168  1.1  skrll #define	CLK_SAI5 133
    169  1.1  skrll #define	CLK_SAI6 134
    170  1.1  skrll #define	CLK_SPDIF1 135
    171  1.1  skrll #define	CLK_SPDIF2 136
    172  1.1  skrll #define	CLK_ENET_REF 137
    173  1.1  skrll #define	CLK_ENET_TIMER 138
    174  1.1  skrll #define	CLK_ENET_PHY_REF 139
    175  1.1  skrll #define	CLK_NAND 140
    176  1.1  skrll #define	CLK_QSPI 141
    177  1.1  skrll #define	CLK_USDHC1 142
    178  1.1  skrll #define	CLK_USDHC2 143
    179  1.1  skrll #define	CLK_I2C1 144
    180  1.1  skrll #define	CLK_I2C2 145
    181  1.1  skrll #define	CLK_I2C3 146
    182  1.1  skrll #define	CLK_I2C4 147
    183  1.1  skrll #define	CLK_UART1 148
    184  1.1  skrll #define	CLK_UART2 149
    185  1.1  skrll #define	CLK_UART3 150
    186  1.1  skrll #define	CLK_UART4 151
    187  1.1  skrll #define	CLK_USB_CORE_REF 152
    188  1.1  skrll #define	CLK_USB_PHY_REF 153
    189  1.1  skrll #define	CLK_ECSPI1 154
    190  1.1  skrll #define	CLK_ECSPI2 155
    191  1.1  skrll #define	CLK_PWM1 156
    192  1.1  skrll #define	CLK_PWM2 157
    193  1.1  skrll #define	CLK_PWM3 158
    194  1.1  skrll #define	CLK_PWM4 159
    195  1.1  skrll #define	CLK_GPT1 160
    196  1.1  skrll #define	CLK_WDOG 161
    197  1.1  skrll #define	CLK_WRCLK 162
    198  1.1  skrll #define	CLK_DSI_CORE 163
    199  1.1  skrll #define	CLK_DSI_PHY_REF 164
    200  1.1  skrll #define	CLK_DSI_DBI 165
    201  1.1  skrll #define	CLK_DSI_ESC 166
    202  1.1  skrll #define	CLK_CSI1_CORE 167
    203  1.1  skrll #define	CLK_CSI1_PHY_REF 168
    204  1.1  skrll #define	CLK_CSI1_ESC 169
    205  1.1  skrll #define	CLK_CSI2_CORE 170
    206  1.1  skrll #define	CLK_CSI2_PHY_REF 171
    207  1.1  skrll #define	CLK_CSI2_ESC 172
    208  1.1  skrll #define	CLK_PCIE2_CTRL 173
    209  1.1  skrll #define	CLK_PCIE2_PHY 174
    210  1.1  skrll #define	CLK_PCIE2_AUX 175
    211  1.1  skrll #define	CLK_ECSPI3 176
    212  1.1  skrll #define	CLK_A53_ROOT 177
    213  1.1  skrll #define	CLK_DRAM_ROOT 178
    214  1.1  skrll #define	CLK_ECSPI1_ROOT 179
    215  1.1  skrll #define	CLK_ECSPI2_ROOT 180
    216  1.1  skrll #define	CLK_ECSPI3_ROOT 181
    217  1.1  skrll #define	CLK_ENET1_ROOT 182
    218  1.1  skrll #define	CLK_GPT1_ROOT 183
    219  1.1  skrll #define	CLK_I2C1_ROOT 184
    220  1.1  skrll #define	CLK_I2C2_ROOT 185
    221  1.1  skrll #define	CLK_I2C3_ROOT 186
    222  1.1  skrll #define	CLK_I2C4_ROOT 187
    223  1.1  skrll #define	CLK_M4_ROOT 188
    224  1.1  skrll #define	CLK_PCIE1_ROOT 189
    225  1.1  skrll #define	CLK_PCIE2_ROOT 190
    226  1.1  skrll #define	CLK_PWM1_ROOT 191
    227  1.1  skrll #define	CLK_PWM2_ROOT 192
    228  1.1  skrll #define	CLK_PWM3_ROOT 193
    229  1.1  skrll #define	CLK_PWM4_ROOT 194
    230  1.1  skrll #define	CLK_QSPI_ROOT 195
    231  1.1  skrll #define	CLK_SAI1_ROOT 196
    232  1.1  skrll #define	CLK_SAI2_ROOT 197
    233  1.1  skrll #define	CLK_SAI3_ROOT 198
    234  1.1  skrll #define	CLK_SAI4_ROOT 199
    235  1.1  skrll #define	CLK_SAI5_ROOT 200
    236  1.1  skrll #define	CLK_SAI6_ROOT 201
    237  1.1  skrll #define	CLK_UART1_ROOT 202
    238  1.1  skrll #define	CLK_UART2_ROOT 203
    239  1.1  skrll #define	CLK_UART3_ROOT 204
    240  1.1  skrll #define	CLK_UART4_ROOT 205
    241  1.1  skrll #define	CLK_USB1_CTRL_ROOT 206
    242  1.1  skrll #define	CLK_USB2_CTRL_ROOT 207
    243  1.1  skrll #define	CLK_USB1_PHY_ROOT 208
    244  1.1  skrll #define	CLK_USB2_PHY_ROOT 209
    245  1.1  skrll #define	CLK_USDHC1_ROOT 210
    246  1.1  skrll #define	CLK_USDHC2_ROOT 211
    247  1.1  skrll #define	CLK_WDOG1_ROOT 212
    248  1.1  skrll #define	CLK_WDOG2_ROOT 213
    249  1.1  skrll #define	CLK_WDOG3_ROOT 214
    250  1.1  skrll #define	CLK_GPU_ROOT 215
    251  1.1  skrll #define	CLK_HEVC_ROOT 216
    252  1.1  skrll #define	CLK_AVC_ROOT 217
    253  1.1  skrll #define	CLK_VP9_ROOT 218
    254  1.1  skrll #define	CLK_HEVC_INTER_ROOT 219
    255  1.1  skrll #define	CLK_DISP_ROOT 220
    256  1.1  skrll #define	CLK_HDMI_ROOT 221
    257  1.1  skrll #define	CLK_HDMI_PHY_ROOT 222
    258  1.1  skrll #define	CLK_VPU_DEC_ROOT 223
    259  1.1  skrll #define	CLK_CSI1_ROOT 224
    260  1.1  skrll #define	CLK_CSI2_ROOT 225
    261  1.1  skrll #define	CLK_RAWNAND_ROOT 226
    262  1.1  skrll #define	CLK_SDMA1_ROOT 227
    263  1.1  skrll #define	CLK_SDMA2_ROOT 228
    264  1.1  skrll #define	CLK_VPU_G1_ROOT 229
    265  1.1  skrll #define	CLK_VPU_G2_ROOT 230
    266  1.1  skrll #define	SYS1_PLL_OUT 231
    267  1.1  skrll #define	SYS2_PLL_OUT 232
    268  1.1  skrll #define	SYS3_PLL_OUT 233
    269  1.1  skrll #define	DRAM_PLL_OUT 234
    270  1.1  skrll #define	GPT_3M_CLK 235
    271  1.1  skrll #define	CLK_IPG_ROOT 236
    272  1.1  skrll #define	CLK_IPG_AUDIO_ROOT 237
    273  1.1  skrll #define	CLK_SAI1_IPG 238
    274  1.1  skrll #define	CLK_SAI2_IPG 239
    275  1.1  skrll #define	CLK_SAI3_IPG 240
    276  1.1  skrll #define	CLK_SAI4_IPG 241
    277  1.1  skrll #define	CLK_SAI5_IPG 242
    278  1.1  skrll #define	CLK_SAI6_IPG 243
    279  1.1  skrll #define	CLK_DSI_AHB 244
    280  1.1  skrll #define	CLK_DSI_IPG_DIV 245
    281  1.1  skrll #define	CLK_TMU_ROOT 246
    282  1.1  skrll #define	CLK_DISP_AXI_ROOT 247
    283  1.1  skrll #define	CLK_DISP_APB_ROOT 248
    284  1.1  skrll #define	CLK_DISP_RTRM_ROOT 249
    285  1.1  skrll #define	CLK_OCOTP_ROOT 250
    286  1.1  skrll #define	CLK_DRAM_ALT_ROOT 251
    287  1.1  skrll #define	CLK_DRAM_CORE 252
    288  1.1  skrll #define	CLK_MU_ROOT 253
    289  1.1  skrll #define	VIDEO2_PLL_OUT 254
    290  1.1  skrll #define	CLK_CLKO2 255
    291  1.1  skrll #define	CLK_NAND_USDHC_BUS_RAWNAND_CLK 256
    292  1.1  skrll #define	CLK_CLKO1 257
    293  1.1  skrll #define	CLK_ARM 258
    294  1.1  skrll #define	CLK_GPIO1_ROOT 259
    295  1.1  skrll #define	CLK_GPIO2_ROOT 260
    296  1.1  skrll #define	CLK_GPIO3_ROOT 261
    297  1.1  skrll #define	CLK_GPIO4_ROOT 262
    298  1.1  skrll #define	CLK_GPIO5_ROOT 263
    299  1.1  skrll #define	CLK_SNVS_ROOT 264
    300  1.1  skrll #define	CLK_GIC 265
    301  1.1  skrll #define	VIDEO2_PLL1_REF_SEL 266
    302  1.1  skrll #define	SYS1_PLL_40M_CG 267
    303  1.1  skrll #define	SYS1_PLL_80M_CG 268
    304  1.1  skrll #define	SYS1_PLL_100M_CG 269
    305  1.1  skrll #define	SYS1_PLL_133M_CG 270
    306  1.1  skrll #define	SYS1_PLL_160M_CG 271
    307  1.1  skrll #define	SYS1_PLL_200M_CG 272
    308  1.1  skrll #define	SYS1_PLL_266M_CG 273
    309  1.1  skrll #define	SYS1_PLL_400M_CG 274
    310  1.1  skrll #define	SYS1_PLL_800M_CG 275
    311  1.1  skrll #define	SYS2_PLL_50M_CG 276
    312  1.1  skrll #define	SYS2_PLL_100M_CG 277
    313  1.1  skrll #define	SYS2_PLL_125M_CG 278
    314  1.1  skrll #define	SYS2_PLL_166M_CG 279
    315  1.1  skrll #define	SYS2_PLL_200M_CG 280
    316  1.1  skrll #define	SYS2_PLL_250M_CG 281
    317  1.1  skrll #define	SYS2_PLL_333M_CG 282
    318  1.1  skrll #define	SYS2_PLL_500M_CG 283
    319  1.1  skrll #define	SYS2_PLL_1000M_CG 284
    320  1.1  skrll 
    321  1.1  skrll #endif /* !_IMX8MQ_CCM_H */
    322