OpenCBM
Functions
waitlistener.c File Reference

Wait for listener to signal that it is ready to receive. More...

#include <wdm.h>
#include "cbm_driver.h"
#include "i_iec.h"

Go to the source code of this file.

Functions

VOID cbmiec_wait_for_listener (IN PDEVICE_EXTENSION Pdx, IN BOOLEAN SendEoi)
 Wait until listener is ready to receive. More...
 

Detailed Description

Wait for listener to signal that it is ready to receive.



Author
Spiro Trikaliotis
Authors
Based on code from Michael Klein <michael(dot)klein(at)puffin(dot)lb(dot)shuttle(dot)de>

Definition in file waitlistener.c.

Function Documentation

VOID cbmiec_wait_for_listener ( IN PDEVICE_EXTENSION  Pdx,
IN BOOLEAN  SendEoi 
)

Wait until listener is ready to receive.

This function waits until a listener is ready.

Parameters
PdxPointer to the device extension.
SendEoiTRUE if we want to signal an EOI. FALSE otherwise.
Todo:
Shouldn't we make sure that there is no spurious interrupt until now?
Bug:
This implementation can lock up the whole machine, thus, do not use it!

Definition at line 80 of file waitlistener.c.

References cbmiec_block_irq(), CBMIEC_GET, CBMIEC_RELEASE, cbmiec_release_irq(), cbmiec_schedule_timeout(), CBMIEC_SET, DBG_ASSERT, DBG_PREFIX, DBG_SUCCESS, DBG_VERIFY, DBGDO, FUNC_ENTER, FUNC_LEAVE, libiec_global_timeouts, PP_CLK_OUT, PP_DATA_IN, PP_LP_IRQ, QueueShouldCancelCurrentIrp(), and IEC_TIMEOUTS::T_WaitForListener_Granu_T_H.

Referenced by cbmiec_i_raw_write().