15510ee99SManivannan Sadhasivam// SPDX-License-Identifier: GPL-2.0
25510ee99SManivannan Sadhasivam/*
35510ee99SManivannan Sadhasivam * dts file for Hisilicon HiKey970 Development Board
45510ee99SManivannan Sadhasivam *
5e3211e41SHao Fang * Copyright (C) 2016, HiSilicon Ltd.
65510ee99SManivannan Sadhasivam * Copyright (C) 2018, Linaro Ltd.
75510ee99SManivannan Sadhasivam *
85510ee99SManivannan Sadhasivam */
95510ee99SManivannan Sadhasivam
105510ee99SManivannan Sadhasivam/dts-v1/;
1117611010SManivannan Sadhasivam#include <dt-bindings/gpio/gpio.h>
125510ee99SManivannan Sadhasivam
135510ee99SManivannan Sadhasivam#include "hi3670.dtsi"
14e1881302SManivannan Sadhasivam#include "hikey970-pinctrl.dtsi"
15*6219b20eSMauro Carvalho Chehab#include "hikey970-pmic.dtsi"
165510ee99SManivannan Sadhasivam
175510ee99SManivannan Sadhasivam/ {
185510ee99SManivannan Sadhasivam	model = "HiKey970";
195510ee99SManivannan Sadhasivam	compatible = "hisilicon,hi3670-hikey970", "hisilicon,hi3670";
205510ee99SManivannan Sadhasivam
215510ee99SManivannan Sadhasivam	aliases {
2217611010SManivannan Sadhasivam		mshc1 = &dwmmc1;
2317611010SManivannan Sadhasivam		mshc2 = &dwmmc2;
2484d9e4dfSManivannan Sadhasivam		serial0 = &uart0;
2584d9e4dfSManivannan Sadhasivam		serial1 = &uart1;
2684d9e4dfSManivannan Sadhasivam		serial2 = &uart2;
2784d9e4dfSManivannan Sadhasivam		serial3 = &uart3;
2884d9e4dfSManivannan Sadhasivam		serial4 = &uart4;
2984d9e4dfSManivannan Sadhasivam		serial5 = &uart5;
305510ee99SManivannan Sadhasivam		serial6 = &uart6;       /* console UART */
315510ee99SManivannan Sadhasivam	};
325510ee99SManivannan Sadhasivam
335510ee99SManivannan Sadhasivam	chosen {
345510ee99SManivannan Sadhasivam		stdout-path = "serial6:115200n8";
355510ee99SManivannan Sadhasivam	};
365510ee99SManivannan Sadhasivam
375510ee99SManivannan Sadhasivam	memory@0 {
385510ee99SManivannan Sadhasivam		device_type = "memory";
395510ee99SManivannan Sadhasivam		/* expect bootloader to fill in this region */
405510ee99SManivannan Sadhasivam		reg = <0x0 0x0 0x0 0x0>;
415510ee99SManivannan Sadhasivam	};
4217611010SManivannan Sadhasivam
4317611010SManivannan Sadhasivam	wlan_en: wlan-en-1-8v {
4417611010SManivannan Sadhasivam		compatible = "regulator-fixed";
4517611010SManivannan Sadhasivam		regulator-name = "wlan-en-regulator";
4617611010SManivannan Sadhasivam		regulator-min-microvolt = <1800000>;
4717611010SManivannan Sadhasivam		regulator-max-microvolt = <1800000>;
4817611010SManivannan Sadhasivam
4917611010SManivannan Sadhasivam		/* GPIO_051_WIFI_EN */
5017611010SManivannan Sadhasivam		gpio = <&gpio6 3 0>;
5117611010SManivannan Sadhasivam
5217611010SManivannan Sadhasivam		/* WLAN card specific delay */
5317611010SManivannan Sadhasivam		startup-delay-us = <70000>;
5417611010SManivannan Sadhasivam		enable-active-high;
5517611010SManivannan Sadhasivam	};
565510ee99SManivannan Sadhasivam};
575510ee99SManivannan Sadhasivam
588aa2fca8SManivannan Sadhasivam/*
598aa2fca8SManivannan Sadhasivam * Legend: proper name = the GPIO line is used as GPIO
608aa2fca8SManivannan Sadhasivam *         NC = not connected (pin out but not routed from the chip to
618aa2fca8SManivannan Sadhasivam *              anything the board)
628aa2fca8SManivannan Sadhasivam *         "[PER]" = pin is muxed for [peripheral] (not GPIO)
638aa2fca8SManivannan Sadhasivam *         "" = no idea, schematic doesn't say, could be
648aa2fca8SManivannan Sadhasivam *              unrouted (not connected to any external pin)
658aa2fca8SManivannan Sadhasivam *         LSEC = Low Speed External Connector
668aa2fca8SManivannan Sadhasivam *         HSEC = High Speed External Connector
678aa2fca8SManivannan Sadhasivam *
688aa2fca8SManivannan Sadhasivam * Line names are taken from "hikey970-schematics.pdf" from HiSilicon.
698aa2fca8SManivannan Sadhasivam *
708aa2fca8SManivannan Sadhasivam * For the lines routed to the external connectors the
718aa2fca8SManivannan Sadhasivam * lines are named after the 96Boards CE Specification 1.0,
728aa2fca8SManivannan Sadhasivam * Appendix "Expansion Connector Signal Description".
738aa2fca8SManivannan Sadhasivam *
748aa2fca8SManivannan Sadhasivam * When the 96Board naming of a line and the schematic name of
758aa2fca8SManivannan Sadhasivam * the same line are in conflict, the 96Board specification
768aa2fca8SManivannan Sadhasivam * takes precedence, which means that the external UART on the
778aa2fca8SManivannan Sadhasivam * LSEC is named UART0 while the schematic and SoC names this
788aa2fca8SManivannan Sadhasivam * UART2. This is only for the informational lines i.e. "[FOO]",
798aa2fca8SManivannan Sadhasivam * the GPIO named lines "GPIO-A" thru "GPIO-L" are the only
808aa2fca8SManivannan Sadhasivam * ones actually used for GPIO.
818aa2fca8SManivannan Sadhasivam */
828aa2fca8SManivannan Sadhasivam&gpio0 {
838aa2fca8SManivannan Sadhasivam	/* GPIO_000-GPIO_007 */
848aa2fca8SManivannan Sadhasivam	gpio-line-names =
858aa2fca8SManivannan Sadhasivam		"",
868aa2fca8SManivannan Sadhasivam		"TP901", /* TEST_MODE connected to TP901 */
878aa2fca8SManivannan Sadhasivam		"",
888aa2fca8SManivannan Sadhasivam		"GPIO_003_USB_HUB_RESET_N",
898aa2fca8SManivannan Sadhasivam		"NC",
908aa2fca8SManivannan Sadhasivam		"[AP_GPS_REF_CLK]",
918aa2fca8SManivannan Sadhasivam		"[I2C3_SCL]",
928aa2fca8SManivannan Sadhasivam		"[I2C3_SDA]";
938aa2fca8SManivannan Sadhasivam};
948aa2fca8SManivannan Sadhasivam
958aa2fca8SManivannan Sadhasivam&gpio1 {
968aa2fca8SManivannan Sadhasivam	/* GPIO_008-GPIO_015 */
978aa2fca8SManivannan Sadhasivam	gpio-line-names =
988aa2fca8SManivannan Sadhasivam		"[UART0_CTS]", /* LSEC pin 3: GPIO_008_UART2_CTS_N */
998aa2fca8SManivannan Sadhasivam		"[UART0_RTS]", /* LSEC pin 9: GPIO_009_UART2_RTS_N */
1008aa2fca8SManivannan Sadhasivam		"[UART0_TXD]", /* LSEC pin 5: GPIO_010_UART2_TXD */
1018aa2fca8SManivannan Sadhasivam		"[UART0_RXD]", /* LSEC pin 7: GPIO_011_UART2_RXD */
1028aa2fca8SManivannan Sadhasivam		"[USER_LED5]",
1038aa2fca8SManivannan Sadhasivam		"GPIO-I", /* LSEC pin 31: GPIO_013_CAM0_RST_N */
1048aa2fca8SManivannan Sadhasivam		"[USER_LED3]",
1058aa2fca8SManivannan Sadhasivam		"[USER_LED4]";
1068aa2fca8SManivannan Sadhasivam};
1078aa2fca8SManivannan Sadhasivam
1088aa2fca8SManivannan Sadhasivam&gpio2 {
1098aa2fca8SManivannan Sadhasivam	/* GPIO_016-GPIO_023 */
1108aa2fca8SManivannan Sadhasivam	gpio-line-names =
1118aa2fca8SManivannan Sadhasivam		"GPIO-G", /* LSEC pin 29: GPIO_016_LCD_TE0 */
1128aa2fca8SManivannan Sadhasivam		"[CSI0_MCLK]", /* HSEC pin 15: ISP_CCLK0_MCAM */
1138aa2fca8SManivannan Sadhasivam		"[CSI1_MCLK]", /* HSEC pin 17: ISP_CCLK1_SCAM */
1148aa2fca8SManivannan Sadhasivam		"GPIO_019_BT_ACTIVE",
1158aa2fca8SManivannan Sadhasivam		"[I2C2_SCL]", /* HSEC pin 32: ISP_SCL0 */
1168aa2fca8SManivannan Sadhasivam		"[I2C2_SDA]", /* HSEC pin 34: ISP_SDA0 */
1178aa2fca8SManivannan Sadhasivam		"[I2C3_SCL]", /* HSEC pin 36: ISP_SCL1 */
1188aa2fca8SManivannan Sadhasivam		"[I2C3_SDA]"; /* HSEC pin 38: ISP_SDA1 */
1198aa2fca8SManivannan Sadhasivam};
1208aa2fca8SManivannan Sadhasivam
1218aa2fca8SManivannan Sadhasivam&gpio3 {
1228aa2fca8SManivannan Sadhasivam	/* GPIO_024-GPIO_031 */
1238aa2fca8SManivannan Sadhasivam	gpio-line-names =
1248aa2fca8SManivannan Sadhasivam		"GPIO_024_WIFI_ACTIVE",
1258aa2fca8SManivannan Sadhasivam		"GPIO_025_PERST_M.2",
1268aa2fca8SManivannan Sadhasivam		"[I2C4_SCL]",
1278aa2fca8SManivannan Sadhasivam		"[I2C4_SDA]",
1288aa2fca8SManivannan Sadhasivam		"NC",
1298aa2fca8SManivannan Sadhasivam		"GPIO-H", /* LSEC pin 30: GPIO_029_LCD_RST_N */
1308aa2fca8SManivannan Sadhasivam		"[USER_LED1]",
1318aa2fca8SManivannan Sadhasivam		"GPIO-L"; /* LSEC pin 34: GPIO_031 */
1328aa2fca8SManivannan Sadhasivam};
1338aa2fca8SManivannan Sadhasivam
1348aa2fca8SManivannan Sadhasivam&gpio4 {
1358aa2fca8SManivannan Sadhasivam	/* GPIO_032-GPIO_039 */
1368aa2fca8SManivannan Sadhasivam	gpio-line-names =
1378aa2fca8SManivannan Sadhasivam		"GPIO-K", /* LSEC pin 33: GPIO_032_CAM1_RST_N */
1388aa2fca8SManivannan Sadhasivam		"GPIO_033_PMU1_EN",
1398aa2fca8SManivannan Sadhasivam		"GPIO_034_USBSW_SEL",
1408aa2fca8SManivannan Sadhasivam		/*
1418aa2fca8SManivannan Sadhasivam		 * These two pins should be used for SD(IO) data according
1428aa2fca8SManivannan Sadhasivam		 * to the 96boards specification but seems to be repurposed
1438aa2fca8SManivannan Sadhasivam		 * for UART 0. They are however named according to the spec.
1448aa2fca8SManivannan Sadhasivam		 */
1458aa2fca8SManivannan Sadhasivam		"[SD_DAT1]", /* HSEC pin 3: GPIO_035_UART0_RXD */
1468aa2fca8SManivannan Sadhasivam		"[SD_DAT2]", /* HSEC pin 5: GPIO_036_UART0_TXD */
1478aa2fca8SManivannan Sadhasivam		"[UART1_RXD]", /* LSEC pin 13: DEBUG_UART6_RXD */
1488aa2fca8SManivannan Sadhasivam		"[UART1_TXD]", /* LSEC pin 11: DEBUG_UART6_TXD */
1498aa2fca8SManivannan Sadhasivam		"[SOC_GPS_UART3_CTS_N]"; /* TP2304 */
1508aa2fca8SManivannan Sadhasivam};
1518aa2fca8SManivannan Sadhasivam
1528aa2fca8SManivannan Sadhasivam&gpio5 {
1538aa2fca8SManivannan Sadhasivam	/* GPIO_040-GPIO_047 */
1548aa2fca8SManivannan Sadhasivam	gpio-line-names =
1558aa2fca8SManivannan Sadhasivam		"[SOC_GPS_UART3_RTS_N]", /* TP2302 */
1568aa2fca8SManivannan Sadhasivam		"[SOC_GPS_UART3_RXD]", /* TP2303 */
1578aa2fca8SManivannan Sadhasivam		"[SOC_GPS_UART3_TXD]", /* TP2305 */
1588aa2fca8SManivannan Sadhasivam		"[SOC_BT_UART4_CTS_N]",
1598aa2fca8SManivannan Sadhasivam		"[SOC_BT_UART4_RTS_N]",
1608aa2fca8SManivannan Sadhasivam		"[SOC_BT_UART4_RXD]",
1618aa2fca8SManivannan Sadhasivam		"[SOC_BT_UART4_TXD]",
1628aa2fca8SManivannan Sadhasivam		"NC";
1638aa2fca8SManivannan Sadhasivam};
1648aa2fca8SManivannan Sadhasivam
1658aa2fca8SManivannan Sadhasivam&gpio6 {
1668aa2fca8SManivannan Sadhasivam	/* GPIO_048-GPIO_055 */
1678aa2fca8SManivannan Sadhasivam	gpio-line-names =
1688aa2fca8SManivannan Sadhasivam		"NC",
1698aa2fca8SManivannan Sadhasivam		"GPIO_049_USER_LED6",
1708aa2fca8SManivannan Sadhasivam		"GPIO_050_CAN_RST",
1718aa2fca8SManivannan Sadhasivam		"GPIO_051_WIFI_EN",
1728aa2fca8SManivannan Sadhasivam		"GPIO-D", /* LSEC pin 26 */
1738aa2fca8SManivannan Sadhasivam		"GPIO-J", /* LSEC pin 32 */
1748aa2fca8SManivannan Sadhasivam		"GPIO_054_BT_EN",
1758aa2fca8SManivannan Sadhasivam		"[GPIO_055_SEL]";
1768aa2fca8SManivannan Sadhasivam};
1778aa2fca8SManivannan Sadhasivam
1788aa2fca8SManivannan Sadhasivam&gpio7 {
1798aa2fca8SManivannan Sadhasivam	/* GPIO_056-GPIO_063 */
1808aa2fca8SManivannan Sadhasivam	gpio-line-names =
1818aa2fca8SManivannan Sadhasivam		"[PCIE_PERST_L]", "NC", "NC", "NC", "NC", "NC", "NC", "NC";
1828aa2fca8SManivannan Sadhasivam};
1838aa2fca8SManivannan Sadhasivam
1848aa2fca8SManivannan Sadhasivam&gpio8 {
1858aa2fca8SManivannan Sadhasivam	/* GPIO_064-GPIO_071 */
1868aa2fca8SManivannan Sadhasivam	gpio-line-names = "NC", "NC", "NC", "NC", "NC", "NC", "NC", "NC";
1878aa2fca8SManivannan Sadhasivam};
1888aa2fca8SManivannan Sadhasivam
1898aa2fca8SManivannan Sadhasivam&gpio9 {
1908aa2fca8SManivannan Sadhasivam	/* GPIO_072-GPIO_079 */
1918aa2fca8SManivannan Sadhasivam	gpio-line-names = "NC", "NC", "NC", "NC", "NC", "NC", "NC", "NC";
1928aa2fca8SManivannan Sadhasivam};
1938aa2fca8SManivannan Sadhasivam
1948aa2fca8SManivannan Sadhasivam&gpio10 {
1958aa2fca8SManivannan Sadhasivam	/* GPIO_080-GPIO_087 */
1968aa2fca8SManivannan Sadhasivam	gpio-line-names = "NC", "NC", "NC", "NC", "NC", "NC", "NC", "NC";
1978aa2fca8SManivannan Sadhasivam};
1988aa2fca8SManivannan Sadhasivam
1998aa2fca8SManivannan Sadhasivam&gpio11 {
2008aa2fca8SManivannan Sadhasivam	/* GPIO_088-GPIO_095 */
2018aa2fca8SManivannan Sadhasivam	gpio-line-names = "NC", "NC", "NC", "NC", "NC", "NC", "NC", "NC";
2028aa2fca8SManivannan Sadhasivam};
2038aa2fca8SManivannan Sadhasivam
2048aa2fca8SManivannan Sadhasivam&gpio12 {
2058aa2fca8SManivannan Sadhasivam	/* GPIO_096-GPIO_103 */
2068aa2fca8SManivannan Sadhasivam	gpio-line-names = "NC", "", "", "", "", "", "", "";
2078aa2fca8SManivannan Sadhasivam};
2088aa2fca8SManivannan Sadhasivam
2098aa2fca8SManivannan Sadhasivam&gpio13 {
2108aa2fca8SManivannan Sadhasivam	/* GPIO_104-GPIO_111 */
2118aa2fca8SManivannan Sadhasivam	gpio-line-names = "", "", "", "", "", "", "", "";
2128aa2fca8SManivannan Sadhasivam};
2138aa2fca8SManivannan Sadhasivam
2148aa2fca8SManivannan Sadhasivam&gpio14 {
2158aa2fca8SManivannan Sadhasivam	/* GPIO_112-GPIO_119 */
2168aa2fca8SManivannan Sadhasivam	gpio-line-names = "", "", "", "", "", "", "", "";
2178aa2fca8SManivannan Sadhasivam};
2188aa2fca8SManivannan Sadhasivam
2198aa2fca8SManivannan Sadhasivam&gpio15 {
2208aa2fca8SManivannan Sadhasivam	/* GPIO_120-GPIO_127 */
2218aa2fca8SManivannan Sadhasivam	gpio-line-names = "", "", "", "", "", "", "", "";
2228aa2fca8SManivannan Sadhasivam};
2238aa2fca8SManivannan Sadhasivam
2248aa2fca8SManivannan Sadhasivam&gpio16 {
2258aa2fca8SManivannan Sadhasivam	/* GPIO_128-GPIO_135 */
2268aa2fca8SManivannan Sadhasivam	gpio-line-names =
2278aa2fca8SManivannan Sadhasivam		"[WL_SDIO_CLK]",
2288aa2fca8SManivannan Sadhasivam		"[WL_SDIO_CMD]",
2298aa2fca8SManivannan Sadhasivam		"[WL_SDIO_DATA0]",
2308aa2fca8SManivannan Sadhasivam		"[WL_SDIO_DATA1]",
2318aa2fca8SManivannan Sadhasivam		"[WL_SDIO_DATA2]",
2328aa2fca8SManivannan Sadhasivam		"[WL_SDIO_DATA3]",
2338aa2fca8SManivannan Sadhasivam		"[ETH_ISOLATE]",
2348aa2fca8SManivannan Sadhasivam		"NC";
2358aa2fca8SManivannan Sadhasivam};
2368aa2fca8SManivannan Sadhasivam
2378aa2fca8SManivannan Sadhasivam&gpio17 {
2388aa2fca8SManivannan Sadhasivam	/* GPIO_136-GPIO_143 */
2398aa2fca8SManivannan Sadhasivam	gpio-line-names =
2408aa2fca8SManivannan Sadhasivam		"[MINI1CLK_EN]", "NC", "", "", "", "", "", "";
2418aa2fca8SManivannan Sadhasivam};
2428aa2fca8SManivannan Sadhasivam
2438aa2fca8SManivannan Sadhasivam&gpio18 {
2448aa2fca8SManivannan Sadhasivam	/* GPIO_144-GPIO_151 */
2458aa2fca8SManivannan Sadhasivam	gpio-line-names =
2468aa2fca8SManivannan Sadhasivam		"[SPI1_SCLK]", /* HSEC pin 9: GPIO_144_SPI3_CLK */
2478aa2fca8SManivannan Sadhasivam		"[SPI1_DIN]", /* HSEC pin 11: GPIO_145_SPI3_DI */
2488aa2fca8SManivannan Sadhasivam		"[SPI1_DOUT]", /* HSEC pin 1: GPIO_146_SPI3_DO */
2498aa2fca8SManivannan Sadhasivam		"[SPI1_CS]", /* HSEC pin 7: GPIO_147_SPI3_CS0_N */
2508aa2fca8SManivannan Sadhasivam		"[POWER_INT_N]",
2518aa2fca8SManivannan Sadhasivam		"[CDMA_GPS_SYNC]",
2528aa2fca8SManivannan Sadhasivam		"GPIO_150_PEX_INTA",
2538aa2fca8SManivannan Sadhasivam		"GPIO_151_CAN_INT";
2548aa2fca8SManivannan Sadhasivam};
2558aa2fca8SManivannan Sadhasivam
2568aa2fca8SManivannan Sadhasivam&gpio19 {
2578aa2fca8SManivannan Sadhasivam	/* GPIO_152-GPIO_159 */
2588aa2fca8SManivannan Sadhasivam	gpio-line-names = "", "", "", "", "", "", "", "";
2598aa2fca8SManivannan Sadhasivam};
2608aa2fca8SManivannan Sadhasivam
2618aa2fca8SManivannan Sadhasivam&gpio20 {
2628aa2fca8SManivannan Sadhasivam	/* GPIO_160-GPIO_167 */
2638aa2fca8SManivannan Sadhasivam	gpio-line-names =
2648aa2fca8SManivannan Sadhasivam		"[SD_CLK]",
2658aa2fca8SManivannan Sadhasivam		"[SD_CMD]",
2668aa2fca8SManivannan Sadhasivam		"[SD_DATA0]",
2678aa2fca8SManivannan Sadhasivam		"[SD_DATA1]",
2688aa2fca8SManivannan Sadhasivam		"[SD_DATA2]",
2698aa2fca8SManivannan Sadhasivam		"[SD_DATA3]",
2708aa2fca8SManivannan Sadhasivam		"GPIO_166_ETHCLK_EN",
2718aa2fca8SManivannan Sadhasivam		"GPIO_167_USER_LED2";
2728aa2fca8SManivannan Sadhasivam};
2738aa2fca8SManivannan Sadhasivam
2748aa2fca8SManivannan Sadhasivam&gpio21 {
2758aa2fca8SManivannan Sadhasivam	/* GPIO_168-GPIO_175 */
2768aa2fca8SManivannan Sadhasivam	gpio-line-names =
2778aa2fca8SManivannan Sadhasivam		"GPIO_168_GPS_EN",
2788aa2fca8SManivannan Sadhasivam		"GPIO-C", /* LSEC pin 25: GPIO_169_USIM1_CLK */
2798aa2fca8SManivannan Sadhasivam		"GPIO-E", /* LSEC pin 27: GPIO_170_USIM1_RST */
2808aa2fca8SManivannan Sadhasivam		"GPIO-B", /* LSEC pin 24: GPIO_171_USIM1_DATA */
2818aa2fca8SManivannan Sadhasivam		"", "", "", "", "";
2828aa2fca8SManivannan Sadhasivam};
2838aa2fca8SManivannan Sadhasivam
2848aa2fca8SManivannan Sadhasivam&gpio22 {
2858aa2fca8SManivannan Sadhasivam	/* GPIO_176-GPIO_183 */
2868aa2fca8SManivannan Sadhasivam	gpio-line-names =
2878aa2fca8SManivannan Sadhasivam		"[PMU_PWR_HOLD]",
2888aa2fca8SManivannan Sadhasivam		"GPIO_177_WL_WAKEUP_AP",
2898aa2fca8SManivannan Sadhasivam		"[JTAG_TCK]",
2908aa2fca8SManivannan Sadhasivam		"[JTAG_TMS]",
2918aa2fca8SManivannan Sadhasivam		"[JTAG_TDI]",
2928aa2fca8SManivannan Sadhasivam		"[JTAG_TMS]",
2938aa2fca8SManivannan Sadhasivam		"GPIO_182_FATAL_ERR",
2948aa2fca8SManivannan Sadhasivam		"NC";
2958aa2fca8SManivannan Sadhasivam};
2968aa2fca8SManivannan Sadhasivam
2978aa2fca8SManivannan Sadhasivam&gpio23 {
2988aa2fca8SManivannan Sadhasivam	/* GPIO_184-GPIO_191 */
2998aa2fca8SManivannan Sadhasivam	gpio-line-names =
3008aa2fca8SManivannan Sadhasivam		"GPIO_184_JTAG_SEL",
3018aa2fca8SManivannan Sadhasivam		"GPIO-F", /* LSEC pin 28: GPIO_185_LCD_BL_PWM */
3028aa2fca8SManivannan Sadhasivam		"[I2C0_SCL]", /* LSEC pin 15: GPIO_186_I2C0_SCL */
3038aa2fca8SManivannan Sadhasivam		"[I2C0_SDA]", /* LSEC pin 17: GPIO_187_I2C0_SDA */
3048aa2fca8SManivannan Sadhasivam		"[GPIO_188_I2C1_SCL]", /* Actual SoC I2C1_SCL */
3058aa2fca8SManivannan Sadhasivam		"[GPIO_189_I2C1_SDA]", /* Actual SoC I2C1_SDA */
3068aa2fca8SManivannan Sadhasivam		"[I2C1_SCL]", /* LSEC pin 19: GPIO_190_I2C2_SCL */
3078aa2fca8SManivannan Sadhasivam		"[I2C2_SDA]"; /* LSEC pin 21: GPIO_191_I2C2_SDA */
3088aa2fca8SManivannan Sadhasivam};
3098aa2fca8SManivannan Sadhasivam
3108aa2fca8SManivannan Sadhasivam&gpio24 {
3118aa2fca8SManivannan Sadhasivam	/* GPIO_192-GPIO_199 */
3128aa2fca8SManivannan Sadhasivam	gpio-line-names =
3138aa2fca8SManivannan Sadhasivam		"[SD_LED]",
3148aa2fca8SManivannan Sadhasivam		"NC",
3158aa2fca8SManivannan Sadhasivam		"[PCM_DI]", /* LSEC pin 22: GPIO_194_I2S0_DI */
3168aa2fca8SManivannan Sadhasivam		"[PCM_DO]", /* LSEC pin 20: GPIO_195_I2S0_DO */
3178aa2fca8SManivannan Sadhasivam		"[PCM_CLK]", /* LSEC pin 18: GPIO_196_I2S0_XCLK */
3188aa2fca8SManivannan Sadhasivam		"[PCM_FS]", /* LSEC pin 16: GPIO_197_I2S0_XFS */
3198aa2fca8SManivannan Sadhasivam		"",
3208aa2fca8SManivannan Sadhasivam		"[I2S2_DO]";
3218aa2fca8SManivannan Sadhasivam};
3228aa2fca8SManivannan Sadhasivam
3238aa2fca8SManivannan Sadhasivam&gpio25 {
3248aa2fca8SManivannan Sadhasivam	/* GPIO_200-GPIO_207 */
3258aa2fca8SManivannan Sadhasivam	gpio-line-names =
3268aa2fca8SManivannan Sadhasivam		"[I2S2_XCLK]",
3278aa2fca8SManivannan Sadhasivam		"[I2S2_XFS]",
3288aa2fca8SManivannan Sadhasivam		"GPIO_202_PERST_ETH",
3298aa2fca8SManivannan Sadhasivam		"GPIO_203_PWRON_DET",
3308aa2fca8SManivannan Sadhasivam		"GPIO_204_PMU1_IRQ_N",
3318aa2fca8SManivannan Sadhasivam		"GPIO_205_SD_DET",
3328aa2fca8SManivannan Sadhasivam		"GPIO_206_GPS_MOTION_INT",
3338aa2fca8SManivannan Sadhasivam		"GPIO_207_HDMI_SEL";
3348aa2fca8SManivannan Sadhasivam};
3358aa2fca8SManivannan Sadhasivam
3368aa2fca8SManivannan Sadhasivam&gpio26 {
3378aa2fca8SManivannan Sadhasivam	/* GPIO_208-GPIO_215 */
3388aa2fca8SManivannan Sadhasivam	gpio-line-names =
3398aa2fca8SManivannan Sadhasivam		"GPIO-A", /* LSEC pin 23: GPIO_208_WAKEUP_SOC */
3408aa2fca8SManivannan Sadhasivam		"GPIO_209_VBUS_TYPEC",
3418aa2fca8SManivannan Sadhasivam		"NC",
3428aa2fca8SManivannan Sadhasivam		"NC",
3438aa2fca8SManivannan Sadhasivam		"NC",
3448aa2fca8SManivannan Sadhasivam		"[SPI0_SCLK]", /* LSEC pin 8: GPIO_213_SPI2_CLK */
3458aa2fca8SManivannan Sadhasivam		"[SPI0_DIN]", /* LSEC pin 10: GPIO_214_SPI2_DI */
3468aa2fca8SManivannan Sadhasivam		"[SPI0_DOUT]"; /* LSEC pin 14: GPIO_215_SPI2_DO */
3478aa2fca8SManivannan Sadhasivam};
3488aa2fca8SManivannan Sadhasivam
3498aa2fca8SManivannan Sadhasivam&gpio27 {
3508aa2fca8SManivannan Sadhasivam	/* GPIO_216-GPIO_223 */
3518aa2fca8SManivannan Sadhasivam	gpio-line-names =
3528aa2fca8SManivannan Sadhasivam		"[SPI0_CS]", /* LSEC pin 12: GPIO_216_SPI2_CS0_N */
3538aa2fca8SManivannan Sadhasivam		"GPIO_217_HDMI_PD",
3548aa2fca8SManivannan Sadhasivam		"GPIO_218_GPS_WAKEUP_AP",
3558aa2fca8SManivannan Sadhasivam		"GPIO_219_M.2CLK_EN",
3568aa2fca8SManivannan Sadhasivam		"GPIO_220_PERST_MINI",
3578aa2fca8SManivannan Sadhasivam		"GPIO_221_CC_INT",
3588aa2fca8SManivannan Sadhasivam		"[PCIE_CLKREQ_L]",
3598aa2fca8SManivannan Sadhasivam		"NC";
3608aa2fca8SManivannan Sadhasivam};
3618aa2fca8SManivannan Sadhasivam
3628aa2fca8SManivannan Sadhasivam&gpio28 {
3638aa2fca8SManivannan Sadhasivam	/* GPIO_224-GPIO_231 */
3648aa2fca8SManivannan Sadhasivam	gpio-line-names =
3658aa2fca8SManivannan Sadhasivam		"[PMU0_INT]",
3668aa2fca8SManivannan Sadhasivam		"[SPMI_DATA]",
3678aa2fca8SManivannan Sadhasivam		"[SPMI_CLK]",
3688aa2fca8SManivannan Sadhasivam		"[CAN_SPI_CLK]",
3698aa2fca8SManivannan Sadhasivam		"[CAN_SPI_DI]",
3708aa2fca8SManivannan Sadhasivam		"[CAN_SPI_DO]",
3718aa2fca8SManivannan Sadhasivam		"[CAN_SPI_CS]",
3728aa2fca8SManivannan Sadhasivam		"GPIO_231_HDMI_INT";
3738aa2fca8SManivannan Sadhasivam};
3748aa2fca8SManivannan Sadhasivam
37517611010SManivannan Sadhasivam&dwmmc1 {
37617611010SManivannan Sadhasivam	bus-width = <0x4>;
37717611010SManivannan Sadhasivam	sd-uhs-sdr12;
37817611010SManivannan Sadhasivam	sd-uhs-sdr25;
37917611010SManivannan Sadhasivam	sd-uhs-sdr50;
38017611010SManivannan Sadhasivam	sd-uhs-sdr104;
38117611010SManivannan Sadhasivam	cap-sd-highspeed;
38217611010SManivannan Sadhasivam	disable-wp;
38317611010SManivannan Sadhasivam	cd-inverted;
38417611010SManivannan Sadhasivam	cd-gpios = <&gpio25 5 GPIO_ACTIVE_HIGH>;
38517611010SManivannan Sadhasivam	pinctrl-names = "default";
38617611010SManivannan Sadhasivam	pinctrl-0 = <&sd_pmx_func
38717611010SManivannan Sadhasivam		     &sd_clk_cfg_func
38817611010SManivannan Sadhasivam		     &sd_cfg_func>;
389*6219b20eSMauro Carvalho Chehab	vmmc-supply = <&ldo16>;
390*6219b20eSMauro Carvalho Chehab	vqmmc-supply = <&ldo9>;
39117611010SManivannan Sadhasivam	status = "okay";
39217611010SManivannan Sadhasivam};
39317611010SManivannan Sadhasivam
39417611010SManivannan Sadhasivam&dwmmc2 { /* WIFI */
39517611010SManivannan Sadhasivam	bus-width = <0x4>;
39617611010SManivannan Sadhasivam	non-removable;
39717611010SManivannan Sadhasivam	broken-cd;
39817611010SManivannan Sadhasivam	cap-power-off-card;
39917611010SManivannan Sadhasivam	pinctrl-names = "default";
40017611010SManivannan Sadhasivam	pinctrl-0 = <&sdio_pmx_func
40117611010SManivannan Sadhasivam		     &sdio_clk_cfg_func
40217611010SManivannan Sadhasivam		     &sdio_cfg_func>;
40317611010SManivannan Sadhasivam	/* WL_EN */
40417611010SManivannan Sadhasivam	vmmc-supply = <&wlan_en>;
40564ea21e0SAdrian Schmutzler	status = "okay";
40617611010SManivannan Sadhasivam
40717611010SManivannan Sadhasivam	wlcore: wlcore@2 {
40817611010SManivannan Sadhasivam		compatible = "ti,wl1837";
40917611010SManivannan Sadhasivam		reg = <2>;      /* sdio func num */
41017611010SManivannan Sadhasivam		/* WL_IRQ, GPIO_177_WL_WAKEUP_AP */
41117611010SManivannan Sadhasivam		interrupt-parent = <&gpio22>;
41217611010SManivannan Sadhasivam		interrupts = <1 IRQ_TYPE_EDGE_RISING>;
41317611010SManivannan Sadhasivam	};
41417611010SManivannan Sadhasivam};
41517611010SManivannan Sadhasivam
41684d9e4dfSManivannan Sadhasivam&uart0 {
41784d9e4dfSManivannan Sadhasivam	/* On High speed expansion header */
41884d9e4dfSManivannan Sadhasivam	label = "HS-UART0";
41984d9e4dfSManivannan Sadhasivam	status = "okay";
42084d9e4dfSManivannan Sadhasivam};
42184d9e4dfSManivannan Sadhasivam
42284d9e4dfSManivannan Sadhasivam&uart2 {
42384d9e4dfSManivannan Sadhasivam	/* On Low speed expansion header */
42484d9e4dfSManivannan Sadhasivam	label = "LS-UART0";
42584d9e4dfSManivannan Sadhasivam	status = "okay";
42684d9e4dfSManivannan Sadhasivam};
42784d9e4dfSManivannan Sadhasivam
4285510ee99SManivannan Sadhasivam&uart6 {
42984d9e4dfSManivannan Sadhasivam	/* On Low speed expansion header */
43084d9e4dfSManivannan Sadhasivam	label = "LS-UART1";
4315510ee99SManivannan Sadhasivam	status = "okay";
4325510ee99SManivannan Sadhasivam};
433