bsp/gen5200: Use fatal error instead of assert

This commit is contained in:
Sebastian Huber
2013-03-28 09:24:11 +01:00
parent 8ac62c4ea0
commit d1e1df686c
2 changed files with 10 additions and 4 deletions

View File

@@ -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)

View File

@@ -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;