[PATCHv2 1/2] ARM: dts: socfpga: Fix SD card detect
Dinh Nguyen
dinguyen at opensource.altera.com
Mon Oct 20 09:31:59 PDT 2014
On 10/20/2014 10:46 AM, Doug Anderson wrote:
> Dinh,
>
> On Mon, Oct 20, 2014 at 8:31 AM, <dinguyen at opensource.altera.com> wrote:
>> From: Dinh Nguyen <dinguyen at opensource.altera.com>
>>
>> Without this patch, the booting the SOCFPGA platform would hang at the
>> SDMMC driver loading. There were 2 patches that caused this to happen:
>>
>> - Patch 9795a846e10 "mmc: dw_mmc: remove dw_mci_of_cd_gpio/wp_gpio()" removed
>> looking for "cd-gpios", since mmc_of_parse was getting called.
>> - Patch 3cf890fc42b "mmc: dw_mmc: Pass back errors from mmc_of_parse()" would
>> hang the system at the SDMMC driver loading.
>>
>> This patch will fix booting with SDMMC enabled on SOCFPGA dev kit.
>>
>> Signed-off-by: Dinh Nguyen <dinguyen at opensource.altera.com>
>> ---
>> arch/arm/boot/dts/socfpga_cyclone5_socdk.dts | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/arch/arm/boot/dts/socfpga_cyclone5_socdk.dts b/arch/arm/boot/dts/socfpga_cyclone5_socdk.dts
>> index d7296a5..739c3b7 100644
>> --- a/arch/arm/boot/dts/socfpga_cyclone5_socdk.dts
>> +++ b/arch/arm/boot/dts/socfpga_cyclone5_socdk.dts
>> @@ -69,7 +69,7 @@
>> };
>>
>> &mmc0 {
>> - cd-gpios = <&gpio1 18 0>;
>> + cd = <&gpio1 18 0>;
>
> This doesn't look right to me. What was the error that was passed back?
>
> I think your change has the same net effect as just deleting the
> "cd-gpios" line. ...or is there some code somewhere that is parsing
> the "cd" property.
>
It just hangs here:
dw_mmc ff704000.dwmmc0: Using PIO mode.
dw_mmc ff704000.dwmmc0: Version ID is 240a
dw_mmc ff704000.dwmmc0: DW MMC controller at irq 171, 32 bit host data
width, 1024 deep fifo
platform ff704000.dwmmc0: Driver dw_mmc requests probe deferral
Without this patch :
mmc_of_parse ret=-517 (EPROBE_DEFER)
With this patch or deleting the "cd-gpios" line then
mmc_of_parse ret=0
So does the driver go into polling for a card removal when neither cd or
cd-gpios are specified? Because I can see that card removal and
insertion working without any cd/cd-gpios entry in the DTS?
Thanks,
Dinh
More information about the linux-arm-kernel
mailing list