From d1e1df686cb389885a11c5391fff1baca76c6449 Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Thu, 28 Mar 2013 09:24:11 +0100 Subject: 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 2fce1e1219..88150928f2 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 9f30e66488..fccf453870 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; -- cgit v1.2.3