Skip to content
Open
1 change: 1 addition & 0 deletions Documentation/devicetree/bindings/arm/qcom.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -939,6 +939,7 @@ properties:
- items:
- enum:
- qcom,qcs615-ride
- qcom,talos-lyra-evk
- qcom,talos-evk
- const: qcom,qcs615
- const: qcom,sm6150
Expand Down
1 change: 1 addition & 0 deletions arch/arm64/boot/dts/qcom/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -401,6 +401,7 @@ dtb-$(CONFIG_ARCH_QCOM) += sm8650-qrd.dtb
dtb-$(CONFIG_ARCH_QCOM) += sm8750-mtp.dtb
dtb-$(CONFIG_ARCH_QCOM) += sm8750-qrd.dtb
dtb-$(CONFIG_ARCH_QCOM) += talos-evk.dtb
dtb-$(CONFIG_ARCH_QCOM) += talos-lyra-evk.dtb
talos-evk-usb1-peripheral-dtbs := talos-evk.dtb talos-evk-usb1-peripheral.dtbo
dtb-$(CONFIG_ARCH_QCOM) += talos-evk-usb1-peripheral.dtb
dtb-$(CONFIG_ARCH_QCOM) += talos-evk-camera-imx577.dtbo
Expand Down
220 changes: 220 additions & 0 deletions arch/arm64/boot/dts/qcom/talos-lyra-evk.dts
Original file line number Diff line number Diff line change
@@ -0,0 +1,220 @@
// SPDX-License-Identifier: BSD-3-Clause
/*
* Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
*/
/dts-v1/;

#include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
#include "talos-lyra-som.dtsi"

/ {
model = "Qualcomm QCS615 Talos lyra EVK";
compatible = "qcom,talos-lyra-evk", "qcom,qcs615", "qcom,sm6150";
chassis-type = "embedded";

dp0-connector {
compatible = "dp-connector";
label = "DP0";
type = "full-size";

hpd-gpios = <&tlmm 104 GPIO_ACTIVE_HIGH>;

port {
dp0_connector_in: endpoint {
remote-endpoint = <&mdss_dp0_out>;
};
};
};

hdmi-connector {
compatible = "hdmi-connector";
type = "a";

port {
hdmi_con: endpoint {
remote-endpoint = <&lt9611_out>;
};
};
};

vreg_lt9611_vcc: regulator-lt9611-vcc {
compatible = "regulator-fixed";
regulator-name = "lt9611_vcc";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
gpio = <&tlmm 3 GPIO_ACTIVE_HIGH>;
enable-active-high;
pinctrl-0 = <&lt9611_vcc_pin>;
pinctrl-names = "default";
};
};

&i2c2 {
status = "okay";

lt9611uxd: lt9611uxd@41 {
compatible = "lontium,lt9611uxd";
reg = <0x41>;
interrupts-extended = <&tlmm 60 IRQ_TYPE_EDGE_FALLING>;
reset-gpios = <&tlmm 61 GPIO_ACTIVE_LOW>;
vcc-supply = <&vreg_lt9611_vcc>;
vdd-supply = <&vreg_s4a>;

pinctrl-0 = <&lt9611_irq_pin &lt9611_rst_pin>;
pinctrl-names = "default";

ports {
#address-cells = <1>;
#size-cells = <0>;

port@0 {
reg = <0>;

lt9611_a: endpoint {
remote-endpoint = <&mdss_dsi0_out>;
};
};

port@2 {
reg = <2>;

lt9611_out: endpoint {
remote-endpoint = <&hdmi_con>;
};
};
};
};
};

&mdss {
status = "okay";
};

&mdss_dp0 {
status = "okay";
};

&mdss_dp0_out {
link-frequencies = /bits/ 64 <1620000000 2700000000 5400000000>;
remote-endpoint = <&dp0_connector_in>;
};

&i2c5 {
status = "okay";

expander0: gpio@20 {
compatible = "kinetic,kts1622", "nxp,pca9555";
reg = <0x20>;
gpio-controller;
#gpio-cells = <2>;
#interrupt-cells = <2>;
interrupt-controller;
};

expander1: gpio@21 {
compatible = "kinetic,kts1622", "nxp,pca9555";
reg = <0x21>;
gpio-controller;
#gpio-cells = <2>;
#interrupt-cells = <2>;
interrupt-controller;
};

expander2: gpio@38 {
compatible = "ti,tca9538";
reg = <0x38>;
gpio-controller;
#gpio-cells = <2>;
#interrupt-cells = <2>;
interrupt-controller;
};
};

&mdss_dsi0 {
status = "okay";
};

&mdss_dsi0_out {
remote-endpoint = <&lt9611_a>;
data-lanes = <0 1 2 3>;
};

&mdss_dsi0_phy {
status = "okay";
};

&pon_pwrkey {
status = "okay";
};

&pon_resin {
linux,code = <KEY_VOLUMEDOWN>;

status = "okay";
};

&tlmm {
lt9611_irq_pin: lt9611-irq-state {
pins = "gpio60";
function = "gpio";
drive-strength = <2>;
bias-disable;
};

lt9611_rst_pin: lt9611-rst-state {
pins = "gpio61";
function = "gpio";
drive-strength = <8>;
bias-disable;
};

lt9611_vcc_pin: lt9611-vcc-state {
pins = "gpio3";
function = "gpio";
drive-strength = <8>;
bias-disable;
};

};

&usb_1_hsphy {
vdd-supply = <&vreg_l5a>;
vdda-pll-supply = <&vreg_l12a>;
vdda-phy-dpdm-supply = <&vreg_l13a>;

status = "okay";
};

&usb_qmpphy {
vdda-phy-supply = <&vreg_l5a>;
vdda-pll-supply = <&vreg_l12a>;

status = "okay";
};

&usb_qmpphy_2 {
vdda-phy-supply = <&vreg_l5a>;
vdda-pll-supply = <&vreg_l12a>;

status = "okay";
};

&usb_1 {
dr_mode = "peripheral";

status = "okay";
};

&usb_2_hsphy {
vdd-supply = <&vreg_l5a>;
vdda-pll-supply = <&vreg_l12a>;
vdda-phy-dpdm-supply = <&vreg_l13a>;

status = "okay";
};

&usb_2 {
dr_mode = "host";

status = "okay";
};
Loading