mirror of
https://github.com/raspberrypi/linux.git
synced 2025-12-06 18:09:56 +00:00
arm64: dts: rockchip: add overlay for RK3399 Puma Haikou Video Demo adapter
This adds support for the video-demo-adapter DEVKIT ADDON CAM-TS-A01 (https://embedded.cherry.de/product/development-kit/) for the Haikou devkit with RK3399 Puma SoM. The Video Demo adapter is an adapter connected to the fake PCIe slot labeled "Video Connector" on the Haikou devkit. Its main feature is a Leadtek DSI-display with touchscreen and a camera (that is not supported yet because the expected clock rate by the driver cannot be exactly reached by the clock driver). To drive these components a number of additional regulators are grouped on the adapter as well as a PCA9670 gpio-expander to provide the needed additional gpio-lines. Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de> Link: https://lore.kernel.org/r/20250221-ringneck-dtbos-v2-5-310c0b9a3909@cherry.de Signed-off-by: Heiko Stuebner <heiko@sntech.de>
This commit is contained in:
committed by
Heiko Stuebner
parent
9f889cf178
commit
066a69db9d
@@ -63,6 +63,7 @@ dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-orangepi.dtb
|
|||||||
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-pinebook-pro.dtb
|
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-pinebook-pro.dtb
|
||||||
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-pinephone-pro.dtb
|
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-pinephone-pro.dtb
|
||||||
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-puma-haikou.dtb
|
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-puma-haikou.dtb
|
||||||
|
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-puma-haikou-video-demo.dtbo
|
||||||
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-roc-pc.dtb
|
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-roc-pc.dtb
|
||||||
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-roc-pc-mezzanine.dtb
|
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-roc-pc-mezzanine.dtb
|
||||||
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-roc-pc-plus.dtb
|
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-roc-pc-plus.dtb
|
||||||
@@ -201,6 +202,10 @@ dtb-$(CONFIG_ARCH_ROCKCHIP) += px30-ringneck-haikou-haikou-video-demo.dtb
|
|||||||
px30-ringneck-haikou-haikou-video-demo-dtbs := px30-ringneck-haikou.dtb \
|
px30-ringneck-haikou-haikou-video-demo-dtbs := px30-ringneck-haikou.dtb \
|
||||||
px30-ringneck-haikou-video-demo.dtbo
|
px30-ringneck-haikou-video-demo.dtbo
|
||||||
|
|
||||||
|
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-puma-haikou-haikou-video-demo.dtb
|
||||||
|
rk3399-puma-haikou-haikou-video-demo-dtbs := rk3399-puma-haikou.dtb \
|
||||||
|
rk3399-puma-haikou-video-demo.dtbo
|
||||||
|
|
||||||
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3568-wolfvision-pf5-vz-2-uhd.dtb
|
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3568-wolfvision-pf5-vz-2-uhd.dtb
|
||||||
rk3568-wolfvision-pf5-vz-2-uhd-dtbs := rk3568-wolfvision-pf5.dtb \
|
rk3568-wolfvision-pf5-vz-2-uhd-dtbs := rk3568-wolfvision-pf5.dtb \
|
||||||
rk3568-wolfvision-pf5-display-vz.dtbo \
|
rk3568-wolfvision-pf5-display-vz.dtbo \
|
||||||
|
|||||||
166
arch/arm64/boot/dts/rockchip/rk3399-puma-haikou-video-demo.dtso
Normal file
166
arch/arm64/boot/dts/rockchip/rk3399-puma-haikou-video-demo.dtso
Normal file
@@ -0,0 +1,166 @@
|
|||||||
|
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
||||||
|
/*
|
||||||
|
* Copyright (c) 2025 Cherry Embedded Solutions GmbH
|
||||||
|
*
|
||||||
|
* DEVKIT ADDON CAM-TS-A01
|
||||||
|
* https://embedded.cherry.de/product/development-kit/
|
||||||
|
*
|
||||||
|
* DT-overlay for the camera / DSI demo appliance for Haikou boards.
|
||||||
|
* In the flavour for use with a Puma system-on-module.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/dts-v1/;
|
||||||
|
/plugin/;
|
||||||
|
|
||||||
|
#include <dt-bindings/clock/rk3399-cru.h>
|
||||||
|
#include <dt-bindings/gpio/gpio.h>
|
||||||
|
#include <dt-bindings/interrupt-controller/irq.h>
|
||||||
|
#include <dt-bindings/leds/common.h>
|
||||||
|
#include <dt-bindings/pinctrl/rockchip.h>
|
||||||
|
|
||||||
|
&{/} {
|
||||||
|
backlight: backlight {
|
||||||
|
compatible = "pwm-backlight";
|
||||||
|
power-supply = <&dc_12v>;
|
||||||
|
pwms = <&pwm0 0 25000 0>;
|
||||||
|
};
|
||||||
|
|
||||||
|
cam_afvdd_2v8: regulator-cam-afvdd-2v8 {
|
||||||
|
compatible = "regulator-fixed";
|
||||||
|
gpio = <&pca9670 2 GPIO_ACTIVE_LOW>;
|
||||||
|
regulator-max-microvolt = <2800000>;
|
||||||
|
regulator-min-microvolt = <2800000>;
|
||||||
|
regulator-name = "cam-afvdd-2v8";
|
||||||
|
vin-supply = <&vcc2v8_video>;
|
||||||
|
};
|
||||||
|
|
||||||
|
cam_avdd_2v8: regulator-cam-avdd-2v8 {
|
||||||
|
compatible = "regulator-fixed";
|
||||||
|
gpio = <&pca9670 4 GPIO_ACTIVE_LOW>;
|
||||||
|
regulator-max-microvolt = <2800000>;
|
||||||
|
regulator-min-microvolt = <2800000>;
|
||||||
|
regulator-name = "cam-avdd-2v8";
|
||||||
|
vin-supply = <&vcc2v8_video>;
|
||||||
|
};
|
||||||
|
|
||||||
|
cam_dovdd_1v8: regulator-cam-dovdd-1v8 {
|
||||||
|
compatible = "regulator-fixed";
|
||||||
|
gpio = <&pca9670 3 GPIO_ACTIVE_LOW>;
|
||||||
|
regulator-max-microvolt = <1800000>;
|
||||||
|
regulator-min-microvolt = <1800000>;
|
||||||
|
regulator-name = "cam-dovdd-1v8";
|
||||||
|
vin-supply = <&vcc1v8_video>;
|
||||||
|
};
|
||||||
|
|
||||||
|
cam_dvdd_1v2: regulator-cam-dvdd-1v2 {
|
||||||
|
compatible = "regulator-fixed";
|
||||||
|
enable-active-high;
|
||||||
|
gpio = <&pca9670 5 GPIO_ACTIVE_HIGH>;
|
||||||
|
regulator-max-microvolt = <1200000>;
|
||||||
|
regulator-min-microvolt = <1200000>;
|
||||||
|
regulator-name = "cam-dvdd-1v2";
|
||||||
|
vin-supply = <&vcc3v3_baseboard>;
|
||||||
|
};
|
||||||
|
|
||||||
|
vcc1v8_video: regulator-vcc1v8-video {
|
||||||
|
compatible = "regulator-fixed";
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
regulator-max-microvolt = <1800000>;
|
||||||
|
regulator-min-microvolt = <1800000>;
|
||||||
|
regulator-name = "vcc1v8-video";
|
||||||
|
vin-supply = <&vcc3v3_baseboard>;
|
||||||
|
};
|
||||||
|
|
||||||
|
vcc2v8_video: regulator-vcc2v8-video {
|
||||||
|
compatible = "regulator-fixed";
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
regulator-max-microvolt = <2800000>;
|
||||||
|
regulator-min-microvolt = <2800000>;
|
||||||
|
regulator-name = "vcc2v8-video";
|
||||||
|
vin-supply = <&vcc3v3_baseboard>;
|
||||||
|
};
|
||||||
|
|
||||||
|
video-adapter-leds {
|
||||||
|
compatible = "gpio-leds";
|
||||||
|
|
||||||
|
video-adapter-led {
|
||||||
|
color = <LED_COLOR_ID_BLUE>;
|
||||||
|
gpios = <&pca9670 7 GPIO_ACTIVE_HIGH>;
|
||||||
|
label = "video-adapter-led";
|
||||||
|
linux,default-trigger = "none";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&i2c1 {
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <0>;
|
||||||
|
/* OV5675, GT911, DW9714 are limited to 400KHz */
|
||||||
|
clock-frequency = <400000>;
|
||||||
|
|
||||||
|
touchscreen@14 {
|
||||||
|
compatible = "goodix,gt911";
|
||||||
|
reg = <0x14>;
|
||||||
|
interrupt-parent = <&gpio1>;
|
||||||
|
interrupts = <RK_PC7 IRQ_TYPE_LEVEL_LOW>;
|
||||||
|
irq-gpios = <&gpio1 RK_PC7 GPIO_ACTIVE_HIGH>;
|
||||||
|
pinctrl-0 = <&touch_int>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
reset-gpios = <&pca9670 1 GPIO_ACTIVE_HIGH>;
|
||||||
|
AVDD28-supply = <&vcc2v8_video>;
|
||||||
|
VDDIO-supply = <&vcc3v3_baseboard>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pca9670: gpio@27 {
|
||||||
|
compatible = "nxp,pca9670";
|
||||||
|
reg = <0x27>;
|
||||||
|
gpio-controller;
|
||||||
|
#gpio-cells = <2>;
|
||||||
|
pinctrl-0 = <&pca9670_resetn>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
reset-gpios = <&gpio4 RK_PD6 GPIO_ACTIVE_LOW>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&mipi_out {
|
||||||
|
mipi_out_panel: endpoint {
|
||||||
|
remote-endpoint = <&mipi_in_panel>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&mipi_dsi {
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <0>;
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
panel@0 {
|
||||||
|
compatible = "leadtek,ltk050h3148w";
|
||||||
|
reg = <0>;
|
||||||
|
backlight = <&backlight>;
|
||||||
|
iovcc-supply = <&vcc1v8_video>;
|
||||||
|
reset-gpios = <&pca9670 0 GPIO_ACTIVE_LOW>;
|
||||||
|
vci-supply = <&vcc2v8_video>;
|
||||||
|
|
||||||
|
port {
|
||||||
|
mipi_in_panel: endpoint {
|
||||||
|
remote-endpoint = <&mipi_out_panel>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&pinctrl {
|
||||||
|
pca9670 {
|
||||||
|
pca9670_resetn: pca9670-resetn {
|
||||||
|
rockchip,pins = <4 RK_PD6 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
touch {
|
||||||
|
touch_int: touch-int {
|
||||||
|
rockchip,pins = <1 RK_PC7 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
Reference in New Issue
Block a user