1 /* 2 * Copyright 2020-2024 NXP 3 * 4 * SPDX-License-Identifier: Apache-2.0 5 */ 6 7 #ifndef ZEPHYR_INCLUDE_DT_BINDINGS_CLOCK_MCUX_LPC_SYSCON_H_ 8 #define ZEPHYR_INCLUDE_DT_BINDINGS_CLOCK_MCUX_LPC_SYSCON_H_ 9 10 /* Note- clock identifiers in this file must be unique, 11 * as the driver uses them in a switch case 12 */ 13 14 #define MCUX_LPC_CLK_ID(high, low) ((high << 8) | (low)) 15 16 /* These IDs are used within SOC macros, and thus cannot be defined 17 * using the standard MCUX_LPC_CLK_ID form 18 */ 19 #define MCUX_CTIMER0_CLK 0 20 #define MCUX_CTIMER1_CLK 1 21 #define MCUX_CTIMER2_CLK 2 22 #define MCUX_CTIMER3_CLK 3 23 #define MCUX_CTIMER4_CLK 4 24 #define MCUX_CTIMER5_CLK 5 25 #define MCUX_CTIMER6_CLK 6 26 #define MCUX_CTIMER7_CLK 7 27 28 #define MCUX_FLEXCOMM0_CLK MCUX_LPC_CLK_ID(0x01, 0x00) 29 #define MCUX_FLEXCOMM1_CLK MCUX_LPC_CLK_ID(0x01, 0x01) 30 #define MCUX_FLEXCOMM2_CLK MCUX_LPC_CLK_ID(0x01, 0x02) 31 #define MCUX_FLEXCOMM3_CLK MCUX_LPC_CLK_ID(0x01, 0x03) 32 #define MCUX_FLEXCOMM4_CLK MCUX_LPC_CLK_ID(0x01, 0x04) 33 #define MCUX_FLEXCOMM5_CLK MCUX_LPC_CLK_ID(0x01, 0x05) 34 #define MCUX_FLEXCOMM6_CLK MCUX_LPC_CLK_ID(0x01, 0x06) 35 #define MCUX_FLEXCOMM7_CLK MCUX_LPC_CLK_ID(0x01, 0x07) 36 #define MCUX_FLEXCOMM8_CLK MCUX_LPC_CLK_ID(0x01, 0x08) 37 #define MCUX_FLEXCOMM9_CLK MCUX_LPC_CLK_ID(0x01, 0x09) 38 #define MCUX_FLEXCOMM10_CLK MCUX_LPC_CLK_ID(0x01, 0x0A) 39 #define MCUX_FLEXCOMM11_CLK MCUX_LPC_CLK_ID(0x01, 0x0B) 40 #define MCUX_FLEXCOMM12_CLK MCUX_LPC_CLK_ID(0x01, 0x0C) 41 #define MCUX_FLEXCOMM13_CLK MCUX_LPC_CLK_ID(0x01, 0x0D) 42 #define MCUX_HS_SPI_CLK MCUX_LPC_CLK_ID(0x01, 0x0E) 43 #define MCUX_FLEXCOMM14_CLK MCUX_HS_SPI_CLK 44 #define MCUX_PMIC_I2C_CLK MCUX_LPC_CLK_ID(0x01, 0x0F) 45 #define MCUX_HS_SPI1_CLK MCUX_LPC_CLK_ID(0x01, 0x10) 46 #define MCUX_FLEXCOMM17_CLK MCUX_LPC_CLK_ID(0x01, 0x11) 47 #define MCUX_FLEXCOMM18_CLK MCUX_LPC_CLK_ID(0x01, 0x12) 48 #define MCUX_FLEXCOMM19_CLK MCUX_LPC_CLK_ID(0x01, 0x13) 49 #define MCUX_FLEXCOMM20_CLK MCUX_LPC_CLK_ID(0x01, 0x14) 50 /* On RT7xx, flexcomm14 and 16 only can be LPSPI, flexcomm15 only can be I2C. */ 51 #define MCUX_LPSPI14_CLK MCUX_LPC_CLK_ID(0x01, 0x24) 52 #define MCUX_LPI2C15_CLK MCUX_LPC_CLK_ID(0x01, 0x25) 53 #define MCUX_LPSPI16_CLK MCUX_LPC_CLK_ID(0x01, 0x26) 54 #define MCUX_USDHC1_CLK MCUX_LPC_CLK_ID(0x02, 0x00) 55 #define MCUX_USDHC2_CLK MCUX_LPC_CLK_ID(0x02, 0x01) 56 57 #define MCUX_MCAN_CLK MCUX_LPC_CLK_ID(0x03, 0x00) 58 59 #define MCUX_BUS_CLK MCUX_LPC_CLK_ID(0x04, 0x00) 60 61 #define MCUX_SDIF_CLK MCUX_LPC_CLK_ID(0x05, 0x00) 62 63 #define MCUX_I3C_CLK MCUX_LPC_CLK_ID(0x06, 0x00) 64 #define MCUX_I3C2_CLK MCUX_LPC_CLK_ID(0x06, 0x01) 65 66 #define MCUX_MIPI_DSI_DPHY_CLK MCUX_LPC_CLK_ID(0x07, 0x00) 67 #define MCUX_MIPI_DSI_ESC_CLK MCUX_LPC_CLK_ID(0x07, 0x01) 68 69 #define MCUX_LCDIF_PIXEL_CLK MCUX_LPC_CLK_ID(0x08, 0x00) 70 71 #define MCUX_SCTIMER_CLK MCUX_LPC_CLK_ID(0x09, 0x00) 72 73 #define MCUX_DMIC_CLK MCUX_LPC_CLK_ID(0x0A, 0x00) 74 75 #define MCUX_FLEXSPI_CLK MCUX_LPC_CLK_ID(0x0A, 0x00) 76 #define MCUX_FLEXSPI2_CLK MCUX_LPC_CLK_ID(0x0A, 0x01) 77 78 #define MCUX_MRT_CLK MCUX_LPC_CLK_ID(0x0B, 0x00) 79 #define MCUX_FREEMRT_CLK MCUX_LPC_CLK_ID(0x0B, 0x01) 80 81 #define MCUX_PORT0_CLK MCUX_LPC_CLK_ID(0x0C, 0x00) 82 #define MCUX_PORT1_CLK MCUX_LPC_CLK_ID(0x0C, 0x01) 83 #define MCUX_PORT2_CLK MCUX_LPC_CLK_ID(0x0C, 0x02) 84 #define MCUX_PORT3_CLK MCUX_LPC_CLK_ID(0x0C, 0x03) 85 #define MCUX_PORT4_CLK MCUX_LPC_CLK_ID(0x0C, 0x04) 86 #define MCUX_PORT5_CLK MCUX_LPC_CLK_ID(0x0C, 0x05) 87 88 #define MCUX_ENET_QOS_CLK MCUX_LPC_CLK_ID(0x0D, 0x00) 89 90 #define MCUX_ENET_CLK MCUX_LPC_CLK_ID(0x0D, 0x80) 91 #define MCUX_ENET_PLL MCUX_LPC_CLK_ID(0x0D, 0x81) 92 93 #define MCUX_LCDIC_CLK MCUX_LPC_CLK_ID(0x0E, 0x00) 94 95 #define MCUX_LPADC1_CLK MCUX_LPC_CLK_ID(0x0F, 0x00) 96 #define MCUX_LPADC2_CLK MCUX_LPC_CLK_ID(0x0F, 0x01) 97 98 #define MCUX_FLEXCAN0_CLK MCUX_LPC_CLK_ID(0x10, 0x00) 99 #define MCUX_FLEXCAN1_CLK MCUX_LPC_CLK_ID(0x10, 0x01) 100 101 #define MCUX_FLEXIO0_CLK MCUX_LPC_CLK_ID(0x11, 0x00) 102 103 #define MCUX_AUDIO_MCLK MCUX_LPC_CLK_ID(0x12, 0x00) 104 105 #define MCUX_LPUART0_CLK MCUX_LPC_CLK_ID(0x13, 0x00) 106 #define MCUX_LPUART1_CLK MCUX_LPC_CLK_ID(0x13, 0x01) 107 #define MCUX_LPUART2_CLK MCUX_LPC_CLK_ID(0x13, 0x02) 108 #define MCUX_LPUART3_CLK MCUX_LPC_CLK_ID(0x13, 0x03) 109 #define MCUX_LPUART4_CLK MCUX_LPC_CLK_ID(0x13, 0x04) 110 111 #define MCUX_LPI2C0_CLK MCUX_LPC_CLK_ID(0x14, 0x00) 112 #define MCUX_LPI2C1_CLK MCUX_LPC_CLK_ID(0x14, 0x01) 113 #define MCUX_LPI2C2_CLK MCUX_LPC_CLK_ID(0x14, 0x02) 114 #define MCUX_LPI2C3_CLK MCUX_LPC_CLK_ID(0x14, 0x03) 115 116 #define MCUX_XSPI_CLK MCUX_LPC_CLK_ID(0x15, 0x00) 117 #define MCUX_XSPI0_CLK MCUX_LPC_CLK_ID(0x15, 0x00) 118 #define MCUX_XSPI1_CLK MCUX_LPC_CLK_ID(0x15, 0x01) 119 #define MCUX_XSPI2_CLK MCUX_LPC_CLK_ID(0x15, 0x02) 120 121 #define MCUX_SAI0_CLK MCUX_LPC_CLK_ID(0x16, 0x00) 122 #define MCUX_SAI1_CLK MCUX_LPC_CLK_ID(0x16, 0x01) 123 124 #define MCUX_LPSPI0_CLK MCUX_LPC_CLK_ID(0x17, 0x00) 125 #define MCUX_LPSPI1_CLK MCUX_LPC_CLK_ID(0x17, 0x01) 126 127 #endif /* ZEPHYR_INCLUDE_DT_BINDINGS_CLOCK_MCUX_LPC_SYSCON_H_ */ 128