diff options
author | Linus Torvalds <torvalds@g5.osdl.org> | 2006-02-17 08:12:08 -0800 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-02-17 08:12:08 -0800 |
commit | 7054ec7f86cada917626c05fe461abccca816d3b (patch) | |
tree | 5c5e0710e9bce24e6c8b720fc31cfbe6173fac1c /drivers | |
parent | 2aed711a399cbc4a9bf239c13f05a8a8b460f215 (diff) | |
parent | 0425a14213f373595bd23cacdc675f2b973a28d4 (diff) |
Merge master.kernel.org:/home/rmk/linux-2.6-mmc
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/mmc/mmci.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/mmc/mmci.c b/drivers/mmc/mmci.c index 37ee7f8dc82..9fef29d978b 100644 --- a/drivers/mmc/mmci.c +++ b/drivers/mmc/mmci.c @@ -97,6 +97,13 @@ static void mmci_start_data(struct mmci_host *host, struct mmc_data *data) if (data->flags & MMC_DATA_READ) { datactrl |= MCI_DPSM_DIRECTION; irqmask = MCI_RXFIFOHALFFULLMASK; + + /* + * If we have less than a FIFOSIZE of bytes to transfer, + * trigger a PIO interrupt as soon as any data is available. + */ + if (host->size < MCI_FIFOSIZE) + irqmask |= MCI_RXDATAAVLBLMASK; } else { /* * We don't actually need to include "FIFO empty" here |