[rtems commit] bsp/gen5200: Use fatal error instead of assert
Sebastian Huber
sebh at rtems.org
Thu Mar 28 08:22:16 UTC 2013
Module: rtems
Branch: master
Commit: d1e1df686cb389885a11c5391fff1baca76c6449
Changeset: http://git.rtems.org/rtems/commit/?id=d1e1df686cb389885a11c5391fff1baca76c6449
Author: Sebastian Huber <sebastian.huber at embedded-brains.de>
Date: Thu Mar 28 09:24:11 2013 +0100
bsp/gen5200: Use fatal error instead of assert
---
c/src/lib/libbsp/powerpc/gen5200/ide/ata.c | 10 +++++++---
c/src/lib/libbsp/powerpc/gen5200/include/bsp.h | 4 +++-
2 files changed, 10 insertions(+), 4 deletions(-)
diff --git a/c/src/lib/libbsp/powerpc/gen5200/ide/ata.c b/c/src/lib/libbsp/powerpc/gen5200/ide/ata.c
index 2fce1e1..8815092 100644
--- a/c/src/lib/libbsp/powerpc/gen5200/ide/ata.c
+++ b/c/src/lib/libbsp/powerpc/gen5200/ide/ata.c
@@ -93,7 +93,7 @@ bool ata_set_transfer_mode(uint8_t mode)
return ata_check_status();
}
-static bool probe()
+static bool probe(void)
{
bool card_present = true;
@@ -121,13 +121,17 @@ static void create_lock(ata_driver *self)
0,
&self->lock
);
- assert(sc == RTEMS_SUCCESSFUL);
+ if (sc != RTEMS_SUCCESSFUL) {
+ mpc5200_fatal(MPC5200_FATAL_ATA_LOCK_CREATE);
+ }
}
static void destroy_lock(const ata_driver *self)
{
rtems_status_code sc = rtems_semaphore_delete(self->lock);
- assert(sc == RTEMS_SUCCESSFUL);
+ if (sc != RTEMS_SUCCESSFUL) {
+ mpc5200_fatal(MPC5200_FATAL_ATA_LOCK_DESTROY);
+ }
}
void ata_driver_create(ata_driver *self, const char *device_file_path, rtems_block_device_ioctl io_control)
diff --git a/c/src/lib/libbsp/powerpc/gen5200/include/bsp.h b/c/src/lib/libbsp/powerpc/gen5200/include/bsp.h
index 9f30e66..fccf453 100644
--- a/c/src/lib/libbsp/powerpc/gen5200/include/bsp.h
+++ b/c/src/lib/libbsp/powerpc/gen5200/include/bsp.h
@@ -233,7 +233,9 @@ typedef enum {
MPC5200_FATAL_MSCAN_B_SET_MODE,
MPC5200_FATAL_ATA_DISK_IO_INIT,
MPC5200_FATAL_ATA_DISK_CREATE,
- MPC5200_FATAL_ATA_DMA_SINGLE_IRQ_INSTALL
+ MPC5200_FATAL_ATA_DMA_SINGLE_IRQ_INSTALL,
+ MPC5200_FATAL_ATA_LOCK_CREATE,
+ MPC5200_FATAL_ATA_LOCK_DESTROY
} mpc5200_fatal_code;
void mpc5200_fatal(mpc5200_fatal_code code) RTEMS_COMPILER_NO_RETURN_ATTRIBUTE;
More information about the vc
mailing list