1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2 /* 2 /* 3 * Copyright (c) 2020 Aditya Prayoga <aditya@ko 3 * Copyright (c) 2020 Aditya Prayoga <aditya@kobol.io> 4 */ 4 */ 5 5 6 /* 6 /* 7 * The Kobol Helios64 is a board designed to o 7 * The Kobol Helios64 is a board designed to operate as a NAS and optionally 8 * ships with an enclosing that can host five 8 * ships with an enclosing that can host five 2.5" hard disks. 9 * 9 * 10 * See https://wiki.kobol.io/helios64/intro/ f 10 * See https://wiki.kobol.io/helios64/intro/ for further details. 11 */ 11 */ 12 12 13 /dts-v1/; 13 /dts-v1/; 14 #include "rk3399.dtsi" 14 #include "rk3399.dtsi" >> 15 #include "rk3399-opp.dtsi" 15 16 16 / { 17 / { 17 model = "Kobol Helios64"; 18 model = "Kobol Helios64"; 18 compatible = "kobol,helios64", "rockch 19 compatible = "kobol,helios64", "rockchip,rk3399"; 19 20 20 aliases { 21 aliases { 21 ethernet0 = &gmac; 22 ethernet0 = &gmac; 22 mmc0 = &sdmmc; 23 mmc0 = &sdmmc; 23 mmc1 = &sdhci; 24 mmc1 = &sdhci; 24 }; 25 }; 25 26 26 avdd_0v9_s0: avdd-0v9-s0 { 27 avdd_0v9_s0: avdd-0v9-s0 { 27 compatible = "regulator-fixed" 28 compatible = "regulator-fixed"; 28 regulator-name = "avdd_0v9_s0" 29 regulator-name = "avdd_0v9_s0"; 29 regulator-always-on; 30 regulator-always-on; 30 regulator-boot-on; 31 regulator-boot-on; 31 regulator-min-microvolt = <900 32 regulator-min-microvolt = <900000>; 32 regulator-max-microvolt = <900 33 regulator-max-microvolt = <900000>; 33 vin-supply = <&vcc1v8_sys_s3>; 34 vin-supply = <&vcc1v8_sys_s3>; 34 }; 35 }; 35 36 36 avdd_1v8_s0: avdd-1v8-s0 { 37 avdd_1v8_s0: avdd-1v8-s0 { 37 compatible = "regulator-fixed" 38 compatible = "regulator-fixed"; 38 regulator-name = "avdd_1v8_s0" 39 regulator-name = "avdd_1v8_s0"; 39 regulator-always-on; 40 regulator-always-on; 40 regulator-boot-on; 41 regulator-boot-on; 41 regulator-min-microvolt = <180 42 regulator-min-microvolt = <1800000>; 42 regulator-max-microvolt = <180 43 regulator-max-microvolt = <1800000>; 43 vin-supply = <&vcc3v3_sys_s3>; 44 vin-supply = <&vcc3v3_sys_s3>; 44 }; 45 }; 45 46 46 chosen { 47 chosen { 47 stdout-path = "serial2:1500000 48 stdout-path = "serial2:1500000n8"; 48 }; 49 }; 49 50 50 clkin_gmac: external-gmac-clock { 51 clkin_gmac: external-gmac-clock { 51 compatible = "fixed-clock"; 52 compatible = "fixed-clock"; 52 clock-frequency = <125000000>; 53 clock-frequency = <125000000>; 53 clock-output-names = "clkin_gm 54 clock-output-names = "clkin_gmac"; 54 #clock-cells = <0>; 55 #clock-cells = <0>; 55 }; 56 }; 56 57 57 fan1 { 58 fan1 { 58 /* fan connected to P7 */ 59 /* fan connected to P7 */ 59 compatible = "pwm-fan"; 60 compatible = "pwm-fan"; 60 pwms = <&pwm0 0 40000 0>; 61 pwms = <&pwm0 0 40000 0>; 61 cooling-levels = <0 80 170 255 62 cooling-levels = <0 80 170 255>; 62 }; 63 }; 63 64 64 fan2 { 65 fan2 { 65 /* fan connected to P6 */ 66 /* fan connected to P6 */ 66 compatible = "pwm-fan"; 67 compatible = "pwm-fan"; 67 pwms = <&pwm1 0 40000 0>; 68 pwms = <&pwm1 0 40000 0>; 68 cooling-levels = <0 80 170 255 69 cooling-levels = <0 80 170 255>; 69 }; 70 }; 70 71 71 leds { 72 leds { 72 compatible = "gpio-leds"; 73 compatible = "gpio-leds"; 73 pinctrl-names = "default"; 74 pinctrl-names = "default"; 74 pinctrl-0 = <&sys_grn_led_on & 75 pinctrl-0 = <&sys_grn_led_on &sys_red_led_on>; 75 76 76 led-0 { 77 led-0 { 77 label = "helios64:gree 78 label = "helios64:green:status"; 78 gpios = <&gpio0 RK_PB4 79 gpios = <&gpio0 RK_PB4 GPIO_ACTIVE_HIGH>; 79 default-state = "on"; 80 default-state = "on"; 80 }; 81 }; 81 82 82 led-1 { 83 led-1 { 83 label = "helios64:red: 84 label = "helios64:red:fault"; 84 gpios = <&gpio0 RK_PB5 85 gpios = <&gpio0 RK_PB5 GPIO_ACTIVE_HIGH>; 85 default-state = "keep" 86 default-state = "keep"; 86 }; 87 }; 87 }; 88 }; 88 89 89 hdd_a_power: hdd-a-power { 90 hdd_a_power: hdd-a-power { 90 compatible = "regulator-fixed" 91 compatible = "regulator-fixed"; 91 enable-active-high; 92 enable-active-high; 92 gpio = <&gpio1 RK_PA0 GPIO_ACT 93 gpio = <&gpio1 RK_PA0 GPIO_ACTIVE_HIGH>; 93 pinctrl-0 = <&hdd_a_power_en>; 94 pinctrl-0 = <&hdd_a_power_en>; 94 pinctrl-names = "default"; 95 pinctrl-names = "default"; 95 regulator-always-on; 96 regulator-always-on; 96 regulator-boot-on; 97 regulator-boot-on; 97 regulator-name = "hdd_a_power" 98 regulator-name = "hdd_a_power"; 98 startup-delay-us = <2000000>; 99 startup-delay-us = <2000000>; 99 }; 100 }; 100 101 101 hdd_b_power: hdd-b-power { 102 hdd_b_power: hdd-b-power { 102 compatible = "regulator-fixed" 103 compatible = "regulator-fixed"; 103 enable-active-high; 104 enable-active-high; 104 gpio = <&gpio1 RK_PA1 GPIO_ACT 105 gpio = <&gpio1 RK_PA1 GPIO_ACTIVE_HIGH>; 105 pinctrl-0 = <&hdd_b_power_en>; 106 pinctrl-0 = <&hdd_b_power_en>; 106 pinctrl-names = "default"; 107 pinctrl-names = "default"; 107 regulator-always-on; 108 regulator-always-on; 108 regulator-boot-on; 109 regulator-boot-on; 109 regulator-name = "hdd_b_power" 110 regulator-name = "hdd_b_power"; 110 startup-delay-us = <2000000>; 111 startup-delay-us = <2000000>; 111 }; 112 }; 112 113 113 pcie_power: pcie-power { 114 pcie_power: pcie-power { 114 compatible = "regulator-fixed" 115 compatible = "regulator-fixed"; 115 enable-active-high; 116 enable-active-high; 116 gpio = <&gpio1 RK_PD0 GPIO_ACT 117 gpio = <&gpio1 RK_PD0 GPIO_ACTIVE_HIGH>; 117 pinctrl-0 = <&pcie_pwr>; 118 pinctrl-0 = <&pcie_pwr>; 118 pinctrl-names = "default"; 119 pinctrl-names = "default"; 119 regulator-boot-on; 120 regulator-boot-on; 120 regulator-name = "pcie_power"; 121 regulator-name = "pcie_power"; 121 startup-delay-us = <10000>; 122 startup-delay-us = <10000>; 122 vin-supply = <&vcc5v0_perdev>; 123 vin-supply = <&vcc5v0_perdev>; 123 }; 124 }; 124 125 125 usblan_power: usblan-power { 126 usblan_power: usblan-power { 126 compatible = "regulator-fixed" 127 compatible = "regulator-fixed"; 127 enable-active-high; 128 enable-active-high; 128 gpio = <&gpio1 RK_PC7 GPIO_ACT 129 gpio = <&gpio1 RK_PC7 GPIO_ACTIVE_HIGH>; 129 pinctrl-names = "default"; 130 pinctrl-names = "default"; 130 pinctrl-0 = <&usb_lan_en>; 131 pinctrl-0 = <&usb_lan_en>; 131 regulator-name = "usblan_power 132 regulator-name = "usblan_power"; 132 regulator-always-on; 133 regulator-always-on; 133 regulator-boot-on; 134 regulator-boot-on; 134 vin-supply = <&vcc5v0_usb>; 135 vin-supply = <&vcc5v0_usb>; 135 }; 136 }; 136 137 137 vcc1v8_sys_s0: vcc1v8-sys-s0 { 138 vcc1v8_sys_s0: vcc1v8-sys-s0 { 138 compatible = "regulator-fixed" 139 compatible = "regulator-fixed"; 139 regulator-name = "vcc1v8_sys_s 140 regulator-name = "vcc1v8_sys_s0"; 140 regulator-always-on; 141 regulator-always-on; 141 regulator-boot-on; 142 regulator-boot-on; 142 regulator-min-microvolt = <180 143 regulator-min-microvolt = <1800000>; 143 regulator-max-microvolt = <180 144 regulator-max-microvolt = <1800000>; 144 vin-supply = <&vcc1v8_sys_s3>; 145 vin-supply = <&vcc1v8_sys_s3>; 145 }; 146 }; 146 147 147 vcc3v0_sd: vcc3v0-sd { 148 vcc3v0_sd: vcc3v0-sd { 148 compatible = "regulator-fixed" 149 compatible = "regulator-fixed"; 149 enable-active-high; 150 enable-active-high; 150 gpio = <&gpio0 RK_PA1 GPIO_ACT 151 gpio = <&gpio0 RK_PA1 GPIO_ACTIVE_HIGH>; 151 regulator-name = "vcc3v0_sd"; 152 regulator-name = "vcc3v0_sd"; 152 regulator-boot-on; 153 regulator-boot-on; 153 regulator-min-microvolt = <300 154 regulator-min-microvolt = <3000000>; 154 regulator-max-microvolt = <300 155 regulator-max-microvolt = <3000000>; 155 pinctrl-names = "default"; 156 pinctrl-names = "default"; 156 pinctrl-0 = <&sdmmc0_pwr_h>; 157 pinctrl-0 = <&sdmmc0_pwr_h>; 157 vin-supply = <&vcc3v3_sys_s3>; 158 vin-supply = <&vcc3v3_sys_s3>; 158 }; 159 }; 159 160 160 vcc3v3_sys_s3: vcc_lan: vcc3v3-sys-s3 161 vcc3v3_sys_s3: vcc_lan: vcc3v3-sys-s3 { 161 compatible = "regulator-fixed" 162 compatible = "regulator-fixed"; 162 regulator-name = "vcc3v3_sys_s 163 regulator-name = "vcc3v3_sys_s3"; 163 regulator-always-on; 164 regulator-always-on; 164 regulator-boot-on; 165 regulator-boot-on; 165 regulator-min-microvolt = <330 166 regulator-min-microvolt = <3300000>; 166 regulator-max-microvolt = <330 167 regulator-max-microvolt = <3300000>; 167 vin-supply = <&vcc5v0_sys>; 168 vin-supply = <&vcc5v0_sys>; 168 169 169 regulator-state-mem { 170 regulator-state-mem { 170 regulator-on-in-suspen 171 regulator-on-in-suspend; 171 }; 172 }; 172 }; 173 }; 173 174 174 vcc5v0_perdev: vcc5v0-perdev { 175 vcc5v0_perdev: vcc5v0-perdev { 175 compatible = "regulator-fixed" 176 compatible = "regulator-fixed"; 176 regulator-name = "vcc5v0_perde 177 regulator-name = "vcc5v0_perdev"; 177 regulator-always-on; 178 regulator-always-on; 178 regulator-boot-on; 179 regulator-boot-on; 179 regulator-min-microvolt = <500 180 regulator-min-microvolt = <5000000>; 180 regulator-max-microvolt = <500 181 regulator-max-microvolt = <5000000>; 181 vin-supply = <&vcc12v_dcin_bku 182 vin-supply = <&vcc12v_dcin_bkup>; 182 }; 183 }; 183 184 184 vcc5v0_sys: vcc5v0-sys { 185 vcc5v0_sys: vcc5v0-sys { 185 compatible = "regulator-fixed" 186 compatible = "regulator-fixed"; 186 regulator-name = "vcc5v0_sys"; 187 regulator-name = "vcc5v0_sys"; 187 regulator-always-on; 188 regulator-always-on; 188 regulator-boot-on; 189 regulator-boot-on; 189 regulator-min-microvolt = <500 190 regulator-min-microvolt = <5000000>; 190 regulator-max-microvolt = <500 191 regulator-max-microvolt = <5000000>; 191 vin-supply = <&vcc12v_dcin_bku 192 vin-supply = <&vcc12v_dcin_bkup>; 192 193 193 regulator-state-mem { 194 regulator-state-mem { 194 regulator-on-in-suspen 195 regulator-on-in-suspend; 195 }; 196 }; 196 }; 197 }; 197 198 198 vcc5v0_usb: vcc5v0-usb { 199 vcc5v0_usb: vcc5v0-usb { 199 compatible = "regulator-fixed" 200 compatible = "regulator-fixed"; 200 enable-active-high; 201 enable-active-high; 201 gpio = <&gpio1 RK_PC6 GPIO_ACT 202 gpio = <&gpio1 RK_PC6 GPIO_ACTIVE_HIGH>; 202 pinctrl-names = "default"; 203 pinctrl-names = "default"; 203 pinctrl-0 = <&vcc5v0_usb_en>; 204 pinctrl-0 = <&vcc5v0_usb_en>; 204 regulator-name = "vcc5v0_usb"; 205 regulator-name = "vcc5v0_usb"; 205 regulator-always-on; 206 regulator-always-on; 206 regulator-boot-on; 207 regulator-boot-on; 207 regulator-min-microvolt = <500 208 regulator-min-microvolt = <5000000>; 208 regulator-max-microvolt = <500 209 regulator-max-microvolt = <5000000>; 209 vin-supply = <&vcc5v0_perdev>; 210 vin-supply = <&vcc5v0_perdev>; 210 }; 211 }; 211 212 212 vcc12v_dcin: vcc12v-dcin { 213 vcc12v_dcin: vcc12v-dcin { 213 compatible = "regulator-fixed" 214 compatible = "regulator-fixed"; 214 regulator-name = "vcc12v_dcin" 215 regulator-name = "vcc12v_dcin"; 215 regulator-always-on; 216 regulator-always-on; 216 regulator-boot-on; 217 regulator-boot-on; 217 regulator-min-microvolt = <120 218 regulator-min-microvolt = <12000000>; 218 regulator-max-microvolt = <120 219 regulator-max-microvolt = <12000000>; 219 }; 220 }; 220 221 221 vcc12v_dcin_bkup: vcc12v-dcin-bkup { 222 vcc12v_dcin_bkup: vcc12v-dcin-bkup { 222 compatible = "regulator-fixed" 223 compatible = "regulator-fixed"; 223 regulator-name = "vcc12v_dcin_ 224 regulator-name = "vcc12v_dcin_bkup"; 224 regulator-always-on; 225 regulator-always-on; 225 regulator-boot-on; 226 regulator-boot-on; 226 regulator-min-microvolt = <120 227 regulator-min-microvolt = <12000000>; 227 regulator-max-microvolt = <120 228 regulator-max-microvolt = <12000000>; 228 vin-supply = <&vcc12v_dcin>; 229 vin-supply = <&vcc12v_dcin>; 229 }; 230 }; 230 }; 231 }; 231 232 232 /* 233 /* 233 * The system doesn't run stable with cpu freq 234 * The system doesn't run stable with cpu freq enabled, so disallow the lower 234 * frequencies until this problem is properly 235 * frequencies until this problem is properly understood and resolved. 235 */ 236 */ 236 &cluster0_opp { 237 &cluster0_opp { 237 /delete-node/ opp00; 238 /delete-node/ opp00; 238 /delete-node/ opp01; 239 /delete-node/ opp01; 239 /delete-node/ opp02; 240 /delete-node/ opp02; 240 /delete-node/ opp03; 241 /delete-node/ opp03; 241 /delete-node/ opp04; 242 /delete-node/ opp04; 242 }; 243 }; 243 244 244 &cluster1_opp { 245 &cluster1_opp { 245 /delete-node/ opp00; 246 /delete-node/ opp00; 246 /delete-node/ opp01; 247 /delete-node/ opp01; 247 /delete-node/ opp02; 248 /delete-node/ opp02; 248 /delete-node/ opp03; 249 /delete-node/ opp03; 249 /delete-node/ opp04; 250 /delete-node/ opp04; 250 /delete-node/ opp05; 251 /delete-node/ opp05; 251 /delete-node/ opp06; 252 /delete-node/ opp06; 252 }; 253 }; 253 254 254 &cpu_b0 { 255 &cpu_b0 { 255 cpu-supply = <&vdd_cpu_b>; 256 cpu-supply = <&vdd_cpu_b>; 256 }; 257 }; 257 258 258 &cpu_b1 { 259 &cpu_b1 { 259 cpu-supply = <&vdd_cpu_b>; 260 cpu-supply = <&vdd_cpu_b>; 260 }; 261 }; 261 262 262 &cpu_l0 { 263 &cpu_l0 { 263 cpu-supply = <&vdd_cpu_l>; 264 cpu-supply = <&vdd_cpu_l>; 264 }; 265 }; 265 266 266 &cpu_l1 { 267 &cpu_l1 { 267 cpu-supply = <&vdd_cpu_l>; 268 cpu-supply = <&vdd_cpu_l>; 268 }; 269 }; 269 270 270 &cpu_l2 { 271 &cpu_l2 { 271 cpu-supply = <&vdd_cpu_l>; 272 cpu-supply = <&vdd_cpu_l>; 272 }; 273 }; 273 274 274 &cpu_l3 { 275 &cpu_l3 { 275 cpu-supply = <&vdd_cpu_l>; 276 cpu-supply = <&vdd_cpu_l>; 276 }; 277 }; 277 278 278 &emmc_phy { 279 &emmc_phy { 279 status = "okay"; 280 status = "okay"; 280 }; 281 }; 281 282 282 &gmac { 283 &gmac { 283 assigned-clock-parents = <&clkin_gmac> 284 assigned-clock-parents = <&clkin_gmac>; 284 assigned-clocks = <&cru SCLK_RMII_SRC> 285 assigned-clocks = <&cru SCLK_RMII_SRC>; 285 clock_in_out = "input"; 286 clock_in_out = "input"; 286 phy-mode = "rgmii"; 287 phy-mode = "rgmii"; 287 phy-supply = <&vcc_lan>; 288 phy-supply = <&vcc_lan>; 288 pinctrl-names = "default"; 289 pinctrl-names = "default"; 289 pinctrl-0 = <&rgmii_pins &gphy_reset>; 290 pinctrl-0 = <&rgmii_pins &gphy_reset>; 290 rx_delay = <0x20>; 291 rx_delay = <0x20>; 291 tx_delay = <0x28>; 292 tx_delay = <0x28>; 292 snps,reset-active-low; 293 snps,reset-active-low; 293 snps,reset-delays-us = <0 10000 50000> 294 snps,reset-delays-us = <0 10000 50000>; 294 snps,reset-gpio = <&gpio3 RK_PB7 GPIO_ 295 snps,reset-gpio = <&gpio3 RK_PB7 GPIO_ACTIVE_LOW>; 295 status = "okay"; 296 status = "okay"; 296 }; 297 }; 297 298 298 &i2c0 { 299 &i2c0 { 299 clock-frequency = <400000>; 300 clock-frequency = <400000>; 300 i2c-scl-rising-time-ns = <168>; 301 i2c-scl-rising-time-ns = <168>; 301 i2c-scl-falling-time-ns = <4>; 302 i2c-scl-falling-time-ns = <4>; 302 status = "okay"; 303 status = "okay"; 303 304 304 rk808: pmic@1b { 305 rk808: pmic@1b { 305 compatible = "rockchip,rk808"; 306 compatible = "rockchip,rk808"; 306 reg = <0x1b>; 307 reg = <0x1b>; 307 interrupt-parent = <&gpio0>; 308 interrupt-parent = <&gpio0>; 308 interrupts = <10 IRQ_TYPE_LEVE 309 interrupts = <10 IRQ_TYPE_LEVEL_LOW>; 309 clock-output-names = "xin32k", 310 clock-output-names = "xin32k", "rk808-clkout2"; 310 pinctrl-names = "default"; 311 pinctrl-names = "default"; 311 pinctrl-0 = <&pmic_int_l>; 312 pinctrl-0 = <&pmic_int_l>; 312 rockchip,system-power-controll 313 rockchip,system-power-controller; 313 vcc1-supply = <&vcc5v0_sys>; 314 vcc1-supply = <&vcc5v0_sys>; 314 vcc2-supply = <&vcc5v0_sys>; 315 vcc2-supply = <&vcc5v0_sys>; 315 vcc3-supply = <&vcc5v0_sys>; 316 vcc3-supply = <&vcc5v0_sys>; 316 vcc4-supply = <&vcc5v0_sys>; 317 vcc4-supply = <&vcc5v0_sys>; 317 vcc6-supply = <&vcc5v0_sys>; 318 vcc6-supply = <&vcc5v0_sys>; 318 vcc7-supply = <&vcc5v0_sys>; 319 vcc7-supply = <&vcc5v0_sys>; 319 vcc8-supply = <&vcc3v3_sys_s3> 320 vcc8-supply = <&vcc3v3_sys_s3>; 320 vcc9-supply = <&vcc5v0_sys>; 321 vcc9-supply = <&vcc5v0_sys>; 321 vcc10-supply = <&vcc5v0_sys>; 322 vcc10-supply = <&vcc5v0_sys>; 322 vcc11-supply = <&vcc5v0_sys>; 323 vcc11-supply = <&vcc5v0_sys>; 323 vcc12-supply = <&vcc3v3_sys_s3 324 vcc12-supply = <&vcc3v3_sys_s3>; 324 vddio-supply = <&vcc3v0_s3>; 325 vddio-supply = <&vcc3v0_s3>; 325 wakeup-source; 326 wakeup-source; 326 #clock-cells = <1>; 327 #clock-cells = <1>; 327 328 328 regulators { 329 regulators { 329 vdd_cpu_l: DCDC_REG2 { 330 vdd_cpu_l: DCDC_REG2 { 330 regulator-name 331 regulator-name = "vdd_cpu_l"; 331 regulator-alwa 332 regulator-always-on; 332 regulator-boot 333 regulator-boot-on; 333 regulator-min- 334 regulator-min-microvolt = <750000>; 334 regulator-max- 335 regulator-max-microvolt = <1350000>; 335 regulator-ramp 336 regulator-ramp-delay = <6001>; 336 337 337 regulator-stat 338 regulator-state-mem { 338 regula 339 regulator-off-in-suspend; 339 }; 340 }; 340 }; 341 }; 341 342 342 vcc1v8_sys_s3: DCDC_RE 343 vcc1v8_sys_s3: DCDC_REG4 { 343 regulator-name 344 regulator-name = "vcc1v8_sys_s3"; 344 regulator-alwa 345 regulator-always-on; 345 regulator-boot 346 regulator-boot-on; 346 regulator-min- 347 regulator-min-microvolt = <1800000>; 347 regulator-max- 348 regulator-max-microvolt = <1800000>; 348 349 349 regulator-stat 350 regulator-state-mem { 350 regula 351 regulator-on-in-suspend; 351 regula 352 regulator-suspend-microvolt = <1800000>; 352 }; 353 }; 353 }; 354 }; 354 355 355 vcc_sdio_s0: LDO_REG4 356 vcc_sdio_s0: LDO_REG4 { 356 regulator-name 357 regulator-name = "vcc_sdio_s0"; 357 regulator-alwa 358 regulator-always-on; 358 regulator-boot 359 regulator-boot-on; 359 regulator-min- 360 regulator-min-microvolt = <1800000>; 360 regulator-max- 361 regulator-max-microvolt = <3000000>; 361 362 362 regulator-stat 363 regulator-state-mem { 363 regula 364 regulator-on-in-suspend; 364 regula 365 regulator-suspend-microvolt = <3000000>; 365 }; 366 }; 366 }; 367 }; 367 368 368 vcc3v0_s3: LDO_REG8 { 369 vcc3v0_s3: LDO_REG8 { 369 regulator-name 370 regulator-name = "vcc3v0_s3"; 370 regulator-alwa 371 regulator-always-on; 371 regulator-boot 372 regulator-boot-on; 372 regulator-min- 373 regulator-min-microvolt = <3000000>; 373 regulator-max- 374 regulator-max-microvolt = <3000000>; 374 375 375 regulator-stat 376 regulator-state-mem { 376 regula 377 regulator-on-in-suspend; 377 regula 378 regulator-suspend-microvolt = <3000000>; 378 }; 379 }; 379 }; 380 }; 380 }; 381 }; 381 }; 382 }; 382 383 383 vdd_cpu_b: regulator@40 { 384 vdd_cpu_b: regulator@40 { 384 compatible = "silergy,syr827"; 385 compatible = "silergy,syr827"; 385 reg = <0x40>; 386 reg = <0x40>; 386 fcs,suspend-voltage-selector = 387 fcs,suspend-voltage-selector = <1>; 387 regulator-name = "vdd_cpu_b"; 388 regulator-name = "vdd_cpu_b"; 388 regulator-always-on; 389 regulator-always-on; 389 regulator-boot-on; 390 regulator-boot-on; 390 regulator-min-microvolt = <712 391 regulator-min-microvolt = <712500>; 391 regulator-max-microvolt = <150 392 regulator-max-microvolt = <1500000>; 392 regulator-ramp-delay = <1000>; 393 regulator-ramp-delay = <1000>; 393 vin-supply = <&vcc5v0_sys>; 394 vin-supply = <&vcc5v0_sys>; 394 395 395 regulator-state-mem { 396 regulator-state-mem { 396 regulator-off-in-suspe 397 regulator-off-in-suspend; 397 }; 398 }; 398 }; 399 }; 399 }; 400 }; 400 401 401 &i2c2 { 402 &i2c2 { 402 clock-frequency = <400000>; 403 clock-frequency = <400000>; 403 i2c-scl-rising-time-ns = <160>; 404 i2c-scl-rising-time-ns = <160>; 404 i2c-scl-falling-time-ns = <30>; 405 i2c-scl-falling-time-ns = <30>; 405 status = "okay"; 406 status = "okay"; 406 407 407 temp@4c { 408 temp@4c { 408 compatible = "national,lm75"; 409 compatible = "national,lm75"; 409 reg = <0x4c>; 410 reg = <0x4c>; 410 }; 411 }; 411 }; 412 }; 412 413 413 &io_domains { 414 &io_domains { 414 audio-supply = <&vcc1v8_sys_s0>; 415 audio-supply = <&vcc1v8_sys_s0>; 415 bt656-supply = <&vcc1v8_sys_s0>; 416 bt656-supply = <&vcc1v8_sys_s0>; 416 gpio1830-supply = <&vcc3v0_s3>; 417 gpio1830-supply = <&vcc3v0_s3>; 417 sdmmc-supply = <&vcc_sdio_s0>; 418 sdmmc-supply = <&vcc_sdio_s0>; 418 status = "okay"; 419 status = "okay"; 419 }; 420 }; 420 421 421 &pcie_phy { 422 &pcie_phy { 422 status = "okay"; 423 status = "okay"; 423 }; 424 }; 424 425 425 &pcie0 { 426 &pcie0 { 426 ep-gpios = <&gpio2 RK_PD4 GPIO_ACTIVE_ 427 ep-gpios = <&gpio2 RK_PD4 GPIO_ACTIVE_HIGH>; 427 max-link-speed = <2>; 428 max-link-speed = <2>; 428 num-lanes = <2>; 429 num-lanes = <2>; 429 pinctrl-names = "default"; 430 pinctrl-names = "default"; 430 status = "okay"; 431 status = "okay"; 431 432 432 vpcie12v-supply = <&vcc12v_dcin>; 433 vpcie12v-supply = <&vcc12v_dcin>; 433 vpcie3v3-supply = <&pcie_power>; 434 vpcie3v3-supply = <&pcie_power>; 434 vpcie1v8-supply = <&avdd_1v8_s0>; 435 vpcie1v8-supply = <&avdd_1v8_s0>; 435 vpcie0v9-supply = <&avdd_0v9_s0>; 436 vpcie0v9-supply = <&avdd_0v9_s0>; 436 }; 437 }; 437 438 438 &pinctrl { 439 &pinctrl { 439 gmac { 440 gmac { 440 gphy_reset: gphy-reset { 441 gphy_reset: gphy-reset { 441 rockchip,pins = <3 RK_ 442 rockchip,pins = <3 RK_PB7 RK_FUNC_GPIO &pcfg_output_low>; 442 }; 443 }; 443 }; 444 }; 444 445 445 leds { 446 leds { 446 sys_grn_led_on: sys-grn-led-on 447 sys_grn_led_on: sys-grn-led-on { 447 rockchip,pins = <0 RK_ 448 rockchip,pins = <0 RK_PB4 RK_FUNC_GPIO &pcfg_pull_down>; 448 }; 449 }; 449 450 450 sys_red_led_on: sys-red-led-on 451 sys_red_led_on: sys-red-led-on { 451 rockchip,pins = <0 RK_ 452 rockchip,pins = <0 RK_PB5 RK_FUNC_GPIO &pcfg_pull_down>; 452 }; 453 }; 453 }; 454 }; 454 455 455 pcie { 456 pcie { 456 pcie_pwr: pcie-pwr { 457 pcie_pwr: pcie-pwr { 457 rockchip,pins = 458 rockchip,pins = 458 <1 RK_PD0 RK_F 459 <1 RK_PD0 RK_FUNC_GPIO &pcfg_pull_none>; 459 }; 460 }; 460 }; 461 }; 461 462 462 pmic { 463 pmic { 463 pmic_int_l: pmic-int-l { 464 pmic_int_l: pmic-int-l { 464 rockchip,pins = <0 RK_ 465 rockchip,pins = <0 RK_PB2 RK_FUNC_GPIO &pcfg_pull_none>; 465 }; 466 }; 466 }; 467 }; 467 468 468 power { 469 power { 469 hdd_a_power_en: hdd-a-power-en 470 hdd_a_power_en: hdd-a-power-en { 470 rockchip,pins = <1 RK_ 471 rockchip,pins = <1 RK_PA0 RK_FUNC_GPIO &pcfg_pull_none>; 471 }; 472 }; 472 473 473 hdd_b_power_en: hdd-b-power-en 474 hdd_b_power_en: hdd-b-power-en { 474 rockchip,pins = <1 RK_ 475 rockchip,pins = <1 RK_PA1 RK_FUNC_GPIO &pcfg_pull_none>; 475 }; 476 }; 476 477 477 vcc5v0_usb_en: vcc5v0-usb-en { 478 vcc5v0_usb_en: vcc5v0-usb-en { 478 rockchip,pins = <1 RK_ 479 rockchip,pins = <1 RK_PC6 RK_FUNC_GPIO &pcfg_pull_none>; 479 }; 480 }; 480 481 481 usb_lan_en: usb-lan-en { 482 usb_lan_en: usb-lan-en { 482 rockchip,pins = <1 RK_ 483 rockchip,pins = <1 RK_PC7 RK_FUNC_GPIO &pcfg_pull_none>; 483 }; 484 }; 484 }; 485 }; 485 486 486 vcc3v0-sd { 487 vcc3v0-sd { 487 sdmmc0_pwr_h: sdmmc0-pwr-h { 488 sdmmc0_pwr_h: sdmmc0-pwr-h { 488 rockchip,pins = <0 RK_ 489 rockchip,pins = <0 RK_PA1 RK_FUNC_GPIO &pcfg_pull_up>; 489 }; 490 }; 490 }; 491 }; 491 }; 492 }; 492 493 493 &pmu_io_domains { 494 &pmu_io_domains { 494 pmu1830-supply = <&vcc3v0_s3>; 495 pmu1830-supply = <&vcc3v0_s3>; 495 status = "okay"; 496 status = "okay"; 496 }; 497 }; 497 498 498 &pwm0 { 499 &pwm0 { 499 /* pwm-fan on P7 */ 500 /* pwm-fan on P7 */ 500 status = "okay"; 501 status = "okay"; 501 }; 502 }; 502 503 503 &pwm1 { 504 &pwm1 { 504 /* pwm-fan on P6 */ 505 /* pwm-fan on P6 */ 505 status = "okay"; 506 status = "okay"; 506 }; 507 }; 507 508 508 &sdhci { 509 &sdhci { 509 bus-width = <8>; 510 bus-width = <8>; 510 mmc-hs200-1_8v; 511 mmc-hs200-1_8v; 511 non-removable; 512 non-removable; 512 vqmmc-supply = <&vcc1v8_sys_s0>; 513 vqmmc-supply = <&vcc1v8_sys_s0>; 513 status = "okay"; 514 status = "okay"; 514 }; 515 }; 515 516 516 &sdmmc { 517 &sdmmc { 517 bus-width = <4>; 518 bus-width = <4>; 518 cap-sd-highspeed; 519 cap-sd-highspeed; 519 cd-gpios = <&gpio0 RK_PA7 GPIO_ACTIVE_ 520 cd-gpios = <&gpio0 RK_PA7 GPIO_ACTIVE_LOW>; 520 disable-wp; 521 disable-wp; 521 pinctrl-names = "default"; 522 pinctrl-names = "default"; 522 pinctrl-0 = <&sdmmc_clk &sdmmc_cmd &sd 523 pinctrl-0 = <&sdmmc_clk &sdmmc_cmd &sdmmc_cd &sdmmc_bus4>; 523 vmmc-supply = <&vcc3v0_sd>; 524 vmmc-supply = <&vcc3v0_sd>; 524 vqmmc-supply = <&vcc_sdio_s0>; 525 vqmmc-supply = <&vcc_sdio_s0>; 525 status = "okay"; 526 status = "okay"; 526 }; 527 }; 527 528 528 &spi1 { 529 &spi1 { 529 status = "okay"; 530 status = "okay"; 530 531 531 spiflash: flash@0 { 532 spiflash: flash@0 { 532 compatible = "jedec,spi-nor"; 533 compatible = "jedec,spi-nor"; 533 reg = <0x0>; 534 reg = <0x0>; 534 spi-max-frequency = <25000000> 535 spi-max-frequency = <25000000>; 535 status = "okay"; 536 status = "okay"; 536 m25p,fast-read; 537 m25p,fast-read; 537 }; 538 }; 538 }; 539 }; 539 540 540 /* UEXT connector */ 541 /* UEXT connector */ 541 &spi2 { 542 &spi2 { 542 status = "okay"; 543 status = "okay"; 543 }; 544 }; 544 545 545 &spi5 { 546 &spi5 { 546 status = "okay"; 547 status = "okay"; 547 }; 548 }; 548 549 549 &tcphy1 { 550 &tcphy1 { 550 /* phy for &usbdrd_dwc3_1 */ 551 /* phy for &usbdrd_dwc3_1 */ 551 status = "okay"; 552 status = "okay"; 552 }; 553 }; 553 554 554 &tsadc { 555 &tsadc { 555 /* tshut mode 0:CRU 1:GPIO */ 556 /* tshut mode 0:CRU 1:GPIO */ 556 rockchip,hw-tshut-mode = <1>; 557 rockchip,hw-tshut-mode = <1>; 557 /* tshut polarity 0:LOW 1:HIGH */ 558 /* tshut polarity 0:LOW 1:HIGH */ 558 rockchip,hw-tshut-polarity = <1>; 559 rockchip,hw-tshut-polarity = <1>; 559 status = "okay"; 560 status = "okay"; 560 }; 561 }; 561 562 562 &u2phy1 { 563 &u2phy1 { 563 status = "okay"; 564 status = "okay"; 564 565 565 otg-port { 566 otg-port { 566 /* phy for &usbdrd_dwc3_1 */ 567 /* phy for &usbdrd_dwc3_1 */ 567 phy-supply = <&vcc5v0_usb>; 568 phy-supply = <&vcc5v0_usb>; 568 status = "okay"; 569 status = "okay"; 569 }; 570 }; 570 }; 571 }; 571 572 572 &uart2 { 573 &uart2 { 573 status = "okay"; 574 status = "okay"; 574 }; 575 }; 575 576 576 &usbdrd3_1 { 577 &usbdrd3_1 { 577 status = "okay"; 578 status = "okay"; 578 579 579 usb@fe900000 { 580 usb@fe900000 { 580 dr_mode = "host"; 581 dr_mode = "host"; 581 status = "okay"; 582 status = "okay"; 582 #address-cells = <1>; 583 #address-cells = <1>; 583 #size-cells = <0>; 584 #size-cells = <0>; 584 585 585 hub@1 { 586 hub@1 { 586 compatible = "usb2109, 587 compatible = "usb2109,0815"; 587 reg = <1>; 588 reg = <1>; 588 #address-cells = <1>; 589 #address-cells = <1>; 589 #size-cells = <0>; 590 #size-cells = <0>; 590 591 591 port@1 { 592 port@1 { 592 reg = <1>; 593 reg = <1>; 593 #trigger-sourc 594 #trigger-source-cells = <0>; 594 }; 595 }; 595 596 596 port@2 { 597 port@2 { 597 reg = <2>; 598 reg = <2>; 598 #trigger-sourc 599 #trigger-source-cells = <0>; 599 }; 600 }; 600 601 601 port@3 { 602 port@3 { 602 reg = <3>; 603 reg = <3>; 603 #trigger-sourc 604 #trigger-source-cells = <0>; 604 }; 605 }; 605 606 606 device@4 { 607 device@4 { 607 compatible = " 608 compatible = "usbbda,8156"; 608 reg = <4>; 609 reg = <4>; 609 #address-cells 610 #address-cells = <2>; 610 #size-cells = 611 #size-cells = <0>; 611 612 612 interface@0 { 613 interface@0 { /* interface 0 of configuration 1 */ 613 compat 614 compatible = "usbifbda,8156.config1.0"; 614 reg = 615 reg = <0 1>; 615 }; 616 }; 616 }; 617 }; 617 }; 618 }; 618 }; 619 }; 619 }; 620 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.