Thread (5 messages) 5 messages, 3 authors, 2012-08-24

Re: [PATCH 3/5] mmc: dw-mmc: add the platdata related with clock

From: Jaehoon Chung <jh80.chung@samsung.com>
Date: 2012-08-24 05:03:37

On 08/24/2012 01:03 PM, Seungwon Jeon wrote:
On Thursday, August 23, 2012, Jaehoon Chung [off-list ref] wrote:
quoted
Hi Will,

On 08/23/2012 09:10 PM, Will Newton wrote:
quoted
On Thu, Aug 23, 2012 at 12:31 PM, Jaehoon Chung [off-list ref] wrote:

Hi Jaehoon,
quoted
Some SoC need to set the clock-phase shift.
So Add the callback function into platdata for using phase-shift

Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
---
 drivers/mmc/host/dw_mmc.c  |    3 +++
 include/linux/mmc/dw_mmc.h |    8 ++++++++
 2 files changed, 11 insertions(+), 0 deletions(-)
diff --git a/drivers/mmc/host/dw_mmc.c b/drivers/mmc/host/dw_mmc.c
index 8bef3c2..feafa2d 100644
--- a/drivers/mmc/host/dw_mmc.c
+++ b/drivers/mmc/host/dw_mmc.c
@@ -824,6 +824,9 @@ static void dw_mci_set_ios(struct mmc_host *mmc, struct mmc_ios *ios)

        mci_writel(slot->host, UHS_REG, regs);

+       if (slot->host->pdata->set_clk_drv_sample)
+               slot->host->pdata->set_clk_drv_sample(slot->host, ios);
+
        if (ios->clock) {
                /*
                 * Use mirror of ios->clock to prevent race with mmc
diff --git a/include/linux/mmc/dw_mmc.h b/include/linux/mmc/dw_mmc.h
index 7a7ebd3..f20979c 100644
--- a/include/linux/mmc/dw_mmc.h
+++ b/include/linux/mmc/dw_mmc.h
@@ -229,6 +229,9 @@ struct dw_mci_board {
         */
        unsigned int fifo_depth;

+       u32 ddr_timing;         /* DDR clock phase timing value */
+       u32 sdr_timing;         /* SDR clock phase timing value */
+
These members...
quoted
        /* delay in mS before detecting cards after interrupt */
        u32 detect_delay_ms;
@@ -249,6 +252,11 @@ struct dw_mci_board {
        struct dw_mci_dma_ops *dma_ops;
        struct dma_pdata *data;
        struct block_settings *blk_settings;
+
+       int (*get_clk_drv)(struct dw_mci *);
+       int (*get_clk_sample)(struct dw_mci *);
...and these members do not seem to be used in the rest of this patch.
Should they be included?
These member should be used at exynos-soc.
I will also send the patch related with them.
These are needed.
Actually, we have applied it for Exynos internally.
But I can't make sure that other host can apply it with the same way.
It is a good chance that we can find out implementation of other host based on Synopsys.
As i mentioned, these are used at Exynos.
But i think that we need to add the code like this for supporting Exynos.
Thank you for comment.

Best regards,
Jaehoon Chung
quoted
Thanks for comments.

Best Regards,
Jaehoon Chung
quoted
quoted
+       void (*set_clk_drv_sample)(struct dw_mci *host, struct mmc_ios *ios);
+
 };

 #endif /* LINUX_MMC_DW_MMC_H */
--
1.7.4.1
--
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
--
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
--
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
--
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
  
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help