summaryrefslogtreecommitdiffstats
path: root/c/src/libchip/ide/ata.c
diff options
context:
space:
mode:
authorChris Johns <chrisj@rtems.org>2009-04-29 08:36:45 +0000
committerChris Johns <chrisj@rtems.org>2009-04-29 08:36:45 +0000
commit92c70b96b6007f4bac7b0eacfac503c6984c466c (patch)
tree4e614b10ed95b4b92b2f55ff83b3eea43f37e618 /c/src/libchip/ide/ata.c
parent2009-04-29 Chris Johns <chrisj@rtems.org> (diff)
downloadrtems-92c70b96b6007f4bac7b0eacfac503c6984c466c.tar.bz2
2009-04-29 Chris Johns <chrisj@rtems.org>
* libchip/ide/ata.c: Remove a detection test that fails in qemu. * libchip/ide/ide_controller.c: Change the status detection and add a message if the transfer fails. There is currently no error handle at the IDE drvier level.
Diffstat (limited to 'c/src/libchip/ide/ata.c')
-rw-r--r--c/src/libchip/ide/ata.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/c/src/libchip/ide/ata.c b/c/src/libchip/ide/ata.c
index db9125c397..9cbd57be61 100644
--- a/c/src/libchip/ide/ata.c
+++ b/c/src/libchip/ide/ata.c
@@ -608,6 +608,10 @@ ata_non_data_request_done(ata_req_t *areq,
rtems_device_minor_number ctrl_minor,
rtems_status_code status, int error)
{
+#ifdef DEBUG
+ printf("ata_non_data_request_done: entry\n");
+#endif
+
areq->status = status;
areq->error = error;
rtems_semaphore_release(areq->sema);
@@ -638,7 +642,7 @@ ata_add_to_controller_queue(rtems_device_minor_number ctrl_minor,
ata_queue_msg_t msg;
-#ifdef DEBUG
+#ifdef DEBUG_DOES_NOT_WORK_WITH_QEMU
uint16_t val;
/*
* read IDE_REGISTER_ALTERNATE_STATUS instead IDE_REGISTER_STATUS
@@ -1289,7 +1293,7 @@ rtems_ata_initialize(rtems_device_major_number major,
IDE_REGISTER_DEVICE_CONTROL_OFFSET,
IDE_REGISTER_DEVICE_CONTROL_nIEN);
}
-
+#if 0
/*
* Issue EXECUTE DEVICE DIAGNOSTIC ATA command for explore is
* there any ATA device on the controller.
@@ -1315,7 +1319,8 @@ rtems_ata_initialize(rtems_device_major_number major,
*/
if (breq.req.status != RTEMS_SUCCESSFUL)
continue;
-
+#endif
+ breq.req.error = ATA_DEV0_PASSED_DEV1_PASSED_OR_NOT_PRSNT;
/* disassemble returned diagnostic codes */
if (breq.req.error == ATA_DEV0_PASSED_DEV1_PASSED_OR_NOT_PRSNT)
{