1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2 /* 2 /* 3 * Copyright (c) 2018 Fuzhou Rockchip Electron 3 * Copyright (c) 2018 Fuzhou Rockchip Electronics Co., Ltd 4 */ 4 */ 5 5 6 /dts-v1/; 6 /dts-v1/; 7 #include <dt-bindings/gpio/gpio.h> 7 #include <dt-bindings/gpio/gpio.h> 8 #include <dt-bindings/input/input.h> 8 #include <dt-bindings/input/input.h> 9 #include <dt-bindings/pinctrl/rockchip.h> 9 #include <dt-bindings/pinctrl/rockchip.h> 10 #include "px30.dtsi" 10 #include "px30.dtsi" 11 11 12 / { 12 / { 13 model = "Rockchip PX30 EVB"; 13 model = "Rockchip PX30 EVB"; 14 compatible = "rockchip,px30-evb", "roc 14 compatible = "rockchip,px30-evb", "rockchip,px30"; 15 15 16 aliases { 16 aliases { 17 ethernet0 = &gmac; 17 ethernet0 = &gmac; 18 mmc0 = &sdmmc; 18 mmc0 = &sdmmc; 19 mmc1 = &sdio; 19 mmc1 = &sdio; 20 mmc2 = &emmc; 20 mmc2 = &emmc; 21 }; 21 }; 22 22 23 chosen { 23 chosen { 24 stdout-path = "serial5:115200n 24 stdout-path = "serial5:115200n8"; 25 }; 25 }; 26 26 27 adc-keys { 27 adc-keys { 28 compatible = "adc-keys"; 28 compatible = "adc-keys"; 29 io-channels = <&saradc 2>; 29 io-channels = <&saradc 2>; 30 io-channel-names = "buttons"; 30 io-channel-names = "buttons"; 31 keyup-threshold-microvolt = <1 31 keyup-threshold-microvolt = <1800000>; 32 poll-interval = <100>; 32 poll-interval = <100>; 33 33 34 button-esc { 34 button-esc { 35 label = "esc"; 35 label = "esc"; 36 linux,code = <KEY_ESC> 36 linux,code = <KEY_ESC>; 37 press-threshold-microv 37 press-threshold-microvolt = <1310000>; 38 }; 38 }; 39 39 40 button-home { 40 button-home { 41 label = "home"; 41 label = "home"; 42 linux,code = <KEY_HOME 42 linux,code = <KEY_HOME>; 43 press-threshold-microv 43 press-threshold-microvolt = <624000>; 44 }; 44 }; 45 45 46 button-menu { 46 button-menu { 47 label = "menu"; 47 label = "menu"; 48 linux,code = <KEY_MENU 48 linux,code = <KEY_MENU>; 49 press-threshold-microv 49 press-threshold-microvolt = <987000>; 50 }; 50 }; 51 51 52 button-down { 52 button-down { 53 label = "volume down"; 53 label = "volume down"; 54 linux,code = <KEY_VOLU 54 linux,code = <KEY_VOLUMEDOWN>; 55 press-threshold-microv 55 press-threshold-microvolt = <300000>; 56 }; 56 }; 57 57 58 button-up { 58 button-up { 59 label = "volume up"; 59 label = "volume up"; 60 linux,code = <KEY_VOLU 60 linux,code = <KEY_VOLUMEUP>; 61 press-threshold-microv 61 press-threshold-microvolt = <17000>; 62 }; 62 }; 63 }; 63 }; 64 64 65 backlight: backlight { 65 backlight: backlight { 66 compatible = "pwm-backlight"; 66 compatible = "pwm-backlight"; 67 pwms = <&pwm1 0 25000 0>; 67 pwms = <&pwm1 0 25000 0>; 68 power-supply = <&vcc3v3_lcd>; 68 power-supply = <&vcc3v3_lcd>; 69 }; 69 }; 70 70 71 emmc_pwrseq: emmc-pwrseq { 71 emmc_pwrseq: emmc-pwrseq { 72 compatible = "mmc-pwrseq-emmc" 72 compatible = "mmc-pwrseq-emmc"; 73 pinctrl-0 = <&emmc_reset>; 73 pinctrl-0 = <&emmc_reset>; 74 pinctrl-names = "default"; 74 pinctrl-names = "default"; 75 reset-gpios = <&gpio1 RK_PB3 G 75 reset-gpios = <&gpio1 RK_PB3 GPIO_ACTIVE_HIGH>; 76 }; 76 }; 77 77 78 sdio_pwrseq: sdio-pwrseq { 78 sdio_pwrseq: sdio-pwrseq { 79 compatible = "mmc-pwrseq-simpl 79 compatible = "mmc-pwrseq-simple"; 80 pinctrl-names = "default"; 80 pinctrl-names = "default"; 81 pinctrl-0 = <&wifi_enable_h>; 81 pinctrl-0 = <&wifi_enable_h>; 82 82 83 /* 83 /* 84 * On the module itself this i 84 * On the module itself this is one of these (depending 85 * on the actual card populate 85 * on the actual card populated): 86 * - SDIO_RESET_L_WL_REG_ON 86 * - SDIO_RESET_L_WL_REG_ON 87 * - PDN (power down when low) 87 * - PDN (power down when low) 88 */ 88 */ 89 reset-gpios = <&gpio0 RK_PA2 G 89 reset-gpios = <&gpio0 RK_PA2 GPIO_ACTIVE_LOW>; /* GPIO3_A4 */ 90 }; 90 }; 91 91 92 vcc5v0_sys: vccsys { 92 vcc5v0_sys: vccsys { 93 compatible = "regulator-fixed" 93 compatible = "regulator-fixed"; 94 regulator-name = "vcc5v0_sys"; 94 regulator-name = "vcc5v0_sys"; 95 regulator-always-on; 95 regulator-always-on; 96 regulator-boot-on; 96 regulator-boot-on; 97 regulator-min-microvolt = <500 97 regulator-min-microvolt = <5000000>; 98 regulator-max-microvolt = <500 98 regulator-max-microvolt = <5000000>; 99 }; 99 }; 100 }; 100 }; 101 101 102 &cpu0 { 102 &cpu0 { 103 cpu-supply = <&vdd_arm>; 103 cpu-supply = <&vdd_arm>; 104 }; 104 }; 105 105 106 &cpu1 { 106 &cpu1 { 107 cpu-supply = <&vdd_arm>; 107 cpu-supply = <&vdd_arm>; 108 }; 108 }; 109 109 110 &cpu2 { 110 &cpu2 { 111 cpu-supply = <&vdd_arm>; 111 cpu-supply = <&vdd_arm>; 112 }; 112 }; 113 113 114 &cpu3 { 114 &cpu3 { 115 cpu-supply = <&vdd_arm>; 115 cpu-supply = <&vdd_arm>; 116 }; 116 }; 117 117 118 &csi_dphy { 118 &csi_dphy { 119 status = "okay"; 119 status = "okay"; 120 }; 120 }; 121 121 122 &display_subsystem { 122 &display_subsystem { 123 status = "okay"; 123 status = "okay"; 124 }; 124 }; 125 125 126 &dsi { 126 &dsi { 127 status = "okay"; 127 status = "okay"; 128 128 129 ports { 129 ports { 130 mipi_out: port@1 { 130 mipi_out: port@1 { 131 reg = <1>; 131 reg = <1>; 132 132 133 mipi_out_panel: endpoi 133 mipi_out_panel: endpoint { 134 remote-endpoin 134 remote-endpoint = <&mipi_in_panel>; 135 }; 135 }; 136 }; 136 }; 137 }; 137 }; 138 138 139 panel@0 { 139 panel@0 { 140 compatible = "xinpeng,xpp055c2 140 compatible = "xinpeng,xpp055c272"; 141 reg = <0>; 141 reg = <0>; 142 backlight = <&backlight>; 142 backlight = <&backlight>; 143 iovcc-supply = <&vcc_1v8>; 143 iovcc-supply = <&vcc_1v8>; 144 vci-supply = <&vcc3v3_lcd>; 144 vci-supply = <&vcc3v3_lcd>; 145 145 146 port { 146 port { 147 mipi_in_panel: endpoin 147 mipi_in_panel: endpoint { 148 remote-endpoin 148 remote-endpoint = <&mipi_out_panel>; 149 }; 149 }; 150 }; 150 }; 151 }; 151 }; 152 }; 152 }; 153 153 154 &dsi_dphy { 154 &dsi_dphy { 155 status = "okay"; 155 status = "okay"; 156 }; 156 }; 157 157 158 &emmc { 158 &emmc { 159 cap-mmc-highspeed; 159 cap-mmc-highspeed; 160 mmc-hs200-1_8v; 160 mmc-hs200-1_8v; 161 non-removable; 161 non-removable; 162 mmc-pwrseq = <&emmc_pwrseq>; 162 mmc-pwrseq = <&emmc_pwrseq>; 163 vmmc-supply = <&vcc_3v0>; 163 vmmc-supply = <&vcc_3v0>; 164 vqmmc-supply = <&vccio_flash>; 164 vqmmc-supply = <&vccio_flash>; 165 status = "okay"; 165 status = "okay"; 166 }; 166 }; 167 167 168 &gmac { 168 &gmac { 169 clock_in_out = "output"; 169 clock_in_out = "output"; 170 phy-supply = <&vcc_rmii>; 170 phy-supply = <&vcc_rmii>; 171 snps,reset-gpio = <&gpio2 13 GPIO_ACTI 171 snps,reset-gpio = <&gpio2 13 GPIO_ACTIVE_LOW>; 172 snps,reset-active-low; 172 snps,reset-active-low; 173 snps,reset-delays-us = <0 50000 50000> 173 snps,reset-delays-us = <0 50000 50000>; 174 status = "okay"; 174 status = "okay"; 175 }; 175 }; 176 176 177 &gpu { 177 &gpu { 178 mali-supply = <&vdd_log>; 178 mali-supply = <&vdd_log>; 179 status = "okay"; 179 status = "okay"; 180 }; 180 }; 181 181 182 &i2c0 { 182 &i2c0 { 183 status = "okay"; 183 status = "okay"; 184 184 185 rk809: pmic@20 { 185 rk809: pmic@20 { 186 compatible = "rockchip,rk809"; 186 compatible = "rockchip,rk809"; 187 reg = <0x20>; 187 reg = <0x20>; 188 interrupt-parent = <&gpio0>; 188 interrupt-parent = <&gpio0>; 189 interrupts = <7 IRQ_TYPE_LEVEL 189 interrupts = <7 IRQ_TYPE_LEVEL_LOW>; 190 pinctrl-names = "default"; 190 pinctrl-names = "default"; 191 pinctrl-0 = <&pmic_int>; 191 pinctrl-0 = <&pmic_int>; 192 rockchip,system-power-controll 192 rockchip,system-power-controller; 193 wakeup-source; 193 wakeup-source; 194 #clock-cells = <0>; 194 #clock-cells = <0>; 195 clock-output-names = "xin32k"; 195 clock-output-names = "xin32k"; 196 196 197 vcc1-supply = <&vcc5v0_sys>; 197 vcc1-supply = <&vcc5v0_sys>; 198 vcc2-supply = <&vcc5v0_sys>; 198 vcc2-supply = <&vcc5v0_sys>; 199 vcc3-supply = <&vcc5v0_sys>; 199 vcc3-supply = <&vcc5v0_sys>; 200 vcc4-supply = <&vcc5v0_sys>; 200 vcc4-supply = <&vcc5v0_sys>; 201 vcc5-supply = <&vcc3v3_sys>; 201 vcc5-supply = <&vcc3v3_sys>; 202 vcc6-supply = <&vcc3v3_sys>; 202 vcc6-supply = <&vcc3v3_sys>; 203 vcc7-supply = <&vcc3v3_sys>; 203 vcc7-supply = <&vcc3v3_sys>; 204 vcc8-supply = <&vcc3v3_sys>; 204 vcc8-supply = <&vcc3v3_sys>; 205 vcc9-supply = <&vcc5v0_sys>; 205 vcc9-supply = <&vcc5v0_sys>; 206 206 207 regulators { 207 regulators { 208 vdd_log: DCDC_REG1 { 208 vdd_log: DCDC_REG1 { 209 regulator-name 209 regulator-name = "vdd_log"; 210 regulator-min- 210 regulator-min-microvolt = <950000>; 211 regulator-max- 211 regulator-max-microvolt = <1350000>; 212 regulator-ramp 212 regulator-ramp-delay = <6001>; 213 regulator-alwa 213 regulator-always-on; 214 regulator-boot 214 regulator-boot-on; 215 215 216 regulator-stat 216 regulator-state-mem { 217 regula 217 regulator-on-in-suspend; 218 regula 218 regulator-suspend-microvolt = <950000>; 219 }; 219 }; 220 }; 220 }; 221 221 222 vdd_arm: DCDC_REG2 { 222 vdd_arm: DCDC_REG2 { 223 regulator-name 223 regulator-name = "vdd_arm"; 224 regulator-min- 224 regulator-min-microvolt = <950000>; 225 regulator-max- 225 regulator-max-microvolt = <1350000>; 226 regulator-ramp 226 regulator-ramp-delay = <6001>; 227 regulator-alwa 227 regulator-always-on; 228 regulator-boot 228 regulator-boot-on; 229 229 230 regulator-stat 230 regulator-state-mem { 231 regula 231 regulator-off-in-suspend; 232 regula 232 regulator-suspend-microvolt = <950000>; 233 }; 233 }; 234 }; 234 }; 235 235 236 vcc_ddr: DCDC_REG3 { 236 vcc_ddr: DCDC_REG3 { 237 regulator-name 237 regulator-name = "vcc_ddr"; 238 regulator-alwa 238 regulator-always-on; 239 regulator-boot 239 regulator-boot-on; 240 240 241 regulator-stat 241 regulator-state-mem { 242 regula 242 regulator-on-in-suspend; 243 }; 243 }; 244 }; 244 }; 245 245 246 vcc_3v0: vcc_rmii: DCD 246 vcc_3v0: vcc_rmii: DCDC_REG4 { 247 regulator-name 247 regulator-name = "vcc_3v0"; 248 regulator-min- 248 regulator-min-microvolt = <3000000>; 249 regulator-max- 249 regulator-max-microvolt = <3000000>; 250 regulator-alwa 250 regulator-always-on; 251 regulator-boot 251 regulator-boot-on; 252 252 253 regulator-stat 253 regulator-state-mem { 254 regula 254 regulator-on-in-suspend; 255 regula 255 regulator-suspend-microvolt = <3000000>; 256 }; 256 }; 257 }; 257 }; 258 258 259 vcc3v3_sys: DCDC_REG5 259 vcc3v3_sys: DCDC_REG5 { 260 regulator-name 260 regulator-name = "vcc3v3_sys"; 261 regulator-min- 261 regulator-min-microvolt = <3300000>; 262 regulator-max- 262 regulator-max-microvolt = <3300000>; 263 regulator-alwa 263 regulator-always-on; 264 regulator-boot 264 regulator-boot-on; 265 265 266 regulator-stat 266 regulator-state-mem { 267 regula 267 regulator-on-in-suspend; 268 regula 268 regulator-suspend-microvolt = <3300000>; 269 }; 269 }; 270 }; 270 }; 271 271 272 vcc_1v0: LDO_REG1 { 272 vcc_1v0: LDO_REG1 { 273 regulator-name 273 regulator-name = "vcc_1v0"; 274 regulator-min- 274 regulator-min-microvolt = <1000000>; 275 regulator-max- 275 regulator-max-microvolt = <1000000>; 276 regulator-alwa 276 regulator-always-on; 277 regulator-boot 277 regulator-boot-on; 278 278 279 regulator-stat 279 regulator-state-mem { 280 regula 280 regulator-on-in-suspend; 281 regula 281 regulator-suspend-microvolt = <1000000>; 282 }; 282 }; 283 }; 283 }; 284 284 285 vcc_1v8: vccio_flash: 285 vcc_1v8: vccio_flash: vccio_sdio: LDO_REG2 { 286 regulator-name 286 regulator-name = "vcc_1v8"; 287 regulator-min- 287 regulator-min-microvolt = <1800000>; 288 regulator-max- 288 regulator-max-microvolt = <1800000>; 289 regulator-alwa 289 regulator-always-on; 290 regulator-boot 290 regulator-boot-on; 291 291 292 regulator-stat 292 regulator-state-mem { 293 regula 293 regulator-on-in-suspend; 294 regula 294 regulator-suspend-microvolt = <1800000>; 295 }; 295 }; 296 }; 296 }; 297 297 298 vdd_1v0: LDO_REG3 { 298 vdd_1v0: LDO_REG3 { 299 regulator-name 299 regulator-name = "vdd_1v0"; 300 regulator-min- 300 regulator-min-microvolt = <1000000>; 301 regulator-max- 301 regulator-max-microvolt = <1000000>; 302 regulator-alwa 302 regulator-always-on; 303 regulator-boot 303 regulator-boot-on; 304 304 305 regulator-stat 305 regulator-state-mem { 306 regula 306 regulator-on-in-suspend; 307 regula 307 regulator-suspend-microvolt = <1000000>; 308 }; 308 }; 309 }; 309 }; 310 310 311 vcc3v0_pmu: LDO_REG4 { 311 vcc3v0_pmu: LDO_REG4 { 312 regulator-name 312 regulator-name = "vcc3v0_pmu"; 313 regulator-min- 313 regulator-min-microvolt = <3000000>; 314 regulator-max- 314 regulator-max-microvolt = <3000000>; 315 regulator-alwa 315 regulator-always-on; 316 regulator-boot 316 regulator-boot-on; 317 317 318 regulator-stat 318 regulator-state-mem { 319 regula 319 regulator-on-in-suspend; 320 regula 320 regulator-suspend-microvolt = <3000000>; 321 }; 321 }; 322 }; 322 }; 323 323 324 vccio_sd: LDO_REG5 { 324 vccio_sd: LDO_REG5 { 325 regulator-name 325 regulator-name = "vccio_sd"; 326 regulator-min- 326 regulator-min-microvolt = <1800000>; 327 regulator-max- 327 regulator-max-microvolt = <3300000>; 328 regulator-alwa 328 regulator-always-on; 329 regulator-boot 329 regulator-boot-on; 330 330 331 regulator-stat 331 regulator-state-mem { 332 regula 332 regulator-on-in-suspend; 333 regula 333 regulator-suspend-microvolt = <3300000>; 334 }; 334 }; 335 }; 335 }; 336 336 337 vcc_sd: LDO_REG6 { 337 vcc_sd: LDO_REG6 { 338 regulator-name 338 regulator-name = "vcc_sd"; 339 regulator-min- 339 regulator-min-microvolt = <3300000>; 340 regulator-max- 340 regulator-max-microvolt = <3300000>; 341 regulator-boot 341 regulator-boot-on; 342 342 343 regulator-stat 343 regulator-state-mem { 344 regula 344 regulator-on-in-suspend; 345 regula 345 regulator-suspend-microvolt = <3300000>; 346 }; 346 }; 347 }; 347 }; 348 348 349 vcc2v8_dvp: LDO_REG7 { 349 vcc2v8_dvp: LDO_REG7 { 350 regulator-name 350 regulator-name = "vcc2v8_dvp"; 351 regulator-min- 351 regulator-min-microvolt = <2800000>; 352 regulator-max- 352 regulator-max-microvolt = <2800000>; 353 regulator-boot 353 regulator-boot-on; 354 354 355 regulator-stat 355 regulator-state-mem { 356 regula 356 regulator-off-in-suspend; 357 regula 357 regulator-suspend-microvolt = <2800000>; 358 }; 358 }; 359 }; 359 }; 360 360 361 vcc1v8_dvp: LDO_REG8 { 361 vcc1v8_dvp: LDO_REG8 { 362 regulator-name 362 regulator-name = "vcc1v8_dvp"; 363 regulator-min- 363 regulator-min-microvolt = <1800000>; 364 regulator-max- 364 regulator-max-microvolt = <1800000>; 365 regulator-boot 365 regulator-boot-on; 366 366 367 regulator-stat 367 regulator-state-mem { 368 regula 368 regulator-on-in-suspend; 369 regula 369 regulator-suspend-microvolt = <1800000>; 370 }; 370 }; 371 }; 371 }; 372 372 373 vcc1v5_dvp: LDO_REG9 { 373 vcc1v5_dvp: LDO_REG9 { 374 regulator-name 374 regulator-name = "vcc1v5_dvp"; 375 regulator-min- 375 regulator-min-microvolt = <1500000>; 376 regulator-max- 376 regulator-max-microvolt = <1500000>; 377 regulator-boot 377 regulator-boot-on; 378 378 379 regulator-stat 379 regulator-state-mem { 380 regula 380 regulator-off-in-suspend; 381 regula 381 regulator-suspend-microvolt = <1500000>; 382 }; 382 }; 383 }; 383 }; 384 384 385 vcc3v3_lcd: SWITCH_REG 385 vcc3v3_lcd: SWITCH_REG1 { 386 regulator-name 386 regulator-name = "vcc3v3_lcd"; 387 regulator-boot 387 regulator-boot-on; 388 }; 388 }; 389 389 390 vcc5v0_host: SWITCH_RE 390 vcc5v0_host: SWITCH_REG2 { 391 regulator-name 391 regulator-name = "vcc5v0_host"; 392 regulator-alwa 392 regulator-always-on; 393 regulator-boot 393 regulator-boot-on; 394 }; 394 }; 395 }; 395 }; 396 }; 396 }; 397 }; 397 }; 398 398 399 &i2c1 { 399 &i2c1 { 400 status = "okay"; 400 status = "okay"; 401 401 402 sensor@d { 402 sensor@d { 403 compatible = "asahi-kasei,ak89 403 compatible = "asahi-kasei,ak8963"; 404 reg = <0x0d>; 404 reg = <0x0d>; 405 gpios = <&gpio0 RK_PB7 GPIO_AC 405 gpios = <&gpio0 RK_PB7 GPIO_ACTIVE_HIGH>; 406 vdd-supply = <&vcc3v0_pmu>; 406 vdd-supply = <&vcc3v0_pmu>; 407 mount-matrix = "1", /* x0 */ 407 mount-matrix = "1", /* x0 */ 408 "0", /* y0 */ 408 "0", /* y0 */ 409 "0", /* z0 */ 409 "0", /* z0 */ 410 "0", /* x1 */ 410 "0", /* x1 */ 411 "1", /* y1 */ 411 "1", /* y1 */ 412 "0", /* z1 */ 412 "0", /* z1 */ 413 "0", /* x2 */ 413 "0", /* x2 */ 414 "0", /* y2 */ 414 "0", /* y2 */ 415 "1"; /* z2 */ 415 "1"; /* z2 */ 416 }; 416 }; 417 417 418 touchscreen@14 { 418 touchscreen@14 { 419 compatible = "goodix,gt1151"; 419 compatible = "goodix,gt1151"; 420 reg = <0x14>; 420 reg = <0x14>; 421 interrupt-parent = <&gpio0>; 421 interrupt-parent = <&gpio0>; 422 interrupts = <RK_PA5 IRQ_TYPE_ 422 interrupts = <RK_PA5 IRQ_TYPE_LEVEL_LOW>; 423 irq-gpios = <&gpio0 RK_PA5 GPI 423 irq-gpios = <&gpio0 RK_PA5 GPIO_ACTIVE_LOW>; 424 reset-gpios = <&gpio0 RK_PB4 G 424 reset-gpios = <&gpio0 RK_PB4 GPIO_ACTIVE_HIGH>; 425 VDDIO-supply = <&vcc3v3_lcd>; 425 VDDIO-supply = <&vcc3v3_lcd>; 426 }; 426 }; 427 427 428 sensor@4c { 428 sensor@4c { 429 compatible = "fsl,mma7660"; 429 compatible = "fsl,mma7660"; 430 reg = <0x4c>; 430 reg = <0x4c>; 431 interrupt-parent = <&gpio0>; 431 interrupt-parent = <&gpio0>; 432 interrupts = <RK_PB7 IRQ_TYPE_ 432 interrupts = <RK_PB7 IRQ_TYPE_LEVEL_LOW>; 433 }; 433 }; 434 }; 434 }; 435 435 436 &i2c2 { 436 &i2c2 { 437 status = "okay"; 437 status = "okay"; 438 438 439 clock-frequency = <100000>; 439 clock-frequency = <100000>; 440 440 441 /* These are relatively safe rise/fall 441 /* These are relatively safe rise/fall times; TODO: measure */ 442 i2c-scl-falling-time-ns = <50>; 442 i2c-scl-falling-time-ns = <50>; 443 i2c-scl-rising-time-ns = <300>; 443 i2c-scl-rising-time-ns = <300>; 444 444 445 ov5695: ov5695@36 { 445 ov5695: ov5695@36 { 446 compatible = "ovti,ov5695"; 446 compatible = "ovti,ov5695"; 447 reg = <0x36>; 447 reg = <0x36>; 448 avdd-supply = <&vcc2v8_dvp>; 448 avdd-supply = <&vcc2v8_dvp>; 449 clocks = <&cru SCLK_CIF_OUT>; 449 clocks = <&cru SCLK_CIF_OUT>; 450 clock-names = "xvclk"; 450 clock-names = "xvclk"; 451 dvdd-supply = <&vcc1v5_dvp>; 451 dvdd-supply = <&vcc1v5_dvp>; 452 dovdd-supply = <&vcc1v8_dvp>; 452 dovdd-supply = <&vcc1v8_dvp>; 453 pinctrl-names = "default"; 453 pinctrl-names = "default"; 454 pinctrl-0 = <&cif_clkout_m0 &m 454 pinctrl-0 = <&cif_clkout_m0 &mipi_pdn>; 455 reset-gpios = <&gpio2 RK_PB6 G 455 reset-gpios = <&gpio2 RK_PB6 GPIO_ACTIVE_LOW>; 456 456 457 port { 457 port { 458 ucam_out: endpoint { 458 ucam_out: endpoint { 459 remote-endpoin 459 remote-endpoint = <&mipi_in_ucam>; 460 data-lanes = < 460 data-lanes = <1 2>; 461 }; 461 }; 462 }; 462 }; 463 }; 463 }; 464 }; 464 }; 465 465 466 &i2s1_2ch { 466 &i2s1_2ch { 467 status = "okay"; 467 status = "okay"; 468 }; 468 }; 469 469 470 &io_domains { 470 &io_domains { 471 status = "okay"; 471 status = "okay"; 472 472 473 vccio1-supply = <&vccio_sdio>; 473 vccio1-supply = <&vccio_sdio>; 474 vccio2-supply = <&vccio_sd>; 474 vccio2-supply = <&vccio_sd>; 475 vccio3-supply = <&vcc_3v0>; 475 vccio3-supply = <&vcc_3v0>; 476 vccio4-supply = <&vcc3v0_pmu>; 476 vccio4-supply = <&vcc3v0_pmu>; 477 vccio5-supply = <&vcc_3v0>; 477 vccio5-supply = <&vcc_3v0>; 478 vccio6-supply = <&vccio_flash>; 478 vccio6-supply = <&vccio_flash>; 479 }; 479 }; 480 480 481 &isp { 481 &isp { 482 status = "okay"; 482 status = "okay"; 483 483 484 ports { 484 ports { 485 port@0 { 485 port@0 { 486 mipi_in_ucam: endpoint 486 mipi_in_ucam: endpoint@0 { 487 reg = <0>; 487 reg = <0>; 488 data-lanes = < 488 data-lanes = <1 2>; 489 remote-endpoin 489 remote-endpoint = <&ucam_out>; 490 }; 490 }; 491 }; 491 }; 492 }; 492 }; 493 }; 493 }; 494 494 495 &isp_mmu { 495 &isp_mmu { 496 status = "okay"; 496 status = "okay"; 497 }; 497 }; 498 498 499 &pinctrl { 499 &pinctrl { 500 headphone { 500 headphone { 501 hp_det: hp-det { 501 hp_det: hp-det { 502 rockchip,pins = 502 rockchip,pins = 503 <2 RK_PB0 RK_F 503 <2 RK_PB0 RK_FUNC_GPIO &pcfg_pull_down>; 504 }; 504 }; 505 }; 505 }; 506 506 507 emmc { 507 emmc { 508 emmc_reset: emmc-reset { 508 emmc_reset: emmc-reset { 509 rockchip,pins = <1 RK_ 509 rockchip,pins = <1 RK_PB3 RK_FUNC_GPIO &pcfg_pull_none>; 510 }; 510 }; 511 }; 511 }; 512 512 513 pmic { 513 pmic { 514 pmic_int: pmic_int { 514 pmic_int: pmic_int { 515 rockchip,pins = 515 rockchip,pins = 516 <0 RK_PA7 RK_F 516 <0 RK_PA7 RK_FUNC_GPIO &pcfg_pull_up>; 517 }; 517 }; 518 518 519 soc_slppin_gpio: soc_slppin_gp 519 soc_slppin_gpio: soc_slppin_gpio { 520 rockchip,pins = 520 rockchip,pins = 521 <0 RK_PA4 RK_F 521 <0 RK_PA4 RK_FUNC_GPIO &pcfg_output_low>; 522 }; 522 }; 523 523 524 soc_slppin_slp: soc_slppin_slp 524 soc_slppin_slp: soc_slppin_slp { 525 rockchip,pins = 525 rockchip,pins = 526 <0 RK_PA4 1 &p 526 <0 RK_PA4 1 &pcfg_pull_none>; 527 }; 527 }; 528 528 529 soc_slppin_rst: soc_slppin_rst 529 soc_slppin_rst: soc_slppin_rst { 530 rockchip,pins = 530 rockchip,pins = 531 <0 RK_PA4 2 &p 531 <0 RK_PA4 2 &pcfg_pull_none>; 532 }; 532 }; 533 }; 533 }; 534 534 535 sdio-pwrseq { 535 sdio-pwrseq { 536 wifi_enable_h: wifi-enable-h { 536 wifi_enable_h: wifi-enable-h { 537 rockchip,pins = 537 rockchip,pins = 538 <0 RK_PA2 RK_F 538 <0 RK_PA2 RK_FUNC_GPIO &pcfg_pull_none>; 539 }; 539 }; 540 }; 540 }; 541 541 542 cif-m0 { 542 cif-m0 { 543 cif_clkout_m0: cif-clkout-m0 { 543 cif_clkout_m0: cif-clkout-m0 { 544 rockchip,pins = 544 rockchip,pins = 545 <2 RK_PB3 1 &p 545 <2 RK_PB3 1 &pcfg_pull_none_12ma>; 546 }; 546 }; 547 }; 547 }; 548 548 549 mipi { 549 mipi { 550 mipi_pdn: mipi-pdn { 550 mipi_pdn: mipi-pdn { 551 rockchip,pins = <2 RK_ 551 rockchip,pins = <2 RK_PB6 RK_FUNC_GPIO &pcfg_pull_none>; 552 }; 552 }; 553 }; 553 }; 554 }; 554 }; 555 555 556 &pmu_io_domains { 556 &pmu_io_domains { 557 status = "okay"; 557 status = "okay"; 558 558 559 pmuio1-supply = <&vcc3v0_pmu>; 559 pmuio1-supply = <&vcc3v0_pmu>; 560 pmuio2-supply = <&vcc3v0_pmu>; 560 pmuio2-supply = <&vcc3v0_pmu>; 561 }; 561 }; 562 562 563 &pwm1 { 563 &pwm1 { 564 status = "okay"; 564 status = "okay"; 565 }; 565 }; 566 566 567 &saradc { 567 &saradc { 568 vref-supply = <&vcc_1v8>; 568 vref-supply = <&vcc_1v8>; 569 status = "okay"; 569 status = "okay"; 570 }; 570 }; 571 571 572 &sdmmc { 572 &sdmmc { 573 cap-mmc-highspeed; 573 cap-mmc-highspeed; 574 cap-sd-highspeed; 574 cap-sd-highspeed; 575 card-detect-delay = <800>; 575 card-detect-delay = <800>; 576 sd-uhs-sdr12; 576 sd-uhs-sdr12; 577 sd-uhs-sdr25; 577 sd-uhs-sdr25; 578 sd-uhs-sdr50; 578 sd-uhs-sdr50; 579 sd-uhs-sdr104; 579 sd-uhs-sdr104; 580 vmmc-supply = <&vcc_sd>; 580 vmmc-supply = <&vcc_sd>; 581 vqmmc-supply = <&vccio_sd>; 581 vqmmc-supply = <&vccio_sd>; 582 status = "okay"; 582 status = "okay"; 583 }; 583 }; 584 584 585 &sdio { 585 &sdio { 586 cap-sd-highspeed; 586 cap-sd-highspeed; 587 keep-power-in-suspend; 587 keep-power-in-suspend; 588 non-removable; 588 non-removable; 589 mmc-pwrseq = <&sdio_pwrseq>; 589 mmc-pwrseq = <&sdio_pwrseq>; 590 sd-uhs-sdr104; 590 sd-uhs-sdr104; 591 status = "okay"; 591 status = "okay"; 592 }; 592 }; 593 593 594 &tsadc { 594 &tsadc { 595 rockchip,hw-tshut-mode = <1>; 595 rockchip,hw-tshut-mode = <1>; 596 rockchip,hw-tshut-polarity = <1>; 596 rockchip,hw-tshut-polarity = <1>; 597 status = "okay"; 597 status = "okay"; 598 }; 598 }; 599 599 600 &u2phy { 600 &u2phy { 601 status = "okay"; 601 status = "okay"; 602 602 603 u2phy_host: host-port { 603 u2phy_host: host-port { 604 status = "okay"; 604 status = "okay"; 605 }; 605 }; 606 606 607 u2phy_otg: otg-port { 607 u2phy_otg: otg-port { 608 status = "okay"; 608 status = "okay"; 609 }; 609 }; 610 }; 610 }; 611 611 612 &uart1 { 612 &uart1 { 613 pinctrl-names = "default"; 613 pinctrl-names = "default"; 614 pinctrl-0 = <&uart1_xfer &uart1_cts>; 614 pinctrl-0 = <&uart1_xfer &uart1_cts>; 615 status = "okay"; 615 status = "okay"; 616 }; 616 }; 617 617 618 &uart5 { 618 &uart5 { 619 status = "okay"; 619 status = "okay"; 620 }; 620 }; 621 621 622 &usb20_otg { 622 &usb20_otg { 623 status = "okay"; 623 status = "okay"; 624 }; 624 }; 625 625 626 &usb_host0_ehci { 626 &usb_host0_ehci { 627 status = "okay"; 627 status = "okay"; 628 }; 628 }; 629 629 630 &usb_host0_ohci { 630 &usb_host0_ohci { 631 status = "okay"; 631 status = "okay"; 632 }; 632 }; 633 633 634 &vopb { 634 &vopb { 635 status = "okay"; 635 status = "okay"; 636 }; 636 }; 637 637 638 &vopb_mmu { 638 &vopb_mmu { 639 status = "okay"; 639 status = "okay"; 640 }; 640 }; 641 641 642 &vopl { 642 &vopl { 643 status = "okay"; 643 status = "okay"; 644 }; 644 }; 645 645 646 &vopl_mmu { 646 &vopl_mmu { 647 status = "okay"; 647 status = "okay"; 648 }; 648 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.