2005-04-17 06:20:36 +08:00
|
|
|
#ifndef ASMARM_ARCH_MMC_H
|
|
|
|
#define ASMARM_ARCH_MMC_H
|
|
|
|
|
2007-02-10 05:49:31 +08:00
|
|
|
#include <linux/mmc/host.h>
|
2005-04-17 06:20:36 +08:00
|
|
|
#include <linux/interrupt.h>
|
|
|
|
|
|
|
|
struct device;
|
|
|
|
struct mmc_host;
|
|
|
|
|
|
|
|
struct pxamci_platform_data {
|
|
|
|
unsigned int ocr_mask; /* available voltages */
|
2010-04-14 07:00:42 +08:00
|
|
|
unsigned long detect_delay_ms; /* delay in millisecond before detecting cards after interrupt */
|
2006-10-09 19:19:47 +08:00
|
|
|
int (*init)(struct device *, irq_handler_t , void *);
|
2005-09-07 06:18:56 +08:00
|
|
|
int (*get_ro)(struct device *);
|
2013-07-05 23:51:20 +08:00
|
|
|
int (*setpower)(struct device *, unsigned int);
|
2005-04-17 06:20:36 +08:00
|
|
|
void (*exit)(struct device *, void *);
|
2009-06-24 05:21:03 +08:00
|
|
|
int gpio_card_detect; /* gpio detecting card insertion */
|
|
|
|
int gpio_card_ro; /* gpio detecting read only toggle */
|
|
|
|
bool gpio_card_ro_invert; /* gpio ro is inverted */
|
|
|
|
int gpio_power; /* gpio powering up MMC bus */
|
|
|
|
bool gpio_power_invert; /* gpio power is inverted */
|
2005-04-17 06:20:36 +08:00
|
|
|
};
|
|
|
|
|
|
|
|
extern void pxa_set_mci_info(struct pxamci_platform_data *info);
|
2007-12-21 19:15:36 +08:00
|
|
|
extern void pxa3xx_set_mci2_info(struct pxamci_platform_data *info);
|
2007-12-21 19:27:08 +08:00
|
|
|
extern void pxa3xx_set_mci3_info(struct pxamci_platform_data *info);
|
2005-04-17 06:20:36 +08:00
|
|
|
|
|
|
|
#endif
|