[U-Boot] [PATCH v2 08/13] dm: mmc: zynq: Convert zynq to use driver model for MMC

Simon Glass sjg at chromium.org
Tue Jul 12 23:57:09 CEST 2016


Hi Jaehoon,

On 6 July 2016 at 00:53, Jaehoon Chung <jh80.chung at samsung.com> wrote:
> Hi Simon,
>
> On 07/06/2016 08:10 AM, Simon Glass wrote:
>> Move zynq to the latest driver model support by enabling CONFIG_DM_MMC,
>> CONFIG_DM_MMC_OPS and CONFIG_BLK.
>>
>> Signed-off-by: Simon Glass <sjg at chromium.org>
>> ---
>>
>> Changes in v2: None
>>
>>  arch/arm/Kconfig         |  5 +++++
>>  drivers/mmc/zynq_sdhci.c | 39 ++++++++++++++++++++++++++++++++++-----
>>  2 files changed, 39 insertions(+), 5 deletions(-)
>>
>> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
>> index 9d6cdc7..f45fd37 100644
>> --- a/arch/arm/Kconfig
>> +++ b/arch/arm/Kconfig
>> @@ -657,11 +657,13 @@ config ARCH_ZYNQ
>>       select DM_GPIO
>>       select SPL_DM if SPL
>>       select DM_MMC
>> +     select DM_MMC_OPS
>>       select DM_SPI
>>       select DM_SERIAL
>>       select DM_SPI_FLASH
>>       select SPL_SEPARATE_BSS if SPL
>>       select DM_USB if USB
>> +     select BLK
>
> If my understanding is right, your patch[12~13/13] are enabled with CONFIG_DM_MMC.
> Does it need to select at here?
>
>>
>>  config ARCH_ZYNQMP
>>       bool "Support Xilinx ZynqMP Platform"
>> @@ -671,6 +673,9 @@ config ARCH_ZYNQMP
>>       select DM_SERIAL
>>       select SUPPORT_SPL
>>       select DM_USB if USB
>> +     select DM_MMC
>> +     select DM_MMC_OPS
>> +     select BLK
>
> Ditto.

?

>
>>
>>  config TEGRA
>>       bool "NVIDIA Tegra"
>> diff --git a/drivers/mmc/zynq_sdhci.c b/drivers/mmc/zynq_sdhci.c
>> index d405929..bcd154a 100644
>> --- a/drivers/mmc/zynq_sdhci.c
>> +++ b/drivers/mmc/zynq_sdhci.c
>> @@ -17,10 +17,18 @@
>>  # define CONFIG_ZYNQ_SDHCI_MIN_FREQ  0
>>  #endif
>>
>> +struct arasan_sdhci_plat {
>> +     struct mmc_config cfg;
>> +     struct mmc mmc;
>> +};
>
> Almost all drivers are using the similar *_plat structure.
> Then it can be used the one structure instead of *_plat..
> So i think it should be located "struct mmc_plat" into mmc.h
>
> struct mmc_plat {
>         struct mmc_config cfg;
>         struct mmc mmc;
> };

Seems reasonable, but of course some might want to override it. Still,
the more common code the better.

>
> Then we can remove the all other similar plat structures.
> if you are ok, I will clean everything.
> how about?

Yes, please.

Regards,
Simon


More information about the U-Boot mailing list