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