[U-Boot] [PATCH] mmc: pic32_sdhci: Complete the transition to driver model

Jaehoon Chung jh80.chung at samsung.com
Sun Jul 2 23:47:04 UTC 2017


Hi Alan,

On 07/01/2017 06:30 AM, Alan Ott wrote:
> On 06/30/2017 12:00 AM, Jaehoon Chung wrote:
>> On 06/21/2017 12:23 PM, Alan Ott wrote:
>>> Previously this driver appeared to have been half-way converted to the new
>>> driver model and did not work at all.
>>>
>>> Complete the transition to the driver model, adding the necessary
>>> connections.
>>>
>>> Signed-off-by: Alan Ott <alan at softiron.com>
>>> ---
>>>   configs/pic32mzdask_defconfig |  1 -
>>>   drivers/mmc/Kconfig           |  2 +-
>>>   drivers/mmc/pic32_sdhci.c     | 31 ++++++++++++++++++++++++++-----
>>>   3 files changed, 27 insertions(+), 7 deletions(-)
>>>
>>> diff --git a/configs/pic32mzdask_defconfig b/configs/pic32mzdask_defconfig
>>> index 688b989..afb1bdb 100644
>>> --- a/configs/pic32mzdask_defconfig
>>> +++ b/configs/pic32mzdask_defconfig
>>> @@ -25,7 +25,6 @@ CONFIG_CMD_EXT4_WRITE=y
>>>   # CONFIG_EFI_PARTITION is not set
>>>   CONFIG_OF_EMBED=y
>>>   CONFIG_NET_RANDOM_ETHADDR=y
>>> -# CONFIG_BLK is not set
>>>   CONFIG_CLK=y
>>>   CONFIG_DM_GPIO=y
>>>   CONFIG_MMC=y
>>> diff --git a/drivers/mmc/Kconfig b/drivers/mmc/Kconfig
>>> index 0dd4443..b70775d 100644
>>> --- a/drivers/mmc/Kconfig
>>> +++ b/drivers/mmc/Kconfig
>>> @@ -274,7 +274,7 @@ config MMC_SDHCI_MV
>>>     config MMC_SDHCI_PIC32
>>>       bool "Microchip PIC32 on-chip SDHCI support"
>>> -    depends on DM_MMC && MACH_PIC32
>>> +    depends on DM_MMC && BLK && DM_MMC_OPS && MACH_PIC32
>> If DM_MMC is enabled,,then CONFIG_BLK and CONFIG_DM_MMC_OPS are "y" by default.
>> Why do you touch this?
> 
> I made it look like other drivers which use BLK and DM_MMC_OPS.
> 
> At some point it seemed required because of build failures I was having, but maybe my .config was just out of date. I will remove this, but again, other examples in the same directory are the same, so they should probably be fixed too, separately.
> 
>>
>>>       depends on MMC_SDHCI
>>>       help
>>>         Support for Microchip PIC32 SDHCI controller.
>>> diff --git a/drivers/mmc/pic32_sdhci.c b/drivers/mmc/pic32_sdhci.c
>>> index 212e22e..fc6d7f3 100644
>>> --- a/drivers/mmc/pic32_sdhci.c
>>> +++ b/drivers/mmc/pic32_sdhci.c
>>> @@ -15,6 +15,11 @@
>>>     DECLARE_GLOBAL_DATA_PTR;
>>>   +struct pic32_sdhci_plat {
>>> +    struct mmc_config cfg;
>>> +    struct mmc mmc;
>>> +};
>>> +
>>>   static int pic32_sdhci_get_cd(struct sdhci_host *host)
>>>   {
>>>       /* PIC32 SDHCI CD errata:
>>> @@ -31,6 +36,8 @@ static const struct sdhci_ops pic32_sdhci_ops = {
>>>     static int pic32_sdhci_probe(struct udevice *dev)
>>>   {
>>> +    struct mmc_uclass_priv *upriv = dev_get_uclass_priv(dev);
>>> +    struct pic32_sdhci_plat *plat = dev_get_platdata(dev);
>>>       struct sdhci_host *host = dev_get_priv(dev);
>>>       const void *fdt = gd->fdt_blob;
>>>       u32 f_min_max[2];
>>> @@ -56,14 +63,25 @@ static int pic32_sdhci_probe(struct udevice *dev)
>>>           return ret;
>>>       }
>>>   -    host->max_clk   = f_min_max[1];
>>> -
>>> -    ret = add_sdhci(host, 0, f_min_max[0]);
>>> -    if (ret)
>>> +    ret = sdhci_setup_cfg(&plat->cfg, host, /*max*/0, /*min*/f_min_max[0]);
>> What are "/*max*, /*min*/" ?
> 
> It documents the parameters. I'll change it to be more clear in the code.

Don't need to describe it..It's enough to put the arguments.

Best Regards,
Jaehoon chung

> 
> Alan.
> 
> 
> 
> 



More information about the U-Boot mailing list