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 mmcdiff --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 Chungquoted
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