Linux 2.6.31.6
[linux/fpc-iii.git] / arch / arm / mach-davinci / include / mach / mmc.h
blob5a85e24f36730c759173da5810ca5f6a9fa298d1
1 /*
2 * Board-specific MMC configuration
3 */
5 #ifndef _DAVINCI_MMC_H
6 #define _DAVINCI_MMC_H
8 #include <linux/types.h>
9 #include <linux/mmc/host.h>
11 struct davinci_mmc_config {
12 /* get_cd()/get_wp() may sleep */
13 int (*get_cd)(int module);
14 int (*get_ro)(int module);
15 /* wires == 0 is equivalent to wires == 4 (4-bit parallel) */
16 u8 wires;
18 u32 max_freq;
20 /* any additional host capabilities: OR'd in to mmc->f_caps */
21 u32 caps;
23 /* Version of the MMC/SD controller */
24 u8 version;
26 void davinci_setup_mmc(int module, struct davinci_mmc_config *config);
28 enum {
29 MMC_CTLR_VERSION_1 = 0, /* DM644x and DM355 */
30 MMC_CTLR_VERSION_2, /* DA830 */
33 #endif