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