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