Commit bc90f56a authored by Neil Armstrong's avatar Neil Armstrong Committed by Bjorn Andersson

arm64: dts: sm8650-hdk: add support for the Display Card overlay

With the SM8650-HDK, a Display Card kit can be connected to provide
a VTDR6130 display with Goodix Berlin Touch controller.

In order to route the DSI lanes to the connector for the Display
Card kit, a switch must be changed on the board.

The HDMI nodes are disabled since the DSI lanes are shared with
the DSI to HDMI transceiver.

Add support for this card as an overlay and apply it it at
build-time to the sm8650-hdk dtb.
Reviewed-by: default avatarVladimir Zapolskiy <vladimir.zapolskiy@linaro.org>
Tested-by: default avatarVladimir Zapolskiy <vladimir.zapolskiy@linaro.org>
Reviewed-by: default avatarKonrad Dybcio <konrad.dybcio@linaro.org>
Signed-off-by: default avatarNeil Armstrong <neil.armstrong@linaro.org>
Link: https://lore.kernel.org/r/20240606-topic-sm8650-upstream-hdk-v6-1-fb034fe864cc@linaro.orgSigned-off-by: default avatarBjorn Andersson <andersson@kernel.org>
parent 0354ab18
...@@ -250,6 +250,10 @@ dtb-$(CONFIG_ARCH_QCOM) += sm8550-mtp.dtb ...@@ -250,6 +250,10 @@ dtb-$(CONFIG_ARCH_QCOM) += sm8550-mtp.dtb
dtb-$(CONFIG_ARCH_QCOM) += sm8550-qrd.dtb dtb-$(CONFIG_ARCH_QCOM) += sm8550-qrd.dtb
dtb-$(CONFIG_ARCH_QCOM) += sm8550-samsung-q5q.dtb dtb-$(CONFIG_ARCH_QCOM) += sm8550-samsung-q5q.dtb
dtb-$(CONFIG_ARCH_QCOM) += sm8550-sony-xperia-yodo-pdx234.dtb dtb-$(CONFIG_ARCH_QCOM) += sm8550-sony-xperia-yodo-pdx234.dtb
sm8650-hdk-display-card-dtbs := sm8650-hdk.dtb sm8650-hdk-display-card.dtbo
dtb-$(CONFIG_ARCH_QCOM) += sm8650-hdk-display-card.dtb
dtb-$(CONFIG_ARCH_QCOM) += sm8650-hdk.dtb dtb-$(CONFIG_ARCH_QCOM) += sm8650-hdk.dtb
dtb-$(CONFIG_ARCH_QCOM) += sm8650-mtp.dtb dtb-$(CONFIG_ARCH_QCOM) += sm8650-mtp.dtb
dtb-$(CONFIG_ARCH_QCOM) += sm8650-qrd.dtb dtb-$(CONFIG_ARCH_QCOM) += sm8650-qrd.dtb
......
// SPDX-License-Identifier: BSD-3-Clause
/*
* Copyright (c) 2024, Linaro Limited
*/
/*
* Display Card kit overlay
* This requires S5702 Switch 7 to be turned to OFF to route DSI0 to the display panel
*/
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/interrupt-controller/irq.h>
/dts-v1/;
/plugin/;
/* Disable HDMI bridge related nodes (mutually exclusive with the display card) */
&i2c6 {
status = "disabled";
};
&lt9611_1v2 {
status = "disabled";
};
&lt9611_3v3 {
status = "disabled";
};
&vreg_bob_3v3 {
status = "disabled";
};
&lt9611_codec {
status = "disabled";
};
&mdss_dsi0 {
#address-cells = <1>;
#size-cells = <0>;
panel@0 {
compatible = "visionox,vtdr6130";
reg = <0>;
reset-gpios = <&tlmm 133 GPIO_ACTIVE_LOW>;
vddio-supply = <&vreg_l12b_1p8>;
vci-supply = <&vreg_l13b_3p0>;
vdd-supply = <&vreg_l11b_1p2>;
pinctrl-0 = <&disp0_reset_n_active>, <&mdp_vsync>;
pinctrl-1 = <&disp0_reset_n_suspend>, <&mdp_vsync>;
pinctrl-names = "default", "sleep";
port {
panel0_in: endpoint {
remote-endpoint = <&mdss_dsi0_out>;
};
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@1 {
reg = <1>;
mdss_dsi0_out: endpoint {
remote-endpoint = <&panel0_in>;
};
};
};
};
&spi4 {
#address-cells = <1>;
#size-cells = <0>;
status = "okay";
touchscreen@0 {
compatible = "goodix,gt9916";
reg = <0>;
interrupt-parent = <&tlmm>;
interrupts = <162 IRQ_TYPE_LEVEL_LOW>;
reset-gpios = <&tlmm 161 GPIO_ACTIVE_LOW>;
avdd-supply = <&vreg_l14b_3p2>;
spi-max-frequency = <1000000>;
touchscreen-size-x = <1080>;
touchscreen-size-y = <2400>;
pinctrl-0 = <&ts_irq>, <&ts_reset>;
pinctrl-names = "default";
};
};
&tlmm {
disp0_reset_n_active: disp0-reset-n-active-state {
pins = "gpio133";
function = "gpio";
drive-strength = <8>;
bias-disable;
};
disp0_reset_n_suspend: disp0-reset-n-suspend-state {
pins = "gpio133";
function = "gpio";
drive-strength = <2>;
bias-pull-down;
};
mdp_vsync: mdp-vsync-state {
pins = "gpio86";
function = "mdp_vsync";
drive-strength = <2>;
bias-pull-down;
};
ts_irq: ts-irq-state {
pins = "gpio161";
function = "gpio";
drive-strength = <8>;
bias-pull-up;
output-disable;
};
ts_reset: ts-reset-state {
pins = "gpio162";
function = "gpio";
drive-strength = <8>;
bias-pull-up;
};
};
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment