diff mbox

[U-Boot,25/29] dm: scsi: Adjust return value of scsi_exec()

Message ID 20170605191517.12376-26-sjg@chromium.org
State Superseded
Delegated to: Simon Glass
Headers show

Commit Message

Simon Glass June 5, 2017, 7:15 p.m. UTC
Change this function to return an error number instead of true/false.
This allows us to return a proper error number.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 drivers/ata/ahci.c  | 6 +++---
 drivers/scsi/scsi.c | 8 ++++----
 2 files changed, 7 insertions(+), 7 deletions(-)

Comments

Bin Meng June 13, 2017, 3:14 a.m. UTC | #1
On Tue, Jun 6, 2017 at 3:15 AM, Simon Glass <sjg@chromium.org> wrote:
> Change this function to return an error number instead of true/false.
> This allows us to return a proper error number.
>
> Signed-off-by: Simon Glass <sjg@chromium.org>
> ---
>
>  drivers/ata/ahci.c  | 6 +++---
>  drivers/scsi/scsi.c | 8 ++++----
>  2 files changed, 7 insertions(+), 7 deletions(-)
>

Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
diff mbox

Patch

diff --git a/drivers/ata/ahci.c b/drivers/ata/ahci.c
index 5a20b97c4b..3528a1f3da 100644
--- a/drivers/ata/ahci.c
+++ b/drivers/ata/ahci.c
@@ -960,14 +960,14 @@  static int ahci_scsi_exec(struct udevice *dev, struct scsi_cmd *pccb)
 		break;
 	default:
 		printf("Unsupport SCSI command 0x%02x\n", pccb->cmd[0]);
-		return false;
+		return -ENOTSUPP;
 	}
 
 	if (ret) {
 		debug("SCSI command 0x%02x ret errno %d\n", pccb->cmd[0], ret);
-		return false;
+		return ret;
 	}
-	return true;
+	return 0;
 
 }
 
diff --git a/drivers/scsi/scsi.c b/drivers/scsi/scsi.c
index f3f8d31e1a..80c5ce699e 100644
--- a/drivers/scsi/scsi.c
+++ b/drivers/scsi/scsi.c
@@ -368,7 +368,7 @@  static int scsi_read_capacity(struct udevice *dev, struct scsi_cmd *pccb,
 	pccb->msgout[0] = SCSI_IDENTIFY; /* NOT USED */
 
 	pccb->datalen = 8;
-	if (scsi_exec(dev, pccb) != true)
+	if (scsi_exec(dev, pccb))
 		return 1;
 
 	*capacity = ((lbaint_t)pccb->pdata[0] << 24) |
@@ -393,7 +393,7 @@  static int scsi_read_capacity(struct udevice *dev, struct scsi_cmd *pccb,
 	pccb->msgout[0] = SCSI_IDENTIFY; /* NOT USED */
 
 	pccb->datalen = 16;
-	if (scsi_exec(dev, pccb) != true)
+	if (scsi_exec(dev, pccb))
 		return 1;
 
 	*capacity = ((uint64_t)pccb->pdata[0] << 56) |
@@ -499,7 +499,7 @@  static int scsi_detect_dev(struct udevice *dev, int target, int lun,
 	pccb->pdata = (unsigned char *)&tempbuff;
 	pccb->datalen = 512;
 	scsi_setup_inquiry(pccb);
-	if (scsi_exec(dev, pccb) != true) {
+	if (scsi_exec(dev, pccb)) {
 		if (pccb->contr_stat == SCSI_SEL_TIME_OUT) {
 			/*
 			  * selection timeout => assuming no
@@ -530,7 +530,7 @@  static int scsi_detect_dev(struct udevice *dev, int target, int lun,
 
 	pccb->datalen = 0;
 	scsi_setup_test_unit_ready(pccb);
-	if (scsi_exec(dev, pccb) != true) {
+	if (scsi_exec(dev, pccb)) {
 		if (dev_desc->removable) {
 			dev_desc->type = perq;
 			goto removable;