From 94dc9f48d1f26be2b995327f10b75d4a8d7887a9 Mon Sep 17 00:00:00 2001 From: Bjorn Andersson Date: Thu, 24 May 2018 15:31:22 -0700 Subject: [PATCH 1/3] arm64: dts: qcom: msm8996: Use UFS_GDSC for UFS The UFS host controller occationally (20%) fails to enable gcc_ufs_axi_clk because the UFS GDSC is not enabled. In most cases it's enabled through the UFS phy driver, but to make sure it's enabled let's enable it directly from the UFS host controller directly as well. Signed-off-by: Bjorn Andersson Signed-off-by: Andy Gross --- arch/arm64/boot/dts/qcom/msm8996.dtsi | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/arch/arm64/boot/dts/qcom/msm8996.dtsi b/arch/arm64/boot/dts/qcom/msm8996.dtsi index 380e14591686..8c7f9ca25b53 100644 --- a/arch/arm64/boot/dts/qcom/msm8996.dtsi +++ b/arch/arm64/boot/dts/qcom/msm8996.dtsi @@ -654,8 +654,6 @@ ufsphy: phy@627000 { clocks = <&rpmcc RPM_SMD_LN_BB_CLK>, <&gcc GCC_UFS_CLKREF_CLK>; status = "disabled"; - - power-domains = <&gcc UFS_GDSC>; }; ufshc@624000 { @@ -674,6 +672,8 @@ ufshc@624000 { vccq-max-microamp = <450000>; vccq2-max-microamp = <450000>; + power-domains = <&gcc UFS_GDSC>; + clock-names = "core_clk_src", "core_clk", From da34314f72c6a2ce53753fb63012080164d0f953 Mon Sep 17 00:00:00 2001 From: Niklas Cassel Date: Tue, 22 May 2018 21:57:57 +0200 Subject: [PATCH 2/3] arm64: dts: fix regulator property name for wlan pcie endpoint The property name vddpe-supply is not included in Documentation/devicetree/bindings/pci/qcom,pcie.txt nor in the pcie-qcom PCIe Root Complex driver. This property name was used in an initial patchset for pcie-qcom, but was renamed in a later revision. Therefore, the regulator is currently never enabled, leaving us with unoperational wlan. Fix this by using the correct regulator property name, so that wlan comes up correctly. Fixes: 1c8ca74a2ea1 ("arm64: dts: apq8096-db820c: Enable wlan and bt en pins") Signed-off-by: Niklas Cassel Reviewed-by: Bjorn Andersson Signed-off-by: Andy Gross --- arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi b/arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi index 00e3ecd1180a..ca72e7eca58e 100644 --- a/arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi +++ b/arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi @@ -211,7 +211,7 @@ agnoc@0 { pcie@600000 { status = "okay"; perst-gpio = <&msmgpio 35 GPIO_ACTIVE_LOW>; - vddpe-supply = <&wlan_en>; + vddpe-3v3-supply = <&wlan_en>; vddpe1-supply = <&bt_en>; }; From d8f8d467f53a192041193fc17176ceb013f4d041 Mon Sep 17 00:00:00 2001 From: Thierry Escande Date: Thu, 24 May 2018 20:01:55 +0200 Subject: [PATCH 3/3] arm64: dts: apq8096-db820c: Removed bt-en-1-8v regulator This patch removes the unused bt-en-1-8v regulator and moves the bt_en_gios claim to the pm8994_gpios node. This bt_en_gpio could have been moved to the bluetooth serial node but instead this node declares an 'enable' gpio addressing the bt_en_gpio. This is needed by the Qualcomm QCA6174 WLAN/BT combo chip that needs to have the bt_en_gpio claimed even if only WLAN is used. Signed-off-by: Thierry Escande Reviewed-by: Bjorn Andersson Signed-off-by: Andy Gross --- .../boot/dts/qcom/apq8096-db820c-pmic-pins.dtsi | 2 +- arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi | 14 -------------- 2 files changed, 1 insertion(+), 15 deletions(-) diff --git a/arch/arm64/boot/dts/qcom/apq8096-db820c-pmic-pins.dtsi b/arch/arm64/boot/dts/qcom/apq8096-db820c-pmic-pins.dtsi index 6167af955659..a6ad3d7fe655 100644 --- a/arch/arm64/boot/dts/qcom/apq8096-db820c-pmic-pins.dtsi +++ b/arch/arm64/boot/dts/qcom/apq8096-db820c-pmic-pins.dtsi @@ -4,7 +4,7 @@ &pm8994_gpios { pinctrl-names = "default"; - pinctrl-0 = <&ls_exp_gpio_f>; + pinctrl-0 = <&ls_exp_gpio_f &bt_en_gpios>; ls_exp_gpio_f: pm8994_gpio5 { pinconf { diff --git a/arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi b/arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi index ca72e7eca58e..0f829db33efe 100644 --- a/arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi +++ b/arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi @@ -179,19 +179,6 @@ usb2_id: usb2-id { pinctrl-0 = <&usb2_vbus_det_gpio>; }; - bt_en: bt-en-1-8v { - pinctrl-names = "default"; - pinctrl-0 = <&bt_en_gpios>; - compatible = "regulator-fixed"; - regulator-name = "bt-en-regulator"; - regulator-min-microvolt = <1800000>; - regulator-max-microvolt = <1800000>; - - /* WLAN card specific delay */ - startup-delay-us = <70000>; - enable-active-high; - }; - wlan_en: wlan-en-1-8v { pinctrl-names = "default"; pinctrl-0 = <&wlan_en_gpios>; @@ -212,7 +199,6 @@ pcie@600000 { status = "okay"; perst-gpio = <&msmgpio 35 GPIO_ACTIVE_LOW>; vddpe-3v3-supply = <&wlan_en>; - vddpe1-supply = <&bt_en>; }; pcie@608000 {