135ca8168SChen Feng/* 235ca8168SChen Feng * dts file for Hisilicon HiKey960 Development Board 335ca8168SChen Feng * 435ca8168SChen Feng * Copyright (C) 2016, Hisilicon Ltd. 535ca8168SChen Feng * 635ca8168SChen Feng */ 735ca8168SChen Feng 835ca8168SChen Feng/dts-v1/; 935ca8168SChen Feng 1035ca8168SChen Feng#include "hi3660.dtsi" 11d4e1eaeeSWang Xiaoyin#include "hikey960-pinctrl.dtsi" 122e9b4447SGuodong Xu#include <dt-bindings/gpio/gpio.h> 138cb53a8dSChen Jun#include <dt-bindings/input/input.h> 148cb53a8dSChen Jun#include <dt-bindings/interrupt-controller/irq.h> 1535ca8168SChen Feng 1635ca8168SChen Feng/ { 1735ca8168SChen Feng model = "HiKey960"; 18b6c93186SGuodong Xu compatible = "hisilicon,hi3660-hikey960", "hisilicon,hi3660"; 1935ca8168SChen Feng 2035ca8168SChen Feng aliases { 21254b07b2SChen Feng serial0 = &uart0; 22254b07b2SChen Feng serial1 = &uart1; 23254b07b2SChen Feng serial2 = &uart2; 24254b07b2SChen Feng serial3 = &uart3; 25254b07b2SChen Feng serial4 = &uart4; 26254b07b2SChen Feng serial5 = &uart5; 27254b07b2SChen Feng serial6 = &uart6; 2835ca8168SChen Feng }; 2935ca8168SChen Feng 3035ca8168SChen Feng chosen { 31254b07b2SChen Feng stdout-path = "serial6:115200n8"; 3235ca8168SChen Feng }; 3335ca8168SChen Feng 3435ca8168SChen Feng memory@0 { 3535ca8168SChen Feng device_type = "memory"; 3635ca8168SChen Feng /* rewrite this at bootloader */ 3735ca8168SChen Feng reg = <0x0 0x0 0x0 0x0>; 3835ca8168SChen Feng }; 398cb53a8dSChen Jun 408cb53a8dSChen Jun keys { 418cb53a8dSChen Jun compatible = "gpio-keys"; 428cb53a8dSChen Jun pinctrl-names = "default"; 438cb53a8dSChen Jun pinctrl-0 = <&pwr_key_pmx_func &pwr_key_cfg_func>; 448cb53a8dSChen Jun 458cb53a8dSChen Jun power { 468cb53a8dSChen Jun wakeup-source; 478cb53a8dSChen Jun gpios = <&gpio4 2 GPIO_ACTIVE_LOW>; 488cb53a8dSChen Jun label = "GPIO Power"; 498cb53a8dSChen Jun linux,code = <KEY_POWER>; 508cb53a8dSChen Jun }; 518cb53a8dSChen Jun }; 52fc5f2ed6SGuodong Xu 53fc5f2ed6SGuodong Xu leds { 54fc5f2ed6SGuodong Xu compatible = "gpio-leds"; 55fc5f2ed6SGuodong Xu 56fc5f2ed6SGuodong Xu user_led1 { 57fc5f2ed6SGuodong Xu label = "user_led1"; 58fc5f2ed6SGuodong Xu /* gpio_150_user_led1 */ 59fc5f2ed6SGuodong Xu gpios = <&gpio18 6 0>; 60fc5f2ed6SGuodong Xu linux,default-trigger = "heartbeat"; 61fc5f2ed6SGuodong Xu }; 62fc5f2ed6SGuodong Xu 63fc5f2ed6SGuodong Xu user_led2 { 64fc5f2ed6SGuodong Xu label = "user_led2"; 65fc5f2ed6SGuodong Xu /* gpio_151_user_led2 */ 66fc5f2ed6SGuodong Xu gpios = <&gpio18 7 0>; 67fc5f2ed6SGuodong Xu linux,default-trigger = "mmc0"; 68fc5f2ed6SGuodong Xu }; 69fc5f2ed6SGuodong Xu 70fc5f2ed6SGuodong Xu user_led3 { 71fc5f2ed6SGuodong Xu label = "user_led3"; 72fc5f2ed6SGuodong Xu /* gpio_189_user_led3 */ 73fc5f2ed6SGuodong Xu gpios = <&gpio23 5 0>; 74fc5f2ed6SGuodong Xu default-state = "off"; 75fc5f2ed6SGuodong Xu }; 76fc5f2ed6SGuodong Xu 77fc5f2ed6SGuodong Xu user_led4 { 78fc5f2ed6SGuodong Xu label = "user_led4"; 79fc5f2ed6SGuodong Xu /* gpio_190_user_led4 */ 80fc5f2ed6SGuodong Xu gpios = <&gpio23 6 0>; 81fc5f2ed6SGuodong Xu linux,default-trigger = "cpu0"; 82fc5f2ed6SGuodong Xu }; 83fc5f2ed6SGuodong Xu 84fc5f2ed6SGuodong Xu wlan_active_led { 85fc5f2ed6SGuodong Xu label = "wifi_active"; 86fc5f2ed6SGuodong Xu /* gpio_205_wifi_active */ 87fc5f2ed6SGuodong Xu gpios = <&gpio25 5 0>; 88fc5f2ed6SGuodong Xu linux,default-trigger = "phy0tx"; 89fc5f2ed6SGuodong Xu default-state = "off"; 90fc5f2ed6SGuodong Xu }; 91fc5f2ed6SGuodong Xu 92fc5f2ed6SGuodong Xu bt_active_led { 93fc5f2ed6SGuodong Xu label = "bt_active"; 94fc5f2ed6SGuodong Xu gpios = <&gpio25 7 0>; 95fc5f2ed6SGuodong Xu /* gpio_207_user_led1 */ 96fc5f2ed6SGuodong Xu linux,default-trigger = "hci0-power"; 97fc5f2ed6SGuodong Xu default-state = "off"; 98fc5f2ed6SGuodong Xu }; 99fc5f2ed6SGuodong Xu }; 100*e02045aaSWang Xiaoyin 101*e02045aaSWang Xiaoyin pmic: pmic@fff34000 { 102*e02045aaSWang Xiaoyin compatible = "hisilicon,hi6421v530-pmic"; 103*e02045aaSWang Xiaoyin reg = <0x0 0xfff34000 0x0 0x1000>; 104*e02045aaSWang Xiaoyin interrupt-controller; 105*e02045aaSWang Xiaoyin #interrupt-cells = <2>; 106*e02045aaSWang Xiaoyin 107*e02045aaSWang Xiaoyin regulators { 108*e02045aaSWang Xiaoyin ldo3: LDO3 { /* HDMI */ 109*e02045aaSWang Xiaoyin regulator-name = "VOUT3_1V85"; 110*e02045aaSWang Xiaoyin regulator-min-microvolt = <1800000>; 111*e02045aaSWang Xiaoyin regulator-max-microvolt = <2200000>; 112*e02045aaSWang Xiaoyin regulator-enable-ramp-delay = <120>; 113*e02045aaSWang Xiaoyin }; 114*e02045aaSWang Xiaoyin 115*e02045aaSWang Xiaoyin ldo9: LDO9 { /* SDCARD I/O */ 116*e02045aaSWang Xiaoyin regulator-name = "VOUT9_1V8_2V95"; 117*e02045aaSWang Xiaoyin regulator-min-microvolt = <1750000>; 118*e02045aaSWang Xiaoyin regulator-max-microvolt = <3300000>; 119*e02045aaSWang Xiaoyin regulator-enable-ramp-delay = <240>; 120*e02045aaSWang Xiaoyin }; 121*e02045aaSWang Xiaoyin 122*e02045aaSWang Xiaoyin ldo11: LDO11 { /* Low Speed Connector */ 123*e02045aaSWang Xiaoyin regulator-name = "VOUT11_1V8_2V95"; 124*e02045aaSWang Xiaoyin regulator-min-microvolt = <1750000>; 125*e02045aaSWang Xiaoyin regulator-max-microvolt = <3300000>; 126*e02045aaSWang Xiaoyin regulator-enable-ramp-delay = <240>; 127*e02045aaSWang Xiaoyin }; 128*e02045aaSWang Xiaoyin 129*e02045aaSWang Xiaoyin ldo15: LDO15 { /* UFS VCC */ 130*e02045aaSWang Xiaoyin regulator-name = "VOUT15_3V0"; 131*e02045aaSWang Xiaoyin regulator-min-microvolt = <1750000>; 132*e02045aaSWang Xiaoyin regulator-max-microvolt = <3000000>; 133*e02045aaSWang Xiaoyin regulator-boot-on; 134*e02045aaSWang Xiaoyin regulator-always-on; 135*e02045aaSWang Xiaoyin regulator-enable-ramp-delay = <120>; 136*e02045aaSWang Xiaoyin }; 137*e02045aaSWang Xiaoyin 138*e02045aaSWang Xiaoyin ldo16: LDO16 { /* SD VDD */ 139*e02045aaSWang Xiaoyin regulator-name = "VOUT16_2V95"; 140*e02045aaSWang Xiaoyin regulator-min-microvolt = <1750000>; 141*e02045aaSWang Xiaoyin regulator-max-microvolt = <3000000>; 142*e02045aaSWang Xiaoyin regulator-enable-ramp-delay = <360>; 143*e02045aaSWang Xiaoyin }; 144*e02045aaSWang Xiaoyin }; 145*e02045aaSWang Xiaoyin }; 14635ca8168SChen Feng}; 14735ca8168SChen Feng 1485f8a3b77SZhangfei Gao&i2c0 { 1495f8a3b77SZhangfei Gao /* On Low speed expansion */ 1505f8a3b77SZhangfei Gao label = "LS-I2C0"; 1515f8a3b77SZhangfei Gao status = "okay"; 1525f8a3b77SZhangfei Gao}; 1535f8a3b77SZhangfei Gao 1545f8a3b77SZhangfei Gao&i2c1 { 1555f8a3b77SZhangfei Gao status = "okay"; 1565f8a3b77SZhangfei Gao 1575f8a3b77SZhangfei Gao adv7533: adv7533@39 { 1585f8a3b77SZhangfei Gao status = "ok"; 1595f8a3b77SZhangfei Gao compatible = "adi,adv7533"; 1605f8a3b77SZhangfei Gao reg = <0x39>; 1615f8a3b77SZhangfei Gao }; 1625f8a3b77SZhangfei Gao}; 1635f8a3b77SZhangfei Gao 1645f8a3b77SZhangfei Gao&i2c7 { 1655f8a3b77SZhangfei Gao /* On Low speed expansion */ 1665f8a3b77SZhangfei Gao label = "LS-I2C1"; 1675f8a3b77SZhangfei Gao status = "okay"; 1685f8a3b77SZhangfei Gao}; 1695f8a3b77SZhangfei Gao 170254b07b2SChen Feng&uart3 { 171254b07b2SChen Feng /* On Low speed expansion */ 172254b07b2SChen Feng label = "LS-UART0"; 173254b07b2SChen Feng status = "okay"; 174254b07b2SChen Feng}; 175254b07b2SChen Feng 1762e9b4447SGuodong Xu&uart4 { 1772e9b4447SGuodong Xu status = "okay"; 1782e9b4447SGuodong Xu 1792e9b4447SGuodong Xu bluetooth { 1802e9b4447SGuodong Xu compatible = "ti,wl1837-st"; 1812e9b4447SGuodong Xu enable-gpios = <&gpio15 6 GPIO_ACTIVE_HIGH>; 1822e9b4447SGuodong Xu max-speed = <921600>; 1832e9b4447SGuodong Xu }; 1842e9b4447SGuodong Xu}; 1852e9b4447SGuodong Xu 186254b07b2SChen Feng&uart6 { 187254b07b2SChen Feng /* On Low speed expansion */ 188254b07b2SChen Feng label = "LS-UART1"; 18935ca8168SChen Feng status = "okay"; 19035ca8168SChen Feng}; 19138810497SWang Xiaoyin 19238810497SWang Xiaoyin&spi2 { 19338810497SWang Xiaoyin /* On Low speed expansion */ 19438810497SWang Xiaoyin label = "LS-SPI0"; 19538810497SWang Xiaoyin status = "okay"; 19638810497SWang Xiaoyin}; 19738810497SWang Xiaoyin 19838810497SWang Xiaoyin&spi3 { 19938810497SWang Xiaoyin /* On High speed expansion */ 20038810497SWang Xiaoyin label = "HS-SPI1"; 20138810497SWang Xiaoyin status = "okay"; 20238810497SWang Xiaoyin}; 203