1 /* SPDX-License-Identifier: GPL-2.0 */ 2 #ifndef ASMARM_ARCH_MMC_H 3 #define ASMARM_ARCH_MMC_H 4 5 #include <linux/mmc/host.h> 6 #include <linux/interrupt.h> 7 8 struct device; 9 struct mmc_host; 10 struct property_entry; 11 12 struct pxamci_platform_data { 13 unsigned int ocr_mask; /* available voltages */ 14 unsigned long detect_delay_ms; /* delay in millisecond before detecting cards after interrupt */ 15 int (*init)(struct device *, irq_handler_t , void *); 16 int (*get_ro)(struct device *); 17 int (*setpower)(struct device *, unsigned int); 18 void (*exit)(struct device *, void *); 19 bool gpio_card_ro_invert; /* gpio ro is inverted */ 20 }; 21 22 extern void pxa_set_mci_info(const struct pxamci_platform_data *info, 23 const struct property_entry *props); 24 extern void pxa3xx_set_mci2_info(struct pxamci_platform_data *info); 25 extern void pxa3xx_set_mci3_info(struct pxamci_platform_data *info); 26 27 #endif 28