[PATCH 1/5] ARM: S5PV310: Add HSMMC support and SDHCI configuration

Kukjin Kim kgene.kim at samsung.com
Thu Sep 16 20:57:16 EDT 2010


Kyungmin Park wrote:
> 
> On Thu, Sep 16, 2010 at 5:36 PM, Jeongbae Seo <jeongbae.seo at samsung.com>
> wrote:
> > From: Hyuk Lee <hyuk1.lee at samsung.com>
> >
> > This patch adds to support HSMMC for S5PV310 and S5PC210 and setup for
> > HSMMC host controller and also related GPIO.
> > At most 4 channel can be used at the same time.
> > A user can configure SDHCI data bus as 8bit or 4bit.
> >
> > Signed-off-by: Hyuk Lee <hyuk1.lee at samsung.com>
> > Signed-off-by: Jeongbae Seo <jeongbae.seo at samsung.com>
> > ---
> >  arch/arm/mach-s5pv310/Kconfig            |   39 ++++++++
> >  arch/arm/mach-s5pv310/Makefile           |    2 +
> >  arch/arm/mach-s5pv310/setup-sdhci-gpio.c |  156
> ++++++++++++++++++++++++++++++
> >  arch/arm/mach-s5pv310/setup-sdhci.c      |   69 +++++++++++++
> >  4 files changed, 266 insertions(+), 0 deletions(-)
> >  create mode 100644 arch/arm/mach-s5pv310/setup-sdhci-gpio.c
> >  create mode 100644 arch/arm/mach-s5pv310/setup-sdhci.c
> >
> > diff --git a/arch/arm/mach-s5pv310/Kconfig
b/arch/arm/mach-s5pv310/Kconfig
> > index 9ac29fe..6a07968 100644
> > --- a/arch/arm/mach-s5pv310/Kconfig
> > +++ b/arch/arm/mach-s5pv310/Kconfig
> > @@ -25,6 +25,17 @@ config S5PV310_SETUP_I2C2
> >        help
> >          Common setup code for i2c bus 2.
> >
> > +config S5PV310_SETUP_SDHCI
> > +       bool
> > +       select S5PV310_SETUP_SDHCI_GPIO
> > +       help
> > +         Internal helper functions for S5PV310 based SDHCI systems.
> > +
> > +config S5PV310_SETUP_SDHCI_GPIO
> > +       bool
> > +       help
> > +         Common setup code for SDHCI gpio.
> > +
> >  # machine support
> >
> >  menu "S5PC210 Machines"
> > @@ -33,6 +44,11 @@ config MACH_SMDKC210
> >        bool "SMDKC210"
> >        select CPU_S5PV310
> >        select ARCH_SPARSEMEM_ENABLE
> > +       select S3C_DEV_HSMMC
> > +       select S3C_DEV_HSMMC1
> > +       select S3C_DEV_HSMMC2
> > +       select S3C_DEV_HSMMC3
> > +       select S5PV310_SETUP_SDHCI
> >        help
> >          Machine support for Samsung SMDKC210
> >          S5PC210(MCP) is one of package option of S5PV310
> > @@ -53,9 +69,32 @@ config MACH_SMDKV310
> >        bool "SMDKV310"
> >        select CPU_S5PV310
> >        select ARCH_SPARSEMEM_ENABLE
> > +       select S3C_DEV_HSMMC
> > +       select S3C_DEV_HSMMC1
> > +       select S3C_DEV_HSMMC2
> > +       select S3C_DEV_HSMMC3
> > +       select S5PV310_SETUP_SDHCI
> >        help
> >          Machine support for Samsung SMDKV310
> >
> >  endmenu
> >
> > +comment "Configuration for HSMMC bus width"
> > +
> > +menu "Use 8-bit bus width"
> > +
> > +config S5PV310_SDHCI_CH0_8BIT
> > +       bool "Channel 0 with 8-bit bus"
> > +       help
> > +         Support HSMMC Channel 0 8-bit bus.
> > +         If selected, Channel 1 is disabled.
> > +
> > +config S5PV310_SDHCI_CH2_8BIT
> > +       bool "Channel 2 with 8-bit bus"
> > +       help
> > +         Support HSMMC Channel 2 8-bit bus.
> > +         If selected, Channel 3 is disabled.
> 
> I think it's not needed since most boards have fixed bandwith and
> cfg_gpio handle it regardless these configuration.
> Also we use the select state if needed, e.g., when MMC0 uses
> 8-buswidth then don't select MMC1.
> I saw the SMDK board use this configuration. but just choose bandwidth 4
or 8.
> 
Hmm...

If it can be supported 4bit or 8bit option on each board, should be added
above configuration for selecting it.

Mr. Seo, it would be nice if you could add un-selection CH1 or CH3 when
selecting 8bit support later.

Anyway, looks ok to me now..will apply.

> Others good.
> 
(snip)

Thanks.

Best regards,
Kgene.
--
Kukjin Kim <kgene.kim at samsung.com>, Senior Engineer,
SW Solution Development Team, Samsung Electronics Co., Ltd.




More information about the linux-arm-kernel mailing list