[PATCH] ARM: dts: fix MMC2 regulators for Exynos5420 Arndale Octa board
Doug Anderson
dianders at google.com
Thu Oct 2 09:45:41 PDT 2014
Bartiomiej
On Thu, Oct 2, 2014 at 9:39 AM, Bartlomiej Zolnierkiewicz
<b.zolnierkie at samsung.com> wrote:
> On Thursday, October 02, 2014 09:19:08 AM Doug Anderson wrote:
>> Bartiomiej,
>>
>> On Thu, Oct 2, 2014 at 9:10 AM, Bartlomiej Zolnierkiewicz
>> <b.zolnierkie at samsung.com> wrote:
>> > Regulators for MMC2 (SD card) are PVDD_TFLASH_2V8 (LDO19) for vmmc
>> > and PVDD_APIO_MMCOFF_2V8 (LDO13) for vqmmc. Currently the device
>> > tree entry for MMC2 uses PVDD_PRE_1V8 (LDO10) for vmmc and vqmmc is
>> > not specified. Fix it.
>> >
>> > Without this patch:
>> > - "mmc: dw_mmc: use mmc_regulator_get_supply to handle regulators"
>> > patch causes a SD card detection to fail
>> > - "mmc: dw_mmc: Support voltage changes" patch causes a boot hang
>> >
>> > This patch fixes both above problems.
>> >
>> > Suggested-by: Doug Anderson <dianders at google.com>
>> > Cc: Yuvaraj Kumar C D <yuvaraj.cd at samsung.com>
>> > Cc: Ulf Hansson <ulf.hansson at linaro.org>
>> > Signed-off-by: Bartlomiej Zolnierkiewicz <b.zolnierkie at samsung.com>
>> > Acked-by: Kyungmin Park <kyungmin.park at samsung.com>
>> > ---
>> > arch/arm/boot/dts/exynos5420-arndale-octa.dts | 3 ++-
>> > 1 file changed, 2 insertions(+), 1 deletion(-)
>> >
>> > Index: b/arch/arm/boot/dts/exynos5420-arndale-octa.dts
>> > ===================================================================
>> > --- a/arch/arm/boot/dts/exynos5420-arndale-octa.dts 2014-10-02 15:44:53.014826886 +0200
>> > +++ b/arch/arm/boot/dts/exynos5420-arndale-octa.dts 2014-10-02 17:35:24.110600398 +0200
>> > @@ -74,7 +74,8 @@
>> > samsung,dw-mshc-ddr-timing = <1 2>;
>> > pinctrl-names = "default";
>> > pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_cd &sd2_bus4>;
>> > - vmmc-supply = <&ldo10_reg>;
>> > + vmmc-supply = <&ldo19_reg>;
>> > + vqmmc-supply = <&ldo13_reg>;
>>
>> This looks right to me. ...but I notice that ldo13 and ldo19 are not
>> "always-on" in the DTS. Are you sure card detect works for you if you
>> eject your card and try to put it back in?
>>
>> ...eventually the "always-on" won't be needed, but for now I think it is...
>
> Card detection works fine without "always-on".
That's weird.
1. In the schematics I see XMMC2CDN has an external pullup to PVDD_TFLASH_2V8.
2. The internal pullup should (I think) be to VDDQ_MMC2 which is
PVDD_APIO_MMCOFF_2V8.
3. In (51da224 mmc: dw_mmc: use mmc_regulator_get_supply to handle
regulators) we should be turning off both regulators in
"MMC_POWER_OFF".
4. If I understand correctly MMC_POWER_OFF is called when the card is
ejected, which means that both regulators should be off when the card
is ejected.
5. I don't think card detect can work if neither regulator is powered.
One of the above points must be wrong. Any idea which one? Can you
check to see if MMC_POWER_OFF is called for you when the card is
ejected? Can you check to see if these regulators are off?
-Doug
More information about the linux-arm-kernel
mailing list