arm64: dts: qcom: sm7225-fairphone-fp4: Enable SD card
Commit Message
Fairphone 4 uses sdhc_2 for the SD card, configure the pins for it and
enable it.
The regulators which are exclusively used for SDHCI have their maximum
voltage decreased to what downstream sets on the consumer side, like on
many other platforms and allowed to set the load.
Signed-off-by: Luca Weiss <luca.weiss@fairphone.com>
---
.../boot/dts/qcom/sm7225-fairphone-fp4.dts | 39 ++++++++++++++++++-
1 file changed, 37 insertions(+), 2 deletions(-)
Comments
On 10/11/2022 16:15, Luca Weiss wrote:
> Fairphone 4 uses sdhc_2 for the SD card, configure the pins for it and
> enable it.
>
> The regulators which are exclusively used for SDHCI have their maximum
> voltage decreased to what downstream sets on the consumer side, like on
> many other platforms and allowed to set the load.
>
> Signed-off-by: Luca Weiss <luca.weiss@fairphone.com>
> ---
Reviewed-by: Konrad Dybcio <konrad.dybcio@linaro.org>
Konrad
> .../boot/dts/qcom/sm7225-fairphone-fp4.dts | 39 ++++++++++++++++++-
> 1 file changed, 37 insertions(+), 2 deletions(-)
>
> diff --git a/arch/arm64/boot/dts/qcom/sm7225-fairphone-fp4.dts b/arch/arm64/boot/dts/qcom/sm7225-fairphone-fp4.dts
> index 30c94fd4fe61..1cb14051ab1b 100644
> --- a/arch/arm64/boot/dts/qcom/sm7225-fairphone-fp4.dts
> +++ b/arch/arm64/boot/dts/qcom/sm7225-fairphone-fp4.dts
> @@ -279,8 +279,12 @@ vreg_l5e: ldo5 {
>
> vreg_l6e: ldo6 {
> regulator-min-microvolt = <1700000>;
> - regulator-max-microvolt = <3544000>;
> + regulator-max-microvolt = <2950000>;
> regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
> + regulator-allow-set-load;
> + regulator-allowed-modes =
> + <RPMH_REGULATOR_MODE_LPM
> + RPMH_REGULATOR_MODE_HPM>;
> };
>
> vreg_l7e: ldo7 {
> @@ -297,8 +301,12 @@ vreg_l8e: ldo8 {
>
> vreg_l9e: ldo9 {
> regulator-min-microvolt = <2700000>;
> - regulator-max-microvolt = <3544000>;
> + regulator-max-microvolt = <2960000>;
> regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
> + regulator-allow-set-load;
> + regulator-allowed-modes =
> + <RPMH_REGULATOR_MODE_LPM
> + RPMH_REGULATOR_MODE_HPM>;
> };
>
> vreg_l10e: ldo10 {
> @@ -424,6 +432,33 @@ &qupv3_id_1 {
> status = "okay";
> };
>
> +&sdc2_off_state {
> + sd-cd-pins {
> + pins = "gpio94";
> + function = "gpio";
> + drive-strength = <2>;
> + bias-disable;
> + };
> +};
> +
> +&sdc2_on_state {
> + sd-cd-pins {
> + pins = "gpio94";
> + function = "gpio";
> + drive-strength = <2>;
> + bias-pull-up;
> + };
> +};
> +
> +&sdhc_2 {
> + vmmc-supply = <&vreg_l9e>;
> + vqmmc-supply = <&vreg_l6e>;
> +
> + cd-gpios = <&tlmm 94 GPIO_ACTIVE_LOW>;
> +
> + status = "okay";
> +};
> +
> &tlmm {
> gpio-reserved-ranges = <13 4>, <56 2>;
> };
On Thu, 10 Nov 2022 16:15:06 +0100, Luca Weiss wrote:
> Fairphone 4 uses sdhc_2 for the SD card, configure the pins for it and
> enable it.
>
> The regulators which are exclusively used for SDHCI have their maximum
> voltage decreased to what downstream sets on the consumer side, like on
> many other platforms and allowed to set the load.
>
> [...]
Applied, thanks!
[1/1] arm64: dts: qcom: sm7225-fairphone-fp4: Enable SD card
commit: 94262a18d74b85704a025855819582b5e256c8f0
Best regards,
@@ -279,8 +279,12 @@ vreg_l5e: ldo5 {
vreg_l6e: ldo6 {
regulator-min-microvolt = <1700000>;
- regulator-max-microvolt = <3544000>;
+ regulator-max-microvolt = <2950000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+ regulator-allow-set-load;
+ regulator-allowed-modes =
+ <RPMH_REGULATOR_MODE_LPM
+ RPMH_REGULATOR_MODE_HPM>;
};
vreg_l7e: ldo7 {
@@ -297,8 +301,12 @@ vreg_l8e: ldo8 {
vreg_l9e: ldo9 {
regulator-min-microvolt = <2700000>;
- regulator-max-microvolt = <3544000>;
+ regulator-max-microvolt = <2960000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+ regulator-allow-set-load;
+ regulator-allowed-modes =
+ <RPMH_REGULATOR_MODE_LPM
+ RPMH_REGULATOR_MODE_HPM>;
};
vreg_l10e: ldo10 {
@@ -424,6 +432,33 @@ &qupv3_id_1 {
status = "okay";
};
+&sdc2_off_state {
+ sd-cd-pins {
+ pins = "gpio94";
+ function = "gpio";
+ drive-strength = <2>;
+ bias-disable;
+ };
+};
+
+&sdc2_on_state {
+ sd-cd-pins {
+ pins = "gpio94";
+ function = "gpio";
+ drive-strength = <2>;
+ bias-pull-up;
+ };
+};
+
+&sdhc_2 {
+ vmmc-supply = <&vreg_l9e>;
+ vqmmc-supply = <&vreg_l6e>;
+
+ cd-gpios = <&tlmm 94 GPIO_ACTIVE_LOW>;
+
+ status = "okay";
+};
+
&tlmm {
gpio-reserved-ranges = <13 4>, <56 2>;
};