Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

arm64: dts: mediatek: add dtsi for MT8516

The MT8516 SoC provides the following peripherals: GPIO, UART, USB2,
SPI, eMMC, SDIO, NAND, Flash, ADC, I2C, PWM, Timers, IR, Ethernet, and
Audio (I2S, SPDIF, TDM).

This commit is adding the basic dtsi file with the support of the
following IOs: GPIO, UART, SPI, eMMC, I2C, Timers.

Signed-off-by: Fabien Parent <fparent@baylibre.com>
Signed-off-by: Matthias Brugger <matthias.bgg@gmail.com>

authored by

Fabien Parent and committed by
Matthias Brugger
5236347b 5323e0fa

+1120
+663
arch/arm64/boot/dts/mediatek/mt8516-pinfunc.h
··· 1 + /* SPDX-License-Identifier: GPL-2.0 */ 2 + /* 3 + * Copyright (C) 2019 MediaTek Inc. 4 + */ 5 + #ifndef __DTS_MT8516_PINFUNC_H 6 + #define __DTS_MT8516_PINFUNC_H 7 + 8 + #include <dt-bindings/pinctrl/mt65xx.h> 9 + 10 + #define MT8516_PIN_0_EINT0__FUNC_GPIO0 (MTK_PIN_NO(0) | 0) 11 + #define MT8516_PIN_0_EINT0__FUNC_PWM_B (MTK_PIN_NO(0) | 1) 12 + #define MT8516_PIN_0_EINT0__FUNC_I2S2_BCK (MTK_PIN_NO(0) | 3) 13 + #define MT8516_PIN_0_EINT0__FUNC_EXT_TXD0 (MTK_PIN_NO(0) | 4) 14 + #define MT8516_PIN_0_EINT0__FUNC_SQICS (MTK_PIN_NO(0) | 6) 15 + #define MT8516_PIN_0_EINT0__FUNC_DBG_MON_A_6 (MTK_PIN_NO(0) | 7) 16 + 17 + #define MT8516_PIN_1_EINT1__FUNC_GPIO1 (MTK_PIN_NO(1) | 0) 18 + #define MT8516_PIN_1_EINT1__FUNC_PWM_C (MTK_PIN_NO(1) | 1) 19 + #define MT8516_PIN_1_EINT1__FUNC_I2S2_DI (MTK_PIN_NO(1) | 3) 20 + #define MT8516_PIN_1_EINT1__FUNC_EXT_TXD1 (MTK_PIN_NO(1) | 4) 21 + #define MT8516_PIN_1_EINT1__FUNC_CONN_MCU_TDO (MTK_PIN_NO(1) | 5) 22 + #define MT8516_PIN_1_EINT1__FUNC_SQISO (MTK_PIN_NO(1) | 6) 23 + #define MT8516_PIN_1_EINT1__FUNC_DBG_MON_A_7 (MTK_PIN_NO(1) | 7) 24 + 25 + #define MT8516_PIN_2_EINT2__FUNC_GPIO2 (MTK_PIN_NO(2) | 0) 26 + #define MT8516_PIN_2_EINT2__FUNC_CLKM0 (MTK_PIN_NO(2) | 1) 27 + #define MT8516_PIN_2_EINT2__FUNC_I2S2_LRCK (MTK_PIN_NO(2) | 3) 28 + #define MT8516_PIN_2_EINT2__FUNC_EXT_TXD2 (MTK_PIN_NO(2) | 4) 29 + #define MT8516_PIN_2_EINT2__FUNC_CONN_MCU_DBGACK_N (MTK_PIN_NO(2) | 5) 30 + #define MT8516_PIN_2_EINT2__FUNC_SQISI (MTK_PIN_NO(2) | 6) 31 + #define MT8516_PIN_2_EINT2__FUNC_DBG_MON_A_8 (MTK_PIN_NO(2) | 7) 32 + 33 + #define MT8516_PIN_3_EINT3__FUNC_GPIO3 (MTK_PIN_NO(3) | 0) 34 + #define MT8516_PIN_3_EINT3__FUNC_CLKM1 (MTK_PIN_NO(3) | 1) 35 + #define MT8516_PIN_3_EINT3__FUNC_SPI_MI (MTK_PIN_NO(3) | 3) 36 + #define MT8516_PIN_3_EINT3__FUNC_EXT_TXD3 (MTK_PIN_NO(3) | 4) 37 + #define MT8516_PIN_3_EINT3__FUNC_CONN_MCU_DBGI_N (MTK_PIN_NO(3) | 5) 38 + #define MT8516_PIN_3_EINT3__FUNC_SQIWP (MTK_PIN_NO(3) | 6) 39 + #define MT8516_PIN_3_EINT3__FUNC_DBG_MON_A_9 (MTK_PIN_NO(3) | 7) 40 + 41 + #define MT8516_PIN_4_EINT4__FUNC_GPIO4 (MTK_PIN_NO(4) | 0) 42 + #define MT8516_PIN_4_EINT4__FUNC_CLKM2 (MTK_PIN_NO(4) | 1) 43 + #define MT8516_PIN_4_EINT4__FUNC_SPI_MO (MTK_PIN_NO(4) | 3) 44 + #define MT8516_PIN_4_EINT4__FUNC_EXT_TXC (MTK_PIN_NO(4) | 4) 45 + #define MT8516_PIN_4_EINT4__FUNC_CONN_MCU_TCK (MTK_PIN_NO(4) | 5) 46 + #define MT8516_PIN_4_EINT4__FUNC_CONN_MCU_AICE_JCKC (MTK_PIN_NO(4) | 6) 47 + #define MT8516_PIN_4_EINT4__FUNC_DBG_MON_A_10 (MTK_PIN_NO(4) | 7) 48 + 49 + #define MT8516_PIN_5_EINT5__FUNC_GPIO5 (MTK_PIN_NO(5) | 0) 50 + #define MT8516_PIN_5_EINT5__FUNC_UCTS2 (MTK_PIN_NO(5) | 1) 51 + #define MT8516_PIN_5_EINT5__FUNC_SPI_CSB (MTK_PIN_NO(5) | 3) 52 + #define MT8516_PIN_5_EINT5__FUNC_EXT_RXER (MTK_PIN_NO(5) | 4) 53 + #define MT8516_PIN_5_EINT5__FUNC_CONN_MCU_TDI (MTK_PIN_NO(5) | 5) 54 + #define MT8516_PIN_5_EINT5__FUNC_CONN_TEST_CK (MTK_PIN_NO(5) | 6) 55 + #define MT8516_PIN_5_EINT5__FUNC_DBG_MON_A_11 (MTK_PIN_NO(5) | 7) 56 + 57 + #define MT8516_PIN_6_EINT6__FUNC_GPIO6 (MTK_PIN_NO(6) | 0) 58 + #define MT8516_PIN_6_EINT6__FUNC_URTS2 (MTK_PIN_NO(6) | 1) 59 + #define MT8516_PIN_6_EINT6__FUNC_SPI_CLK (MTK_PIN_NO(6) | 3) 60 + #define MT8516_PIN_6_EINT6__FUNC_EXT_RXC (MTK_PIN_NO(6) | 4) 61 + #define MT8516_PIN_6_EINT6__FUNC_CONN_MCU_TRST_B (MTK_PIN_NO(6) | 5) 62 + #define MT8516_PIN_6_EINT6__FUNC_DBG_MON_A_12 (MTK_PIN_NO(6) | 7) 63 + 64 + #define MT8516_PIN_7_EINT7__FUNC_GPIO7 (MTK_PIN_NO(7) | 0) 65 + #define MT8516_PIN_7_EINT7__FUNC_SQIRST (MTK_PIN_NO(7) | 1) 66 + #define MT8516_PIN_7_EINT7__FUNC_SDA1_0 (MTK_PIN_NO(7) | 3) 67 + #define MT8516_PIN_7_EINT7__FUNC_EXT_RXDV (MTK_PIN_NO(7) | 4) 68 + #define MT8516_PIN_7_EINT7__FUNC_CONN_MCU_TMS (MTK_PIN_NO(7) | 5) 69 + #define MT8516_PIN_7_EINT7__FUNC_CONN_MCU_AICE_JMSC (MTK_PIN_NO(7) | 6) 70 + #define MT8516_PIN_7_EINT7__FUNC_DBG_MON_A_13 (MTK_PIN_NO(7) | 7) 71 + 72 + #define MT8516_PIN_8_EINT8__FUNC_GPIO8 (MTK_PIN_NO(8) | 0) 73 + #define MT8516_PIN_8_EINT8__FUNC_SQICK (MTK_PIN_NO(8) | 1) 74 + #define MT8516_PIN_8_EINT8__FUNC_CLKM3 (MTK_PIN_NO(8) | 2) 75 + #define MT8516_PIN_8_EINT8__FUNC_SCL1_0 (MTK_PIN_NO(8) | 3) 76 + #define MT8516_PIN_8_EINT8__FUNC_EXT_RXD0 (MTK_PIN_NO(8) | 4) 77 + #define MT8516_PIN_8_EINT8__FUNC_ANT_SEL0 (MTK_PIN_NO(8) | 5) 78 + #define MT8516_PIN_8_EINT8__FUNC_DBG_MON_A_14 (MTK_PIN_NO(8) | 7) 79 + 80 + #define MT8516_PIN_9_EINT9__FUNC_GPIO9 (MTK_PIN_NO(9) | 0) 81 + #define MT8516_PIN_9_EINT9__FUNC_CLKM4 (MTK_PIN_NO(9) | 1) 82 + #define MT8516_PIN_9_EINT9__FUNC_SDA2_0 (MTK_PIN_NO(9) | 2) 83 + #define MT8516_PIN_9_EINT9__FUNC_EXT_FRAME_SYNC (MTK_PIN_NO(9) | 3) 84 + #define MT8516_PIN_9_EINT9__FUNC_EXT_RXD1 (MTK_PIN_NO(9) | 4) 85 + #define MT8516_PIN_9_EINT9__FUNC_ANT_SEL1 (MTK_PIN_NO(9) | 5) 86 + #define MT8516_PIN_9_EINT9__FUNC_DBG_MON_A_15 (MTK_PIN_NO(9) | 7) 87 + 88 + #define MT8516_PIN_10_EINT10__FUNC_GPIO10 (MTK_PIN_NO(10) | 0) 89 + #define MT8516_PIN_10_EINT10__FUNC_CLKM5 (MTK_PIN_NO(10) | 1) 90 + #define MT8516_PIN_10_EINT10__FUNC_SCL2_0 (MTK_PIN_NO(10) | 2) 91 + #define MT8516_PIN_10_EINT10__FUNC_EXT_FRAME_SYNC (MTK_PIN_NO(10) | 3) 92 + #define MT8516_PIN_10_EINT10__FUNC_EXT_RXD2 (MTK_PIN_NO(10) | 4) 93 + #define MT8516_PIN_10_EINT10__FUNC_ANT_SEL2 (MTK_PIN_NO(10) | 5) 94 + #define MT8516_PIN_10_EINT10__FUNC_DBG_MON_A_16 (MTK_PIN_NO(10) | 7) 95 + 96 + #define MT8516_PIN_11_EINT11__FUNC_GPIO11 (MTK_PIN_NO(11) | 0) 97 + #define MT8516_PIN_11_EINT11__FUNC_CLKM4 (MTK_PIN_NO(11) | 1) 98 + #define MT8516_PIN_11_EINT11__FUNC_PWM_C (MTK_PIN_NO(11) | 2) 99 + #define MT8516_PIN_11_EINT11__FUNC_CONN_TEST_CK (MTK_PIN_NO(11) | 3) 100 + #define MT8516_PIN_11_EINT11__FUNC_ANT_SEL3 (MTK_PIN_NO(11) | 4) 101 + #define MT8516_PIN_11_EINT11__FUNC_EXT_RXD3 (MTK_PIN_NO(11) | 6) 102 + #define MT8516_PIN_11_EINT11__FUNC_DBG_MON_A_17 (MTK_PIN_NO(11) | 7) 103 + 104 + #define MT8516_PIN_12_EINT12__FUNC_GPIO12 (MTK_PIN_NO(12) | 0) 105 + #define MT8516_PIN_12_EINT12__FUNC_CLKM5 (MTK_PIN_NO(12) | 1) 106 + #define MT8516_PIN_12_EINT12__FUNC_PWM_A (MTK_PIN_NO(12) | 2) 107 + #define MT8516_PIN_12_EINT12__FUNC_SPDIF_OUT (MTK_PIN_NO(12) | 3) 108 + #define MT8516_PIN_12_EINT12__FUNC_ANT_SEL4 (MTK_PIN_NO(12) | 4) 109 + #define MT8516_PIN_12_EINT12__FUNC_EXT_TXEN (MTK_PIN_NO(12) | 6) 110 + #define MT8516_PIN_12_EINT12__FUNC_DBG_MON_A_18 (MTK_PIN_NO(12) | 7) 111 + 112 + #define MT8516_PIN_13_EINT13__FUNC_GPIO13 (MTK_PIN_NO(13) | 0) 113 + #define MT8516_PIN_13_EINT13__FUNC_TSF_IN (MTK_PIN_NO(13) | 3) 114 + #define MT8516_PIN_13_EINT13__FUNC_ANT_SEL5 (MTK_PIN_NO(13) | 4) 115 + #define MT8516_PIN_13_EINT13__FUNC_SPDIF_IN (MTK_PIN_NO(13) | 6) 116 + #define MT8516_PIN_13_EINT13__FUNC_DBG_MON_A_19 (MTK_PIN_NO(13) | 7) 117 + 118 + #define MT8516_PIN_14_EINT14__FUNC_GPIO14 (MTK_PIN_NO(14) | 0) 119 + #define MT8516_PIN_14_EINT14__FUNC_I2S_8CH_DO1 (MTK_PIN_NO(14) | 2) 120 + #define MT8516_PIN_14_EINT14__FUNC_TDM_RX_MCK (MTK_PIN_NO(14) | 3) 121 + #define MT8516_PIN_14_EINT14__FUNC_ANT_SEL1 (MTK_PIN_NO(14) | 4) 122 + #define MT8516_PIN_14_EINT14__FUNC_CONN_MCU_DBGACK_N (MTK_PIN_NO(14) | 5) 123 + #define MT8516_PIN_14_EINT14__FUNC_NCLE (MTK_PIN_NO(14) | 6) 124 + #define MT8516_PIN_14_EINT14__FUNC_DBG_MON_B_8 (MTK_PIN_NO(14) | 7) 125 + 126 + #define MT8516_PIN_15_EINT15__FUNC_GPIO15 (MTK_PIN_NO(15) | 0) 127 + #define MT8516_PIN_15_EINT15__FUNC_I2S_8CH_LRCK (MTK_PIN_NO(15) | 2) 128 + #define MT8516_PIN_15_EINT15__FUNC_TDM_RX_BCK (MTK_PIN_NO(15) | 3) 129 + #define MT8516_PIN_15_EINT15__FUNC_ANT_SEL2 (MTK_PIN_NO(15) | 4) 130 + #define MT8516_PIN_15_EINT15__FUNC_CONN_MCU_DBGI_N (MTK_PIN_NO(15) | 5) 131 + #define MT8516_PIN_15_EINT15__FUNC_NCEB1 (MTK_PIN_NO(15) | 6) 132 + #define MT8516_PIN_15_EINT15__FUNC_DBG_MON_B_9 (MTK_PIN_NO(15) | 7) 133 + 134 + #define MT8516_PIN_16_EINT16__FUNC_GPIO16 (MTK_PIN_NO(16) | 0) 135 + #define MT8516_PIN_16_EINT16__FUNC_I2S_8CH_BCK (MTK_PIN_NO(16) | 2) 136 + #define MT8516_PIN_16_EINT16__FUNC_TDM_RX_LRCK (MTK_PIN_NO(16) | 3) 137 + #define MT8516_PIN_16_EINT16__FUNC_ANT_SEL3 (MTK_PIN_NO(16) | 4) 138 + #define MT8516_PIN_16_EINT16__FUNC_CONN_MCU_TRST_B (MTK_PIN_NO(16) | 5) 139 + #define MT8516_PIN_16_EINT16__FUNC_NCEB0 (MTK_PIN_NO(16) | 6) 140 + #define MT8516_PIN_16_EINT16__FUNC_DBG_MON_B_10 (MTK_PIN_NO(16) | 7) 141 + 142 + #define MT8516_PIN_17_EINT17__FUNC_GPIO17 (MTK_PIN_NO(17) | 0) 143 + #define MT8516_PIN_17_EINT17__FUNC_I2S_8CH_MCK (MTK_PIN_NO(17) | 2) 144 + #define MT8516_PIN_17_EINT17__FUNC_TDM_RX_DI (MTK_PIN_NO(17) | 3) 145 + #define MT8516_PIN_17_EINT17__FUNC_IDDIG (MTK_PIN_NO(17) | 4) 146 + #define MT8516_PIN_17_EINT17__FUNC_ANT_SEL4 (MTK_PIN_NO(17) | 5) 147 + #define MT8516_PIN_17_EINT17__FUNC_NREB (MTK_PIN_NO(17) | 6) 148 + #define MT8516_PIN_17_EINT17__FUNC_DBG_MON_B_11 (MTK_PIN_NO(17) | 7) 149 + 150 + #define MT8516_PIN_18_EINT18__FUNC_GPIO18 (MTK_PIN_NO(18) | 0) 151 + #define MT8516_PIN_18_EINT18__FUNC_USB_DRVVBUS (MTK_PIN_NO(18) | 2) 152 + #define MT8516_PIN_18_EINT18__FUNC_I2S3_LRCK (MTK_PIN_NO(18) | 3) 153 + #define MT8516_PIN_18_EINT18__FUNC_CLKM1 (MTK_PIN_NO(18) | 4) 154 + #define MT8516_PIN_18_EINT18__FUNC_ANT_SEL3 (MTK_PIN_NO(18) | 5) 155 + #define MT8516_PIN_18_EINT18__FUNC_I2S2_BCK (MTK_PIN_NO(18) | 6) 156 + #define MT8516_PIN_18_EINT18__FUNC_DBG_MON_A_20 (MTK_PIN_NO(18) | 7) 157 + 158 + #define MT8516_PIN_19_EINT19__FUNC_GPIO19 (MTK_PIN_NO(19) | 0) 159 + #define MT8516_PIN_19_EINT19__FUNC_UCTS1 (MTK_PIN_NO(19) | 1) 160 + #define MT8516_PIN_19_EINT19__FUNC_IDDIG (MTK_PIN_NO(19) | 2) 161 + #define MT8516_PIN_19_EINT19__FUNC_I2S3_BCK (MTK_PIN_NO(19) | 3) 162 + #define MT8516_PIN_19_EINT19__FUNC_CLKM2 (MTK_PIN_NO(19) | 4) 163 + #define MT8516_PIN_19_EINT19__FUNC_ANT_SEL4 (MTK_PIN_NO(19) | 5) 164 + #define MT8516_PIN_19_EINT19__FUNC_I2S2_DI (MTK_PIN_NO(19) | 6) 165 + #define MT8516_PIN_19_EINT19__FUNC_DBG_MON_A_21 (MTK_PIN_NO(19) | 7) 166 + 167 + #define MT8516_PIN_20_EINT20__FUNC_GPIO20 (MTK_PIN_NO(20) | 0) 168 + #define MT8516_PIN_20_EINT20__FUNC_URTS1 (MTK_PIN_NO(20) | 1) 169 + #define MT8516_PIN_20_EINT20__FUNC_I2S3_DO (MTK_PIN_NO(20) | 3) 170 + #define MT8516_PIN_20_EINT20__FUNC_CLKM3 (MTK_PIN_NO(20) | 4) 171 + #define MT8516_PIN_20_EINT20__FUNC_ANT_SEL5 (MTK_PIN_NO(20) | 5) 172 + #define MT8516_PIN_20_EINT20__FUNC_I2S2_LRCK (MTK_PIN_NO(20) | 6) 173 + #define MT8516_PIN_20_EINT20__FUNC_DBG_MON_A_22 (MTK_PIN_NO(20) | 7) 174 + 175 + #define MT8516_PIN_21_EINT21__FUNC_GPIO21 (MTK_PIN_NO(21) | 0) 176 + #define MT8516_PIN_21_EINT21__FUNC_NRNB (MTK_PIN_NO(21) | 1) 177 + #define MT8516_PIN_21_EINT21__FUNC_ANT_SEL0 (MTK_PIN_NO(21) | 2) 178 + #define MT8516_PIN_21_EINT21__FUNC_I2S_8CH_DO4 (MTK_PIN_NO(21) | 3) 179 + #define MT8516_PIN_21_EINT21__FUNC_DBG_MON_B_31 (MTK_PIN_NO(21) | 7) 180 + 181 + #define MT8516_PIN_22_EINT22__FUNC_GPIO22 (MTK_PIN_NO(22) | 0) 182 + #define MT8516_PIN_22_EINT22__FUNC_I2S_8CH_DO2 (MTK_PIN_NO(22) | 2) 183 + #define MT8516_PIN_22_EINT22__FUNC_TSF_IN (MTK_PIN_NO(22) | 3) 184 + #define MT8516_PIN_22_EINT22__FUNC_USB_DRVVBUS (MTK_PIN_NO(22) | 4) 185 + #define MT8516_PIN_22_EINT22__FUNC_SPDIF_OUT (MTK_PIN_NO(22) | 5) 186 + #define MT8516_PIN_22_EINT22__FUNC_NRE_C (MTK_PIN_NO(22) | 6) 187 + #define MT8516_PIN_22_EINT22__FUNC_DBG_MON_B_12 (MTK_PIN_NO(22) | 7) 188 + 189 + #define MT8516_PIN_23_EINT23__FUNC_GPIO23 (MTK_PIN_NO(23) | 0) 190 + #define MT8516_PIN_23_EINT23__FUNC_I2S_8CH_DO3 (MTK_PIN_NO(23) | 2) 191 + #define MT8516_PIN_23_EINT23__FUNC_CLKM0 (MTK_PIN_NO(23) | 3) 192 + #define MT8516_PIN_23_EINT23__FUNC_IR (MTK_PIN_NO(23) | 4) 193 + #define MT8516_PIN_23_EINT23__FUNC_SPDIF_IN (MTK_PIN_NO(23) | 5) 194 + #define MT8516_PIN_23_EINT23__FUNC_NDQS_C (MTK_PIN_NO(23) | 6) 195 + #define MT8516_PIN_23_EINT23__FUNC_DBG_MON_B_13 (MTK_PIN_NO(23) | 7) 196 + 197 + #define MT8516_PIN_24_EINT24__FUNC_GPIO24 (MTK_PIN_NO(24) | 0) 198 + #define MT8516_PIN_24_EINT24__FUNC_ANT_SEL1 (MTK_PIN_NO(24) | 3) 199 + #define MT8516_PIN_24_EINT24__FUNC_UCTS2 (MTK_PIN_NO(24) | 4) 200 + #define MT8516_PIN_24_EINT24__FUNC_PWM_A (MTK_PIN_NO(24) | 5) 201 + #define MT8516_PIN_24_EINT24__FUNC_I2S0_MCK (MTK_PIN_NO(24) | 6) 202 + #define MT8516_PIN_24_EINT24__FUNC_DBG_MON_A_0 (MTK_PIN_NO(24) | 7) 203 + 204 + #define MT8516_PIN_25_EINT25__FUNC_GPIO25 (MTK_PIN_NO(25) | 0) 205 + #define MT8516_PIN_25_EINT25__FUNC_ANT_SEL0 (MTK_PIN_NO(25) | 3) 206 + #define MT8516_PIN_25_EINT25__FUNC_URTS2 (MTK_PIN_NO(25) | 4) 207 + #define MT8516_PIN_25_EINT25__FUNC_PWM_B (MTK_PIN_NO(25) | 5) 208 + #define MT8516_PIN_25_EINT25__FUNC_I2S_8CH_MCK (MTK_PIN_NO(25) | 6) 209 + #define MT8516_PIN_25_EINT25__FUNC_DBG_MON_A_1 (MTK_PIN_NO(25) | 7) 210 + 211 + #define MT8516_PIN_26_PWRAP_SPI0_MI__FUNC_GPIO26 (MTK_PIN_NO(26) | 0) 212 + #define MT8516_PIN_26_PWRAP_SPI0_MI__FUNC_PWRAP_SPI0_MO (MTK_PIN_NO(26) | 1) 213 + #define MT8516_PIN_26_PWRAP_SPI0_MI__FUNC_PWRAP_SPI0_MI (MTK_PIN_NO(26) | 2) 214 + 215 + #define MT8516_PIN_27_PWRAP_SPI0_MO__FUNC_GPIO27 (MTK_PIN_NO(27) | 0) 216 + #define MT8516_PIN_27_PWRAP_SPI0_MO__FUNC_PWRAP_SPI0_MI (MTK_PIN_NO(27) | 1) 217 + #define MT8516_PIN_27_PWRAP_SPI0_MO__FUNC_PWRAP_SPI0_MO (MTK_PIN_NO(27) | 2) 218 + 219 + #define MT8516_PIN_28_PWRAP_INT__FUNC_GPIO28 (MTK_PIN_NO(28) | 0) 220 + #define MT8516_PIN_28_PWRAP_INT__FUNC_I2S0_MCK (MTK_PIN_NO(28) | 1) 221 + #define MT8516_PIN_28_PWRAP_INT__FUNC_I2S_8CH_MCK (MTK_PIN_NO(28) | 4) 222 + #define MT8516_PIN_28_PWRAP_INT__FUNC_I2S2_MCK (MTK_PIN_NO(28) | 5) 223 + #define MT8516_PIN_28_PWRAP_INT__FUNC_I2S3_MCK (MTK_PIN_NO(28) | 6) 224 + 225 + #define MT8516_PIN_29_PWRAP_SPI0_CK__FUNC_GPIO29 (MTK_PIN_NO(29) | 0) 226 + #define MT8516_PIN_29_PWRAP_SPI0_CK__FUNC_PWRAP_SPI0_CK (MTK_PIN_NO(29) | 1) 227 + 228 + #define MT8516_PIN_30_PWRAP_SPI0_CSN__FUNC_GPIO30 (MTK_PIN_NO(30) | 0) 229 + #define MT8516_PIN_30_PWRAP_SPI0_CSN__FUNC_PWRAP_SPI0_CSN (MTK_PIN_NO(30) | 1) 230 + 231 + #define MT8516_PIN_31_RTC32K_CK__FUNC_GPIO31 (MTK_PIN_NO(31) | 0) 232 + #define MT8516_PIN_31_RTC32K_CK__FUNC_RTC32K_CK (MTK_PIN_NO(31) | 1) 233 + 234 + #define MT8516_PIN_32_WATCHDOG__FUNC_GPIO32 (MTK_PIN_NO(32) | 0) 235 + #define MT8516_PIN_32_WATCHDOG__FUNC_WATCHDOG (MTK_PIN_NO(32) | 1) 236 + 237 + #define MT8516_PIN_33_SRCLKENA__FUNC_GPIO33 (MTK_PIN_NO(33) | 0) 238 + #define MT8516_PIN_33_SRCLKENA__FUNC_SRCLKENA0 (MTK_PIN_NO(33) | 1) 239 + 240 + #define MT8516_PIN_34_URXD2__FUNC_GPIO34 (MTK_PIN_NO(34) | 0) 241 + #define MT8516_PIN_34_URXD2__FUNC_URXD2 (MTK_PIN_NO(34) | 1) 242 + #define MT8516_PIN_34_URXD2__FUNC_UTXD2 (MTK_PIN_NO(34) | 3) 243 + #define MT8516_PIN_34_URXD2__FUNC_DBG_SCL (MTK_PIN_NO(34) | 4) 244 + #define MT8516_PIN_34_URXD2__FUNC_I2S2_MCK (MTK_PIN_NO(34) | 6) 245 + #define MT8516_PIN_34_URXD2__FUNC_DBG_MON_B_0 (MTK_PIN_NO(34) | 7) 246 + 247 + #define MT8516_PIN_35_UTXD2__FUNC_GPIO35 (MTK_PIN_NO(35) | 0) 248 + #define MT8516_PIN_35_UTXD2__FUNC_UTXD2 (MTK_PIN_NO(35) | 1) 249 + #define MT8516_PIN_35_UTXD2__FUNC_URXD2 (MTK_PIN_NO(35) | 3) 250 + #define MT8516_PIN_35_UTXD2__FUNC_DBG_SDA (MTK_PIN_NO(35) | 4) 251 + #define MT8516_PIN_35_UTXD2__FUNC_I2S3_MCK (MTK_PIN_NO(35) | 6) 252 + #define MT8516_PIN_35_UTXD2__FUNC_DBG_MON_B_1 (MTK_PIN_NO(35) | 7) 253 + 254 + #define MT8516_PIN_36_MRG_CLK__FUNC_GPIO36 (MTK_PIN_NO(36) | 0) 255 + #define MT8516_PIN_36_MRG_CLK__FUNC_MRG_CLK (MTK_PIN_NO(36) | 1) 256 + #define MT8516_PIN_36_MRG_CLK__FUNC_I2S0_BCK (MTK_PIN_NO(36) | 3) 257 + #define MT8516_PIN_36_MRG_CLK__FUNC_I2S3_BCK (MTK_PIN_NO(36) | 4) 258 + #define MT8516_PIN_36_MRG_CLK__FUNC_PCM0_CLK (MTK_PIN_NO(36) | 5) 259 + #define MT8516_PIN_36_MRG_CLK__FUNC_IR (MTK_PIN_NO(36) | 6) 260 + #define MT8516_PIN_36_MRG_CLK__FUNC_DBG_MON_A_2 (MTK_PIN_NO(36) | 7) 261 + 262 + #define MT8516_PIN_37_MRG_SYNC__FUNC_GPIO37 (MTK_PIN_NO(37) | 0) 263 + #define MT8516_PIN_37_MRG_SYNC__FUNC_MRG_SYNC (MTK_PIN_NO(37) | 1) 264 + #define MT8516_PIN_37_MRG_SYNC__FUNC_I2S0_LRCK (MTK_PIN_NO(37) | 3) 265 + #define MT8516_PIN_37_MRG_SYNC__FUNC_I2S3_LRCK (MTK_PIN_NO(37) | 4) 266 + #define MT8516_PIN_37_MRG_SYNC__FUNC_PCM0_SYNC (MTK_PIN_NO(37) | 5) 267 + #define MT8516_PIN_37_MRG_SYNC__FUNC_EXT_COL (MTK_PIN_NO(37) | 6) 268 + #define MT8516_PIN_37_MRG_SYNC__FUNC_DBG_MON_A_3 (MTK_PIN_NO(37) | 7) 269 + 270 + #define MT8516_PIN_38_MRG_DI__FUNC_GPIO38 (MTK_PIN_NO(38) | 0) 271 + #define MT8516_PIN_38_MRG_DI__FUNC_MRG_DI (MTK_PIN_NO(38) | 1) 272 + #define MT8516_PIN_38_MRG_DI__FUNC_I2S0_DI (MTK_PIN_NO(38) | 3) 273 + #define MT8516_PIN_38_MRG_DI__FUNC_I2S3_DO (MTK_PIN_NO(38) | 4) 274 + #define MT8516_PIN_38_MRG_DI__FUNC_PCM0_DI (MTK_PIN_NO(38) | 5) 275 + #define MT8516_PIN_38_MRG_DI__FUNC_EXT_MDIO (MTK_PIN_NO(38) | 6) 276 + #define MT8516_PIN_38_MRG_DI__FUNC_DBG_MON_A_4 (MTK_PIN_NO(38) | 7) 277 + 278 + #define MT8516_PIN_39_MRG_DO__FUNC_GPIO39 (MTK_PIN_NO(39) | 0) 279 + #define MT8516_PIN_39_MRG_DO__FUNC_MRG_DO (MTK_PIN_NO(39) | 1) 280 + #define MT8516_PIN_39_MRG_DO__FUNC_I2S0_MCK (MTK_PIN_NO(39) | 3) 281 + #define MT8516_PIN_39_MRG_DO__FUNC_I2S3_MCK (MTK_PIN_NO(39) | 4) 282 + #define MT8516_PIN_39_MRG_DO__FUNC_PCM0_DO (MTK_PIN_NO(39) | 5) 283 + #define MT8516_PIN_39_MRG_DO__FUNC_EXT_MDC (MTK_PIN_NO(39) | 6) 284 + #define MT8516_PIN_39_MRG_DO__FUNC_DBG_MON_A_5 (MTK_PIN_NO(39) | 7) 285 + 286 + #define MT8516_PIN_40_KPROW0__FUNC_GPIO40 (MTK_PIN_NO(40) | 0) 287 + #define MT8516_PIN_40_KPROW0__FUNC_KPROW0 (MTK_PIN_NO(40) | 1) 288 + #define MT8516_PIN_40_KPROW0__FUNC_DBG_MON_B_4 (MTK_PIN_NO(40) | 7) 289 + 290 + #define MT8516_PIN_41_KPROW1__FUNC_GPIO41 (MTK_PIN_NO(41) | 0) 291 + #define MT8516_PIN_41_KPROW1__FUNC_KPROW1 (MTK_PIN_NO(41) | 1) 292 + #define MT8516_PIN_41_KPROW1__FUNC_IDDIG (MTK_PIN_NO(41) | 2) 293 + #define MT8516_PIN_41_KPROW1__FUNC_EXT_FRAME_SYNC (MTK_PIN_NO(41) | 3) 294 + #define MT8516_PIN_41_KPROW1__FUNC_DBG_MON_B_5 (MTK_PIN_NO(41) | 7) 295 + 296 + #define MT8516_PIN_42_KPCOL0__FUNC_GPIO42 (MTK_PIN_NO(42) | 0) 297 + #define MT8516_PIN_42_KPCOL0__FUNC_KPCOL0 (MTK_PIN_NO(42) | 1) 298 + #define MT8516_PIN_42_KPCOL0__FUNC_DBG_MON_B_6 (MTK_PIN_NO(42) | 7) 299 + 300 + #define MT8516_PIN_43_KPCOL1__FUNC_GPIO43 (MTK_PIN_NO(43) | 0) 301 + #define MT8516_PIN_43_KPCOL1__FUNC_KPCOL1 (MTK_PIN_NO(43) | 1) 302 + #define MT8516_PIN_43_KPCOL1__FUNC_USB_DRVVBUS (MTK_PIN_NO(43) | 2) 303 + #define MT8516_PIN_43_KPCOL1__FUNC_EXT_FRAME_SYNC (MTK_PIN_NO(43) | 3) 304 + #define MT8516_PIN_43_KPCOL1__FUNC_TSF_IN (MTK_PIN_NO(43) | 4) 305 + #define MT8516_PIN_43_KPCOL1__FUNC_DBG_MON_B_7 (MTK_PIN_NO(43) | 7) 306 + 307 + #define MT8516_PIN_44_JTMS__FUNC_GPIO44 (MTK_PIN_NO(44) | 0) 308 + #define MT8516_PIN_44_JTMS__FUNC_JTMS (MTK_PIN_NO(44) | 1) 309 + #define MT8516_PIN_44_JTMS__FUNC_CONN_MCU_TMS (MTK_PIN_NO(44) | 2) 310 + #define MT8516_PIN_44_JTMS__FUNC_CONN_MCU_AICE_JMSC (MTK_PIN_NO(44) | 3) 311 + #define MT8516_PIN_44_JTMS__FUNC_DFD_TMS_XI (MTK_PIN_NO(44) | 5) 312 + #define MT8516_PIN_44_JTMS__FUNC_UDI_TMS_XI (MTK_PIN_NO(44) | 6) 313 + 314 + #define MT8516_PIN_45_JTCK__FUNC_GPIO45 (MTK_PIN_NO(45) | 0) 315 + #define MT8516_PIN_45_JTCK__FUNC_JTCK (MTK_PIN_NO(45) | 1) 316 + #define MT8516_PIN_45_JTCK__FUNC_CONN_MCU_TCK (MTK_PIN_NO(45) | 2) 317 + #define MT8516_PIN_45_JTCK__FUNC_CONN_MCU_AICE_JCKC (MTK_PIN_NO(45) | 3) 318 + 319 + #define MT8516_PIN_46_JTDI__FUNC_GPIO46 (MTK_PIN_NO(46) | 0) 320 + #define MT8516_PIN_46_JTDI__FUNC_JTDI (MTK_PIN_NO(46) | 1) 321 + #define MT8516_PIN_46_JTDI__FUNC_CONN_MCU_TDI (MTK_PIN_NO(46) | 2) 322 + 323 + #define MT8516_PIN_47_JTDO__FUNC_GPIO47 (MTK_PIN_NO(47) | 0) 324 + #define MT8516_PIN_47_JTDO__FUNC_JTDO (MTK_PIN_NO(47) | 1) 325 + #define MT8516_PIN_47_JTDO__FUNC_CONN_MCU_TDO (MTK_PIN_NO(47) | 2) 326 + 327 + #define MT8516_PIN_48_SPI_CS__FUNC_GPIO48 (MTK_PIN_NO(48) | 0) 328 + #define MT8516_PIN_48_SPI_CS__FUNC_SPI_CSB (MTK_PIN_NO(48) | 1) 329 + #define MT8516_PIN_48_SPI_CS__FUNC_I2S0_DI (MTK_PIN_NO(48) | 3) 330 + #define MT8516_PIN_48_SPI_CS__FUNC_I2S2_BCK (MTK_PIN_NO(48) | 4) 331 + #define MT8516_PIN_48_SPI_CS__FUNC_DBG_MON_A_23 (MTK_PIN_NO(48) | 7) 332 + 333 + #define MT8516_PIN_49_SPI_CK__FUNC_GPIO49 (MTK_PIN_NO(49) | 0) 334 + #define MT8516_PIN_49_SPI_CK__FUNC_SPI_CLK (MTK_PIN_NO(49) | 1) 335 + #define MT8516_PIN_49_SPI_CK__FUNC_I2S0_LRCK (MTK_PIN_NO(49) | 3) 336 + #define MT8516_PIN_49_SPI_CK__FUNC_I2S2_DI (MTK_PIN_NO(49) | 4) 337 + #define MT8516_PIN_49_SPI_CK__FUNC_DBG_MON_A_24 (MTK_PIN_NO(49) | 7) 338 + 339 + #define MT8516_PIN_50_SPI_MI__FUNC_GPIO50 (MTK_PIN_NO(50) | 0) 340 + #define MT8516_PIN_50_SPI_MI__FUNC_SPI_MI (MTK_PIN_NO(50) | 1) 341 + #define MT8516_PIN_50_SPI_MI__FUNC_SPI_MO (MTK_PIN_NO(50) | 2) 342 + #define MT8516_PIN_50_SPI_MI__FUNC_I2S0_BCK (MTK_PIN_NO(50) | 3) 343 + #define MT8516_PIN_50_SPI_MI__FUNC_I2S2_LRCK (MTK_PIN_NO(50) | 4) 344 + #define MT8516_PIN_50_SPI_MI__FUNC_DBG_MON_A_25 (MTK_PIN_NO(50) | 7) 345 + 346 + #define MT8516_PIN_51_SPI_MO__FUNC_GPIO51 (MTK_PIN_NO(51) | 0) 347 + #define MT8516_PIN_51_SPI_MO__FUNC_SPI_MO (MTK_PIN_NO(51) | 1) 348 + #define MT8516_PIN_51_SPI_MO__FUNC_SPI_MI (MTK_PIN_NO(51) | 2) 349 + #define MT8516_PIN_51_SPI_MO__FUNC_I2S0_MCK (MTK_PIN_NO(51) | 3) 350 + #define MT8516_PIN_51_SPI_MO__FUNC_I2S2_MCK (MTK_PIN_NO(51) | 4) 351 + #define MT8516_PIN_51_SPI_MO__FUNC_DBG_MON_A_26 (MTK_PIN_NO(51) | 7) 352 + 353 + #define MT8516_PIN_52_SDA1__FUNC_GPIO52 (MTK_PIN_NO(52) | 0) 354 + #define MT8516_PIN_52_SDA1__FUNC_SDA1_0 (MTK_PIN_NO(52) | 1) 355 + 356 + #define MT8516_PIN_53_SCL1__FUNC_GPIO53 (MTK_PIN_NO(53) | 0) 357 + #define MT8516_PIN_53_SCL1__FUNC_SCL1_0 (MTK_PIN_NO(53) | 1) 358 + 359 + #define MT8516_PIN_54_GPIO54__FUNC_GPIO54 (MTK_PIN_NO(54) | 0) 360 + #define MT8516_PIN_54_GPIO54__FUNC_PWM_B (MTK_PIN_NO(54) | 2) 361 + #define MT8516_PIN_54_GPIO54__FUNC_DBG_MON_B_2 (MTK_PIN_NO(54) | 7) 362 + 363 + #define MT8516_PIN_55_I2S_DATA_IN__FUNC_GPIO55 (MTK_PIN_NO(55) | 0) 364 + #define MT8516_PIN_55_I2S_DATA_IN__FUNC_I2S0_DI (MTK_PIN_NO(55) | 1) 365 + #define MT8516_PIN_55_I2S_DATA_IN__FUNC_UCTS0 (MTK_PIN_NO(55) | 2) 366 + #define MT8516_PIN_55_I2S_DATA_IN__FUNC_I2S3_DO (MTK_PIN_NO(55) | 3) 367 + #define MT8516_PIN_55_I2S_DATA_IN__FUNC_I2S_8CH_DO1 (MTK_PIN_NO(55) | 4) 368 + #define MT8516_PIN_55_I2S_DATA_IN__FUNC_PWM_A (MTK_PIN_NO(55) | 5) 369 + #define MT8516_PIN_55_I2S_DATA_IN__FUNC_I2S2_BCK (MTK_PIN_NO(55) | 6) 370 + #define MT8516_PIN_55_I2S_DATA_IN__FUNC_DBG_MON_A_28 (MTK_PIN_NO(55) | 7) 371 + 372 + #define MT8516_PIN_56_I2S_LRCK__FUNC_GPIO56 (MTK_PIN_NO(56) | 0) 373 + #define MT8516_PIN_56_I2S_LRCK__FUNC_I2S0_LRCK (MTK_PIN_NO(56) | 1) 374 + #define MT8516_PIN_56_I2S_LRCK__FUNC_I2S3_LRCK (MTK_PIN_NO(56) | 3) 375 + #define MT8516_PIN_56_I2S_LRCK__FUNC_I2S_8CH_LRCK (MTK_PIN_NO(56) | 4) 376 + #define MT8516_PIN_56_I2S_LRCK__FUNC_PWM_B (MTK_PIN_NO(56) | 5) 377 + #define MT8516_PIN_56_I2S_LRCK__FUNC_I2S2_DI (MTK_PIN_NO(56) | 6) 378 + #define MT8516_PIN_56_I2S_LRCK__FUNC_DBG_MON_A_29 (MTK_PIN_NO(56) | 7) 379 + 380 + #define MT8516_PIN_57_I2S_BCK__FUNC_GPIO57 (MTK_PIN_NO(57) | 0) 381 + #define MT8516_PIN_57_I2S_BCK__FUNC_I2S0_BCK (MTK_PIN_NO(57) | 1) 382 + #define MT8516_PIN_57_I2S_BCK__FUNC_URTS0 (MTK_PIN_NO(57) | 2) 383 + #define MT8516_PIN_57_I2S_BCK__FUNC_I2S3_BCK (MTK_PIN_NO(57) | 3) 384 + #define MT8516_PIN_57_I2S_BCK__FUNC_I2S_8CH_BCK (MTK_PIN_NO(57) | 4) 385 + #define MT8516_PIN_57_I2S_BCK__FUNC_PWM_C (MTK_PIN_NO(57) | 5) 386 + #define MT8516_PIN_57_I2S_BCK__FUNC_I2S2_LRCK (MTK_PIN_NO(57) | 6) 387 + #define MT8516_PIN_57_I2S_BCK__FUNC_DBG_MON_A_30 (MTK_PIN_NO(57) | 7) 388 + 389 + #define MT8516_PIN_58_SDA0__FUNC_GPIO58 (MTK_PIN_NO(58) | 0) 390 + #define MT8516_PIN_58_SDA0__FUNC_SDA0_0 (MTK_PIN_NO(58) | 1) 391 + 392 + #define MT8516_PIN_59_SCL0__FUNC_GPIO59 (MTK_PIN_NO(59) | 0) 393 + #define MT8516_PIN_59_SCL0__FUNC_SCL0_0 (MTK_PIN_NO(59) | 1) 394 + 395 + #define MT8516_PIN_60_SDA2__FUNC_GPIO60 (MTK_PIN_NO(60) | 0) 396 + #define MT8516_PIN_60_SDA2__FUNC_SDA2_0 (MTK_PIN_NO(60) | 1) 397 + #define MT8516_PIN_60_SDA2__FUNC_PWM_B (MTK_PIN_NO(60) | 2) 398 + 399 + #define MT8516_PIN_61_SCL2__FUNC_GPIO61 (MTK_PIN_NO(61) | 0) 400 + #define MT8516_PIN_61_SCL2__FUNC_SCL2_0 (MTK_PIN_NO(61) | 1) 401 + #define MT8516_PIN_61_SCL2__FUNC_PWM_C (MTK_PIN_NO(61) | 2) 402 + 403 + #define MT8516_PIN_62_URXD0__FUNC_GPIO62 (MTK_PIN_NO(62) | 0) 404 + #define MT8516_PIN_62_URXD0__FUNC_URXD0 (MTK_PIN_NO(62) | 1) 405 + #define MT8516_PIN_62_URXD0__FUNC_UTXD0 (MTK_PIN_NO(62) | 2) 406 + 407 + #define MT8516_PIN_63_UTXD0__FUNC_GPIO63 (MTK_PIN_NO(63) | 0) 408 + #define MT8516_PIN_63_UTXD0__FUNC_UTXD0 (MTK_PIN_NO(63) | 1) 409 + #define MT8516_PIN_63_UTXD0__FUNC_URXD0 (MTK_PIN_NO(63) | 2) 410 + 411 + #define MT8516_PIN_64_URXD1__FUNC_GPIO64 (MTK_PIN_NO(64) | 0) 412 + #define MT8516_PIN_64_URXD1__FUNC_URXD1 (MTK_PIN_NO(64) | 1) 413 + #define MT8516_PIN_64_URXD1__FUNC_UTXD1 (MTK_PIN_NO(64) | 2) 414 + #define MT8516_PIN_64_URXD1__FUNC_DBG_MON_A_27 (MTK_PIN_NO(64) | 7) 415 + 416 + #define MT8516_PIN_65_UTXD1__FUNC_GPIO65 (MTK_PIN_NO(65) | 0) 417 + #define MT8516_PIN_65_UTXD1__FUNC_UTXD1 (MTK_PIN_NO(65) | 1) 418 + #define MT8516_PIN_65_UTXD1__FUNC_URXD1 (MTK_PIN_NO(65) | 2) 419 + #define MT8516_PIN_65_UTXD1__FUNC_DBG_MON_A_31 (MTK_PIN_NO(65) | 7) 420 + 421 + #define MT8516_PIN_68_MSDC2_CMD__FUNC_GPIO68 (MTK_PIN_NO(68) | 0) 422 + #define MT8516_PIN_68_MSDC2_CMD__FUNC_MSDC2_CMD (MTK_PIN_NO(68) | 1) 423 + #define MT8516_PIN_68_MSDC2_CMD__FUNC_I2S_8CH_DO4 (MTK_PIN_NO(68) | 2) 424 + #define MT8516_PIN_68_MSDC2_CMD__FUNC_SDA1_0 (MTK_PIN_NO(68) | 3) 425 + #define MT8516_PIN_68_MSDC2_CMD__FUNC_USB_SDA (MTK_PIN_NO(68) | 5) 426 + #define MT8516_PIN_68_MSDC2_CMD__FUNC_I2S3_BCK (MTK_PIN_NO(68) | 6) 427 + #define MT8516_PIN_68_MSDC2_CMD__FUNC_DBG_MON_B_15 (MTK_PIN_NO(68) | 7) 428 + 429 + #define MT8516_PIN_69_MSDC2_CLK__FUNC_GPIO69 (MTK_PIN_NO(69) | 0) 430 + #define MT8516_PIN_69_MSDC2_CLK__FUNC_MSDC2_CLK (MTK_PIN_NO(69) | 1) 431 + #define MT8516_PIN_69_MSDC2_CLK__FUNC_I2S_8CH_DO3 (MTK_PIN_NO(69) | 2) 432 + #define MT8516_PIN_69_MSDC2_CLK__FUNC_SCL1_0 (MTK_PIN_NO(69) | 3) 433 + #define MT8516_PIN_69_MSDC2_CLK__FUNC_USB_SCL (MTK_PIN_NO(69) | 5) 434 + #define MT8516_PIN_69_MSDC2_CLK__FUNC_I2S3_LRCK (MTK_PIN_NO(69) | 6) 435 + #define MT8516_PIN_69_MSDC2_CLK__FUNC_DBG_MON_B_16 (MTK_PIN_NO(69) | 7) 436 + 437 + #define MT8516_PIN_70_MSDC2_DAT0__FUNC_GPIO70 (MTK_PIN_NO(70) | 0) 438 + #define MT8516_PIN_70_MSDC2_DAT0__FUNC_MSDC2_DAT0 (MTK_PIN_NO(70) | 1) 439 + #define MT8516_PIN_70_MSDC2_DAT0__FUNC_I2S_8CH_DO2 (MTK_PIN_NO(70) | 2) 440 + #define MT8516_PIN_70_MSDC2_DAT0__FUNC_UTXD0 (MTK_PIN_NO(70) | 5) 441 + #define MT8516_PIN_70_MSDC2_DAT0__FUNC_I2S3_DO (MTK_PIN_NO(70) | 6) 442 + #define MT8516_PIN_70_MSDC2_DAT0__FUNC_DBG_MON_B_17 (MTK_PIN_NO(70) | 7) 443 + 444 + #define MT8516_PIN_71_MSDC2_DAT1__FUNC_GPIO71 (MTK_PIN_NO(71) | 0) 445 + #define MT8516_PIN_71_MSDC2_DAT1__FUNC_MSDC2_DAT1 (MTK_PIN_NO(71) | 1) 446 + #define MT8516_PIN_71_MSDC2_DAT1__FUNC_I2S_8CH_DO1 (MTK_PIN_NO(71) | 2) 447 + #define MT8516_PIN_71_MSDC2_DAT1__FUNC_PWM_A (MTK_PIN_NO(71) | 3) 448 + #define MT8516_PIN_71_MSDC2_DAT1__FUNC_I2S3_MCK (MTK_PIN_NO(71) | 4) 449 + #define MT8516_PIN_71_MSDC2_DAT1__FUNC_URXD0 (MTK_PIN_NO(71) | 5) 450 + #define MT8516_PIN_71_MSDC2_DAT1__FUNC_PWM_B (MTK_PIN_NO(71) | 6) 451 + #define MT8516_PIN_71_MSDC2_DAT1__FUNC_DBG_MON_B_18 (MTK_PIN_NO(71) | 7) 452 + 453 + #define MT8516_PIN_72_MSDC2_DAT2__FUNC_GPIO72 (MTK_PIN_NO(72) | 0) 454 + #define MT8516_PIN_72_MSDC2_DAT2__FUNC_MSDC2_DAT2 (MTK_PIN_NO(72) | 1) 455 + #define MT8516_PIN_72_MSDC2_DAT2__FUNC_I2S_8CH_LRCK (MTK_PIN_NO(72) | 2) 456 + #define MT8516_PIN_72_MSDC2_DAT2__FUNC_SDA2_0 (MTK_PIN_NO(72) | 3) 457 + #define MT8516_PIN_72_MSDC2_DAT2__FUNC_UTXD1 (MTK_PIN_NO(72) | 5) 458 + #define MT8516_PIN_72_MSDC2_DAT2__FUNC_PWM_C (MTK_PIN_NO(72) | 6) 459 + #define MT8516_PIN_72_MSDC2_DAT2__FUNC_DBG_MON_B_19 (MTK_PIN_NO(72) | 7) 460 + 461 + #define MT8516_PIN_73_MSDC2_DAT3__FUNC_GPIO73 (MTK_PIN_NO(73) | 0) 462 + #define MT8516_PIN_73_MSDC2_DAT3__FUNC_MSDC2_DAT3 (MTK_PIN_NO(73) | 1) 463 + #define MT8516_PIN_73_MSDC2_DAT3__FUNC_I2S_8CH_BCK (MTK_PIN_NO(73) | 2) 464 + #define MT8516_PIN_73_MSDC2_DAT3__FUNC_SCL2_0 (MTK_PIN_NO(73) | 3) 465 + #define MT8516_PIN_73_MSDC2_DAT3__FUNC_EXT_FRAME_SYNC (MTK_PIN_NO(73) | 4) 466 + #define MT8516_PIN_73_MSDC2_DAT3__FUNC_URXD1 (MTK_PIN_NO(73) | 5) 467 + #define MT8516_PIN_73_MSDC2_DAT3__FUNC_PWM_A (MTK_PIN_NO(73) | 6) 468 + #define MT8516_PIN_73_MSDC2_DAT3__FUNC_DBG_MON_B_20 (MTK_PIN_NO(73) | 7) 469 + 470 + #define MT8516_PIN_74_TDN3__FUNC_GPI74 (MTK_PIN_NO(74) | 0) 471 + #define MT8516_PIN_74_TDN3__FUNC_TDN3 (MTK_PIN_NO(74) | 1) 472 + 473 + #define MT8516_PIN_75_TDP3__FUNC_GPI75 (MTK_PIN_NO(75) | 0) 474 + #define MT8516_PIN_75_TDP3__FUNC_TDP3 (MTK_PIN_NO(75) | 1) 475 + 476 + #define MT8516_PIN_76_TDN2__FUNC_GPI76 (MTK_PIN_NO(76) | 0) 477 + #define MT8516_PIN_76_TDN2__FUNC_TDN2 (MTK_PIN_NO(76) | 1) 478 + 479 + #define MT8516_PIN_77_TDP2__FUNC_GPI77 (MTK_PIN_NO(77) | 0) 480 + #define MT8516_PIN_77_TDP2__FUNC_TDP2 (MTK_PIN_NO(77) | 1) 481 + 482 + #define MT8516_PIN_78_TCN__FUNC_GPI78 (MTK_PIN_NO(78) | 0) 483 + #define MT8516_PIN_78_TCN__FUNC_TCN (MTK_PIN_NO(78) | 1) 484 + 485 + #define MT8516_PIN_79_TCP__FUNC_GPI79 (MTK_PIN_NO(79) | 0) 486 + #define MT8516_PIN_79_TCP__FUNC_TCP (MTK_PIN_NO(79) | 1) 487 + 488 + #define MT8516_PIN_80_TDN1__FUNC_GPI80 (MTK_PIN_NO(80) | 0) 489 + #define MT8516_PIN_80_TDN1__FUNC_TDN1 (MTK_PIN_NO(80) | 1) 490 + 491 + #define MT8516_PIN_81_TDP1__FUNC_GPI81 (MTK_PIN_NO(81) | 0) 492 + #define MT8516_PIN_81_TDP1__FUNC_TDP1 (MTK_PIN_NO(81) | 1) 493 + 494 + #define MT8516_PIN_82_TDN0__FUNC_GPI82 (MTK_PIN_NO(82) | 0) 495 + #define MT8516_PIN_82_TDN0__FUNC_TDN0 (MTK_PIN_NO(82) | 1) 496 + 497 + #define MT8516_PIN_83_TDP0__FUNC_GPI83 (MTK_PIN_NO(83) | 0) 498 + #define MT8516_PIN_83_TDP0__FUNC_TDP0 (MTK_PIN_NO(83) | 1) 499 + 500 + #define MT8516_PIN_84_RDN0__FUNC_GPI84 (MTK_PIN_NO(84) | 0) 501 + #define MT8516_PIN_84_RDN0__FUNC_RDN0 (MTK_PIN_NO(84) | 1) 502 + 503 + #define MT8516_PIN_85_RDP0__FUNC_GPI85 (MTK_PIN_NO(85) | 0) 504 + #define MT8516_PIN_85_RDP0__FUNC_RDP0 (MTK_PIN_NO(85) | 1) 505 + 506 + #define MT8516_PIN_86_RDN1__FUNC_GPI86 (MTK_PIN_NO(86) | 0) 507 + #define MT8516_PIN_86_RDN1__FUNC_RDN1 (MTK_PIN_NO(86) | 1) 508 + 509 + #define MT8516_PIN_87_RDP1__FUNC_GPI87 (MTK_PIN_NO(87) | 0) 510 + #define MT8516_PIN_87_RDP1__FUNC_RDP1 (MTK_PIN_NO(87) | 1) 511 + 512 + #define MT8516_PIN_88_RCN__FUNC_GPI88 (MTK_PIN_NO(88) | 0) 513 + #define MT8516_PIN_88_RCN__FUNC_RCN (MTK_PIN_NO(88) | 1) 514 + 515 + #define MT8516_PIN_89_RCP__FUNC_GPI89 (MTK_PIN_NO(89) | 0) 516 + #define MT8516_PIN_89_RCP__FUNC_RCP (MTK_PIN_NO(89) | 1) 517 + 518 + #define MT8516_PIN_90_RDN2__FUNC_GPI90 (MTK_PIN_NO(90) | 0) 519 + #define MT8516_PIN_90_RDN2__FUNC_RDN2 (MTK_PIN_NO(90) | 1) 520 + #define MT8516_PIN_90_RDN2__FUNC_CMDAT8 (MTK_PIN_NO(90) | 2) 521 + 522 + #define MT8516_PIN_91_RDP2__FUNC_GPI91 (MTK_PIN_NO(91) | 0) 523 + #define MT8516_PIN_91_RDP2__FUNC_RDP2 (MTK_PIN_NO(91) | 1) 524 + #define MT8516_PIN_91_RDP2__FUNC_CMDAT9 (MTK_PIN_NO(91) | 2) 525 + 526 + #define MT8516_PIN_92_RDN3__FUNC_GPI92 (MTK_PIN_NO(92) | 0) 527 + #define MT8516_PIN_92_RDN3__FUNC_RDN3 (MTK_PIN_NO(92) | 1) 528 + #define MT8516_PIN_92_RDN3__FUNC_CMDAT4 (MTK_PIN_NO(92) | 2) 529 + 530 + #define MT8516_PIN_93_RDP3__FUNC_GPI93 (MTK_PIN_NO(93) | 0) 531 + #define MT8516_PIN_93_RDP3__FUNC_RDP3 (MTK_PIN_NO(93) | 1) 532 + #define MT8516_PIN_93_RDP3__FUNC_CMDAT5 (MTK_PIN_NO(93) | 2) 533 + 534 + #define MT8516_PIN_94_RCN_A__FUNC_GPI94 (MTK_PIN_NO(94) | 0) 535 + #define MT8516_PIN_94_RCN_A__FUNC_RCN_A (MTK_PIN_NO(94) | 1) 536 + #define MT8516_PIN_94_RCN_A__FUNC_CMDAT6 (MTK_PIN_NO(94) | 2) 537 + 538 + #define MT8516_PIN_95_RCP_A__FUNC_GPI95 (MTK_PIN_NO(95) | 0) 539 + #define MT8516_PIN_95_RCP_A__FUNC_RCP_A (MTK_PIN_NO(95) | 1) 540 + #define MT8516_PIN_95_RCP_A__FUNC_CMDAT7 (MTK_PIN_NO(95) | 2) 541 + 542 + #define MT8516_PIN_96_RDN1_A__FUNC_GPI96 (MTK_PIN_NO(96) | 0) 543 + #define MT8516_PIN_96_RDN1_A__FUNC_RDN1_A (MTK_PIN_NO(96) | 1) 544 + #define MT8516_PIN_96_RDN1_A__FUNC_CMDAT2 (MTK_PIN_NO(96) | 2) 545 + #define MT8516_PIN_96_RDN1_A__FUNC_CMCSD2 (MTK_PIN_NO(96) | 3) 546 + 547 + #define MT8516_PIN_97_RDP1_A__FUNC_GPI97 (MTK_PIN_NO(97) | 0) 548 + #define MT8516_PIN_97_RDP1_A__FUNC_RDP1_A (MTK_PIN_NO(97) | 1) 549 + #define MT8516_PIN_97_RDP1_A__FUNC_CMDAT3 (MTK_PIN_NO(97) | 2) 550 + #define MT8516_PIN_97_RDP1_A__FUNC_CMCSD3 (MTK_PIN_NO(97) | 3) 551 + 552 + #define MT8516_PIN_98_RDN0_A__FUNC_GPI98 (MTK_PIN_NO(98) | 0) 553 + #define MT8516_PIN_98_RDN0_A__FUNC_RDN0_A (MTK_PIN_NO(98) | 1) 554 + #define MT8516_PIN_98_RDN0_A__FUNC_CMHSYNC (MTK_PIN_NO(98) | 2) 555 + 556 + #define MT8516_PIN_99_RDP0_A__FUNC_GPI99 (MTK_PIN_NO(99) | 0) 557 + #define MT8516_PIN_99_RDP0_A__FUNC_RDP0_A (MTK_PIN_NO(99) | 1) 558 + #define MT8516_PIN_99_RDP0_A__FUNC_CMVSYNC (MTK_PIN_NO(99) | 2) 559 + 560 + #define MT8516_PIN_100_CMDAT0__FUNC_GPIO100 (MTK_PIN_NO(100) | 0) 561 + #define MT8516_PIN_100_CMDAT0__FUNC_CMDAT0 (MTK_PIN_NO(100) | 1) 562 + #define MT8516_PIN_100_CMDAT0__FUNC_CMCSD0 (MTK_PIN_NO(100) | 2) 563 + #define MT8516_PIN_100_CMDAT0__FUNC_ANT_SEL2 (MTK_PIN_NO(100) | 3) 564 + #define MT8516_PIN_100_CMDAT0__FUNC_TDM_RX_MCK (MTK_PIN_NO(100) | 5) 565 + #define MT8516_PIN_100_CMDAT0__FUNC_DBG_MON_B_21 (MTK_PIN_NO(100) | 7) 566 + 567 + #define MT8516_PIN_101_CMDAT1__FUNC_GPIO101 (MTK_PIN_NO(101) | 0) 568 + #define MT8516_PIN_101_CMDAT1__FUNC_CMDAT1 (MTK_PIN_NO(101) | 1) 569 + #define MT8516_PIN_101_CMDAT1__FUNC_CMCSD1 (MTK_PIN_NO(101) | 2) 570 + #define MT8516_PIN_101_CMDAT1__FUNC_ANT_SEL3 (MTK_PIN_NO(101) | 3) 571 + #define MT8516_PIN_101_CMDAT1__FUNC_CMFLASH (MTK_PIN_NO(101) | 4) 572 + #define MT8516_PIN_101_CMDAT1__FUNC_TDM_RX_BCK (MTK_PIN_NO(101) | 5) 573 + #define MT8516_PIN_101_CMDAT1__FUNC_DBG_MON_B_22 (MTK_PIN_NO(101) | 7) 574 + 575 + #define MT8516_PIN_102_CMMCLK__FUNC_GPIO102 (MTK_PIN_NO(102) | 0) 576 + #define MT8516_PIN_102_CMMCLK__FUNC_CMMCLK (MTK_PIN_NO(102) | 1) 577 + #define MT8516_PIN_102_CMMCLK__FUNC_ANT_SEL4 (MTK_PIN_NO(102) | 3) 578 + #define MT8516_PIN_102_CMMCLK__FUNC_TDM_RX_LRCK (MTK_PIN_NO(102) | 5) 579 + #define MT8516_PIN_102_CMMCLK__FUNC_DBG_MON_B_23 (MTK_PIN_NO(102) | 7) 580 + 581 + #define MT8516_PIN_103_CMPCLK__FUNC_GPIO103 (MTK_PIN_NO(103) | 0) 582 + #define MT8516_PIN_103_CMPCLK__FUNC_CMPCLK (MTK_PIN_NO(103) | 1) 583 + #define MT8516_PIN_103_CMPCLK__FUNC_CMCSK (MTK_PIN_NO(103) | 2) 584 + #define MT8516_PIN_103_CMPCLK__FUNC_ANT_SEL5 (MTK_PIN_NO(103) | 3) 585 + #define MT8516_PIN_103_CMPCLK__FUNC_TDM_RX_DI (MTK_PIN_NO(103) | 5) 586 + #define MT8516_PIN_103_CMPCLK__FUNC_DBG_MON_B_24 (MTK_PIN_NO(103) | 7) 587 + 588 + #define MT8516_PIN_104_MSDC1_CMD__FUNC_GPIO104 (MTK_PIN_NO(104) | 0) 589 + #define MT8516_PIN_104_MSDC1_CMD__FUNC_MSDC1_CMD (MTK_PIN_NO(104) | 1) 590 + #define MT8516_PIN_104_MSDC1_CMD__FUNC_SQICS (MTK_PIN_NO(104) | 4) 591 + #define MT8516_PIN_104_MSDC1_CMD__FUNC_DBG_MON_B_25 (MTK_PIN_NO(104) | 7) 592 + 593 + #define MT8516_PIN_105_MSDC1_CLK__FUNC_GPIO105 (MTK_PIN_NO(105) | 0) 594 + #define MT8516_PIN_105_MSDC1_CLK__FUNC_MSDC1_CLK (MTK_PIN_NO(105) | 1) 595 + #define MT8516_PIN_105_MSDC1_CLK__FUNC_SQISO (MTK_PIN_NO(105) | 4) 596 + #define MT8516_PIN_105_MSDC1_CLK__FUNC_DBG_MON_B_26 (MTK_PIN_NO(105) | 7) 597 + 598 + #define MT8516_PIN_106_MSDC1_DAT0__FUNC_GPIO106 (MTK_PIN_NO(106) | 0) 599 + #define MT8516_PIN_106_MSDC1_DAT0__FUNC_MSDC1_DAT0 (MTK_PIN_NO(106) | 1) 600 + #define MT8516_PIN_106_MSDC1_DAT0__FUNC_SQISI (MTK_PIN_NO(106) | 4) 601 + #define MT8516_PIN_106_MSDC1_DAT0__FUNC_DBG_MON_B_27 (MTK_PIN_NO(106) | 7) 602 + 603 + #define MT8516_PIN_107_MSDC1_DAT1__FUNC_GPIO107 (MTK_PIN_NO(107) | 0) 604 + #define MT8516_PIN_107_MSDC1_DAT1__FUNC_MSDC1_DAT1 (MTK_PIN_NO(107) | 1) 605 + #define MT8516_PIN_107_MSDC1_DAT1__FUNC_SQIWP (MTK_PIN_NO(107) | 4) 606 + #define MT8516_PIN_107_MSDC1_DAT1__FUNC_DBG_MON_B_28 (MTK_PIN_NO(107) | 7) 607 + 608 + #define MT8516_PIN_108_MSDC1_DAT2__FUNC_GPIO108 (MTK_PIN_NO(108) | 0) 609 + #define MT8516_PIN_108_MSDC1_DAT2__FUNC_MSDC1_DAT2 (MTK_PIN_NO(108) | 1) 610 + #define MT8516_PIN_108_MSDC1_DAT2__FUNC_SQIRST (MTK_PIN_NO(108) | 4) 611 + #define MT8516_PIN_108_MSDC1_DAT2__FUNC_DBG_MON_B_29 (MTK_PIN_NO(108) | 7) 612 + 613 + #define MT8516_PIN_109_MSDC1_DAT3__FUNC_GPIO109 (MTK_PIN_NO(109) | 0) 614 + #define MT8516_PIN_109_MSDC1_DAT3__FUNC_MSDC1_DAT3 (MTK_PIN_NO(109) | 1) 615 + #define MT8516_PIN_109_MSDC1_DAT3__FUNC_SQICK (MTK_PIN_NO(109) | 4) 616 + #define MT8516_PIN_109_MSDC1_DAT3__FUNC_DBG_MON_B_30 (MTK_PIN_NO(109) | 7) 617 + 618 + #define MT8516_PIN_110_MSDC0_DAT7__FUNC_GPIO110 (MTK_PIN_NO(110) | 0) 619 + #define MT8516_PIN_110_MSDC0_DAT7__FUNC_MSDC0_DAT7 (MTK_PIN_NO(110) | 1) 620 + #define MT8516_PIN_110_MSDC0_DAT7__FUNC_NLD7 (MTK_PIN_NO(110) | 4) 621 + 622 + #define MT8516_PIN_111_MSDC0_DAT6__FUNC_GPIO111 (MTK_PIN_NO(111) | 0) 623 + #define MT8516_PIN_111_MSDC0_DAT6__FUNC_MSDC0_DAT6 (MTK_PIN_NO(111) | 1) 624 + #define MT8516_PIN_111_MSDC0_DAT6__FUNC_NLD6 (MTK_PIN_NO(111) | 4) 625 + 626 + #define MT8516_PIN_112_MSDC0_DAT5__FUNC_GPIO112 (MTK_PIN_NO(112) | 0) 627 + #define MT8516_PIN_112_MSDC0_DAT5__FUNC_MSDC0_DAT5 (MTK_PIN_NO(112) | 1) 628 + #define MT8516_PIN_112_MSDC0_DAT5__FUNC_NLD4 (MTK_PIN_NO(112) | 4) 629 + 630 + #define MT8516_PIN_113_MSDC0_DAT4__FUNC_GPIO113 (MTK_PIN_NO(113) | 0) 631 + #define MT8516_PIN_113_MSDC0_DAT4__FUNC_MSDC0_DAT4 (MTK_PIN_NO(113) | 1) 632 + #define MT8516_PIN_113_MSDC0_DAT4__FUNC_NLD3 (MTK_PIN_NO(113) | 4) 633 + 634 + #define MT8516_PIN_114_MSDC0_RSTB__FUNC_GPIO114 (MTK_PIN_NO(114) | 0) 635 + #define MT8516_PIN_114_MSDC0_RSTB__FUNC_MSDC0_RSTB (MTK_PIN_NO(114) | 1) 636 + #define MT8516_PIN_114_MSDC0_RSTB__FUNC_NLD0 (MTK_PIN_NO(114) | 4) 637 + 638 + #define MT8516_PIN_115_MSDC0_CMD__FUNC_GPIO115 (MTK_PIN_NO(115) | 0) 639 + #define MT8516_PIN_115_MSDC0_CMD__FUNC_MSDC0_CMD (MTK_PIN_NO(115) | 1) 640 + #define MT8516_PIN_115_MSDC0_CMD__FUNC_NALE (MTK_PIN_NO(115) | 4) 641 + 642 + #define MT8516_PIN_116_MSDC0_CLK__FUNC_GPIO116 (MTK_PIN_NO(116) | 0) 643 + #define MT8516_PIN_116_MSDC0_CLK__FUNC_MSDC0_CLK (MTK_PIN_NO(116) | 1) 644 + #define MT8516_PIN_116_MSDC0_CLK__FUNC_NWEB (MTK_PIN_NO(116) | 4) 645 + 646 + #define MT8516_PIN_117_MSDC0_DAT3__FUNC_GPIO117 (MTK_PIN_NO(117) | 0) 647 + #define MT8516_PIN_117_MSDC0_DAT3__FUNC_MSDC0_DAT3 (MTK_PIN_NO(117) | 1) 648 + #define MT8516_PIN_117_MSDC0_DAT3__FUNC_NLD1 (MTK_PIN_NO(117) | 4) 649 + 650 + #define MT8516_PIN_118_MSDC0_DAT2__FUNC_GPIO118 (MTK_PIN_NO(118) | 0) 651 + #define MT8516_PIN_118_MSDC0_DAT2__FUNC_MSDC0_DAT2 (MTK_PIN_NO(118) | 1) 652 + #define MT8516_PIN_118_MSDC0_DAT2__FUNC_NLD5 (MTK_PIN_NO(118) | 4) 653 + 654 + #define MT8516_PIN_119_MSDC0_DAT1__FUNC_GPIO119 (MTK_PIN_NO(119) | 0) 655 + #define MT8516_PIN_119_MSDC0_DAT1__FUNC_MSDC0_DAT1 (MTK_PIN_NO(119) | 1) 656 + #define MT8516_PIN_119_MSDC0_DAT1__FUNC_NLD8 (MTK_PIN_NO(119) | 4) 657 + 658 + #define MT8516_PIN_120_MSDC0_DAT0__FUNC_GPIO120 (MTK_PIN_NO(120) | 0) 659 + #define MT8516_PIN_120_MSDC0_DAT0__FUNC_MSDC0_DAT0 (MTK_PIN_NO(120) | 1) 660 + #define MT8516_PIN_120_MSDC0_DAT0__FUNC_WATCHDOG (MTK_PIN_NO(120) | 4) 661 + #define MT8516_PIN_120_MSDC0_DAT0__FUNC_NLD2 (MTK_PIN_NO(120) | 5) 662 + 663 + #endif /* __DTS_MT8516_PINFUNC_H */
+457
arch/arm64/boot/dts/mediatek/mt8516.dtsi
··· 1 + // SPDX-License-Identifier: GPL-2.0 2 + /* 3 + * Copyright (c) 2019 MediaTek Inc. 4 + * Copyright (c) 2019 BayLibre, SAS. 5 + * Author: Fabien Parent <fparent@baylibre.com> 6 + */ 7 + 8 + #include <dt-bindings/clock/mt8516-clk.h> 9 + #include <dt-bindings/interrupt-controller/arm-gic.h> 10 + #include <dt-bindings/interrupt-controller/irq.h> 11 + #include <dt-bindings/phy/phy.h> 12 + 13 + #include "mt8516-pinfunc.h" 14 + 15 + / { 16 + compatible = "mediatek,mt8516"; 17 + interrupt-parent = <&sysirq>; 18 + #address-cells = <2>; 19 + #size-cells = <2>; 20 + 21 + cluster0_opp: opp-table-0 { 22 + compatible = "operating-points-v2"; 23 + opp-shared; 24 + opp-598000000 { 25 + opp-hz = /bits/ 64 <598000000>; 26 + opp-microvolt = <1150000>; 27 + }; 28 + opp-747500000 { 29 + opp-hz = /bits/ 64 <747500000>; 30 + opp-microvolt = <1150000>; 31 + }; 32 + opp-1040000000 { 33 + opp-hz = /bits/ 64 <1040000000>; 34 + opp-microvolt = <1200000>; 35 + }; 36 + opp-1196000000 { 37 + opp-hz = /bits/ 64 <1196000000>; 38 + opp-microvolt = <1250000>; 39 + }; 40 + opp-1300000000 { 41 + opp-hz = /bits/ 64 <1300000000>; 42 + opp-microvolt = <1300000>; 43 + }; 44 + }; 45 + 46 + cpus { 47 + #address-cells = <1>; 48 + #size-cells = <0>; 49 + 50 + cpu0: cpu@0 { 51 + device_type = "cpu"; 52 + compatible = "arm,cortex-a35"; 53 + reg = <0x0>; 54 + enable-method = "psci"; 55 + cpu-idle-states = <&CLUSTER_SLEEP_0 &CLUSTER_SLEEP_0>, 56 + <&CPU_SLEEP_0_0 &CPU_SLEEP_0_0 &CPU_SLEEP_0_0>; 57 + clocks = <&infracfg CLK_IFR_MUX1_SEL>, 58 + <&topckgen CLK_TOP_MAINPLL_D2>; 59 + clock-names = "cpu", "intermediate"; 60 + operating-points-v2 = <&cluster0_opp>; 61 + }; 62 + 63 + cpu1: cpu@1 { 64 + device_type = "cpu"; 65 + compatible = "arm,cortex-a35"; 66 + reg = <0x1>; 67 + enable-method = "psci"; 68 + cpu-idle-states = <&CLUSTER_SLEEP_0 &CLUSTER_SLEEP_0>, 69 + <&CPU_SLEEP_0_0 &CPU_SLEEP_0_0 &CPU_SLEEP_0_0>; 70 + clocks = <&infracfg CLK_IFR_MUX1_SEL>, 71 + <&topckgen CLK_TOP_MAINPLL_D2>; 72 + clock-names = "cpu", "intermediate"; 73 + operating-points-v2 = <&cluster0_opp>; 74 + }; 75 + 76 + cpu2: cpu@2 { 77 + device_type = "cpu"; 78 + compatible = "arm,cortex-a35"; 79 + reg = <0x2>; 80 + enable-method = "psci"; 81 + cpu-idle-states = <&CLUSTER_SLEEP_0 &CLUSTER_SLEEP_0>, 82 + <&CPU_SLEEP_0_0 &CPU_SLEEP_0_0 &CPU_SLEEP_0_0>; 83 + clocks = <&infracfg CLK_IFR_MUX1_SEL>, 84 + <&topckgen CLK_TOP_MAINPLL_D2>; 85 + clock-names = "cpu", "intermediate"; 86 + operating-points-v2 = <&cluster0_opp>; 87 + }; 88 + 89 + cpu3: cpu@3 { 90 + device_type = "cpu"; 91 + compatible = "arm,cortex-a35"; 92 + reg = <0x3>; 93 + enable-method = "psci"; 94 + cpu-idle-states = <&CLUSTER_SLEEP_0 &CLUSTER_SLEEP_0>, 95 + <&CPU_SLEEP_0_0 &CPU_SLEEP_0_0 &CPU_SLEEP_0_0>; 96 + clocks = <&infracfg CLK_IFR_MUX1_SEL>, 97 + <&topckgen CLK_TOP_MAINPLL_D2>; 98 + clock-names = "cpu", "intermediate", "armpll"; 99 + operating-points-v2 = <&cluster0_opp>; 100 + }; 101 + 102 + idle-states { 103 + entry-method = "psci"; 104 + 105 + CPU_SLEEP_0_0: cpu-sleep-0-0 { 106 + compatible = "arm,idle-state"; 107 + entry-latency-us = <600>; 108 + exit-latency-us = <600>; 109 + min-residency-us = <1200>; 110 + arm,psci-suspend-param = <0x0010000>; 111 + }; 112 + 113 + CLUSTER_SLEEP_0: cluster-sleep-0 { 114 + compatible = "arm,idle-state"; 115 + entry-latency-us = <800>; 116 + exit-latency-us = <1000>; 117 + min-residency-us = <2000>; 118 + arm,psci-suspend-param = <0x2010000>; 119 + }; 120 + }; 121 + }; 122 + 123 + psci { 124 + compatible = "arm,psci-1.0"; 125 + method = "smc"; 126 + }; 127 + 128 + clk26m: clk26m { 129 + compatible = "fixed-clock"; 130 + #clock-cells = <0>; 131 + clock-frequency = <26000000>; 132 + clock-output-names = "clk26m"; 133 + }; 134 + 135 + clk32k: clk32k { 136 + compatible = "fixed-clock"; 137 + #clock-cells = <0>; 138 + clock-frequency = <32000>; 139 + clock-output-names = "clk32k"; 140 + }; 141 + 142 + reserved-memory { 143 + #address-cells = <2>; 144 + #size-cells = <2>; 145 + ranges; 146 + 147 + /* 128 KiB reserved for ARM Trusted Firmware (BL31) */ 148 + bl31_secmon_reserved: secmon@43000000 { 149 + no-map; 150 + reg = <0 0x43000000 0 0x20000>; 151 + }; 152 + }; 153 + 154 + timer { 155 + compatible = "arm,armv8-timer"; 156 + interrupt-parent = <&gic>; 157 + interrupts = <GIC_PPI 13 158 + (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 159 + <GIC_PPI 14 160 + (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 161 + <GIC_PPI 11 162 + (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 163 + <GIC_PPI 10 164 + (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>; 165 + }; 166 + 167 + pmu { 168 + compatible = "arm,armv8-pmuv3"; 169 + interrupts = <GIC_SPI 4 IRQ_TYPE_LEVEL_LOW>, 170 + <GIC_SPI 5 IRQ_TYPE_LEVEL_LOW>, 171 + <GIC_SPI 6 IRQ_TYPE_LEVEL_LOW>, 172 + <GIC_SPI 7 IRQ_TYPE_LEVEL_LOW>; 173 + interrupt-affinity = <&cpu0>, <&cpu1>, <&cpu2>, <&cpu3>; 174 + }; 175 + 176 + soc { 177 + #address-cells = <2>; 178 + #size-cells = <2>; 179 + compatible = "simple-bus"; 180 + ranges; 181 + 182 + topckgen: topckgen@10000000 { 183 + compatible = "mediatek,mt8516-topckgen", "syscon"; 184 + reg = <0 0x10000000 0 0x1000>; 185 + #clock-cells = <1>; 186 + }; 187 + 188 + infracfg: infracfg@10001000 { 189 + compatible = "mediatek,mt8516-infracfg", "syscon"; 190 + reg = <0 0x10001000 0 0x1000>; 191 + #clock-cells = <1>; 192 + }; 193 + 194 + apmixedsys: apmixedsys@10018000 { 195 + compatible = "mediatek,mt8516-apmixedsys", "syscon"; 196 + reg = <0 0x10018000 0 0x710>; 197 + #clock-cells = <1>; 198 + }; 199 + 200 + toprgu: toprgu@10007000 { 201 + compatible = "mediatek,mt8516-wdt", 202 + "mediatek,mt6589-wdt"; 203 + reg = <0 0x10007000 0 0x1000>; 204 + interrupts = <GIC_SPI 198 IRQ_TYPE_EDGE_FALLING>; 205 + #reset-cells = <1>; 206 + }; 207 + 208 + timer: timer@10008000 { 209 + compatible = "mediatek,mt8516-timer", 210 + "mediatek,mt6577-timer"; 211 + reg = <0 0x10008000 0 0x1000>; 212 + interrupts = <GIC_SPI 132 IRQ_TYPE_LEVEL_LOW>; 213 + clocks = <&topckgen CLK_TOP_CLK26M_D2>, 214 + <&topckgen CLK_TOP_APXGPT>; 215 + clock-names = "clk13m", "bus"; 216 + }; 217 + 218 + syscfg_pctl: syscfg-pctl@10005000 { 219 + compatible = "syscon"; 220 + reg = <0 0x10005000 0 0x1000>; 221 + }; 222 + 223 + pio: pinctrl@1000b000 { 224 + compatible = "mediatek,mt8516-pinctrl"; 225 + reg = <0 0x1000b000 0 0x1000>; 226 + mediatek,pctl-regmap = <&syscfg_pctl>; 227 + pins-are-numbered; 228 + gpio-controller; 229 + #gpio-cells = <2>; 230 + interrupt-controller; 231 + #interrupt-cells = <2>; 232 + interrupts = <GIC_SPI 134 IRQ_TYPE_LEVEL_HIGH>; 233 + }; 234 + 235 + pwrap: pwrap@1000f000 { 236 + compatible = "mediatek,mt8516-pwrap"; 237 + reg = <0 0x1000f000 0 0x1000>; 238 + reg-names = "pwrap"; 239 + interrupts = <GIC_SPI 204 IRQ_TYPE_LEVEL_LOW>; 240 + clocks = <&topckgen CLK_TOP_PMICWRAP_26M>, 241 + <&topckgen CLK_TOP_PMICWRAP_AP>; 242 + clock-names = "spi", "wrap"; 243 + }; 244 + 245 + sysirq: interrupt-controller@10200620 { 246 + compatible = "mediatek,mt8516-sysirq", 247 + "mediatek,mt6577-sysirq"; 248 + interrupt-controller; 249 + #interrupt-cells = <3>; 250 + interrupt-parent = <&gic>; 251 + reg = <0 0x10200620 0 0x20>; 252 + }; 253 + 254 + gic: interrupt-controller@10310000 { 255 + compatible = "arm,gic-400"; 256 + #interrupt-cells = <3>; 257 + interrupt-parent = <&gic>; 258 + interrupt-controller; 259 + reg = <0 0x10310000 0 0x1000>, 260 + <0 0x10320000 0 0x1000>, 261 + <0 0x10340000 0 0x2000>, 262 + <0 0x10360000 0 0x2000>; 263 + interrupts = <GIC_PPI 9 264 + (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>; 265 + }; 266 + 267 + uart0: serial@11005000 { 268 + compatible = "mediatek,mt8516-uart", 269 + "mediatek,mt6577-uart"; 270 + reg = <0 0x11005000 0 0x1000>; 271 + interrupts = <GIC_SPI 84 IRQ_TYPE_LEVEL_LOW>; 272 + clocks = <&topckgen CLK_TOP_UART0_SEL>, 273 + <&topckgen CLK_TOP_UART0>; 274 + clock-names = "baud", "bus"; 275 + status = "disabled"; 276 + }; 277 + 278 + uart1: serial@11006000 { 279 + compatible = "mediatek,mt8516-uart", 280 + "mediatek,mt6577-uart"; 281 + reg = <0 0x11006000 0 0x1000>; 282 + interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_LOW>; 283 + clocks = <&topckgen CLK_TOP_UART1_SEL>, 284 + <&topckgen CLK_TOP_UART1>; 285 + clock-names = "baud", "bus"; 286 + status = "disabled"; 287 + }; 288 + 289 + uart2: serial@11007000 { 290 + compatible = "mediatek,mt8516-uart", 291 + "mediatek,mt6577-uart"; 292 + reg = <0 0x11007000 0 0x1000>; 293 + interrupts = <GIC_SPI 211 IRQ_TYPE_LEVEL_LOW>; 294 + clocks = <&topckgen CLK_TOP_UART2_SEL>, 295 + <&topckgen CLK_TOP_UART2>; 296 + clock-names = "baud", "bus"; 297 + status = "disabled"; 298 + }; 299 + 300 + i2c0: i2c@11009000 { 301 + compatible = "mediatek,mt8516-i2c", 302 + "mediatek,mt2712-i2c"; 303 + reg = <0 0x11009000 0 0x90>, 304 + <0 0x11000180 0 0x80>; 305 + interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_LOW>; 306 + clocks = <&topckgen CLK_TOP_AHB_INFRA_D2>, 307 + <&infracfg CLK_IFR_I2C0_SEL>, 308 + <&topckgen CLK_TOP_I2C0>, 309 + <&topckgen CLK_TOP_APDMA>; 310 + clock-names = "main-source", 311 + "main-sel", 312 + "main", 313 + "dma"; 314 + #address-cells = <1>; 315 + #size-cells = <0>; 316 + status = "disabled"; 317 + }; 318 + 319 + i2c1: i2c@1100a000 { 320 + compatible = "mediatek,mt8516-i2c", 321 + "mediatek,mt2712-i2c"; 322 + reg = <0 0x1100a000 0 0x90>, 323 + <0 0x11000200 0 0x80>; 324 + interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_LOW>; 325 + clocks = <&topckgen CLK_TOP_AHB_INFRA_D2>, 326 + <&infracfg CLK_IFR_I2C1_SEL>, 327 + <&topckgen CLK_TOP_I2C1>, 328 + <&topckgen CLK_TOP_APDMA>; 329 + clock-names = "main-source", 330 + "main-sel", 331 + "main", 332 + "dma"; 333 + #address-cells = <1>; 334 + #size-cells = <0>; 335 + status = "disabled"; 336 + }; 337 + 338 + i2c2: i2c@1100b000 { 339 + compatible = "mediatek,mt8516-i2c", 340 + "mediatek,mt2712-i2c"; 341 + reg = <0 0x1100b000 0 0x90>, 342 + <0 0x11000280 0 0x80>; 343 + interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_LOW>; 344 + clocks = <&topckgen CLK_TOP_AHB_INFRA_D2>, 345 + <&infracfg CLK_IFR_I2C2_SEL>, 346 + <&topckgen CLK_TOP_I2C2>, 347 + <&topckgen CLK_TOP_APDMA>; 348 + clock-names = "main-source", 349 + "main-sel", 350 + "main", 351 + "dma"; 352 + #address-cells = <1>; 353 + #size-cells = <0>; 354 + status = "disabled"; 355 + }; 356 + 357 + spi: spi@1100c000 { 358 + compatible = "mediatek,mt8516-spi", 359 + "mediatek,mt2712-spi"; 360 + #address-cells = <1>; 361 + #size-cells = <0>; 362 + reg = <0 0x1100c000 0 0x1000>; 363 + interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_LOW>; 364 + clocks = <&topckgen CLK_TOP_UNIVPLL_D12>, 365 + <&topckgen CLK_TOP_SPI_SEL>, 366 + <&topckgen CLK_TOP_SPI>; 367 + clock-names = "parent-clk", "sel-clk", "spi-clk"; 368 + status = "disabled"; 369 + }; 370 + 371 + mmc0: mmc@11120000 { 372 + compatible = "mediatek,mt8516-mmc"; 373 + reg = <0 0x11120000 0 0x1000>; 374 + interrupts = <GIC_SPI 78 IRQ_TYPE_LEVEL_LOW>; 375 + clocks = <&topckgen CLK_TOP_MSDC0>, 376 + <&topckgen CLK_TOP_AHB_INFRA_SEL>, 377 + <&topckgen CLK_TOP_MSDC0_INFRA>; 378 + clock-names = "source", "hclk", "source_cg"; 379 + status = "disabled"; 380 + }; 381 + 382 + mmc1: mmc@11130000 { 383 + compatible = "mediatek,mt8516-mmc"; 384 + reg = <0 0x11130000 0 0x1000>; 385 + interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_LOW>; 386 + clocks = <&topckgen CLK_TOP_MSDC1>, 387 + <&topckgen CLK_TOP_AHB_INFRA_SEL>, 388 + <&topckgen CLK_TOP_MSDC1_INFRA>; 389 + clock-names = "source", "hclk", "source_cg"; 390 + status = "disabled"; 391 + }; 392 + 393 + mmc2: mmc@11170000 { 394 + compatible = "mediatek,mt8516-mmc"; 395 + reg = <0 0x11170000 0 0x1000>; 396 + interrupts = <GIC_SPI 109 IRQ_TYPE_LEVEL_LOW>; 397 + clocks = <&topckgen CLK_TOP_MSDC2>, 398 + <&topckgen CLK_TOP_RG_MSDC2>, 399 + <&topckgen CLK_TOP_MSDC2_INFRA>; 400 + clock-names = "source", "hclk", "source_cg"; 401 + status = "disabled"; 402 + }; 403 + 404 + rng: rng@1020c000 { 405 + compatible = "mediatek,mt8516-rng", 406 + "mediatek,mt7623-rng"; 407 + reg = <0 0x1020c000 0 0x100>; 408 + clocks = <&topckgen CLK_TOP_TRNG>; 409 + clock-names = "rng"; 410 + }; 411 + 412 + pwm: pwm@11008000 { 413 + compatible = "mediatek,mt8516-pwm"; 414 + reg = <0 0x11008000 0 0x1000>; 415 + #pwm-cells = <2>; 416 + interrupts = <GIC_SPI 76 IRQ_TYPE_LEVEL_LOW>; 417 + clocks = <&topckgen CLK_TOP_PWM>, 418 + <&topckgen CLK_TOP_PWM_B>, 419 + <&topckgen CLK_TOP_PWM1_FB>, 420 + <&topckgen CLK_TOP_PWM2_FB>, 421 + <&topckgen CLK_TOP_PWM3_FB>, 422 + <&topckgen CLK_TOP_PWM4_FB>, 423 + <&topckgen CLK_TOP_PWM5_FB>; 424 + clock-names = "top", "main", "pwm1", "pwm2", "pwm3", 425 + "pwm4", "pwm5"; 426 + }; 427 + 428 + usb0: usb@11100000 { 429 + compatible = "mediatek,mtk-musb"; 430 + reg = <0 0x11100000 0 0x1000>; 431 + interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_LOW>; 432 + interrupt-names = "mc"; 433 + phys = <&usb0_port PHY_TYPE_USB2>; 434 + clocks = <&topckgen CLK_TOP_USB>, 435 + <&topckgen CLK_TOP_USBIF>, 436 + <&topckgen CLK_TOP_USB_1P>; 437 + clock-names = "main","mcu","univpll"; 438 + status = "disabled"; 439 + }; 440 + 441 + usb0_phy: usb@11110000 { 442 + compatible = "mediatek,generic-tphy-v1"; 443 + reg = <0 0x11110000 0 0x800>; 444 + #address-cells = <2>; 445 + #size-cells = <2>; 446 + ranges; 447 + status = "disabled"; 448 + 449 + usb0_port: usb-phy@11110800 { 450 + reg = <0 0x11110800 0 0x100>; 451 + clocks = <&topckgen CLK_TOP_USB_PHY48M>; 452 + clock-names = "ref"; 453 + #phy-cells = <1>; 454 + }; 455 + }; 456 + }; 457 + };