1 /****************************************************************************
2 ****************************************************************************
4 *** This header was automatically generated from a Linux kernel header
5 *** of the same name, to make information necessary for userspace to
6 *** call into the kernel available to libc. It contains only constants,
7 *** structures, and macros generated from the original header, and thus,
8 *** contains no copyrightable information.
10 ****************************************************************************
11 ****************************************************************************/
12 #ifndef LINUX_MMC_HOST_H
13 #define LINUX_MMC_HOST_H
15 #include <linux/mmc/mmc.h>
31 #define MMC_VDD_230 10
32 #define MMC_VDD_240 11
33 #define MMC_VDD_250 12
34 #define MMC_VDD_260 13
35 #define MMC_VDD_270 14
36 #define MMC_VDD_280 15
37 #define MMC_VDD_290 16
38 #define MMC_VDD_300 17
39 #define MMC_VDD_310 18
40 #define MMC_VDD_320 19
41 #define MMC_VDD_330 20
42 #define MMC_VDD_340 21
43 #define MMC_VDD_350 22
44 #define MMC_VDD_360 23
46 unsigned char bus_mode;
48 #define MMC_BUSMODE_OPENDRAIN 1
49 #define MMC_BUSMODE_PUSHPULL 2
51 unsigned char chip_select;
53 #define MMC_CS_DONTCARE 0
57 unsigned char power_mode;
59 #define MMC_POWER_OFF 0
60 #define MMC_POWER_UP 1
61 #define MMC_POWER_ON 2
63 unsigned char bus_width;
65 #define MMC_BUS_WIDTH_1 0
66 #define MMC_BUS_WIDTH_4 2
70 void (*request)(struct mmc_host *host, struct mmc_request *req);
71 void (*set_ios)(struct mmc_host *host, struct mmc_ios *ios);
72 int (*get_ro)(struct mmc_host *host);
80 struct class_device class_dev;
82 const struct mmc_host_ops *ops;
89 #define MMC_CAP_4_BIT_DATA (1 << 0)
91 unsigned int max_seg_size;
92 unsigned short max_hw_segs;
93 unsigned short max_phys_segs;
94 unsigned short max_sectors;
95 unsigned short unused;
101 #define MMC_MODE_MMC 0
102 #define MMC_MODE_SD 1
104 struct list_head cards;
106 wait_queue_head_t wq;
108 struct mmc_card *card_busy;
109 struct mmc_card *card_selected;
111 struct work_struct detect;
113 unsigned long private[0] ____cacheline_aligned;
116 #define mmc_dev(x) ((x)->dev)
117 #define mmc_hostname(x) ((x)->class_dev.class_id)