aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/ata
diff options
context:
space:
mode:
Diffstat (limited to 'sys/dev/ata')
-rw-r--r--sys/dev/ata/ata-lowlevel.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/sys/dev/ata/ata-lowlevel.c b/sys/dev/ata/ata-lowlevel.c
index 681fcae6450da..b4fb7c33ad21e 100644
--- a/sys/dev/ata/ata-lowlevel.c
+++ b/sys/dev/ata/ata-lowlevel.c
@@ -329,6 +329,7 @@ ata_interrupt(void *data)
/* if data write command, output the data */
if (request->flags & ATA_R_WRITE) {
+
/* if we get an error here we are done with the HW */
if (ata_wait(request->device,
(ATA_S_READY | ATA_S_DSC | ATA_S_DRQ)) < 0) {
@@ -336,11 +337,10 @@ ata_interrupt(void *data)
request->status = ATA_IDX_INB(ch, ATA_STATUS);
break;
}
- else {
- /* output data and return waiting for new interrupt */
- ata_pio_write(request, request->transfersize);
- return;
- }
+
+ /* output data and return waiting for new interrupt */
+ ata_pio_write(request, request->transfersize);
+ return;
}
/* if data read command, return & wait for interrupt */