From nobody Wed Dec 17 00:15:45 2025 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id BEB56C10DC1 for ; Thu, 30 Nov 2023 10:20:35 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1345040AbjK3KU0 (ORCPT ); Thu, 30 Nov 2023 05:20:26 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:51666 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S235158AbjK3KUQ (ORCPT ); Thu, 30 Nov 2023 05:20:16 -0500 Received: from mail-lj1-x22c.google.com (mail-lj1-x22c.google.com [IPv6:2a00:1450:4864:20::22c]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 4549410FD for ; Thu, 30 Nov 2023 02:20:16 -0800 (PST) Received: by mail-lj1-x22c.google.com with SMTP id 38308e7fff4ca-2c9c03dac8aso9484921fa.0 for ; Thu, 30 Nov 2023 02:20:16 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1701339614; x=1701944414; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=8bMrcES86CdSQONkR9JBqr8JyNo6XxvrCH6tbtQgulA=; b=oZuFsrzUKNPUxEA5npNrlzWEu0XLbbshpMSGqMDZyU+KW240R8x0S8HSY4Vp6G4hB2 55lE/n8GKkkfJOLGvcO4V0gXhPJMvu3gtvsrdsQHv/dy8bDjS2uvNmHsAzfCTF9SIkS7 E5wfsBhGGw0tXN0YDoFFV/faGlftQMA1o7hx/p63W1QrOKdp2NLidmxMnHx5bszlRCz3 lpnOGf7hOm+chLnPcnxON7ALrwySHxtTCg4Dcl6EeCuVxAZvV4TVDh6UUazrbAo/SF5h 2eKADCyMnmLslY3WC9pWy2rO2iKsf1Ff/VZGI4MMQq1ArEe4Pri6RIKmRzsiKl1weW6r FAMw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1701339614; x=1701944414; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=8bMrcES86CdSQONkR9JBqr8JyNo6XxvrCH6tbtQgulA=; b=U35BgcZlHwUrnMhXqsSED2mFt4+MYEUpa/ano0l3e97lgBdYthmdIsl5NmSiGPoIfB pxfsGD3jFnZeUUCgmu0/lYqMuAL3vRgt8Iek52bDZOzsIVg7BEjxaubBUKqsHEOKpIj3 YRl3QK8zX5jI4o9YNVkshOYZnvGDWNISX00qmnXHZofomTm896DjayCWBXKEpfT9azof paw5Fq5gvN6v0q/aO/8EF7aUN4YVrV5hxiNzN4X1SuRlKNk9Fqp2Wwap/Ms9IXGEcjts sp46Qb675tus2VnBW/T+5QdL+IdIi/kLsCHqSIgGu+GkjHnNm81x3p2pqQ3V2nL6RTbj Z+cg== X-Gm-Message-State: AOJu0Yy4AqwDd96NVlJX/sYjoOiS3zNQNZmdbo4jvIs9ffIfPgeEI+na TTcyzhUwWHJhgziJlpMemo2wNw== X-Google-Smtp-Source: AGHT+IHJRgtOe0pV3oatsLBzZZfpJ1YhQGIa5NqmI/jHw1Ri55NMiM0p4dVy/by7yc1w8HUjtOzjvA== X-Received: by 2002:a2e:3a03:0:b0:2c9:c03d:58c9 with SMTP id h3-20020a2e3a03000000b002c9c03d58c9mr2965284lja.28.1701339614543; Thu, 30 Nov 2023 02:20:14 -0800 (PST) Received: from arrakeen.starnux.net ([2a01:e0a:982:cbb0:52eb:f6ff:feb3:451a]) by smtp.gmail.com with ESMTPSA id l10-20020a05600c1d0a00b00407460234f9sm1465217wms.21.2023.11.30.02.20.13 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 30 Nov 2023 02:20:14 -0800 (PST) From: Neil Armstrong Date: Thu, 30 Nov 2023 11:20:02 +0100 Subject: [PATCH v5 7/8] arm64: dts: qcom: sm8650-mtp: add interconnect dependent device nodes MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20231130-topic-sm8650-upstream-dt-v5-7-b25fb781da52@linaro.org> References: <20231130-topic-sm8650-upstream-dt-v5-0-b25fb781da52@linaro.org> In-Reply-To: <20231130-topic-sm8650-upstream-dt-v5-0-b25fb781da52@linaro.org> To: Andy Gross , Bjorn Andersson , Konrad Dybcio , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: linux-arm-msm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Neil Armstrong X-Mailer: b4 0.12.3 X-Developer-Signature: v=1; a=openpgp-sha256; l=6274; i=neil.armstrong@linaro.org; h=from:subject:message-id; bh=r9leNDaTdMg69rOglhJRjcIXbDF8kFCI4TYQbRiiLJ4=; b=owEBbQKS/ZANAwAKAXfc29rIyEnRAcsmYgBlaGHWjrz7oGV10FX1bQE45CH1/hivWkays4T1SBxT o+QeKKqJAjMEAAEKAB0WIQQ9U8YmyFYF/h30LIt33NvayMhJ0QUCZWhh1gAKCRB33NvayMhJ0QdqEA CRDN8C8GYS4uQPILk0oqBhEshrrXkX6Z2zTDIw7Jgd/dOyNXHK3HcKQs9xkdKi6RgTvqDRo65EqsLD 7UQOSPCUerBs1rARtguB/2kwJ/5WiJ0KNZuesyK2/RXzxbA04HF9mVBxVNy8BrDbiwXU1thjV/EWQI jfcOZ6bMknlLvX0t/mdgCfmWdZ/htvLzr2t5DZMueOPfUM/TpiJAwSMSx2HQ7huptioPVnIQxJq8uf KqxH+ownh6PJ8K4dqy4AsuYXDvgo5UoEfhxbTs5ylklTMQS1uD9QytDjWW254/PHlzpxA4tKNJHjYq dzUeYNTbgC7F8NgB3D9fjHh/I3mJhcYUSoZFzyVfBlzRtg4S8IS0rKQ5NLHH5/2x091FT3cj0jf8lc u1bOoTwrpbdm/T+VYGGkCBPQ2ZPlCkZ2lAsh/lhXAFpJSRSFn/DnearY4FRD11jQSdHFe6KN43e/EG gs0PIxuC+8bsH9f+RaUAgMk03Pu3YzZkp4SC0o9PLuEP2IlawAePr5ryaaACerj73cxDvQ0AQj4xvh dL+d/j3YVdtVCsxtfFWpV3Qf+9iekqZWMVYzdDvcPq6YFQTPfhBsEW6vUVOxemEKY7BzYlssMxJCc5 EDkgTMoU2GmSQsccDYTR2bmKqaA+TjaBhDK4HK1bTni7b8bAEMFbC9j29vSg== X-Developer-Key: i=neil.armstrong@linaro.org; a=openpgp; fpr=89EC3D058446217450F22848169AB7B1A4CFF8AE Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Now interconnect dependent devices are added in sm8650 DTSI, now enable more devices for the Qualcomm SM8650 MTP board: - PCIe - Display - DSPs - SDCard - UFS - USB role switch with PMIC Glink Reviewed-by: Konrad Dybcio Signed-off-by: Neil Armstrong --- arch/arm64/boot/dts/qcom/sm8650-mtp.dts | 235 ++++++++++++++++++++++++++++= +++- 1 file changed, 234 insertions(+), 1 deletion(-) diff --git a/arch/arm64/boot/dts/qcom/sm8650-mtp.dts b/arch/arm64/boot/dts/= qcom/sm8650-mtp.dts index 51092d20d610..656cdbc6f234 100644 --- a/arch/arm64/boot/dts/qcom/sm8650-mtp.dts +++ b/arch/arm64/boot/dts/qcom/sm8650-mtp.dts @@ -28,6 +28,44 @@ chosen { stdout-path =3D "serial0:115200n8"; }; =20 + pmic-glink { + compatible =3D "qcom,sm8650-pmic-glink", + "qcom,sm8550-pmic-glink", + "qcom,pmic-glink"; + #address-cells =3D <1>; + #size-cells =3D <0>; + orientation-gpios =3D <&tlmm 29 GPIO_ACTIVE_HIGH>; + + connector@0 { + compatible =3D "usb-c-connector"; + reg =3D <0>; + + power-role =3D "dual"; + data-role =3D "dual"; + + ports { + #address-cells =3D <1>; + #size-cells =3D <0>; + + port@0 { + reg =3D <0>; + + pmic_glink_hs_in: endpoint { + remote-endpoint =3D <&usb_1_dwc3_hs>; + }; + }; + + port@1 { + reg =3D <1>; + + pmic_glink_ss_in: endpoint { + remote-endpoint =3D <&usb_1_dwc3_ss>; + }; + }; + }; + }; + }; + vph_pwr: vph-pwr-regulator { compatible =3D "regulator-fixed"; =20 @@ -77,6 +115,9 @@ vreg_l2b_3p0: ldo2 { regulator-min-microvolt =3D <3008000>; regulator-max-microvolt =3D <3008000>; regulator-initial-mode =3D ; + regulator-allow-set-load; + regulator-allowed-modes =3D ; }; =20 vreg_l5b_3p1: ldo5 { @@ -389,6 +430,106 @@ vreg_l3i_1p2: ldo3 { }; }; =20 +&dispcc { + status =3D "okay"; +}; + +&mdss { + status =3D "okay"; +}; + +&mdss_dsi0 { + vdda-supply =3D <&vreg_l3i_1p2>; + + status =3D "okay"; + + panel@0 { + compatible =3D "visionox,vtdr6130"; + reg =3D <0>; + + reset-gpios =3D <&tlmm 133 GPIO_ACTIVE_LOW>; + + vddio-supply =3D <&vreg_l12b_1p8>; + vci-supply =3D <&vreg_l13b_3p0>; + vdd-supply =3D <&vreg_l11b_1p2>; + + pinctrl-0 =3D <&disp0_reset_n_active>, <&mdp_vsync_active>; + pinctrl-1 =3D <&disp0_reset_n_suspend>, <&mdp_vsync_suspend>; + pinctrl-names =3D "default", "sleep"; + + port { + panel0_in: endpoint { + remote-endpoint =3D <&mdss_dsi0_out>; + }; + }; + }; +}; + +&mdss_dsi0_out { + remote-endpoint =3D <&panel0_in>; + data-lanes =3D <0 1 2 3>; +}; + +&mdss_dsi0_phy { + vdds-supply =3D <&vreg_l1i_0p88>; + + status =3D "okay"; +}; + +&mdss_mdp { + status =3D "okay"; +}; + +&pcie_1_phy_aux_clk { + clock-frequency =3D <1000>; +}; + +&pcie0 { + wake-gpios =3D <&tlmm 96 GPIO_ACTIVE_HIGH>; + perst-gpios =3D <&tlmm 94 GPIO_ACTIVE_LOW>; + + pinctrl-0 =3D <&pcie0_default_state>; + pinctrl-names =3D "default"; + + status =3D "okay"; +}; + +&pcie0_phy { + vdda-phy-supply =3D <&vreg_l1i_0p88>; + vdda-pll-supply =3D <&vreg_l3i_1p2>; + + status =3D "okay"; +}; + +&pcie1 { + wake-gpios =3D <&tlmm 99 GPIO_ACTIVE_HIGH>; + perst-gpios =3D <&tlmm 97 GPIO_ACTIVE_LOW>; + + pinctrl-0 =3D <&pcie1_default_state>; + pinctrl-names =3D "default"; + + status =3D "okay"; +}; + +&pcie1_phy { + vdda-phy-supply =3D <&vreg_l3e_0p9>; + vdda-pll-supply =3D <&vreg_l3i_1p2>; + vdda-qref-supply =3D <&vreg_l1i_0p88>; + + status =3D "okay"; +}; + +&pm8550_gpios { + sdc2_card_det_n: sdc2-card-det-state { + pins =3D "gpio12"; + function =3D "normal"; + bias-pull-up; + input-enable; + output-disable; + power-source =3D <1>; /* 1.8 V */ + }; +}; + &pm8550b_eusb2_repeater { vdd18-supply =3D <&vreg_l15b_1p8>; vdd3-supply =3D <&vreg_l5b_3p1>; @@ -398,6 +539,43 @@ &qupv3_id_1 { status =3D "okay"; }; =20 +&remoteproc_adsp { + firmware-name =3D "qcom/sm8650/adsp.mbn", + "qcom/sm8650/adsp_dtb.mbn"; + + status =3D "okay"; +}; + +&remoteproc_cdsp { + firmware-name =3D "qcom/sm8650/cdsp.mbn", + "qcom/sm8650/cdsp_dtb.mbn"; + + status =3D "okay"; +}; + +&remoteproc_mpss { + firmware-name =3D "qcom/sm8650/modem.mbn", + "qcom/sm8650/modem_dtb.mbn"; + + status =3D "okay"; +}; + +&sdhc_2 { + cd-gpios =3D <&pm8550_gpios 12 GPIO_ACTIVE_LOW>; + + vmmc-supply =3D <&vreg_l9b_2p9>; + vqmmc-supply =3D <&vreg_l8b_1p8>; + bus-width =3D <4>; + no-sdio; + no-mmc; + + pinctrl-0 =3D <&sdc2_default>, <&sdc2_card_det_n>; + pinctrl-1 =3D <&sdc2_sleep>, <&sdc2_card_det_n>; + pinctrl-names =3D "default", "sleep"; + + status =3D "okay"; +}; + &sleep_clk { clock-frequency =3D <32000>; }; @@ -405,12 +583,58 @@ &sleep_clk { &tlmm { /* Reserved I/Os for NFC */ gpio-reserved-ranges =3D <32 8>; + + disp0_reset_n_active: disp0-reset-n-active-state { + pins =3D "gpio133"; + function =3D "gpio"; + drive-strength =3D <8>; + bias-disable; + }; + + disp0_reset_n_suspend: disp0-reset-n-suspend-state { + pins =3D "gpio133"; + function =3D "gpio"; + drive-strength =3D <2>; + bias-pull-down; + }; + + mdp_vsync_active: mdp-vsync-active-state { + pins =3D "gpio86"; + function =3D "mdp_vsync"; + drive-strength =3D <2>; + bias-pull-down; + }; + + mdp_vsync_suspend: mdp-vsync-suspend-state { + pins =3D "gpio86"; + function =3D "mdp_vsync"; + drive-strength =3D <2>; + bias-pull-down; + }; }; =20 &uart15 { status =3D "okay"; }; =20 +&ufs_mem_hc { + reset-gpios =3D <&tlmm 210 GPIO_ACTIVE_LOW>; + + vcc-supply =3D <&vreg_l17b_2p5>; + vcc-max-microamp =3D <1300000>; + vccq-supply =3D <&vreg_l1c_1p2>; + vccq-max-microamp =3D <1200000>; + + status =3D "okay"; +}; + +&ufs_mem_phy { + vdda-phy-supply =3D <&vreg_l1d_0p88>; + vdda-pll-supply =3D <&vreg_l3i_1p2>; + + status =3D "okay"; +}; + /* * DPAUX -> WCD9395 -> USB_SBU -> USB-C * eUSB2 DP/DM -> PM85550HS -> eUSB2 DP/DM -> USB-C @@ -422,7 +646,16 @@ &usb_1 { }; =20 &usb_1_dwc3 { - dr_mode =3D "peripheral"; + dr_mode =3D "otg"; + usb-role-switch; +}; + +&usb_1_dwc3_hs { + remote-endpoint =3D <&pmic_glink_hs_in>; +}; + +&usb_1_dwc3_ss { + remote-endpoint =3D <&pmic_glink_ss_in>; }; =20 &usb_1_hsphy { --=20 2.34.1