The patch adds the enhancement to mmc_ioc_cmd structure to also fill the error  
message so that user is aware of the error that has occured while sending a 
command.

Signed-off-by: Shashidhar Hiremath <[email protected]>
---
 drivers/mmc/card/block.c  |    4 ++++
 include/linux/mmc/ioctl.h |    3 +++
 2 files changed, 7 insertions(+), 0 deletions(-)

diff --git a/drivers/mmc/card/block.c b/drivers/mmc/card/block.c
index 0c959c9..12523bb 100644
--- a/drivers/mmc/card/block.c
+++ b/drivers/mmc/card/block.c
@@ -448,6 +448,10 @@ static int mmc_blk_ioctl_cmd(struct block_device *bdev,
        if (cmd.error) {
                dev_err(mmc_dev(card->host), "%s: cmd error %d\n",
                                                __func__, cmd.error);
+               if (copy_to_user(&(ic_ptr->error)
+                                 , &cmd.error, sizeof(cmd.error)))
+                       err = -EFAULT;
+
                err = cmd.error;
                goto cmd_rel_host;
        }
diff --git a/include/linux/mmc/ioctl.h b/include/linux/mmc/ioctl.h
index 8fa5bc5..3514ddc 100644
--- a/include/linux/mmc/ioctl.h
+++ b/include/linux/mmc/ioctl.h
@@ -39,6 +39,9 @@ struct mmc_ioc_cmd {
 
        /* DAT buffer */
        __u64 data_ptr;
+       /* The error status for the Command sent */
+       unsigned int error;
+
 };
 #define mmc_ioc_cmd_set_data(ic, ptr) ic.data_ptr = (__u64)(unsigned long) ptr
 
-- 
1.7.6.4

--
To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to