From 9f0a68ce5afca9d21d34bab83d42fbe4bb0cf8ef Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Wed, 31 Oct 2012 11:54:39 +0100 Subject: libblock: Block device transfer request API change Add and use rtems_blkdev_request_done(). Block device transfer requests must signal the completion status now with rtems_blkdev_request_done(). The return value of the block device IO control will be ignored for transfer requests. The first parameter of rtems_blkdev_request_cb is now the transfer request structure. Renamed rtems_blkdev_request::req_done to rtems_blkdev_request::done to break third party drivers at compile time, otherwise this API change would result in runtime errors. --- c/src/libchip/ide/ata.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'c/src/libchip/ide/ata.c') diff --git a/c/src/libchip/ide/ata.c b/c/src/libchip/ide/ata.c index 18d8d14386..1e25003698 100644 --- a/c/src/libchip/ide/ata.c +++ b/c/src/libchip/ide/ata.c @@ -185,7 +185,8 @@ ata_io_data_request(dev_t device, rtems_blkdev_request *req) areq = malloc(sizeof(ata_req_t)); if (areq == NULL) { - return RTEMS_NO_MEMORY; + rtems_blkdev_request_done(req, RTEMS_NO_MEMORY); + return RTEMS_SUCCESSFUL; } areq->breq = req; -- cgit v1.2.3