diff options
Diffstat (limited to 'include/linux/mmc/host.h')
| -rw-r--r-- | include/linux/mmc/host.h | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/include/linux/mmc/host.h b/include/linux/mmc/host.h index 30f68c0c8c6e..6014160d9c06 100644 --- a/include/linux/mmc/host.h +++ b/include/linux/mmc/host.h | |||
| @@ -57,11 +57,17 @@ struct mmc_ios { | |||
| 57 | #define MMC_POWER_OFF 0 | 57 | #define MMC_POWER_OFF 0 |
| 58 | #define MMC_POWER_UP 1 | 58 | #define MMC_POWER_UP 1 |
| 59 | #define MMC_POWER_ON 2 | 59 | #define MMC_POWER_ON 2 |
| 60 | |||
| 61 | unsigned char bus_width; /* data bus width */ | ||
| 62 | |||
| 63 | #define MMC_BUS_WIDTH_1 0 | ||
| 64 | #define MMC_BUS_WIDTH_4 2 | ||
| 60 | }; | 65 | }; |
| 61 | 66 | ||
| 62 | struct mmc_host_ops { | 67 | struct mmc_host_ops { |
| 63 | void (*request)(struct mmc_host *host, struct mmc_request *req); | 68 | void (*request)(struct mmc_host *host, struct mmc_request *req); |
| 64 | void (*set_ios)(struct mmc_host *host, struct mmc_ios *ios); | 69 | void (*set_ios)(struct mmc_host *host, struct mmc_ios *ios); |
| 70 | int (*get_ro)(struct mmc_host *host); | ||
| 65 | }; | 71 | }; |
| 66 | 72 | ||
| 67 | struct mmc_card; | 73 | struct mmc_card; |
| @@ -76,6 +82,10 @@ struct mmc_host { | |||
| 76 | unsigned int f_max; | 82 | unsigned int f_max; |
| 77 | u32 ocr_avail; | 83 | u32 ocr_avail; |
| 78 | 84 | ||
| 85 | unsigned long caps; /* Host capabilities */ | ||
| 86 | |||
| 87 | #define MMC_CAP_4_BIT_DATA (1 << 0) /* Can the host do 4 bit transfers */ | ||
| 88 | |||
| 79 | /* host specific block data */ | 89 | /* host specific block data */ |
| 80 | unsigned int max_seg_size; /* see blk_queue_max_segment_size */ | 90 | unsigned int max_seg_size; /* see blk_queue_max_segment_size */ |
| 81 | unsigned short max_hw_segs; /* see blk_queue_max_hw_segments */ | 91 | unsigned short max_hw_segs; /* see blk_queue_max_hw_segments */ |
| @@ -87,6 +97,10 @@ struct mmc_host { | |||
| 87 | struct mmc_ios ios; /* current io bus settings */ | 97 | struct mmc_ios ios; /* current io bus settings */ |
| 88 | u32 ocr; /* the current OCR setting */ | 98 | u32 ocr; /* the current OCR setting */ |
| 89 | 99 | ||
| 100 | unsigned int mode; /* current card mode of host */ | ||
| 101 | #define MMC_MODE_MMC 0 | ||
| 102 | #define MMC_MODE_SD 1 | ||
| 103 | |||
| 90 | struct list_head cards; /* devices attached to this host */ | 104 | struct list_head cards; /* devices attached to this host */ |
| 91 | 105 | ||
| 92 | wait_queue_head_t wq; | 106 | wait_queue_head_t wq; |
