1 // SPDX-License-Identifier: GPL-2.0 1 // SPDX-License-Identifier: GPL-2.0 2 /* 2 /* 3 * dts file for Hisilicon HiKey970 Development 3 * dts file for Hisilicon HiKey970 Development Board 4 * 4 * 5 * Copyright (C) 2016, HiSilicon Ltd. !! 5 * Copyright (C) 2016, Hisilicon Ltd. 6 * Copyright (C) 2018, Linaro Ltd. 6 * Copyright (C) 2018, Linaro Ltd. 7 * 7 * 8 */ 8 */ 9 9 10 /dts-v1/; 10 /dts-v1/; 11 #include <dt-bindings/gpio/gpio.h> << 12 11 13 #include "hi3670.dtsi" 12 #include "hi3670.dtsi" 14 #include "hikey970-pinctrl.dtsi" << 15 #include "hikey970-pmic.dtsi" << 16 13 17 / { 14 / { 18 model = "HiKey970"; 15 model = "HiKey970"; 19 compatible = "hisilicon,hi3670-hikey97 16 compatible = "hisilicon,hi3670-hikey970", "hisilicon,hi3670"; 20 17 21 aliases { 18 aliases { 22 mshc1 = &dwmmc1; << 23 mshc2 = &dwmmc2; << 24 serial0 = &uart0; << 25 serial1 = &uart1; << 26 serial2 = &uart2; << 27 serial3 = &uart3; << 28 serial4 = &uart4; << 29 serial5 = &uart5; << 30 serial6 = &uart6; /* con 19 serial6 = &uart6; /* console UART */ 31 }; 20 }; 32 21 33 chosen { 22 chosen { 34 stdout-path = "serial6:115200n 23 stdout-path = "serial6:115200n8"; 35 }; 24 }; 36 25 37 memory@0 { 26 memory@0 { 38 device_type = "memory"; 27 device_type = "memory"; 39 /* expect bootloader to fill i 28 /* expect bootloader to fill in this region */ 40 reg = <0x0 0x0 0x0 0x0>; 29 reg = <0x0 0x0 0x0 0x0>; 41 }; 30 }; 42 << 43 wlan_en: wlan-en-1-8v { << 44 compatible = "regulator-fixed" << 45 regulator-name = "wlan-en-regu << 46 regulator-min-microvolt = <180 << 47 regulator-max-microvolt = <180 << 48 << 49 /* GPIO_051_WIFI_EN */ << 50 gpio = <&gpio6 3 0>; << 51 << 52 /* WLAN card specific delay */ << 53 startup-delay-us = <70000>; << 54 enable-active-high; << 55 }; << 56 }; << 57 << 58 /* << 59 * Legend: proper name = the GPIO line is used << 60 * NC = not connected (pin out but not << 61 * anything the board) << 62 * "[PER]" = pin is muxed for [periphe << 63 * "" = no idea, schematic doesn't say << 64 * unrouted (not connected to any << 65 * LSEC = Low Speed External Connector << 66 * HSEC = High Speed External Connecto << 67 * << 68 * Line names are taken from "hikey970-schemat << 69 * << 70 * For the lines routed to the external connec << 71 * lines are named after the 96Boards CE Speci << 72 * Appendix "Expansion Connector Signal Descri << 73 * << 74 * When the 96Board naming of a line and the s << 75 * the same line are in conflict, the 96Board << 76 * takes precedence, which means that the exte << 77 * LSEC is named UART0 while the schematic and << 78 * UART2. This is only for the informational l << 79 * the GPIO named lines "GPIO-A" thru "GPIO-L" << 80 * ones actually used for GPIO. << 81 */ << 82 &gpio0 { << 83 /* GPIO_000-GPIO_007 */ << 84 gpio-line-names = << 85 "", << 86 "TP901", /* TEST_MODE connecte << 87 "", << 88 "GPIO_003_USB_HUB_RESET_N", << 89 "NC", << 90 "[AP_GPS_REF_CLK]", << 91 "[I2C3_SCL]", << 92 "[I2C3_SDA]"; << 93 }; << 94 << 95 &gpio1 { << 96 /* GPIO_008-GPIO_015 */ << 97 gpio-line-names = << 98 "[UART0_CTS]", /* LSEC pin 3: << 99 "[UART0_RTS]", /* LSEC pin 9: << 100 "[UART0_TXD]", /* LSEC pin 5: << 101 "[UART0_RXD]", /* LSEC pin 7: << 102 "[USER_LED5]", << 103 "GPIO-I", /* LSEC pin 31: GPIO << 104 "[USER_LED3]", << 105 "[USER_LED4]"; << 106 }; << 107 << 108 &gpio2 { << 109 /* GPIO_016-GPIO_023 */ << 110 gpio-line-names = << 111 "GPIO-G", /* LSEC pin 29: GPIO << 112 "[CSI0_MCLK]", /* HSEC pin 15: << 113 "[CSI1_MCLK]", /* HSEC pin 17: << 114 "GPIO_019_BT_ACTIVE", << 115 "[I2C2_SCL]", /* HSEC pin 32: << 116 "[I2C2_SDA]", /* HSEC pin 34: << 117 "[I2C3_SCL]", /* HSEC pin 36: << 118 "[I2C3_SDA]"; /* HSEC pin 38: << 119 }; << 120 << 121 &gpio3 { << 122 /* GPIO_024-GPIO_031 */ << 123 gpio-line-names = << 124 "GPIO_024_WIFI_ACTIVE", << 125 "GPIO_025_PERST_M.2", << 126 "[I2C4_SCL]", << 127 "[I2C4_SDA]", << 128 "NC", << 129 "GPIO-H", /* LSEC pin 30: GPIO << 130 "[USER_LED1]", << 131 "GPIO-L"; /* LSEC pin 34: GPIO << 132 }; << 133 << 134 &gpio4 { << 135 /* GPIO_032-GPIO_039 */ << 136 gpio-line-names = << 137 "GPIO-K", /* LSEC pin 33: GPIO << 138 "GPIO_033_PMU1_EN", << 139 "GPIO_034_USBSW_SEL", << 140 /* << 141 * These two pins should be us << 142 * to the 96boards specificati << 143 * for UART 0. They are howeve << 144 */ << 145 "[SD_DAT1]", /* HSEC pin 3: GP << 146 "[SD_DAT2]", /* HSEC pin 5: GP << 147 "[UART1_RXD]", /* LSEC pin 13: << 148 "[UART1_TXD]", /* LSEC pin 11: << 149 "[SOC_GPS_UART3_CTS_N]"; /* TP << 150 }; << 151 << 152 &gpio5 { << 153 /* GPIO_040-GPIO_047 */ << 154 gpio-line-names = << 155 "[SOC_GPS_UART3_RTS_N]", /* TP << 156 "[SOC_GPS_UART3_RXD]", /* TP23 << 157 "[SOC_GPS_UART3_TXD]", /* TP23 << 158 "[SOC_BT_UART4_CTS_N]", << 159 "[SOC_BT_UART4_RTS_N]", << 160 "[SOC_BT_UART4_RXD]", << 161 "[SOC_BT_UART4_TXD]", << 162 "NC"; << 163 }; << 164 << 165 &gpio6 { << 166 /* GPIO_048-GPIO_055 */ << 167 gpio-line-names = << 168 "NC", << 169 "GPIO_049_USER_LED6", << 170 "GPIO_050_CAN_RST", << 171 "GPIO_051_WIFI_EN", << 172 "GPIO-D", /* LSEC pin 26 */ << 173 "GPIO-J", /* LSEC pin 32 */ << 174 "GPIO_054_BT_EN", << 175 "[GPIO_055_SEL]"; << 176 }; << 177 << 178 &gpio7 { << 179 /* GPIO_056-GPIO_063 */ << 180 gpio-line-names = << 181 "[PCIE_PERST_L]", "NC", "NC", << 182 }; << 183 << 184 &gpio8 { << 185 /* GPIO_064-GPIO_071 */ << 186 gpio-line-names = "NC", "NC", "NC", "N << 187 }; << 188 << 189 &gpio9 { << 190 /* GPIO_072-GPIO_079 */ << 191 gpio-line-names = "NC", "NC", "NC", "N << 192 }; << 193 << 194 &gpio10 { << 195 /* GPIO_080-GPIO_087 */ << 196 gpio-line-names = "NC", "NC", "NC", "N << 197 }; << 198 << 199 &gpio11 { << 200 /* GPIO_088-GPIO_095 */ << 201 gpio-line-names = "NC", "NC", "NC", "N << 202 }; << 203 << 204 &gpio12 { << 205 /* GPIO_096-GPIO_103 */ << 206 gpio-line-names = "NC", "", "", "", "" << 207 }; << 208 << 209 &gpio13 { << 210 /* GPIO_104-GPIO_111 */ << 211 gpio-line-names = "", "", "", "", "", << 212 }; << 213 << 214 &gpio14 { << 215 /* GPIO_112-GPIO_119 */ << 216 gpio-line-names = "", "", "", "", "", << 217 }; << 218 << 219 &gpio15 { << 220 /* GPIO_120-GPIO_127 */ << 221 gpio-line-names = "", "", "", "", "", << 222 }; << 223 << 224 &gpio16 { << 225 /* GPIO_128-GPIO_135 */ << 226 gpio-line-names = << 227 "[WL_SDIO_CLK]", << 228 "[WL_SDIO_CMD]", << 229 "[WL_SDIO_DATA0]", << 230 "[WL_SDIO_DATA1]", << 231 "[WL_SDIO_DATA2]", << 232 "[WL_SDIO_DATA3]", << 233 "[ETH_ISOLATE]", << 234 "NC"; << 235 }; << 236 << 237 &gpio17 { << 238 /* GPIO_136-GPIO_143 */ << 239 gpio-line-names = << 240 "[MINI1CLK_EN]", "NC", "", "", << 241 }; << 242 << 243 &gpio18 { << 244 /* GPIO_144-GPIO_151 */ << 245 gpio-line-names = << 246 "[SPI1_SCLK]", /* HSEC pin 9: << 247 "[SPI1_DIN]", /* HSEC pin 11: << 248 "[SPI1_DOUT]", /* HSEC pin 1: << 249 "[SPI1_CS]", /* HSEC pin 7: GP << 250 "[POWER_INT_N]", << 251 "[CDMA_GPS_SYNC]", << 252 "GPIO_150_PEX_INTA", << 253 "GPIO_151_CAN_INT"; << 254 }; << 255 << 256 &gpio19 { << 257 /* GPIO_152-GPIO_159 */ << 258 gpio-line-names = "", "", "", "", "", << 259 }; << 260 << 261 &gpio20 { << 262 /* GPIO_160-GPIO_167 */ << 263 gpio-line-names = << 264 "[SD_CLK]", << 265 "[SD_CMD]", << 266 "[SD_DATA0]", << 267 "[SD_DATA1]", << 268 "[SD_DATA2]", << 269 "[SD_DATA3]", << 270 "GPIO_166_ETHCLK_EN", << 271 "GPIO_167_USER_LED2"; << 272 }; << 273 << 274 &gpio21 { << 275 /* GPIO_168-GPIO_175 */ << 276 gpio-line-names = << 277 "GPIO_168_GPS_EN", << 278 "GPIO-C", /* LSEC pin 25: GPIO << 279 "GPIO-E", /* LSEC pin 27: GPIO << 280 "GPIO-B", /* LSEC pin 24: GPIO << 281 "", "", "", "", ""; << 282 }; << 283 << 284 &gpio22 { << 285 /* GPIO_176-GPIO_183 */ << 286 gpio-line-names = << 287 "[PMU_PWR_HOLD]", << 288 "GPIO_177_WL_WAKEUP_AP", << 289 "[JTAG_TCK]", << 290 "[JTAG_TMS]", << 291 "[JTAG_TDI]", << 292 "[JTAG_TMS]", << 293 "GPIO_182_FATAL_ERR", << 294 "NC"; << 295 }; << 296 << 297 &gpio23 { << 298 /* GPIO_184-GPIO_191 */ << 299 gpio-line-names = << 300 "GPIO_184_JTAG_SEL", << 301 "GPIO-F", /* LSEC pin 28: GPIO << 302 "[I2C0_SCL]", /* LSEC pin 15: << 303 "[I2C0_SDA]", /* LSEC pin 17: << 304 "[GPIO_188_I2C1_SCL]", /* Actu << 305 "[GPIO_189_I2C1_SDA]", /* Actu << 306 "[I2C1_SCL]", /* LSEC pin 19: << 307 "[I2C2_SDA]"; /* LSEC pin 21: << 308 }; << 309 << 310 &gpio24 { << 311 /* GPIO_192-GPIO_199 */ << 312 gpio-line-names = << 313 "[SD_LED]", << 314 "NC", << 315 "[PCM_DI]", /* LSEC pin 22: GP << 316 "[PCM_DO]", /* LSEC pin 20: GP << 317 "[PCM_CLK]", /* LSEC pin 18: G << 318 "[PCM_FS]", /* LSEC pin 16: GP << 319 "", << 320 "[I2S2_DO]"; << 321 }; << 322 << 323 &gpio25 { << 324 /* GPIO_200-GPIO_207 */ << 325 gpio-line-names = << 326 "[I2S2_XCLK]", << 327 "[I2S2_XFS]", << 328 "GPIO_202_PERST_ETH", << 329 "GPIO_203_PWRON_DET", << 330 "GPIO_204_PMU1_IRQ_N", << 331 "GPIO_205_SD_DET", << 332 "GPIO_206_GPS_MOTION_INT", << 333 "GPIO_207_HDMI_SEL"; << 334 }; << 335 << 336 &gpio26 { << 337 /* GPIO_208-GPIO_215 */ << 338 gpio-line-names = << 339 "GPIO-A", /* LSEC pin 23: GPIO << 340 "GPIO_209_VBUS_TYPEC", << 341 "NC", << 342 "NC", << 343 "NC", << 344 "[SPI0_SCLK]", /* LSEC pin 8: << 345 "[SPI0_DIN]", /* LSEC pin 10: << 346 "[SPI0_DOUT]"; /* LSEC pin 14: << 347 }; << 348 << 349 &gpio27 { << 350 /* GPIO_216-GPIO_223 */ << 351 gpio-line-names = << 352 "[SPI0_CS]", /* LSEC pin 12: G << 353 "GPIO_217_HDMI_PD", << 354 "GPIO_218_GPS_WAKEUP_AP", << 355 "GPIO_219_M.2CLK_EN", << 356 "GPIO_220_PERST_MINI", << 357 "GPIO_221_CC_INT", << 358 "[PCIE_CLKREQ_L]", << 359 "NC"; << 360 }; << 361 << 362 &gpio28 { << 363 /* GPIO_224-GPIO_231 */ << 364 gpio-line-names = << 365 "[PMU0_INT]", << 366 "[SPMI_DATA]", << 367 "[SPMI_CLK]", << 368 "[CAN_SPI_CLK]", << 369 "[CAN_SPI_DI]", << 370 "[CAN_SPI_DO]", << 371 "[CAN_SPI_CS]", << 372 "GPIO_231_HDMI_INT"; << 373 }; << 374 << 375 &dwmmc1 { << 376 bus-width = <0x4>; << 377 sd-uhs-sdr12; << 378 sd-uhs-sdr25; << 379 sd-uhs-sdr50; << 380 sd-uhs-sdr104; << 381 cap-sd-highspeed; << 382 disable-wp; << 383 cd-inverted; << 384 cd-gpios = <&gpio25 5 GPIO_ACTIVE_HIGH << 385 pinctrl-names = "default"; << 386 pinctrl-0 = <&sd_pmx_func << 387 &sd_clk_cfg_func << 388 &sd_cfg_func>; << 389 vmmc-supply = <&ldo16>; << 390 vqmmc-supply = <&ldo9>; << 391 status = "okay"; << 392 }; << 393 << 394 &dwmmc2 { /* WIFI */ << 395 bus-width = <0x4>; << 396 non-removable; << 397 broken-cd; << 398 cap-power-off-card; << 399 pinctrl-names = "default"; << 400 pinctrl-0 = <&sdio_pmx_func << 401 &sdio_clk_cfg_func << 402 &sdio_cfg_func>; << 403 /* WL_EN */ << 404 vmmc-supply = <&wlan_en>; << 405 status = "okay"; << 406 << 407 wlcore: wlcore@2 { << 408 compatible = "ti,wl1837"; << 409 reg = <2>; /* sdio func n << 410 /* WL_IRQ, GPIO_177_WL_WAKEUP_ << 411 interrupt-parent = <&gpio22>; << 412 interrupts = <1 IRQ_TYPE_EDGE_ << 413 }; << 414 }; << 415 << 416 &uart0 { << 417 /* On High speed expansion header */ << 418 label = "HS-UART0"; << 419 status = "okay"; << 420 }; << 421 << 422 &uart2 { << 423 /* On Low speed expansion header */ << 424 label = "LS-UART0"; << 425 status = "okay"; << 426 }; 31 }; 427 32 428 &uart6 { 33 &uart6 { 429 /* On Low speed expansion header */ << 430 label = "LS-UART1"; << 431 status = "okay"; 34 status = "okay"; 432 }; 35 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.