diff options
author | Ulf Hansson <ulf.hansson@linaro.org> | 2014-10-16 11:00:39 -0400 |
---|---|---|
committer | Ulf Hansson <ulf.hansson@linaro.org> | 2014-11-10 06:40:43 -0500 |
commit | 2fd322a58ed17b9159aa369e7c9ea01eb6a5d5ae (patch) | |
tree | e54b4234ae66880fe3f16ae46e6838466564e255 | |
parent | c197787ced5b42bde224d9ee70473d87a824119a (diff) |
mmc: core: Don't panic when fetching EXT_CSD
Instead of doing BUG_ON(), return an error code.
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
-rw-r--r-- | drivers/mmc/core/mmc.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/drivers/mmc/core/mmc.c b/drivers/mmc/core/mmc.c index fe801e612b1f..efaa9f8f07b0 100644 --- a/drivers/mmc/core/mmc.c +++ b/drivers/mmc/core/mmc.c | |||
@@ -185,8 +185,8 @@ static int mmc_get_ext_csd(struct mmc_card *card, u8 **new_ext_csd) | |||
185 | int err; | 185 | int err; |
186 | u8 *ext_csd; | 186 | u8 *ext_csd; |
187 | 187 | ||
188 | BUG_ON(!card); | 188 | if (!card || !new_ext_csd) |
189 | BUG_ON(!new_ext_csd); | 189 | return -EINVAL; |
190 | 190 | ||
191 | if (!mmc_can_ext_csd(card)) | 191 | if (!mmc_can_ext_csd(card)) |
192 | return -EOPNOTSUPP; | 192 | return -EOPNOTSUPP; |
@@ -368,8 +368,6 @@ static int mmc_decode_ext_csd(struct mmc_card *card, u8 *ext_csd) | |||
368 | int err = 0, idx; | 368 | int err = 0, idx; |
369 | unsigned int part_size; | 369 | unsigned int part_size; |
370 | 370 | ||
371 | BUG_ON(!card); | ||
372 | |||
373 | /* Version is coded in the CSD_STRUCTURE byte in the EXT_CSD register */ | 371 | /* Version is coded in the CSD_STRUCTURE byte in the EXT_CSD register */ |
374 | card->ext_csd.raw_ext_csd_structure = ext_csd[EXT_CSD_STRUCTURE]; | 372 | card->ext_csd.raw_ext_csd_structure = ext_csd[EXT_CSD_STRUCTURE]; |
375 | if (card->csd.structure == 3) { | 373 | if (card->csd.structure == 3) { |