Skip to content

Commit

Permalink
arm64: dts: qcom: sa8155p-adp: fix SDHC2 CD pin configuration
Browse files Browse the repository at this point in the history
There are two issues with SDHC2 configuration for SA8155P-ADP,
which prevent use of SDHC2 and causes issues with ethernet:

- Card Detect pin for SHDC2 on SA8155P-ADP is connected to gpio4 of
  PMM8155AU_1, not to SoC itself. SoC's gpio4 is used for DWMAC
  TX. If sdhc driver probes after dwmac driver, it reconfigures
  gpio4 and this breaks Ethernet MAC.

- pinctrl configuration mentions gpio96 as CD pin. It seems it was
  copied from some SM8150 example, because as mentioned above,
  correct CD pin is gpio4 on PMM8155AU_1.

This patch fixes both mentioned issues by providing correct pin handle
and pinctrl configuration.

Fixes: 0deb262 ("arm64: dts: qcom: sa8155p-adp: Add support for uSD card")
Cc: [email protected]
Signed-off-by: Volodymyr Babchuk <[email protected]>
Reviewed-by: Stephan Gerhold <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Bjorn Andersson <[email protected]>
  • Loading branch information
lorc authored and andersson committed Apr 20, 2024
1 parent ecda830 commit 819fe8c
Showing 1 changed file with 13 additions and 17 deletions.
30 changes: 13 additions & 17 deletions arch/arm64/boot/dts/qcom/sa8155p-adp.dts
Original file line number Diff line number Diff line change
Expand Up @@ -367,6 +367,16 @@
};
};

&pmm8155au_1_gpios {
pmm8155au_1_sdc2_cd: sdc2-cd-default-state {
pins = "gpio4";
function = "normal";
input-enable;
bias-pull-up;
power-source = <0>;
};
};

&qupv3_id_1 {
status = "okay";
};
Expand All @@ -384,10 +394,10 @@
&sdhc_2 {
status = "okay";

cd-gpios = <&tlmm 4 GPIO_ACTIVE_LOW>;
cd-gpios = <&pmm8155au_1_gpios 4 GPIO_ACTIVE_LOW>;
pinctrl-names = "default", "sleep";
pinctrl-0 = <&sdc2_on>;
pinctrl-1 = <&sdc2_off>;
pinctrl-0 = <&sdc2_on &pmm8155au_1_sdc2_cd>;
pinctrl-1 = <&sdc2_off &pmm8155au_1_sdc2_cd>;
vqmmc-supply = <&vreg_l13c_2p96>; /* IO line power */
vmmc-supply = <&vreg_l17a_2p96>; /* Card power line */
bus-width = <4>;
Expand Down Expand Up @@ -505,13 +515,6 @@
bias-pull-up; /* pull up */
drive-strength = <16>; /* 16 MA */
};

sd-cd-pins {
pins = "gpio96";
function = "gpio";
bias-pull-up; /* pull up */
drive-strength = <2>; /* 2 MA */
};
};

sdc2_off: sdc2-off-state {
Expand All @@ -532,13 +535,6 @@
bias-pull-up; /* pull up */
drive-strength = <2>; /* 2 MA */
};

sd-cd-pins {
pins = "gpio96";
function = "gpio";
bias-pull-up; /* pull up */
drive-strength = <2>; /* 2 MA */
};
};

usb2phy_ac_en1_default: usb2phy-ac-en1-default-state {
Expand Down

0 comments on commit 819fe8c

Please sign in to comment.