2005-04-16 16:20:36 -06:00
|
|
|
#ifndef ASMARM_ARCH_MMC_H
|
|
|
|
#define ASMARM_ARCH_MMC_H
|
|
|
|
|
2007-02-09 14:49:31 -07:00
|
|
|
#include <linux/mmc/host.h>
|
2005-04-16 16:20:36 -06:00
|
|
|
#include <linux/interrupt.h>
|
|
|
|
|
|
|
|
struct device;
|
|
|
|
struct mmc_host;
|
|
|
|
|
|
|
|
struct pxamci_platform_data {
|
|
|
|
unsigned int ocr_mask; /* available voltages */
|
2010-04-13 17:00:42 -06:00
|
|
|
unsigned long detect_delay_ms; /* delay in millisecond before detecting cards after interrupt */
|
2006-10-09 05:19:47 -06:00
|
|
|
int (*init)(struct device *, irq_handler_t , void *);
|
2005-09-06 16:18:56 -06:00
|
|
|
int (*get_ro)(struct device *);
|
2005-04-16 16:20:36 -06:00
|
|
|
void (*setpower)(struct device *, unsigned int);
|
|
|
|
void (*exit)(struct device *, void *);
|
2009-06-23 15:21:03 -06: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-16 16:20:36 -06:00
|
|
|
};
|
|
|
|
|
|
|
|
extern void pxa_set_mci_info(struct pxamci_platform_data *info);
|
2007-12-21 04:15:36 -07:00
|
|
|
extern void pxa3xx_set_mci2_info(struct pxamci_platform_data *info);
|
2007-12-21 04:27:08 -07:00
|
|
|
extern void pxa3xx_set_mci3_info(struct pxamci_platform_data *info);
|
2005-04-16 16:20:36 -06:00
|
|
|
|
|
|
|
#endif
|