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