[U-Boot] [PATCH 25/29] dm: scsi: Adjust return value of scsi_exec()
Simon Glass
sjg at chromium.org
Mon Jun 5 19:15:12 UTC 2017
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 at chromium.org>
---
drivers/ata/ahci.c | 6 +++---
drivers/scsi/scsi.c | 8 ++++----
2 files changed, 7 insertions(+), 7 deletions(-)
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;
--
2.13.0.506.g27d5fe0cd-goog
More information about the U-Boot
mailing list