aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/mmc/core
diff options
context:
space:
mode:
authorPierre Ossman <drzeus@drzeus.cx>2009-03-05 13:37:28 -0500
committerPierre Ossman <drzeus@drzeus.cx>2009-03-24 16:30:00 -0400
commit0d6132ba0b006dd2bea9ba0c7b6b2f690cd95c40 (patch)
tree8678340b0a1a58364f6284b82466a97454639e6f /drivers/mmc/core
parent1b331e69a2313f6e857890c7c2c40e3e2a74367a (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.c4
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;