diff options
author | Pierre Ossman <drzeus@drzeus.cx> | 2009-03-05 13:37:28 -0500 |
---|---|---|
committer | Pierre Ossman <drzeus@drzeus.cx> | 2009-03-24 16:30:00 -0400 |
commit | 0d6132ba0b006dd2bea9ba0c7b6b2f690cd95c40 (patch) | |
tree | 8678340b0a1a58364f6284b82466a97454639e6f /drivers/mmc/core | |
parent | 1b331e69a2313f6e857890c7c2c40e3e2a74367a (diff) |
sdio: handle cis end marker in link field
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
Diffstat (limited to 'drivers/mmc/core')
-rw-r--r-- | drivers/mmc/core/sdio_cis.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/mmc/core/sdio_cis.c b/drivers/mmc/core/sdio_cis.c index 956bd7677502..6ba93f599281 100644 --- a/drivers/mmc/core/sdio_cis.c +++ b/drivers/mmc/core/sdio_cis.c | |||
@@ -227,6 +227,10 @@ static int sdio_read_cis(struct mmc_card *card, struct sdio_func *func) | |||
227 | if (ret) | 227 | if (ret) |
228 | break; | 228 | break; |
229 | 229 | ||
230 | /* a size of 0xff also means we're done */ | ||
231 | if (tpl_link == 0xff) | ||
232 | break; | ||
233 | |||
230 | this = kmalloc(sizeof(*this) + tpl_link, GFP_KERNEL); | 234 | this = kmalloc(sizeof(*this) + tpl_link, GFP_KERNEL); |
231 | if (!this) | 235 | if (!this) |
232 | return -ENOMEM; | 236 | return -ENOMEM; |