[U-Boot] [PATCH] mmc: Poll for broken card detection case

Jaehoon Chung jh80.chung at samsung.com
Tue Jan 23 03:25:51 UTC 2018


On 01/23/2018 12:10 PM, Jun Nie wrote:
> 2018-01-23 10:00 GMT+08:00 Jaehoon Chung <jh80.chung at samsung.com>:
>> On 01/22/2018 09:21 PM, Jun Nie wrote:
>>> 2018-01-22 13:03 GMT+08:00 Jaehoon Chung <jh80.chung at samsung.com>:
>>>> Hi,
>>>>
>>>> On 01/02/2018 01:25 PM, Jun Nie wrote:
>>>>> Poll for broken card detection case instead of return
>>>>> no card detected.
>>>>
>>>> Sorry for late. i didn't see this patch in my mailbox.
>>>>
>>>> Does it need to add the new config?
>>>
>>> Yes, a new config, CONFIG_MMC_BROKEN_CD is needed for board that does
>>> not support card detection pin. Not sure whether you mean this.
>>> Without this config, the logic is not changed so no board is impacted
>>> by this config.
>>
>> Right, there is no impacted by this config.
>> In Kernel, there is "broken-cd" property. So how about using 'broken-cd' property instead of adding config?
>>
>> Best Regards,
>> Jaehoon Chung
>>
> Some platforms, if not all, do not support DTB in SPL. So a config is
> better than dt node property.

Ok. It make sense...Will apply this patch to u-boot-mmc. Thanks!

Best Regards,
Jaehoon Chung

> 
> Jun
>>>
>>> Jun
>>>
>>>>
>>>> Best Regards,
>>>> Jaehoon Chung
>>>>
>>>>>
>>>>> Signed-off-by: Jun Nie <jun.nie at linaro.org>
>>>>> ---
>>>>>  drivers/mmc/Kconfig | 5 +++++
>>>>>  drivers/mmc/mmc.c   | 4 ++++
>>>>>  2 files changed, 9 insertions(+)
>>>>>
>>>>> diff --git a/drivers/mmc/Kconfig b/drivers/mmc/Kconfig
>>>>> index 8fbeaa7..ed194a3 100644
>>>>> --- a/drivers/mmc/Kconfig
>>>>> +++ b/drivers/mmc/Kconfig
>>>>> @@ -10,6 +10,11 @@ config MMC
>>>>>         If you want MMC/SD/SDIO support, you should say Y here and
>>>>>         also to your specific host controller driver.
>>>>>
>>>>> +config MMC_BROKEN_CD
>>>>> +     bool "Poll for broken card detection case"
>>>>> +     help
>>>>> +       If card  detection feature is broken, just poll to detect.
>>>>> +
>>>>>  config DM_MMC
>>>>>       bool "Enable MMC controllers using Driver Model"
>>>>>       depends on DM
>>>>> diff --git a/drivers/mmc/mmc.c b/drivers/mmc/mmc.c
>>>>> index 38d2e07..13c5bf5 100644
>>>>> --- a/drivers/mmc/mmc.c
>>>>> +++ b/drivers/mmc/mmc.c
>>>>> @@ -1650,8 +1650,12 @@ int mmc_start_init(struct mmc *mmc)
>>>>>       bool no_card;
>>>>>       int err;
>>>>>
>>>>> +#if !defined(CONFIG_MMC_BROKEN_CD)
>>>>>       /* we pretend there's no card when init is NULL */
>>>>>       no_card = mmc_getcd(mmc) == 0;
>>>>> +#else
>>>>> +     no_card = 0;
>>>>> +#endif
>>>>>  #if !CONFIG_IS_ENABLED(DM_MMC)
>>>>>       no_card = no_card || (mmc->cfg->ops->init == NULL);
>>>>>  #endif
>>>>>
>>>>
>>>
>>>
>>>
>>
> 
> 
> 



More information about the U-Boot mailing list