From: Jaehoon Chung <jh80.chung@samsung.com>
To: Thomas Abraham <thomas.abraham@linaro.org>
Cc: Jaehoon Chung <jh80.chung@samsung.com>,
linux-mmc <linux-mmc@vger.kernel.org>,
Chris Ball <cjb@laptop.org>,
Kyungmin Park <kyungmin.park@samsung.com>,
Will Newton <will.newton@imgtec.com>,
James Hogan <James.Hogan@imgtec.com>,
Seungwon Jeon <tgih.jun@samsung.com>
Subject: Re: [PATCH v2 3/5] mmc: dw-mmc: add the header file for exynos specific code.
Date: Wed, 29 Aug 2012 11:17:11 +0900 [thread overview]
Message-ID: <503D7BA7.3000008@samsung.com> (raw)
In-Reply-To: <CAJuYYwS0Z=YuXBNEhp-f22nFJoKwSG+oDWAPgHTbpTNBWGJbPQ@mail.gmail.com>
On 08/28/2012 10:37 PM, Thomas Abraham wrote:
> On 28 August 2012 13:25, Jaehoon Chung <jh80.chung@samsung.com> wrote:
>> Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com>
>> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
>> ---
>> include/linux/mmc/exynos-dw_mmc.h | 61 +++++++++++++++++++++++++++++++++++++
>> 1 files changed, 61 insertions(+), 0 deletions(-)
>> create mode 100644 include/linux/mmc/exynos-dw_mmc.h
>>
>> diff --git a/include/linux/mmc/exynos-dw_mmc.h b/include/linux/mmc/exynos-dw_mmc.h
>> new file mode 100644
>> index 0000000..3a6b08b
>> --- /dev/null
>> +++ b/include/linux/mmc/exynos-dw_mmc.h
>> @@ -0,0 +1,61 @@
>> +/*
>> + * Synopsys DesignWare Multimedia Card Interface driver
>> + *
>> + * Copyright (c) 2012 Samsung Electronics Co., Ltd.
>> + * http://www.samsung.com
>> + *
>> + * Header file for Exynos specific register
>> + *
>> + * This program is free software; you can redistribute it and/or modify
>> + * it under the terms of the GNU General Public License version 2 as
>> + * published by the Free Software Foundation.
>> + */
>> +
>> +#ifndef _EXYNOS_DW_MMC_H
>> +#define _EXYNOS_DW_MMC_H
>> +#include <linux/mmc/dw_mmc.h>
>> +#include <linux/mmc/host.h>
>> +
>> +#define SDMMC_EXYNOS_CLKSEL 0x09C
>> +
>> +#define SDMMC_GET_CLK_DRV(x) ((x) >> 16 & 0x7)
>> +#define SDMMC_GET_CLK_SAMPLE(x) ((x) & 0x7)
>> +#define SDMCM_GET_DIVRATIO(x) ((x) >> 24 & 0x7)
>> +#define SDMMC_CLK_RESET_DRV_SAMPLE (0x07070007);
>> +
>> +#define mci_readl(dev, reg) \
>> + __raw_readl((dev)->regs + SDMMC_##reg)
>> +#define mci_writel(dev, reg, value) \
>> + __raw_writel((value), (dev)->regs + SDMMC_##reg)
>> +
>> +static inline int exynos_get_clk_drv(struct dw_mci *host)
>> +{
>> + return SDMMC_GET_CLK_DRV(mci_readl(host, EXYNOS_CLKSEL));
>> +}
>> +
>> +static inline int exynos_get_clk_sample(struct dw_mci *host)
>> +{
>> + return SDMMC_GET_CLK_DRV(mci_readl(host, EXYNOS_CLKSEL));
>> +}
>> +
>> +static inline void exynos_set_clk_drv_sample(struct dw_mci *host,
>> + struct mmc_ios *ios)
>> +{
>> + u32 regs, ratio;
>> +
>> + regs = mci_readl(host, EXYNOS_CLKSEL);
>> + ratio = SDMMC_GET_DIV_RATIO(reg);
>> + if (!ratio) {
>> + regs &= ~SDMMC_CLK_RESET_DRV_SAMPLE;
>> + regs |= ratio;
>> + if (ios->timing == MMC_TIMING_UHS_DDR50)
>> + regs |= host->pdata->ddr_timing;
>> + else
>> + regs |= host->pdata->sdr_timing;
>> + } else
>> + regs &= ~SDMMC_CLK_RESET_DRV_SAMPLE;
>> +
>> + mci_writel(host, EXYNOS_CLKSEL, regs);
>> +}
>> +
>> +#endif /* _EXYNOS_DW_MMC_H */
>> --
>> 1.7.4.1
>
> The device tree support patches for dw-mmc gets this done in the
> exynos specific extension callbacks. Personally, I prefer that over
> this patch. And, I did not see this code getting used in the other
> patches of this series.
this patch is preparation patch to use the CLKSEL register for EXYNOS.
Best Regards,
Jaehoon Chung
>
> Thanks,
> Thomas.
> --
> To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
next prev parent reply other threads:[~2012-08-29 2:17 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-08-28 7:55 [PATCH v2 3/5] mmc: dw-mmc: add the header file for exynos specific code Jaehoon Chung
2012-08-28 13:37 ` Thomas Abraham
2012-08-29 2:17 ` Jaehoon Chung [this message]
2012-08-29 1:22 ` Seungwon Jeon
2012-08-29 2:12 ` Jaehoon Chung
2012-09-04 10:04 ` James Hogan
2012-09-05 8:33 ` Jaehoon Chung
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=503D7BA7.3000008@samsung.com \
--to=jh80.chung@samsung.com \
--cc=James.Hogan@imgtec.com \
--cc=cjb@laptop.org \
--cc=kyungmin.park@samsung.com \
--cc=linux-mmc@vger.kernel.org \
--cc=tgih.jun@samsung.com \
--cc=thomas.abraham@linaro.org \
--cc=will.newton@imgtec.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox