diff options
Diffstat (limited to 'private/ntos/ndis/madge/driver/head_mod/drv_rxtx.h')
-rw-r--r-- | private/ntos/ndis/madge/driver/head_mod/drv_rxtx.h | 201 |
1 files changed, 201 insertions, 0 deletions
diff --git a/private/ntos/ndis/madge/driver/head_mod/drv_rxtx.h b/private/ntos/ndis/madge/driver/head_mod/drv_rxtx.h new file mode 100644 index 000000000..38576fb7b --- /dev/null +++ b/private/ntos/ndis/madge/driver/head_mod/drv_rxtx.h @@ -0,0 +1,201 @@ +/****************************************************************************/ +/****************************************************************************/ +/* */ +/* DRIVER/USER INTERFACE PROCEDURE DEFINITIONS */ +/* =========================================== */ +/* */ +/* DRV_RXTX.H : Part of the FASTMAC TOOL-KIT (FTK) */ +/* */ +/* Copyright (c) Madge Networks Ltd. 1991-1994 */ +/* CONFIDENTIAL */ +/* */ +/* */ +/****************************************************************************/ +/* */ +/* The first section contains all the function definitions of routines that */ +/* must be supplied by the user to receive frames plus information on */ +/* completed SRBs. */ +/* */ +/* The next sections contain function prototypes for the transmit and */ +/* receive functions the user must provide. Eaxmples of these functions can */ +/* be found in the TRANSMIT.C and RECEIVE.C modules of the DOS demonstration*/ +/* programs. */ +/* */ +/****************************************************************************/ + +/****************************************************************************/ +/* */ +/* VERSION_NUMBER of FTK to which this DRV_RXTX.H belongs : */ +/* */ + +#define FTK_VERSION_NUMBER_DRV_RXTX_H 221 + +/****************************************************************************/ +/* */ +/* FUNCTION PROTOTYPES */ +/* */ +/****************************************************************************/ + +/****************************************************************************/ +/* */ +/* WARNING: Depending on the implementation, the receive side processing may*/ +/* require a USER_RECEIVE_FRAME routine, but this is implementation*/ +/* dependent. A fixed interface does not fit well with FastmacPlus.*/ +/* */ + +extern void user_schedule_receive_process( + + ADAPTER_HANDLE adapter_handle + ); + +extern void user_handle_adapter_check( + + ADAPTER_HANDLE adapter_handle + ); + +extern void user_completed_srb( + + ADAPTER_HANDLE adapter_handle, + WBOOLEAN srb_completed_successfully + ); + +extern void user_transmit_completion( + + ADAPTER_HANDLE adapter_handle, + DWORD identifier + ); + +extern WORD user_receive_frame( + + ADAPTER_HANDLE adapter_handle, + BYTE FAR * rx_frame_addr, + WORD rx_frame_len + ); + +extern void user_adapter_removed( + + ADAPTER_HANDLE adapter_handle + ); + + +/****************************************************************************/ +/* */ +/* These are the function prototypes that the FastMAC Plus user must */ +/* provide to handle transmission. Note that rxtx_irq_completion_check */ +/* is only needed for the FTK_TX_WITH_COMPLETION transmit method. */ +/* */ + +#ifdef FMPLUS + +extern WBOOLEAN rxtx_transmit_frame( + + ADAPTER_HANDLE adapter_handle, + DWORD tx_frame_identifier, + WORD tx_frame_length, + WORD tx_flags + ); + +extern void rxtx_irq_tx_completion_check( + + ADAPTER_HANDLE adapter_handle, + ADAPTER * adapter + ); + +extern WBOOLEAN rxtx_allocate_tx_buffers( + + ADAPTER * adapter, + WORD max_frame_size, + WORD number_of_slots + ); + +extern void rxtx_setup_tx_buffers( + + ADAPTER * adapter, + WBOOLEAN use_physical_addresses, + WORD number_of_slots + ); + +extern void rxtx_free_tx_buffers( + + ADAPTER * adapter, + WORD max_frame_size, + WORD number_of_slots + ); +#endif + + +/****************************************************************************/ +/* */ +/* These are the function prototypes that the FastMAC Plus user must */ +/* provide to handle receiving. */ +/* */ + +#ifdef FMPLUS + +extern void rxtx_irq_rx_frame_handler( + + ADAPTER_HANDLE adapter_handle, + ADAPTER * adapter + ); + +extern WBOOLEAN rxtx_allocate_rx_buffers( + + ADAPTER * adapter, + WORD max_frame_size, + WORD number_of_slots + ); + +extern void rxtx_setup_rx_buffers( + + ADAPTER * adapter, + WBOOLEAN use_physical_addresses, + WORD number_of_slots + ); + +extern void rxtx_free_rx_buffers( + + ADAPTER * adapter, + WORD max_frame_size, + WORD number_of_slots + ); + +#endif + + +/****************************************************************************/ +/* */ +/* These are the function prototypes that the FastMAC user must */ +/* provide to handle transmission. */ +/* */ + +#ifndef FMPLUS + +extern WBOOLEAN rxtx_transmit_frame( + + ADAPTER_HANDLE adapter_handle, + DWORD tx_frame_identifier, + WORD tx_frame_length, + WORD tx_flags + ); + +#endif + + +/****************************************************************************/ +/* */ +/* These are the function prototypes that the FastMAC user must */ +/* provide to handle receiving. */ +/* */ + +#ifndef FMPLUS + +extern void rxtx_irq_rx_frame_handler( + + ADAPTER_HANDLE adapter_handle, + ADAPTER * adapter + ); + + +#endif + +/************** End of DRV_RXTX.H file **************************************/ |