1// SPDX-License-Identifier: GPL-2.0-or-later OR MIT 2/* 3 * Copyright 2022 Toradex 4 */ 5 6#include "imx8qm-apalis-v1.1.dtsi" 7 8/ { 9 model = "Toradex Apalis iMX8QM"; 10 compatible = "toradex,apalis-imx8", 11 "fsl,imx8qm"; 12}; 13 14ðphy0 { 15 interrupts = <5 IRQ_TYPE_LEVEL_LOW>; 16}; 17 18/* 19 * Apalis iMX8QM V1.0 has PHY KSZ9031. the Micrel PHY driver 20 * doesn't support setting internal PHY delay for TXC line for 21 * this PHY model. Use delay on MAC side instead. 22 */ 23&fec1 { 24 phy-mode = "rgmii-rxid"; 25}; 26 27/* TODO: Apalis HDMI1 */ 28 29/* Apalis I2C2 (DDC) */ 30&i2c0 { 31 pinctrl-names = "default"; 32 pinctrl-0 = <&pinctrl_lpi2c0>; 33 #address-cells = <1>; 34 #size-cells = <0>; 35 clock-frequency = <100000>; 36}; 37 38&lsio_gpio0 { 39 gpio-line-names = "MXM3_279", 40 "MXM3_277", 41 "MXM3_135", 42 "MXM3_203", 43 "MXM3_201", 44 "MXM3_275", 45 "MXM3_110", 46 "MXM3_120", 47 "MXM3_1/GPIO1", 48 "MXM3_3/GPIO2", 49 "MXM3_124", 50 "MXM3_122", 51 "MXM3_5/GPIO3", 52 "MXM3_7/GPIO4", 53 "", 54 "", 55 "MXM3_4", 56 "MXM3_211", 57 "MXM3_209", 58 "MXM3_2", 59 "MXM3_136", 60 "MXM3_134", 61 "MXM3_6", 62 "MXM3_8", 63 "MXM3_112", 64 "MXM3_118", 65 "MXM3_114", 66 "MXM3_116"; 67}; 68 69&lsio_gpio1 { 70 gpio-line-names = "", 71 "", 72 "", 73 "", 74 "MXM3_286", 75 "", 76 "MXM3_87", 77 "MXM3_99", 78 "MXM3_138", 79 "MXM3_140", 80 "MXM3_239", 81 "", 82 "MXM3_281", 83 "MXM3_283", 84 "MXM3_126", 85 "MXM3_132", 86 "", 87 "", 88 "", 89 "", 90 "MXM3_173", 91 "MXM3_175", 92 "MXM3_123"; 93}; 94 95&lsio_gpio2 { 96 gpio-line-names = "", 97 "", 98 "", 99 "", 100 "", 101 "", 102 "", 103 "MXM3_198", 104 "MXM3_35", 105 "MXM3_164", 106 "", 107 "", 108 "", 109 "", 110 "MXM3_217", 111 "MXM3_215", 112 "", 113 "", 114 "MXM3_193", 115 "MXM3_194", 116 "MXM3_37", 117 "", 118 "MXM3_271", 119 "MXM3_273", 120 "MXM3_195", 121 "MXM3_197", 122 "MXM3_177", 123 "MXM3_179", 124 "MXM3_181", 125 "MXM3_183", 126 "MXM3_185", 127 "MXM3_187"; 128}; 129 130&lsio_gpio3 { 131 gpio-line-names = "MXM3_191", 132 "", 133 "MXM3_221", 134 "MXM3_225", 135 "MXM3_223", 136 "MXM3_227", 137 "MXM3_200", 138 "MXM3_235", 139 "MXM3_231", 140 "MXM3_229", 141 "MXM3_233", 142 "MXM3_204", 143 "MXM3_196", 144 "", 145 "MXM3_202", 146 "", 147 "", 148 "", 149 "MXM3_305", 150 "MXM3_307", 151 "MXM3_309", 152 "MXM3_311", 153 "MXM3_315", 154 "MXM3_317", 155 "MXM3_319", 156 "MXM3_321", 157 "MXM3_15/GPIO7", 158 "MXM3_63", 159 "MXM3_17/GPIO8", 160 "MXM3_12", 161 "MXM3_14", 162 "MXM3_16"; 163}; 164 165&lsio_gpio4 { 166 gpio-line-names = "MXM3_18", 167 "MXM3_11/GPIO5", 168 "MXM3_13/GPIO6", 169 "MXM3_274", 170 "MXM3_84", 171 "MXM3_262", 172 "MXM3_96", 173 "", 174 "", 175 "", 176 "", 177 "", 178 "MXM3_190", 179 "", 180 "", 181 "", 182 "MXM3_269", 183 "MXM3_251", 184 "MXM3_253", 185 "MXM3_295", 186 "MXM3_299", 187 "MXM3_301", 188 "MXM3_297", 189 "MXM3_293", 190 "MXM3_291", 191 "MXM3_289", 192 "MXM3_287"; 193 194 /* Enable pcie root / sata ref clock unconditionally */ 195 pcie-sata-hog { 196 gpios = <27 GPIO_ACTIVE_HIGH>; 197 }; 198 199}; 200 201&lsio_gpio5 { 202 gpio-line-names = "", 203 "", 204 "", 205 "", 206 "", 207 "", 208 "", 209 "", 210 "", 211 "", 212 "", 213 "", 214 "", 215 "", 216 "MXM3_150", 217 "MXM3_160", 218 "MXM3_162", 219 "MXM3_144", 220 "MXM3_146", 221 "MXM3_148", 222 "MXM3_152", 223 "MXM3_156", 224 "MXM3_158", 225 "MXM3_159", 226 "MXM3_184", 227 "MXM3_180", 228 "MXM3_186", 229 "MXM3_188", 230 "MXM3_176", 231 "MXM3_178"; 232}; 233 234&lsio_gpio6 { 235 gpio-line-names = "", 236 "", 237 "", 238 "", 239 "", 240 "", 241 "", 242 "", 243 "", 244 "", 245 "MXM3_261", 246 "MXM3_263", 247 "MXM3_259", 248 "MXM3_257", 249 "MXM3_255", 250 "MXM3_128", 251 "MXM3_130", 252 "MXM3_265", 253 "MXM3_249", 254 "MXM3_247", 255 "MXM3_245", 256 "MXM3_243"; 257}; 258 259&pinctrl_fec1 { 260 fsl,pins = 261 /* Use pads in 1.8V mode */ 262 <IMX8QM_COMP_CTL_GPIO_1V8_3V3_ENET_ENETB_PAD 0x000014a0>, 263 <IMX8QM_ENET0_MDC_CONN_ENET0_MDC 0x06000020>, 264 <IMX8QM_ENET0_MDIO_CONN_ENET0_MDIO 0x06000020>, 265 <IMX8QM_ENET0_RGMII_TX_CTL_CONN_ENET0_RGMII_TX_CTL 0x06000020>, 266 <IMX8QM_ENET0_RGMII_TXC_CONN_ENET0_RGMII_TXC 0x06000020>, 267 <IMX8QM_ENET0_RGMII_TXD0_CONN_ENET0_RGMII_TXD0 0x06000020>, 268 <IMX8QM_ENET0_RGMII_TXD1_CONN_ENET0_RGMII_TXD1 0x06000020>, 269 <IMX8QM_ENET0_RGMII_TXD2_CONN_ENET0_RGMII_TXD2 0x06000020>, 270 <IMX8QM_ENET0_RGMII_TXD3_CONN_ENET0_RGMII_TXD3 0x06000020>, 271 <IMX8QM_ENET0_RGMII_RXC_CONN_ENET0_RGMII_RXC 0x06000020>, 272 <IMX8QM_ENET0_RGMII_RX_CTL_CONN_ENET0_RGMII_RX_CTL 0x06000020>, 273 <IMX8QM_ENET0_RGMII_RXD0_CONN_ENET0_RGMII_RXD0 0x06000020>, 274 <IMX8QM_ENET0_RGMII_RXD1_CONN_ENET0_RGMII_RXD1 0x06000020>, 275 <IMX8QM_ENET0_RGMII_RXD2_CONN_ENET0_RGMII_RXD2 0x06000020>, 276 <IMX8QM_ENET0_RGMII_RXD3_CONN_ENET0_RGMII_RXD3 0x06000020>, 277 <IMX8QM_ENET0_REFCLK_125M_25M_CONN_ENET0_REFCLK_125M_25M 0x06000020>, 278 /* On-module ETH_RESET# */ 279 <IMX8QM_LVDS1_GPIO01_LSIO_GPIO1_IO11 0x06000020>, 280 /* On-module ETH_INT# */ 281 <IMX8QM_LVDS0_GPIO01_LSIO_GPIO1_IO05 0x04000060>; 282}; 283 284&pinctrl_fec1_sleep { 285 fsl,pins = 286 <IMX8QM_COMP_CTL_GPIO_1V8_3V3_ENET_ENETB_PAD 0x000014a0>, 287 <IMX8QM_ENET0_MDC_LSIO_GPIO4_IO14 0x04000040>, 288 <IMX8QM_ENET0_MDIO_LSIO_GPIO4_IO13 0x04000040>, 289 <IMX8QM_ENET0_RGMII_TX_CTL_LSIO_GPIO5_IO31 0x04000040>, 290 <IMX8QM_ENET0_RGMII_TXC_LSIO_GPIO5_IO30 0x04000040>, 291 <IMX8QM_ENET0_RGMII_TXD0_LSIO_GPIO6_IO00 0x04000040>, 292 <IMX8QM_ENET0_RGMII_TXD1_LSIO_GPIO6_IO01 0x04000040>, 293 <IMX8QM_ENET0_RGMII_TXD2_LSIO_GPIO6_IO02 0x04000040>, 294 <IMX8QM_ENET0_RGMII_TXD3_LSIO_GPIO6_IO03 0x04000040>, 295 <IMX8QM_ENET0_RGMII_RXC_LSIO_GPIO6_IO04 0x04000040>, 296 <IMX8QM_ENET0_RGMII_RX_CTL_LSIO_GPIO6_IO05 0x04000040>, 297 <IMX8QM_ENET0_RGMII_RXD0_LSIO_GPIO6_IO06 0x04000040>, 298 <IMX8QM_ENET0_RGMII_RXD1_LSIO_GPIO6_IO07 0x04000040>, 299 <IMX8QM_ENET0_RGMII_RXD2_LSIO_GPIO6_IO08 0x04000040>, 300 <IMX8QM_ENET0_RGMII_RXD3_LSIO_GPIO6_IO09 0x04000040>, 301 <IMX8QM_ENET0_REFCLK_125M_25M_LSIO_GPIO4_IO15 0x04000040>, 302 <IMX8QM_LVDS1_GPIO01_LSIO_GPIO1_IO11 0x04000040>, 303 <IMX8QM_LVDS0_GPIO01_LSIO_GPIO1_IO05 0x04000040>; 304}; 305 306&iomuxc { 307 /* Apalis I2C2 (DDC) */ 308 pinctrl_lpi2c0: lpi2c0grp { 309 fsl,pins = 310 <IMX8QM_HDMI_TX0_TS_SCL_DMA_I2C0_SCL 0x04000022>, 311 <IMX8QM_HDMI_TX0_TS_SDA_DMA_I2C0_SDA 0x04000022>; 312 }; 313}; 314 315/* On-module PCIe_CTRL0_CLKREQ */ 316&pinctrl_pcie_sata_refclk { 317 fsl,pins = 318 <IMX8QM_PCIE_CTRL0_CLKREQ_B_LSIO_GPIO4_IO27 0x00000021>; 319}; 320 321/* TODO: On-module Wi-Fi */ 322 323/* Apalis MMC1 */ 324&usdhc2 { 325 /* 326 * The PMIC on V1.0A HW generates 1.6V instead of 1.8V which creates 327 * issues with certain SD cards, disable 1.8V signaling for now. 328 */ 329 no-1-8-v; 330}; 331 332/* Apalis SD1 */ 333&usdhc3 { 334 /* 335 * The PMIC on V1.0A HW generates 1.6V instead of 1.8V which creates 336 * issues with certain SD cards, disable 1.8V signaling for now. 337 */ 338 no-1-8-v; 339}; 340