From ac0865ff33870cdf2cd480165045e1bc311e9fa2 Mon Sep 17 00:00:00 2001 From: Rabin Vincent Date: Sun, 5 Apr 2009 13:30:52 +0530 Subject: mmc: clean up help texts Remove some repeated words and superfluous newlines in the mmc command help entries. Signed-off-by: Rabin Vincent --- common/cmd_mmc.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'common/cmd_mmc.c') diff --git a/common/cmd_mmc.c b/common/cmd_mmc.c index f1fa32f75..bd55ff1c7 100644 --- a/common/cmd_mmc.c +++ b/common/cmd_mmc.c @@ -135,8 +135,9 @@ int do_mmcinfo (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]) return 0; } -U_BOOT_CMD(mmcinfo, 2, 0, do_mmcinfo, "mmcinfo -- display MMC info\n", - NULL); +U_BOOT_CMD(mmcinfo, 2, 0, do_mmcinfo, + "print MMC information", + "\n"); int do_mmcops(cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]) { @@ -218,8 +219,8 @@ int do_mmcops(cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]) U_BOOT_CMD( mmc, 6, 1, do_mmcops, "MMC sub system", - "mmc read addr blk# cnt\n" + "read addr blk# cnt\n" "mmc write addr blk# cnt\n" "mmc rescan \n" - "mmc list - lists available devices\n"); + "mmc list - list available devices\n"); #endif -- cgit v1.2.3-70-g09d2 From e85649c7e683faea1ccfddc9fa9abc62f38e4201 Mon Sep 17 00:00:00 2001 From: Rabin Vincent Date: Sun, 5 Apr 2009 13:30:53 +0530 Subject: mmc: check find_mmc_device return value find_mmc_device returns NULL if an invalid device number is specified. Check for this to avoid dereferencing NULL pointers. Signed-off-by: Rabin Vincent --- common/cmd_mmc.c | 9 +++++++++ drivers/mmc/mmc.c | 2 +- 2 files changed, 10 insertions(+), 1 deletion(-) (limited to 'common/cmd_mmc.c') diff --git a/common/cmd_mmc.c b/common/cmd_mmc.c index bd55ff1c7..039fe59c7 100644 --- a/common/cmd_mmc.c +++ b/common/cmd_mmc.c @@ -149,6 +149,9 @@ int do_mmcops(cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]) int dev = simple_strtoul(argv[2], NULL, 10); struct mmc *mmc = find_mmc_device(dev); + if (!mmc) + return 1; + mmc_init(mmc); return 0; @@ -175,6 +178,9 @@ int do_mmcops(cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]) u32 blk = simple_strtoul(argv[4], NULL, 16); struct mmc *mmc = find_mmc_device(dev); + if (!mmc) + return 1; + printf("\nMMC read: dev # %d, block # %d, count %d ... ", dev, blk, cnt); @@ -197,6 +203,9 @@ int do_mmcops(cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]) int blk = simple_strtoul(argv[4], NULL, 16); + if (!mmc) + return 1; + printf("\nMMC write: dev # %d, block # %d, count %d ... ", dev, blk, cnt); diff --git a/drivers/mmc/mmc.c b/drivers/mmc/mmc.c index 7791c3896..70b413086 100644 --- a/drivers/mmc/mmc.c +++ b/drivers/mmc/mmc.c @@ -846,7 +846,7 @@ block_dev_desc_t *mmc_get_dev(int dev) { struct mmc *mmc = find_mmc_device(dev); - return &mmc->block_dev; + return mmc ? &mmc->block_dev : NULL; } int mmc_init(struct mmc *mmc) -- cgit v1.2.3-70-g09d2