1// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2/* 3 * Copyright (c) 2019 Akash Gajjar <akash@openedev.com> 4 * Copyright (c) 2019 Jagan Teki <jagan@openedev.com> 5 */ 6 7/dts-v1/; 8#include "rk3308.dtsi" 9 10/ { 11 model = "Radxa ROCK Pi S"; 12 compatible = "radxa,rockpis", "rockchip,rk3308"; 13 14 aliases { 15 ethernet0 = &gmac; 16 mmc0 = &emmc; 17 mmc1 = &sdmmc; 18 }; 19 20 chosen { 21 stdout-path = "serial0:1500000n8"; 22 }; 23 24 leds { 25 compatible = "gpio-leds"; 26 pinctrl-names = "default"; 27 pinctrl-0 = <&green_led_gio>, <&heartbeat_led_gpio>; 28 29 green-led { 30 default-state = "on"; 31 gpios = <&gpio0 RK_PA6 GPIO_ACTIVE_HIGH>; 32 label = "rockpis:green:power"; 33 linux,default-trigger = "default-on"; 34 }; 35 36 blue-led { 37 default-state = "on"; 38 gpios = <&gpio0 RK_PA5 GPIO_ACTIVE_HIGH>; 39 label = "rockpis:blue:user"; 40 linux,default-trigger = "heartbeat"; 41 }; 42 }; 43 44 sdio_pwrseq: sdio-pwrseq { 45 compatible = "mmc-pwrseq-simple"; 46 pinctrl-0 = <&wifi_enable_h>; 47 pinctrl-names = "default"; 48 reset-gpios = <&gpio0 RK_PA2 GPIO_ACTIVE_LOW>; 49 }; 50 51 vcc_1v8: vcc-1v8 { 52 compatible = "regulator-fixed"; 53 regulator-name = "vcc_1v8"; 54 regulator-always-on; 55 regulator-boot-on; 56 regulator-min-microvolt = <1800000>; 57 regulator-max-microvolt = <1800000>; 58 vin-supply = <&vcc_io>; 59 }; 60 61 vcc_io: vcc-io { 62 compatible = "regulator-fixed"; 63 regulator-name = "vcc_io"; 64 regulator-always-on; 65 regulator-boot-on; 66 regulator-min-microvolt = <3300000>; 67 regulator-max-microvolt = <3300000>; 68 vin-supply = <&vcc5v0_sys>; 69 }; 70 71 vcc_ddr: vcc-ddr { 72 compatible = "regulator-fixed"; 73 regulator-name = "vcc_ddr"; 74 regulator-always-on; 75 regulator-boot-on; 76 regulator-min-microvolt = <1500000>; 77 regulator-max-microvolt = <1500000>; 78 vin-supply = <&vcc5v0_sys>; 79 }; 80 81 vcc5v0_otg: vcc5v0-otg { 82 compatible = "regulator-fixed"; 83 enable-active-high; 84 gpio = <&gpio0 RK_PC5 GPIO_ACTIVE_HIGH>; 85 pinctrl-names = "default"; 86 pinctrl-0 = <&otg_vbus_drv>; 87 regulator-name = "vcc5v0_otg"; 88 regulator-always-on; 89 vin-supply = <&vcc5v0_sys>; 90 }; 91 92 vcc5v0_sys: vcc5v0-sys { 93 compatible = "regulator-fixed"; 94 regulator-name = "vcc5v0_sys"; 95 regulator-always-on; 96 regulator-boot-on; 97 regulator-min-microvolt = <5000000>; 98 regulator-max-microvolt = <5000000>; 99 }; 100 101 vdd_core: vdd-core { 102 compatible = "pwm-regulator"; 103 pwms = <&pwm0 0 5000 1>; 104 pwm-supply = <&vcc5v0_sys>; 105 regulator-name = "vdd_core"; 106 regulator-min-microvolt = <827000>; 107 regulator-max-microvolt = <1340000>; 108 regulator-settling-time-up-us = <250>; 109 regulator-always-on; 110 regulator-boot-on; 111 }; 112 113 vdd_log: vdd-log { 114 compatible = "regulator-fixed"; 115 regulator-name = "vdd_log"; 116 regulator-always-on; 117 regulator-boot-on; 118 regulator-min-microvolt = <1050000>; 119 regulator-max-microvolt = <1050000>; 120 vin-supply = <&vcc5v0_sys>; 121 }; 122}; 123 124&cpu0 { 125 cpu-supply = <&vdd_core>; 126}; 127 128&emmc { 129 bus-width = <4>; 130 cap-mmc-highspeed; 131 mmc-hs200-1_8v; 132 non-removable; 133 vmmc-supply = <&vcc_io>; 134 status = "okay"; 135}; 136 137&gmac { 138 clock_in_out = "output"; 139 phy-supply = <&vcc_io>; 140 snps,reset-gpio = <&gpio0 RK_PA7 GPIO_ACTIVE_LOW>; 141 snps,reset-active-low; 142 snps,reset-delays-us = <0 50000 50000>; 143 status = "okay"; 144}; 145 146&i2c1 { 147 status = "okay"; 148}; 149 150&pinctrl { 151 pinctrl-names = "default"; 152 pinctrl-0 = <&rtc_32k>; 153 154 leds { 155 green_led_gio: green-led-gpio { 156 rockchip,pins = <0 RK_PA6 RK_FUNC_GPIO &pcfg_pull_none>; 157 }; 158 159 heartbeat_led_gpio: heartbeat-led-gpio { 160 rockchip,pins = <0 RK_PA5 RK_FUNC_GPIO &pcfg_pull_none>; 161 }; 162 }; 163 164 usb { 165 otg_vbus_drv: otg-vbus-drv { 166 rockchip,pins = <0 RK_PC5 RK_FUNC_GPIO &pcfg_pull_none>; 167 }; 168 }; 169 170 sdio-pwrseq { 171 wifi_enable_h: wifi-enable-h { 172 rockchip,pins = <0 RK_PA2 RK_FUNC_GPIO &pcfg_pull_none>; 173 }; 174 175 wifi_host_wake: wifi-host-wake { 176 rockchip,pins = <0 RK_PA0 RK_FUNC_GPIO &pcfg_pull_down>; 177 }; 178 }; 179}; 180 181&pwm0 { 182 status = "okay"; 183 pinctrl-0 = <&pwm0_pin_pull_down>; 184}; 185 186&saradc { 187 vref-supply = <&vcc_1v8>; 188 status = "okay"; 189}; 190 191&sdio { 192 #address-cells = <1>; 193 #size-cells = <0>; 194 cap-sd-highspeed; 195 cap-sdio-irq; 196 keep-power-in-suspend; 197 max-frequency = <1000000>; 198 mmc-pwrseq = <&sdio_pwrseq>; 199 non-removable; 200 sd-uhs-sdr104; 201 status = "okay"; 202}; 203 204&sdmmc { 205 cap-sd-highspeed; 206 status = "okay"; 207}; 208 209&u2phy { 210 status = "okay"; 211 212 u2phy_host: host-port { 213 phy-supply = <&vcc5v0_otg>; 214 status = "okay"; 215 }; 216 217 u2phy_otg: otg-port { 218 phy-supply = <&vcc5v0_otg>; 219 status = "okay"; 220 }; 221}; 222 223&uart0 { 224 status = "okay"; 225}; 226 227&uart4 { 228 status = "okay"; 229 230 bluetooth { 231 compatible = "realtek,rtl8723bs-bt"; 232 device-wake-gpios = <&gpio4 RK_PB3 GPIO_ACTIVE_HIGH>; 233 host-wake-gpios = <&gpio4 RK_PB4 GPIO_ACTIVE_HIGH>; 234 }; 235}; 236 237&usb_host_ehci { 238 status = "okay"; 239}; 240 241&usb_host_ohci { 242 status = "okay"; 243}; 244 245&usb20_otg { 246 dr_mode = "peripheral"; 247 status = "okay"; 248}; 249 250&wdt { 251 status = "okay"; 252}; 253