diff options
author | Pierre Ossman <drzeus-list@cx.rmk.(none)> | 2005-05-08 14:35:27 -0400 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2005-05-08 14:35:27 -0400 |
commit | 85bcc13072c54592596c5b41d40d1c6a18b04e19 (patch) | |
tree | 1f3fe7a88f37ed72f6cdaf6117f0299caf4ab59a /drivers/mmc/wbsd.h | |
parent | 88d7bd8cb9eb8d64bf7997600b0d64f7834047c5 (diff) |
[PATCH] MMC: wbsd update
Updates to the wbsd driver.
* Fix to handle DAT3 card detection.
* Fixed bug which could cause large writes to stall in FIFO mode.
* Plug 'n Play support. In most cases you need ACPI PNP for this to work.
* Uses generic DMA API (ISA dependency removed).
Diffstat (limited to 'drivers/mmc/wbsd.h')
-rw-r--r-- | drivers/mmc/wbsd.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/drivers/mmc/wbsd.h b/drivers/mmc/wbsd.h index fdc03b56a81f..864f30828d01 100644 --- a/drivers/mmc/wbsd.h +++ b/drivers/mmc/wbsd.h | |||
@@ -35,6 +35,12 @@ const int valid_ids[] = { | |||
35 | 35 | ||
36 | #define DEVICE_SD 0x03 | 36 | #define DEVICE_SD 0x03 |
37 | 37 | ||
38 | #define WBSD_PINS_DAT3_HI 0x20 | ||
39 | #define WBSD_PINS_DAT3_OUT 0x10 | ||
40 | #define WBSD_PINS_GP11_HI 0x04 | ||
41 | #define WBSD_PINS_DETECT_GP11 0x02 | ||
42 | #define WBSD_PINS_DETECT_DAT3 0x01 | ||
43 | |||
38 | #define WBSD_CMDR 0x00 | 44 | #define WBSD_CMDR 0x00 |
39 | #define WBSD_DFR 0x01 | 45 | #define WBSD_DFR 0x01 |
40 | #define WBSD_EIR 0x02 | 46 | #define WBSD_EIR 0x02 |
@@ -133,6 +139,7 @@ const int valid_ids[] = { | |||
133 | #define WBSD_CRC_OK 0x05 /* S010E (00101) */ | 139 | #define WBSD_CRC_OK 0x05 /* S010E (00101) */ |
134 | #define WBSD_CRC_FAIL 0x0B /* S101E (01011) */ | 140 | #define WBSD_CRC_FAIL 0x0B /* S101E (01011) */ |
135 | 141 | ||
142 | #define WBSD_DMA_SIZE 65536 | ||
136 | 143 | ||
137 | struct wbsd_host | 144 | struct wbsd_host |
138 | { | 145 | { |
@@ -140,6 +147,11 @@ struct wbsd_host | |||
140 | 147 | ||
141 | spinlock_t lock; /* Mutex */ | 148 | spinlock_t lock; /* Mutex */ |
142 | 149 | ||
150 | int flags; /* Driver states */ | ||
151 | |||
152 | #define WBSD_FCARD_PRESENT (1<<0) /* Card is present */ | ||
153 | #define WBSD_FIGNORE_DETECT (1<<1) /* Ignore card detection */ | ||
154 | |||
143 | struct mmc_request* mrq; /* Current request */ | 155 | struct mmc_request* mrq; /* Current request */ |
144 | 156 | ||
145 | u8 isr; /* Accumulated ISR */ | 157 | u8 isr; /* Accumulated ISR */ |