File Index
Files and directories
Sign in
FILE

rk3399-puma-haikou-video-demo.dtso

File preview with syntax highlighting.

linux-6.19.14/arch/arm64/boot/dts/rockchip/rk3399-puma-haikou-video-demo.dtso PLAIN TEXT
  1// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
  2/*
  3 * Copyright (c) 2025 Cherry Embedded Solutions GmbH
  4 *
  5 * DEVKIT ADDON CAM-TS-A01
  6 * https://embedded.cherry.de/product/development-kit/
  7 *
  8 * DT-overlay for the camera / DSI demo appliance for Haikou boards.
  9 * In the flavour for use with a Puma system-on-module.
 10 */
 11
 12/dts-v1/;
 13/plugin/;
 14
 15#include <dt-bindings/clock/rk3399-cru.h>
 16#include <dt-bindings/gpio/gpio.h>
 17#include <dt-bindings/interrupt-controller/irq.h>
 18#include <dt-bindings/leds/common.h>
 19#include <dt-bindings/pinctrl/rockchip.h>
 20
 21&{/} {
 22	backlight: backlight {
 23		compatible = "pwm-backlight";
 24		power-supply = <&dc_12v>;
 25		pwms = <&pwm0 0 25000 0>;
 26	};
 27
 28	cam_afvdd_2v8: regulator-cam-afvdd-2v8 {
 29		compatible = "regulator-fixed";
 30		gpio = <&pca9670 2 GPIO_ACTIVE_LOW>;
 31		regulator-max-microvolt = <2800000>;
 32		regulator-min-microvolt = <2800000>;
 33		regulator-name = "cam-afvdd-2v8";
 34		vin-supply = <&vcc2v8_video>;
 35	};
 36
 37	cam_avdd_2v8: regulator-cam-avdd-2v8 {
 38		compatible = "regulator-fixed";
 39		gpio = <&pca9670 4 GPIO_ACTIVE_LOW>;
 40		regulator-max-microvolt = <2800000>;
 41		regulator-min-microvolt = <2800000>;
 42		regulator-name = "cam-avdd-2v8";
 43		vin-supply = <&vcc2v8_video>;
 44	};
 45
 46	cam_dovdd_1v8: regulator-cam-dovdd-1v8 {
 47		compatible = "regulator-fixed";
 48		gpio = <&pca9670 3 GPIO_ACTIVE_LOW>;
 49		regulator-max-microvolt = <1800000>;
 50		regulator-min-microvolt = <1800000>;
 51		regulator-name = "cam-dovdd-1v8";
 52		vin-supply = <&vcc1v8_video>;
 53	};
 54
 55	cam_dvdd_1v2: regulator-cam-dvdd-1v2 {
 56		compatible = "regulator-fixed";
 57		enable-active-high;
 58		gpio = <&pca9670 5 GPIO_ACTIVE_HIGH>;
 59		regulator-max-microvolt = <1200000>;
 60		regulator-min-microvolt = <1200000>;
 61		regulator-name = "cam-dvdd-1v2";
 62		vin-supply = <&vcc3v3_baseboard>;
 63	};
 64
 65	vcc1v8_video: regulator-vcc1v8-video {
 66		compatible = "regulator-fixed";
 67		regulator-always-on;
 68		regulator-boot-on;
 69		regulator-max-microvolt = <1800000>;
 70		regulator-min-microvolt = <1800000>;
 71		regulator-name = "vcc1v8-video";
 72		vin-supply = <&vcc3v3_baseboard>;
 73	};
 74
 75	vcc2v8_video: regulator-vcc2v8-video {
 76		compatible = "regulator-fixed";
 77		regulator-always-on;
 78		regulator-boot-on;
 79		regulator-max-microvolt = <2800000>;
 80		regulator-min-microvolt = <2800000>;
 81		regulator-name = "vcc2v8-video";
 82		vin-supply = <&vcc3v3_baseboard>;
 83	};
 84
 85	video-adapter-leds {
 86		compatible = "gpio-leds";
 87
 88		video-adapter-led {
 89			color = <LED_COLOR_ID_BLUE>;
 90			gpios = <&pca9670 7 GPIO_ACTIVE_HIGH>;
 91			label = "video-adapter-led";
 92			linux,default-trigger = "none";
 93		};
 94	};
 95};
 96
 97&i2c1 {
 98	#address-cells = <1>;
 99	#size-cells = <0>;
100	/* OV5675, GT911, DW9714 are limited to 400KHz */
101	clock-frequency = <400000>;
102
103	touchscreen@14 {
104		compatible = "goodix,gt911";
105		reg = <0x14>;
106		interrupt-parent = <&gpio1>;
107		interrupts = <RK_PC7 IRQ_TYPE_LEVEL_LOW>;
108		irq-gpios = <&gpio1 RK_PC7 GPIO_ACTIVE_HIGH>;
109		pinctrl-0 = <&touch_int>;
110		pinctrl-names = "default";
111		reset-gpios = <&pca9670 1 GPIO_ACTIVE_HIGH>;
112		AVDD28-supply = <&vcc2v8_video>;
113		VDDIO-supply = <&vcc3v3_baseboard>;
114	};
115
116	pca9670: gpio@27 {
117		compatible = "nxp,pca9670";
118		reg = <0x27>;
119		gpio-controller;
120		#gpio-cells = <2>;
121		pinctrl-0 = <&pca9670_resetn>;
122		pinctrl-names = "default";
123		reset-gpios = <&gpio4 RK_PD6 GPIO_ACTIVE_LOW>;
124	};
125};
126
127&mipi_dsi {
128	#address-cells = <1>;
129	#size-cells = <0>;
130	status = "okay";
131
132	panel@0 {
133		compatible = "leadtek,ltk050h3148w";
134		reg = <0>;
135		backlight = <&backlight>;
136		iovcc-supply = <&vcc1v8_video>;
137		reset-gpios = <&pca9670 0 GPIO_ACTIVE_LOW>;
138		vci-supply = <&vcc2v8_video>;
139
140		port {
141			mipi_in_panel: endpoint {
142				remote-endpoint = <&mipi_out_panel>;
143			};
144		};
145	};
146};
147
148&mipi_out {
149	mipi_out_panel: endpoint {
150		remote-endpoint = <&mipi_in_panel>;
151	};
152};
153
154&pinctrl {
155	pca9670 {
156		pca9670_resetn: pca9670-resetn {
157			rockchip,pins = <4 RK_PD6 RK_FUNC_GPIO &pcfg_pull_none>;
158		};
159	};
160
161	touch {
162		touch_int: touch-int {
163			rockchip,pins = <1 RK_PC7 RK_FUNC_GPIO &pcfg_pull_none>;
164		};
165	};
166};
~/ Read-only file preview.