linux/include/linux/platform_data/mmc-mxcmmc.h
<<
>>
Prefs
   1#ifndef ASMARM_ARCH_MMC_H
   2#define ASMARM_ARCH_MMC_H
   3
   4#include <linux/interrupt.h>
   5#include <linux/mmc/host.h>
   6
   7struct device;
   8
   9/* board specific SDHC data, optional.
  10 * If not present, a writable card with 3,3V is assumed.
  11 */
  12struct imxmmc_platform_data {
  13        /* Return values for the get_ro callback should be:
  14         *   0 for a read/write card
  15         *   1 for a read-only card
  16         *   -ENOSYS when not supported (equal to NULL callback)
  17         *   or a negative errno value when something bad happened
  18         */
  19        int (*get_ro)(struct device *);
  20
  21        /* board specific hook to (de)initialize the SD slot.
  22         * The board code can call 'handler' on a card detection
  23         * change giving data as argument.
  24         */
  25        int (*init)(struct device *dev, irq_handler_t handler, void *data);
  26        void (*exit)(struct device *dev, void *data);
  27
  28        /* available voltages. If not given, assume
  29         * MMC_VDD_32_33 | MMC_VDD_33_34
  30         */
  31        unsigned int ocr_avail;
  32
  33        /* adjust slot voltage */
  34        void (*setpower)(struct device *, unsigned int vdd);
  35
  36        /* enable card detect using DAT3 */
  37        int dat3_card_detect;
  38};
  39
  40#endif
  41