On Tue, Mar 09, 2010 at 07:08:57PM +0530, Thomas Abraham wrote:
> This patch adds two additional parameters in the S3C SDHCI platform
> data structure for SDHCI SCLK clock configuration. This patch also
> modifies the S3C SDHCI controller driver to use the new parameters.

I really think that this should be dealt with in the clock handling
code.
 
> Signed-off-by: Thomas Abraham <[email protected]>
> ---
>  arch/arm/plat-samsung/include/plat/sdhci.h |    5 +++++
>  drivers/mmc/host/sdhci-s3c.c               |    3 +++
>  2 files changed, 8 insertions(+), 0 deletions(-)
> 
> diff --git a/arch/arm/plat-samsung/include/plat/sdhci.h 
> b/arch/arm/plat-samsung/include/plat/sdhci.h
> index b0a0528..705eee8 100644
> --- a/arch/arm/plat-samsung/include/plat/sdhci.h
> +++ b/arch/arm/plat-samsung/include/plat/sdhci.h
> @@ -29,6 +29,8 @@ struct mmc_ios;
>   *            is necessary the controllers and/or GPIO blocks require the
>   *         changing of driver-strength and other controls dependant on
>   *         the card and speed of operation.
> + * @sclk_mmc_freq: Clock frequency of SCLK MMC (mmc_bus).
> + * @cfg_clocks: Configure platform specific clocks.
>   * @cfg_ext_cd: Configure external interrupt line.
>   * @is_card_present: Returns status of card availability.
>   * @ext_cd: The external GPIO interrupt number to be used.
> @@ -49,6 +51,9 @@ struct s3c_sdhci_platdata {
>                           struct mmc_ios *ios,
>                           struct mmc_card *card);
>  
> +     unsigned int    sclk_mmc_freq;
> +     void            (*cfg_clocks)(struct platform_device *pdev);
> +
>       void            (*cfg_ext_cd)(void);
>       unsigned int    (*is_card_present)(void);
>       unsigned int    ext_cd;
> diff --git a/drivers/mmc/host/sdhci-s3c.c b/drivers/mmc/host/sdhci-s3c.c
> index 073b56f..980f906 100644
> --- a/drivers/mmc/host/sdhci-s3c.c
> +++ b/drivers/mmc/host/sdhci-s3c.c
> @@ -282,6 +282,9 @@ static int __devinit sdhci_s3c_probe(struct 
> platform_device *pdev)
>       /* enable the local io clock and keep it running for the moment. */
>       clk_enable(sc->clk_io);
>  
> +     if (pdata->cfg_clocks)
> +             pdata->cfg_clocks(pdev);
> +
>       for (clks = 0, ptr = 0; ptr < MAX_BUS_CLK; ptr++) {
>               struct clk *clk;
>               char *name = pdata->clocks[ptr];
> -- 
> 1.6.6.rc2
> 
> --
> To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" 
> in
> the body of a message to [email protected]
> More majordomo info at  http://vger.kernel.org/majordomo-info.html

-- 
-- 
Ben

Q:      What's a light-year?
A:      One-third less calories than a regular year.

--
To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to