OpenCBM
|
Some utility functions for the IEC library. More...
Go to the source code of this file.
Functions | |
VOID | cbmiec_schedule_timeout (IN ULONG Howlong) |
Schedule a timeout. More... | |
VOID | cbmiec_udelay (IN ULONG Howlong) |
Wait for a timeout. More... | |
VOID | cbmiec_block_irq (PDEVICE_EXTENSION Pdx) |
Block all interrupts. More... | |
VOID | cbmiec_release_irq (PDEVICE_EXTENSION Pdx) |
Release the interrupts. More... | |
VOID cbmiec_block_irq | ( | PDEVICE_EXTENSION | Pdx | ) |
Block all interrupts.
This function blocks all interrupt, thus that we cannot be interrupted while executing some critical things.
This should not be used for big time periods.
Definition at line 94 of file libiec/util.c.
References CLI(), DBG_ASSERT, DBGDO, FUNC_ENTER, and FUNC_LEAVE.
Referenced by cbmiec_i_raw_read(), cbmiec_i_raw_write(), cbmiec_send_byte(), and cbmiec_wait_for_listener().
VOID cbmiec_release_irq | ( | PDEVICE_EXTENSION | Pdx | ) |
Release the interrupts.
This function releases all interrupt, undoing a previous cbmiec_block_irq() call.
Definition at line 118 of file libiec/util.c.
References DBG_ASSERT, DBGDO, FUNC_ENTER, FUNC_LEAVE, and STI().
Referenced by cbmiec_i_raw_read(), cbmiec_i_raw_write(), cbmiec_send_byte(), and cbmiec_wait_for_listener().
VOID cbmiec_schedule_timeout | ( | IN ULONG | Howlong | ) |
Schedule a timeout.
This function schedules a timeout. Scheduling means that other threads have the opportunity to use the processor while we're waiting.
Howlong | How long to wait (in us) |
Definition at line 34 of file libiec/util.c.
References FUNC_ENTER, and FUNC_LEAVE.
Referenced by cbmiec_check_device(), cbmiec_i_raw_read(), cbmiec_i_raw_write(), cbmiec_iec_wait(), cbmiec_reset(), cbmiec_wait_for_drives_ready(), and cbmiec_wait_for_listener().
VOID cbmiec_udelay | ( | IN ULONG | Howlong | ) |
Wait for a timeout.
This function waits for a timeout. Waiting means that we want to have an exact timing, so don't give away the processor.
Howlong | How long to wait (in us) |
Definition at line 66 of file libiec/util.c.
References FUNC_ENTER, and FUNC_LEAVE.
Referenced by cbmiec_i_raw_read(), cbmiec_i_raw_write(), cbmiec_iec_wait(), cbmiec_parallel_burst_read(), cbmiec_parallel_burst_write(), cbmiec_send_byte(), cbmiec_test_irq(), and ParPortSetMode().