Skip to content

Commit

Permalink
mmc: mmc-test: add eMMC hardware reset test
Browse files Browse the repository at this point in the history
MMC core provides a checking function that checks if the reset
has happended.  Add a test to use that function.

Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
  • Loading branch information
ahunter6 authored and cjb committed Oct 26, 2011
1 parent 0f20165 commit 2311344
Showing 1 changed file with 30 additions and 0 deletions.
30 changes: 30 additions & 0 deletions drivers/mmc/card/mmc_test.c
Original file line number Diff line number Diff line change
Expand Up @@ -2328,6 +2328,31 @@ static int mmc_test_profile_sglen_r_nonblock_perf(struct mmc_test_card *test)
return mmc_test_rw_multiple_sg_len(test, &test_data);
}

/*
* eMMC hardware reset.
*/
static int mmc_test_hw_reset(struct mmc_test_card *test)
{
struct mmc_card *card = test->card;
struct mmc_host *host = card->host;
int err;

err = mmc_hw_reset_check(host);
if (!err)
return RESULT_OK;

if (err == -ENOSYS)
return RESULT_FAIL;

if (err != -EOPNOTSUPP)
return err;

if (!mmc_can_reset(card))
return RESULT_UNSUP_CARD;

return RESULT_UNSUP_HOST;
}

static const struct mmc_test_case mmc_test_cases[] = {
{
.name = "Basic write (no data verification)",
Expand Down Expand Up @@ -2650,6 +2675,11 @@ static const struct mmc_test_case mmc_test_cases[] = {
.run = mmc_test_profile_sglen_r_nonblock_perf,
.cleanup = mmc_test_area_cleanup,
},

{
.name = "eMMC hardware reset",
.run = mmc_test_hw_reset,
},
};

static DEFINE_MUTEX(mmc_test_lock);
Expand Down

0 comments on commit 2311344

Please sign in to comment.