summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorWei WANG <wei_wang@realsil.com.cn>2013-01-23 02:51:06 +0100
committerSamuel Ortiz <sameo@linux.intel.com>2013-01-27 01:30:20 +0100
commitab4e8f8b7bdfeff0c961fdbbdacb262d68f094c0 (patch)
tree543440d2656343141c14e565e795a655378a0f72 /include
parentmmc: rtsx: Call MFD hook to switch output voltage (diff)
downloadlinux-ab4e8f8b7bdfeff0c961fdbbdacb262d68f094c0.tar.xz
linux-ab4e8f8b7bdfeff0c961fdbbdacb262d68f094c0.zip
mfd: rtsx: Add clock divider hook
Add callback function conv_clk_and_div_n to convert between SSC clock and its divider N. For rtl8411, the formula to calculate SSC clock divider N is different with the other card reader models. Signed-off-by: Wei WANG <wei_wang@realsil.com.cn> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
Diffstat (limited to 'include')
-rw-r--r--include/linux/mfd/rtsx_common.h3
-rw-r--r--include/linux/mfd/rtsx_pci.h1
2 files changed, 4 insertions, 0 deletions
diff --git a/include/linux/mfd/rtsx_common.h b/include/linux/mfd/rtsx_common.h
index a8d393e3066b..2b13970596f5 100644
--- a/include/linux/mfd/rtsx_common.h
+++ b/include/linux/mfd/rtsx_common.h
@@ -38,6 +38,9 @@
#define RTSX_SD_CARD 0
#define RTSX_MS_CARD 1
+#define CLK_TO_DIV_N 0
+#define DIV_N_TO_CLK 1
+
struct platform_device;
struct rtsx_slot {
diff --git a/include/linux/mfd/rtsx_pci.h b/include/linux/mfd/rtsx_pci.h
index 271b6e5654af..4b117a3f54d4 100644
--- a/include/linux/mfd/rtsx_pci.h
+++ b/include/linux/mfd/rtsx_pci.h
@@ -704,6 +704,7 @@ struct pcr_ops {
int (*switch_output_voltage)(struct rtsx_pcr *pcr,
u8 voltage);
unsigned int (*cd_deglitch)(struct rtsx_pcr *pcr);
+ int (*conv_clk_and_div_n)(int clk, int dir);
};
enum PDEV_STAT {PDEV_STAT_IDLE, PDEV_STAT_RUN};