1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2 2 3 /dts-v1/; 3 /dts-v1/; 4 #include <dt-bindings/gpio/gpio.h> 4 #include <dt-bindings/gpio/gpio.h> 5 #include <dt-bindings/leds/common.h> 5 #include <dt-bindings/leds/common.h> 6 #include <dt-bindings/pinctrl/rockchip.h> 6 #include <dt-bindings/pinctrl/rockchip.h> 7 #include <dt-bindings/soc/rockchip,vop2.h> << 8 #include "rk3568.dtsi" 7 #include "rk3568.dtsi" 9 8 10 / { 9 / { 11 model = "Radxa ROCK 3A"; !! 10 model = "Radxa ROCK3 Model A"; 12 compatible = "radxa,rock3a", "rockchip 11 compatible = "radxa,rock3a", "rockchip,rk3568"; 13 12 14 aliases { 13 aliases { 15 ethernet0 = &gmac1; 14 ethernet0 = &gmac1; 16 mmc0 = &sdhci; !! 15 mmc0 = &sdmmc0; 17 mmc1 = &sdmmc0; !! 16 mmc1 = &sdhci; 18 mmc2 = &sdmmc2; << 19 }; 17 }; 20 18 21 chosen: chosen { 19 chosen: chosen { 22 stdout-path = "serial2:1500000 20 stdout-path = "serial2:1500000n8"; 23 }; 21 }; 24 22 25 hdmi-con { << 26 compatible = "hdmi-connector"; << 27 type = "a"; << 28 << 29 port { << 30 hdmi_con_in: endpoint << 31 remote-endpoin << 32 }; << 33 }; << 34 }; << 35 << 36 gmac1_clkin: external-gmac1-clock { << 37 compatible = "fixed-clock"; << 38 clock-frequency = <125000000>; << 39 clock-output-names = "gmac1_cl << 40 #clock-cells = <0>; << 41 }; << 42 << 43 leds { 23 leds { 44 compatible = "gpio-leds"; 24 compatible = "gpio-leds"; 45 25 46 led_user: led-0 { 26 led_user: led-0 { 47 gpios = <&gpio0 RK_PB7 27 gpios = <&gpio0 RK_PB7 GPIO_ACTIVE_HIGH>; 48 function = LED_FUNCTIO 28 function = LED_FUNCTION_HEARTBEAT; 49 color = <LED_COLOR_ID_ 29 color = <LED_COLOR_ID_BLUE>; 50 linux,default-trigger 30 linux,default-trigger = "heartbeat"; 51 pinctrl-names = "defau 31 pinctrl-names = "default"; 52 pinctrl-0 = <&led_user 32 pinctrl-0 = <&led_user_en>; 53 }; 33 }; 54 }; 34 }; 55 35 56 rk809-sound { 36 rk809-sound { 57 compatible = "simple-audio-car 37 compatible = "simple-audio-card"; 58 simple-audio-card,format = "i2 38 simple-audio-card,format = "i2s"; 59 simple-audio-card,name = "Anal 39 simple-audio-card,name = "Analog RK809"; 60 simple-audio-card,mclk-fs = <2 40 simple-audio-card,mclk-fs = <256>; 61 41 62 simple-audio-card,cpu { 42 simple-audio-card,cpu { 63 sound-dai = <&i2s1_8ch 43 sound-dai = <&i2s1_8ch>; 64 }; 44 }; 65 45 66 simple-audio-card,codec { 46 simple-audio-card,codec { 67 sound-dai = <&rk809>; 47 sound-dai = <&rk809>; 68 }; 48 }; 69 }; 49 }; 70 50 71 sdio_pwrseq: sdio-pwrseq { !! 51 vcc12v_dcin: vcc12v-dcin { 72 compatible = "mmc-pwrseq-simpl << 73 clocks = <&rk809 1>; << 74 clock-names = "ext_clock"; << 75 pinctrl-names = "default"; << 76 pinctrl-0 = <&wifi_enable>; << 77 post-power-on-delay-ms = <100> << 78 power-off-delay-us = <5000000> << 79 reset-gpios = <&gpio3 RK_PD4 G << 80 }; << 81 << 82 vcc12v_dcin: vcc12v-dcin-regulator { << 83 compatible = "regulator-fixed" 52 compatible = "regulator-fixed"; 84 regulator-name = "vcc12v_dcin" 53 regulator-name = "vcc12v_dcin"; 85 regulator-always-on; 54 regulator-always-on; 86 regulator-boot-on; 55 regulator-boot-on; 87 }; 56 }; 88 57 89 pcie30_avdd0v9: pcie30-avdd0v9-regulat !! 58 vcc3v3_sys: vcc3v3-sys { 90 compatible = "regulator-fixed" << 91 regulator-name = "pcie30_avdd0 << 92 regulator-always-on; << 93 regulator-boot-on; << 94 regulator-min-microvolt = <900 << 95 regulator-max-microvolt = <900 << 96 vin-supply = <&vcc3v3_sys>; << 97 }; << 98 << 99 pcie30_avdd1v8: pcie30-avdd1v8-regulat << 100 compatible = "regulator-fixed" << 101 regulator-name = "pcie30_avdd1 << 102 regulator-always-on; << 103 regulator-boot-on; << 104 regulator-min-microvolt = <180 << 105 regulator-max-microvolt = <180 << 106 vin-supply = <&vcc3v3_sys>; << 107 }; << 108 << 109 /* pi6c pcie clock generator */ << 110 vcc3v3_pi6c_03: vcc3v3-pi6c-03-regulat << 111 compatible = "regulator-fixed" << 112 regulator-name = "vcc3v3_pi6c_ << 113 regulator-always-on; << 114 regulator-boot-on; << 115 regulator-min-microvolt = <330 << 116 regulator-max-microvolt = <330 << 117 vin-supply = <&vcc5v0_sys>; << 118 }; << 119 << 120 vcc3v3_pcie: vcc3v3-pcie-regulator { << 121 compatible = "regulator-fixed" << 122 enable-active-high; << 123 gpios = <&gpio0 RK_PD4 GPIO_AC << 124 pinctrl-names = "default"; << 125 pinctrl-0 = <&pcie_enable_h>; << 126 regulator-name = "vcc3v3_pcie" << 127 regulator-min-microvolt = <330 << 128 regulator-max-microvolt = <330 << 129 vin-supply = <&vcc5v0_sys>; << 130 }; << 131 << 132 vcc3v3_sys: vcc3v3-sys-regulator { << 133 compatible = "regulator-fixed" 59 compatible = "regulator-fixed"; 134 regulator-name = "vcc3v3_sys"; 60 regulator-name = "vcc3v3_sys"; 135 regulator-always-on; 61 regulator-always-on; 136 regulator-boot-on; 62 regulator-boot-on; 137 regulator-min-microvolt = <330 63 regulator-min-microvolt = <3300000>; 138 regulator-max-microvolt = <330 64 regulator-max-microvolt = <3300000>; 139 vin-supply = <&vcc12v_dcin>; 65 vin-supply = <&vcc12v_dcin>; 140 }; 66 }; 141 67 142 vcc5v0_sys: vcc5v0-sys-regulator { !! 68 vcc5v0_sys: vcc5v0-sys { 143 compatible = "regulator-fixed" 69 compatible = "regulator-fixed"; 144 regulator-name = "vcc5v0_sys"; 70 regulator-name = "vcc5v0_sys"; 145 regulator-always-on; 71 regulator-always-on; 146 regulator-boot-on; 72 regulator-boot-on; 147 regulator-min-microvolt = <500 73 regulator-min-microvolt = <5000000>; 148 regulator-max-microvolt = <500 74 regulator-max-microvolt = <5000000>; 149 vin-supply = <&vcc12v_dcin>; 75 vin-supply = <&vcc12v_dcin>; 150 }; 76 }; 151 77 152 vcc5v0_usb: vcc5v0-usb-regulator { !! 78 vcc5v0_usb: vcc5v0-usb { 153 compatible = "regulator-fixed" 79 compatible = "regulator-fixed"; 154 regulator-name = "vcc5v0_usb"; 80 regulator-name = "vcc5v0_usb"; 155 regulator-always-on; 81 regulator-always-on; 156 regulator-boot-on; 82 regulator-boot-on; 157 regulator-min-microvolt = <500 83 regulator-min-microvolt = <5000000>; 158 regulator-max-microvolt = <500 84 regulator-max-microvolt = <5000000>; 159 vin-supply = <&vcc12v_dcin>; 85 vin-supply = <&vcc12v_dcin>; 160 }; 86 }; 161 87 162 vcc5v0_usb_host: vcc5v0-usb-host-regul !! 88 vcc5v0_usb_host: vcc5v0-usb-host { 163 compatible = "regulator-fixed" 89 compatible = "regulator-fixed"; 164 enable-active-high; 90 enable-active-high; 165 gpio = <&gpio0 RK_PA6 GPIO_ACT 91 gpio = <&gpio0 RK_PA6 GPIO_ACTIVE_HIGH>; 166 pinctrl-names = "default"; 92 pinctrl-names = "default"; 167 pinctrl-0 = <&vcc5v0_usb_host_ 93 pinctrl-0 = <&vcc5v0_usb_host_en>; 168 regulator-name = "vcc5v0_usb_h 94 regulator-name = "vcc5v0_usb_host"; 169 regulator-min-microvolt = <500 95 regulator-min-microvolt = <5000000>; 170 regulator-max-microvolt = <500 96 regulator-max-microvolt = <5000000>; 171 vin-supply = <&vcc5v0_usb>; 97 vin-supply = <&vcc5v0_usb>; 172 }; 98 }; 173 99 174 vcc5v0_usb_hub: vcc5v0-usb-hub-regulat 100 vcc5v0_usb_hub: vcc5v0-usb-hub-regulator { 175 compatible = "regulator-fixed" 101 compatible = "regulator-fixed"; 176 enable-active-high; 102 enable-active-high; 177 gpio = <&gpio0 RK_PD5 GPIO_ACT 103 gpio = <&gpio0 RK_PD5 GPIO_ACTIVE_HIGH>; 178 pinctrl-names = "default"; 104 pinctrl-names = "default"; 179 pinctrl-0 = <&vcc5v0_usb_hub_e 105 pinctrl-0 = <&vcc5v0_usb_hub_en>; 180 regulator-name = "vcc5v0_usb_h 106 regulator-name = "vcc5v0_usb_hub"; 181 regulator-always-on; 107 regulator-always-on; 182 vin-supply = <&vcc5v0_usb>; 108 vin-supply = <&vcc5v0_usb>; 183 }; 109 }; 184 110 185 vcc5v0_usb_otg: vcc5v0-usb-otg-regulat 111 vcc5v0_usb_otg: vcc5v0-usb-otg-regulator { 186 compatible = "regulator-fixed" 112 compatible = "regulator-fixed"; 187 enable-active-high; 113 enable-active-high; 188 gpio = <&gpio0 RK_PA5 GPIO_ACT 114 gpio = <&gpio0 RK_PA5 GPIO_ACTIVE_HIGH>; 189 pinctrl-names = "default"; 115 pinctrl-names = "default"; 190 pinctrl-0 = <&vcc5v0_usb_otg_e 116 pinctrl-0 = <&vcc5v0_usb_otg_en>; 191 regulator-name = "vcc5v0_usb_o 117 regulator-name = "vcc5v0_usb_otg"; 192 regulator-min-microvolt = <500 118 regulator-min-microvolt = <5000000>; 193 regulator-max-microvolt = <500 119 regulator-max-microvolt = <5000000>; 194 vin-supply = <&vcc5v0_usb>; 120 vin-supply = <&vcc5v0_usb>; 195 }; 121 }; 196 << 197 vcc_cam: vcc-cam-regulator { << 198 compatible = "regulator-fixed" << 199 enable-active-high; << 200 gpio = <&gpio1 RK_PB1 GPIO_ACT << 201 pinctrl-names = "default"; << 202 pinctrl-0 = <&vcc_cam_en>; << 203 regulator-name = "vcc_cam"; << 204 regulator-min-microvolt = <330 << 205 regulator-max-microvolt = <330 << 206 vin-supply = <&vcc3v3_sys>; << 207 << 208 regulator-state-mem { << 209 regulator-off-in-suspe << 210 }; << 211 }; << 212 << 213 vcc_mipi: vcc-mipi-regulator { << 214 compatible = "regulator-fixed" << 215 enable-active-high; << 216 gpio = <&gpio3 RK_PC0 GPIO_ACT << 217 pinctrl-names = "default"; << 218 pinctrl-0 = <&vcc_mipi_en>; << 219 regulator-name = "vcc_mipi"; << 220 regulator-min-microvolt = <330 << 221 regulator-max-microvolt = <330 << 222 vin-supply = <&vcc3v3_sys>; << 223 << 224 regulator-state-mem { << 225 regulator-off-in-suspe << 226 }; << 227 }; << 228 }; 122 }; 229 123 230 &combphy0 { 124 &combphy0 { 231 status = "okay"; 125 status = "okay"; 232 }; 126 }; 233 127 234 &combphy1 { 128 &combphy1 { 235 status = "okay"; 129 status = "okay"; 236 }; 130 }; 237 131 238 &combphy2 { << 239 status = "okay"; << 240 }; << 241 << 242 &cpu0 { 132 &cpu0 { 243 cpu-supply = <&vdd_cpu>; 133 cpu-supply = <&vdd_cpu>; 244 }; 134 }; 245 135 246 &cpu1 { 136 &cpu1 { 247 cpu-supply = <&vdd_cpu>; 137 cpu-supply = <&vdd_cpu>; 248 }; 138 }; 249 139 250 &cpu2 { 140 &cpu2 { 251 cpu-supply = <&vdd_cpu>; 141 cpu-supply = <&vdd_cpu>; 252 }; 142 }; 253 143 254 &cpu3 { 144 &cpu3 { 255 cpu-supply = <&vdd_cpu>; 145 cpu-supply = <&vdd_cpu>; 256 }; 146 }; 257 147 258 &gmac1 { 148 &gmac1 { 259 assigned-clocks = <&cru SCLK_GMAC1_RX_ 149 assigned-clocks = <&cru SCLK_GMAC1_RX_TX>, <&cru SCLK_GMAC1>; 260 assigned-clock-parents = <&cru SCLK_GM !! 150 assigned-clock-parents = <&cru SCLK_GMAC1_RGMII_SPEED>; 261 clock_in_out = "input"; !! 151 assigned-clock-rates = <0>, <125000000>; >> 152 clock_in_out = "output"; 262 phy-handle = <&rgmii_phy1>; 153 phy-handle = <&rgmii_phy1>; 263 phy-mode = "rgmii-id"; 154 phy-mode = "rgmii-id"; 264 phy-supply = <&vcc_3v3>; << 265 pinctrl-names = "default"; 155 pinctrl-names = "default"; 266 pinctrl-0 = <&gmac1m1_miim 156 pinctrl-0 = <&gmac1m1_miim 267 &gmac1m1_tx_bus2 157 &gmac1m1_tx_bus2 268 &gmac1m1_rx_bus2 158 &gmac1m1_rx_bus2 269 &gmac1m1_rgmii_clk 159 &gmac1m1_rgmii_clk 270 &gmac1m1_clkinout << 271 &gmac1m1_rgmii_bus>; 160 &gmac1m1_rgmii_bus>; 272 status = "okay"; 161 status = "okay"; 273 }; 162 }; 274 163 275 &gpu { 164 &gpu { 276 mali-supply = <&vdd_gpu>; 165 mali-supply = <&vdd_gpu>; 277 status = "okay"; 166 status = "okay"; 278 }; 167 }; 279 168 280 &hdmi { << 281 avdd-0v9-supply = <&vdda0v9_image>; << 282 avdd-1v8-supply = <&vcca1v8_image>; << 283 pinctrl-names = "default"; << 284 pinctrl-0 = <&hdmitx_scl &hdmitx_sda & << 285 status = "okay"; << 286 }; << 287 << 288 &hdmi_in { << 289 hdmi_in_vp0: endpoint { << 290 remote-endpoint = <&vp0_out_hd << 291 }; << 292 }; << 293 << 294 &hdmi_out { << 295 hdmi_out_con: endpoint { << 296 remote-endpoint = <&hdmi_con_i << 297 }; << 298 }; << 299 << 300 &hdmi_sound { << 301 status = "okay"; << 302 }; << 303 << 304 &i2c0 { 169 &i2c0 { 305 status = "okay"; 170 status = "okay"; 306 171 307 vdd_cpu: regulator@1c { 172 vdd_cpu: regulator@1c { 308 compatible = "tcs,tcs4525"; 173 compatible = "tcs,tcs4525"; 309 reg = <0x1c>; 174 reg = <0x1c>; 310 fcs,suspend-voltage-selector = 175 fcs,suspend-voltage-selector = <1>; 311 regulator-name = "vdd_cpu"; 176 regulator-name = "vdd_cpu"; 312 regulator-always-on; 177 regulator-always-on; 313 regulator-boot-on; 178 regulator-boot-on; 314 regulator-min-microvolt = <800 179 regulator-min-microvolt = <800000>; 315 regulator-max-microvolt = <115 180 regulator-max-microvolt = <1150000>; 316 regulator-ramp-delay = <2300>; 181 regulator-ramp-delay = <2300>; 317 vin-supply = <&vcc5v0_sys>; 182 vin-supply = <&vcc5v0_sys>; 318 183 319 regulator-state-mem { 184 regulator-state-mem { 320 regulator-off-in-suspe 185 regulator-off-in-suspend; 321 }; 186 }; 322 }; 187 }; 323 188 324 rk809: pmic@20 { 189 rk809: pmic@20 { 325 compatible = "rockchip,rk809"; 190 compatible = "rockchip,rk809"; 326 reg = <0x20>; 191 reg = <0x20>; 327 interrupt-parent = <&gpio0>; 192 interrupt-parent = <&gpio0>; 328 interrupts = <RK_PA3 IRQ_TYPE_ 193 interrupts = <RK_PA3 IRQ_TYPE_LEVEL_LOW>; 329 assigned-clocks = <&cru I2S1_M 194 assigned-clocks = <&cru I2S1_MCLKOUT_TX>; 330 assigned-clock-parents = <&cru 195 assigned-clock-parents = <&cru CLK_I2S1_8CH_TX>; 331 #clock-cells = <1>; 196 #clock-cells = <1>; 332 clock-names = "mclk"; 197 clock-names = "mclk"; 333 clocks = <&cru I2S1_MCLKOUT_TX 198 clocks = <&cru I2S1_MCLKOUT_TX>; 334 pinctrl-names = "default"; 199 pinctrl-names = "default"; 335 pinctrl-0 = <&pmic_int>, <&i2s 200 pinctrl-0 = <&pmic_int>, <&i2s1m0_mclk>; 336 rockchip,system-power-controll 201 rockchip,system-power-controller; 337 #sound-dai-cells = <0>; 202 #sound-dai-cells = <0>; 338 vcc1-supply = <&vcc3v3_sys>; 203 vcc1-supply = <&vcc3v3_sys>; 339 vcc2-supply = <&vcc3v3_sys>; 204 vcc2-supply = <&vcc3v3_sys>; 340 vcc3-supply = <&vcc3v3_sys>; 205 vcc3-supply = <&vcc3v3_sys>; 341 vcc4-supply = <&vcc3v3_sys>; 206 vcc4-supply = <&vcc3v3_sys>; 342 vcc5-supply = <&vcc3v3_sys>; 207 vcc5-supply = <&vcc3v3_sys>; 343 vcc6-supply = <&vcc3v3_sys>; 208 vcc6-supply = <&vcc3v3_sys>; 344 vcc7-supply = <&vcc3v3_sys>; 209 vcc7-supply = <&vcc3v3_sys>; 345 vcc8-supply = <&vcc3v3_sys>; 210 vcc8-supply = <&vcc3v3_sys>; 346 vcc9-supply = <&vcc3v3_sys>; 211 vcc9-supply = <&vcc3v3_sys>; 347 wakeup-source; 212 wakeup-source; 348 213 349 regulators { 214 regulators { 350 vdd_logic: DCDC_REG1 { 215 vdd_logic: DCDC_REG1 { 351 regulator-name 216 regulator-name = "vdd_logic"; 352 regulator-alwa 217 regulator-always-on; 353 regulator-boot 218 regulator-boot-on; >> 219 regulator-init-microvolt = <900000>; 354 regulator-init 220 regulator-initial-mode = <0x2>; 355 regulator-min- 221 regulator-min-microvolt = <500000>; 356 regulator-max- 222 regulator-max-microvolt = <1350000>; 357 regulator-ramp 223 regulator-ramp-delay = <6001>; 358 224 359 regulator-stat 225 regulator-state-mem { 360 regula 226 regulator-off-in-suspend; 361 }; 227 }; 362 }; 228 }; 363 229 364 vdd_gpu: DCDC_REG2 { 230 vdd_gpu: DCDC_REG2 { 365 regulator-name 231 regulator-name = "vdd_gpu"; 366 regulator-alwa 232 regulator-always-on; >> 233 regulator-init-microvolt = <900000>; 367 regulator-init 234 regulator-initial-mode = <0x2>; 368 regulator-min- 235 regulator-min-microvolt = <500000>; 369 regulator-max- 236 regulator-max-microvolt = <1350000>; 370 regulator-ramp 237 regulator-ramp-delay = <6001>; 371 238 372 regulator-stat 239 regulator-state-mem { 373 regula 240 regulator-off-in-suspend; 374 }; 241 }; 375 }; 242 }; 376 243 377 vcc_ddr: DCDC_REG3 { 244 vcc_ddr: DCDC_REG3 { 378 regulator-name 245 regulator-name = "vcc_ddr"; 379 regulator-alwa 246 regulator-always-on; 380 regulator-boot 247 regulator-boot-on; 381 regulator-init 248 regulator-initial-mode = <0x2>; 382 249 383 regulator-stat 250 regulator-state-mem { 384 regula 251 regulator-on-in-suspend; 385 }; 252 }; 386 }; 253 }; 387 254 388 vdd_npu: DCDC_REG4 { 255 vdd_npu: DCDC_REG4 { 389 regulator-name 256 regulator-name = "vdd_npu"; >> 257 regulator-init-microvolt = <900000>; 390 regulator-init 258 regulator-initial-mode = <0x2>; 391 regulator-min- 259 regulator-min-microvolt = <500000>; 392 regulator-max- 260 regulator-max-microvolt = <1350000>; 393 regulator-ramp 261 regulator-ramp-delay = <6001>; 394 262 395 regulator-stat 263 regulator-state-mem { 396 regula 264 regulator-off-in-suspend; 397 }; 265 }; 398 }; 266 }; 399 267 400 vcc_1v8: DCDC_REG5 { 268 vcc_1v8: DCDC_REG5 { 401 regulator-name 269 regulator-name = "vcc_1v8"; 402 regulator-alwa 270 regulator-always-on; 403 regulator-boot 271 regulator-boot-on; 404 regulator-min- 272 regulator-min-microvolt = <1800000>; 405 regulator-max- 273 regulator-max-microvolt = <1800000>; 406 274 407 regulator-stat 275 regulator-state-mem { 408 regula 276 regulator-off-in-suspend; 409 }; 277 }; 410 }; 278 }; 411 279 412 vdda0v9_image: LDO_REG 280 vdda0v9_image: LDO_REG1 { 413 regulator-name 281 regulator-name = "vdda0v9_image"; 414 regulator-min- 282 regulator-min-microvolt = <900000>; 415 regulator-max- 283 regulator-max-microvolt = <900000>; 416 284 417 regulator-stat 285 regulator-state-mem { 418 regula 286 regulator-off-in-suspend; 419 }; 287 }; 420 }; 288 }; 421 289 422 vdda_0v9: LDO_REG2 { 290 vdda_0v9: LDO_REG2 { 423 regulator-name 291 regulator-name = "vdda_0v9"; 424 regulator-alwa 292 regulator-always-on; 425 regulator-boot 293 regulator-boot-on; 426 regulator-min- 294 regulator-min-microvolt = <900000>; 427 regulator-max- 295 regulator-max-microvolt = <900000>; 428 296 429 regulator-stat 297 regulator-state-mem { 430 regula 298 regulator-off-in-suspend; 431 }; 299 }; 432 }; 300 }; 433 301 434 vdda0v9_pmu: LDO_REG3 302 vdda0v9_pmu: LDO_REG3 { 435 regulator-name 303 regulator-name = "vdda0v9_pmu"; 436 regulator-alwa 304 regulator-always-on; 437 regulator-boot 305 regulator-boot-on; 438 regulator-min- 306 regulator-min-microvolt = <900000>; 439 regulator-max- 307 regulator-max-microvolt = <900000>; 440 308 441 regulator-stat 309 regulator-state-mem { 442 regula 310 regulator-on-in-suspend; 443 regula 311 regulator-suspend-microvolt = <900000>; 444 }; 312 }; 445 }; 313 }; 446 314 447 vccio_acodec: LDO_REG4 315 vccio_acodec: LDO_REG4 { 448 regulator-name 316 regulator-name = "vccio_acodec"; 449 regulator-alwa 317 regulator-always-on; 450 regulator-min- 318 regulator-min-microvolt = <3300000>; 451 regulator-max- 319 regulator-max-microvolt = <3300000>; 452 320 453 regulator-stat 321 regulator-state-mem { 454 regula 322 regulator-off-in-suspend; 455 }; 323 }; 456 }; 324 }; 457 325 458 vccio_sd: LDO_REG5 { 326 vccio_sd: LDO_REG5 { 459 regulator-name 327 regulator-name = "vccio_sd"; 460 regulator-min- 328 regulator-min-microvolt = <1800000>; 461 regulator-max- 329 regulator-max-microvolt = <3300000>; 462 330 463 regulator-stat 331 regulator-state-mem { 464 regula 332 regulator-off-in-suspend; 465 }; 333 }; 466 }; 334 }; 467 335 468 vcc3v3_pmu: LDO_REG6 { 336 vcc3v3_pmu: LDO_REG6 { 469 regulator-name 337 regulator-name = "vcc3v3_pmu"; 470 regulator-alwa 338 regulator-always-on; 471 regulator-boot 339 regulator-boot-on; 472 regulator-min- 340 regulator-min-microvolt = <3300000>; 473 regulator-max- 341 regulator-max-microvolt = <3300000>; 474 342 475 regulator-stat 343 regulator-state-mem { 476 regula 344 regulator-on-in-suspend; 477 regula 345 regulator-suspend-microvolt = <3300000>; 478 }; 346 }; 479 }; 347 }; 480 348 481 vcca_1v8: LDO_REG7 { 349 vcca_1v8: LDO_REG7 { 482 regulator-name 350 regulator-name = "vcca_1v8"; 483 regulator-alwa 351 regulator-always-on; 484 regulator-boot 352 regulator-boot-on; 485 regulator-min- 353 regulator-min-microvolt = <1800000>; 486 regulator-max- 354 regulator-max-microvolt = <1800000>; 487 355 488 regulator-stat 356 regulator-state-mem { 489 regula 357 regulator-off-in-suspend; 490 }; 358 }; 491 }; 359 }; 492 360 493 vcca1v8_pmu: LDO_REG8 361 vcca1v8_pmu: LDO_REG8 { 494 regulator-name 362 regulator-name = "vcca1v8_pmu"; 495 regulator-alwa 363 regulator-always-on; 496 regulator-boot 364 regulator-boot-on; 497 regulator-min- 365 regulator-min-microvolt = <1800000>; 498 regulator-max- 366 regulator-max-microvolt = <1800000>; 499 367 500 regulator-stat 368 regulator-state-mem { 501 regula 369 regulator-on-in-suspend; 502 regula 370 regulator-suspend-microvolt = <1800000>; 503 }; 371 }; 504 }; 372 }; 505 373 506 vcca1v8_image: LDO_REG 374 vcca1v8_image: LDO_REG9 { 507 regulator-name 375 regulator-name = "vcca1v8_image"; 508 regulator-min- 376 regulator-min-microvolt = <1800000>; 509 regulator-max- 377 regulator-max-microvolt = <1800000>; 510 378 511 regulator-stat 379 regulator-state-mem { 512 regula 380 regulator-off-in-suspend; 513 }; 381 }; 514 }; 382 }; 515 383 516 vcc_3v3: SWITCH_REG1 { 384 vcc_3v3: SWITCH_REG1 { 517 regulator-name 385 regulator-name = "vcc_3v3"; 518 regulator-alwa 386 regulator-always-on; 519 regulator-boot 387 regulator-boot-on; 520 388 521 regulator-stat 389 regulator-state-mem { 522 regula 390 regulator-off-in-suspend; 523 }; 391 }; 524 }; 392 }; 525 393 526 vcc3v3_sd: SWITCH_REG2 394 vcc3v3_sd: SWITCH_REG2 { 527 regulator-name 395 regulator-name = "vcc3v3_sd"; 528 396 529 regulator-stat 397 regulator-state-mem { 530 regula 398 regulator-off-in-suspend; 531 }; 399 }; 532 }; 400 }; 533 }; 401 }; 534 }; << 535 }; << 536 << 537 &i2c3 { << 538 pinctrl-names = "default"; << 539 pinctrl-0 = <&i2c3m1_xfer>; << 540 status = "disabled"; << 541 }; << 542 << 543 &i2c4 { << 544 pinctrl-names = "default"; << 545 pinctrl-0 = <&i2c4m1_xfer>; << 546 status = "disabled"; << 547 }; << 548 402 549 &i2c5 { !! 403 codec { 550 status = "okay"; !! 404 mic-in-differential; 551 !! 405 }; 552 hym8563: rtc@51 { << 553 compatible = "haoyu,hym8563"; << 554 reg = <0x51>; << 555 interrupt-parent = <&gpio0>; << 556 interrupts = <RK_PD3 IRQ_TYPE_ << 557 #clock-cells = <0>; << 558 clock-output-names = "rtcic_32 << 559 pinctrl-names = "default"; << 560 pinctrl-0 = <&hym8563_int>; << 561 wakeup-source; << 562 }; 406 }; 563 }; 407 }; 564 408 565 &i2s0_8ch { << 566 status = "okay"; << 567 }; << 568 << 569 &i2s1_8ch { 409 &i2s1_8ch { 570 pinctrl-names = "default"; << 571 pinctrl-0 = <&i2s1m0_sclktx &i2s1m0_lr << 572 rockchip,trcm-sync-tx-only; << 573 status = "okay"; << 574 }; << 575 << 576 &i2s2_2ch { << 577 rockchip,trcm-sync-tx-only; 410 rockchip,trcm-sync-tx-only; 578 status = "okay"; 411 status = "okay"; 579 }; 412 }; 580 413 581 &mdio1 { 414 &mdio1 { 582 rgmii_phy1: ethernet-phy@0 { 415 rgmii_phy1: ethernet-phy@0 { 583 compatible = "ethernet-phy-iee 416 compatible = "ethernet-phy-ieee802.3-c22"; 584 reg = <0x0>; 417 reg = <0x0>; 585 pinctrl-names = "default"; 418 pinctrl-names = "default"; 586 pinctrl-0 = <ð_phy_rst>; 419 pinctrl-0 = <ð_phy_rst>; 587 reset-assert-us = <20000>; 420 reset-assert-us = <20000>; 588 reset-deassert-us = <100000>; 421 reset-deassert-us = <100000>; 589 reset-gpios = <&gpio3 RK_PB0 G 422 reset-gpios = <&gpio3 RK_PB0 GPIO_ACTIVE_LOW>; 590 }; 423 }; 591 }; 424 }; 592 425 593 &pcie2x1 { << 594 pinctrl-names = "default"; << 595 pinctrl-0 = <&pcie_reset_h>; << 596 reset-gpios = <&gpio3 RK_PC1 GPIO_ACTI << 597 vpcie3v3-supply = <&vcc3v3_pcie>; << 598 status = "okay"; << 599 }; << 600 << 601 &pcie30phy { << 602 phy-supply = <&vcc3v3_pi6c_03>; << 603 status = "okay"; << 604 }; << 605 << 606 &pcie3x2 { << 607 pinctrl-names = "default"; << 608 pinctrl-0 = <&pcie30x2m1_pins>; << 609 reset-gpios = <&gpio2 RK_PD6 GPIO_ACTI << 610 vpcie3v3-supply = <&vcc3v3_pcie>; << 611 status = "okay"; << 612 }; << 613 << 614 &pinctrl { 426 &pinctrl { 615 cam { << 616 vcc_cam_en: vcc_cam_en { << 617 rockchip,pins = <1 RK_ << 618 }; << 619 }; << 620 << 621 display { << 622 vcc_mipi_en: vcc_mipi_en { << 623 rockchip,pins = <3 RK_ << 624 }; << 625 }; << 626 << 627 ethernet { 427 ethernet { 628 eth_phy_rst: eth_phy_rst { 428 eth_phy_rst: eth_phy_rst { 629 rockchip,pins = <3 RK_ 429 rockchip,pins = <3 RK_PB0 RK_FUNC_GPIO &pcfg_pull_none>; 630 }; 430 }; 631 }; 431 }; 632 432 633 hym8563 { << 634 hym8563_int: hym8563-int { << 635 rockchip,pins = <0 RK_ << 636 }; << 637 }; << 638 << 639 leds { 433 leds { 640 led_user_en: led_user_en { 434 led_user_en: led_user_en { 641 rockchip,pins = <0 RK_ 435 rockchip,pins = <0 RK_PB7 RK_FUNC_GPIO &pcfg_pull_none>; 642 }; 436 }; 643 }; 437 }; 644 438 645 pcie { << 646 pcie_enable_h: pcie-enable-h { << 647 rockchip,pins = <0 RK_ << 648 }; << 649 << 650 pcie_reset_h: pcie-reset-h { << 651 rockchip,pins = <3 RK_ << 652 }; << 653 }; << 654 << 655 pmic { 439 pmic { 656 pmic_int: pmic_int { 440 pmic_int: pmic_int { 657 rockchip,pins = 441 rockchip,pins = 658 <0 RK_PA3 RK_F 442 <0 RK_PA3 RK_FUNC_GPIO &pcfg_pull_up>; 659 }; 443 }; 660 }; 444 }; 661 445 662 usb { 446 usb { 663 vcc5v0_usb_host_en: vcc5v0_usb 447 vcc5v0_usb_host_en: vcc5v0_usb_host_en { 664 rockchip,pins = <0 RK_ 448 rockchip,pins = <0 RK_PA6 RK_FUNC_GPIO &pcfg_pull_none>; 665 }; 449 }; 666 vcc5v0_usb_hub_en: vcc5v0_usb_ 450 vcc5v0_usb_hub_en: vcc5v0_usb_hub_en { 667 rockchip,pins = <0 RK_ 451 rockchip,pins = <0 RK_PD5 RK_FUNC_GPIO &pcfg_pull_none>; 668 }; 452 }; 669 vcc5v0_usb_otg_en: vcc5v0_usb_ 453 vcc5v0_usb_otg_en: vcc5v0_usb_otg_en { 670 rockchip,pins = <0 RK_ 454 rockchip,pins = <0 RK_PA5 RK_FUNC_GPIO &pcfg_pull_none>; 671 }; 455 }; 672 }; 456 }; 673 << 674 bt { << 675 bt_enable: bt-enable { << 676 rockchip,pins = <4 RK_ << 677 }; << 678 << 679 bt_host_wake: bt-host-wake { << 680 rockchip,pins = <4 RK_ << 681 }; << 682 << 683 bt_wake: bt-wake { << 684 rockchip,pins = <4 RK_ << 685 }; << 686 }; << 687 << 688 sdio-pwrseq { << 689 wifi_enable: wifi-enable { << 690 rockchip,pins = <3 RK_ << 691 }; << 692 }; << 693 }; 457 }; 694 458 695 &pmu_io_domains { 459 &pmu_io_domains { 696 pmuio1-supply = <&vcc3v3_pmu>; 460 pmuio1-supply = <&vcc3v3_pmu>; 697 pmuio2-supply = <&vcc3v3_pmu>; 461 pmuio2-supply = <&vcc3v3_pmu>; 698 vccio1-supply = <&vccio_acodec>; 462 vccio1-supply = <&vccio_acodec>; 699 vccio2-supply = <&vcc_1v8>; 463 vccio2-supply = <&vcc_1v8>; 700 vccio3-supply = <&vccio_sd>; 464 vccio3-supply = <&vccio_sd>; 701 vccio4-supply = <&vcc_1v8>; 465 vccio4-supply = <&vcc_1v8>; 702 vccio5-supply = <&vcc_3v3>; 466 vccio5-supply = <&vcc_3v3>; 703 vccio6-supply = <&vcc_1v8>; 467 vccio6-supply = <&vcc_1v8>; 704 vccio7-supply = <&vcc_3v3>; 468 vccio7-supply = <&vcc_3v3>; 705 status = "okay"; 469 status = "okay"; 706 }; 470 }; 707 471 708 &saradc { 472 &saradc { 709 vref-supply = <&vcca_1v8>; 473 vref-supply = <&vcca_1v8>; 710 status = "okay"; 474 status = "okay"; 711 }; 475 }; 712 476 713 &sdhci { 477 &sdhci { 714 bus-width = <8>; 478 bus-width = <8>; 715 max-frequency = <200000000>; 479 max-frequency = <200000000>; 716 non-removable; 480 non-removable; 717 pinctrl-names = "default"; 481 pinctrl-names = "default"; 718 pinctrl-0 = <&emmc_bus8 &emmc_clk &emm 482 pinctrl-0 = <&emmc_bus8 &emmc_clk &emmc_cmd &emmc_datastrobe>; 719 vmmc-supply = <&vcc_3v3>; 483 vmmc-supply = <&vcc_3v3>; 720 vqmmc-supply = <&vcc_1v8>; 484 vqmmc-supply = <&vcc_1v8>; 721 status = "okay"; 485 status = "okay"; 722 }; 486 }; 723 487 724 &sdmmc0 { 488 &sdmmc0 { 725 bus-width = <4>; 489 bus-width = <4>; 726 cap-sd-highspeed; 490 cap-sd-highspeed; 727 cd-gpios = <&gpio0 RK_PA4 GPIO_ACTIVE_ 491 cd-gpios = <&gpio0 RK_PA4 GPIO_ACTIVE_LOW>; 728 disable-wp; 492 disable-wp; 729 pinctrl-names = "default"; 493 pinctrl-names = "default"; 730 pinctrl-0 = <&sdmmc0_bus4 &sdmmc0_clk 494 pinctrl-0 = <&sdmmc0_bus4 &sdmmc0_clk &sdmmc0_cmd &sdmmc0_det>; 731 sd-uhs-sdr50; !! 495 sd-uhs-sdr104; 732 vmmc-supply = <&vcc3v3_sd>; 496 vmmc-supply = <&vcc3v3_sd>; 733 vqmmc-supply = <&vccio_sd>; 497 vqmmc-supply = <&vccio_sd>; 734 status = "okay"; 498 status = "okay"; 735 }; 499 }; 736 500 737 &sdmmc2 { << 738 bus-width = <4>; << 739 disable-wp; << 740 cap-sd-highspeed; << 741 cap-sdio-irq; << 742 keep-power-in-suspend; << 743 mmc-pwrseq = <&sdio_pwrseq>; << 744 non-removable; << 745 pinctrl-names = "default"; << 746 pinctrl-0 = <&sdmmc2m0_bus4 &sdmmc2m0_ << 747 sd-uhs-sdr12; << 748 sd-uhs-sdr25; << 749 sd-uhs-sdr50; << 750 sd-uhs-sdr104; << 751 vmmc-supply = <&vcc3v3_sys>; << 752 vqmmc-supply = <&vcc_1v8>; << 753 status = "okay"; << 754 }; << 755 << 756 &sfc { << 757 #address-cells = <1>; << 758 #size-cells = <0>; << 759 status = "okay"; << 760 << 761 flash@0 { << 762 compatible = "jedec,spi-nor"; << 763 reg = <0x0>; << 764 spi-max-frequency = <104000000 << 765 spi-rx-bus-width = <4>; << 766 spi-tx-bus-width = <1>; << 767 }; << 768 }; << 769 << 770 &tsadc { 501 &tsadc { 771 rockchip,hw-tshut-mode = <1>; 502 rockchip,hw-tshut-mode = <1>; 772 rockchip,hw-tshut-polarity = <0>; 503 rockchip,hw-tshut-polarity = <0>; 773 status = "okay"; 504 status = "okay"; 774 }; 505 }; 775 506 776 &uart1 { << 777 pinctrl-names = "default"; << 778 pinctrl-0 = <&uart1m0_xfer &uart1m0_ct << 779 uart-has-rtscts; << 780 status = "okay"; << 781 << 782 bluetooth { << 783 compatible = "brcm,bcm43438-bt << 784 clocks = <&rk809 1>; << 785 clock-names = "lpo"; << 786 device-wakeup-gpios = <&gpio4 << 787 host-wakeup-gpios = <&gpio4 RK << 788 shutdown-gpios = <&gpio4 RK_PB << 789 pinctrl-names = "default"; << 790 pinctrl-0 = <&bt_host_wake &bt << 791 vbat-supply = <&vcc3v3_sys>; << 792 vddio-supply = <&vcc_1v8>; << 793 /* vddio comes from regulator << 794 }; << 795 }; << 796 << 797 &uart2 { 507 &uart2 { 798 status = "okay"; 508 status = "okay"; 799 }; 509 }; 800 510 801 &usb_host0_ehci { 511 &usb_host0_ehci { 802 status = "okay"; 512 status = "okay"; 803 }; 513 }; 804 514 805 &usb_host0_ohci { 515 &usb_host0_ohci { 806 status = "okay"; 516 status = "okay"; 807 }; 517 }; 808 518 809 &usb_host0_xhci { 519 &usb_host0_xhci { 810 extcon = <&usb2phy0>; 520 extcon = <&usb2phy0>; 811 status = "okay"; 521 status = "okay"; 812 }; 522 }; 813 523 814 &usb_host1_ehci { 524 &usb_host1_ehci { 815 status = "okay"; 525 status = "okay"; 816 }; 526 }; 817 527 818 &usb_host1_ohci { 528 &usb_host1_ohci { 819 status = "okay"; 529 status = "okay"; 820 }; 530 }; 821 531 822 &usb_host1_xhci { 532 &usb_host1_xhci { 823 status = "okay"; 533 status = "okay"; 824 }; 534 }; 825 535 826 &usb2phy0 { 536 &usb2phy0 { 827 status = "okay"; 537 status = "okay"; 828 }; 538 }; 829 539 830 &usb2phy0_host { 540 &usb2phy0_host { 831 phy-supply = <&vcc5v0_usb_host>; 541 phy-supply = <&vcc5v0_usb_host>; 832 status = "okay"; 542 status = "okay"; 833 }; 543 }; 834 544 835 &usb2phy0_otg { 545 &usb2phy0_otg { 836 phy-supply = <&vcc5v0_usb_otg>; 546 phy-supply = <&vcc5v0_usb_otg>; 837 status = "okay"; 547 status = "okay"; 838 }; 548 }; 839 549 840 &usb2phy1 { 550 &usb2phy1 { 841 status = "okay"; 551 status = "okay"; 842 }; 552 }; 843 553 844 &usb2phy1_host { 554 &usb2phy1_host { 845 phy-supply = <&vcc5v0_usb_host>; 555 phy-supply = <&vcc5v0_usb_host>; 846 status = "okay"; 556 status = "okay"; 847 }; 557 }; 848 558 849 &usb2phy1_otg { 559 &usb2phy1_otg { 850 phy-supply = <&vcc5v0_usb_host>; 560 phy-supply = <&vcc5v0_usb_host>; 851 status = "okay"; 561 status = "okay"; 852 }; << 853 << 854 &vop { << 855 assigned-clocks = <&cru DCLK_VOP0>, <& << 856 assigned-clock-parents = <&pmucru PLL_ << 857 status = "okay"; << 858 }; << 859 << 860 &vop_mmu { << 861 status = "okay"; << 862 }; << 863 << 864 &vp0 { << 865 vp0_out_hdmi: endpoint@ROCKCHIP_VOP2_E << 866 reg = <ROCKCHIP_VOP2_EP_HDMI0> << 867 remote-endpoint = <&hdmi_in_vp << 868 }; << 869 }; 562 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.