OpenCBM
Data Structures | Macros | Typedefs
cbm_driver.h File Reference

Definitions for the opencbm driver. More...

#include "arch_cbm_driver.h"
#include "debug.h"
#include "perfeval.h"

Go to the source code of this file.

Data Structures

struct  DEVICE_EXTENSION_s
 

Macros

#define DBG_KERNELMODE
 
#define PERF_EVENT_MEASURE_TIME(_x_)   PERF_EVENT(0x1, (ULONG_PTR) _x_)
 
#define PERF_EVENT_STARTIO(_x_)   PERF_EVENT(0x10, (ULONG_PTR) _x_)
 
#define PERF_EVENT_COMPLETEIRP(_x_)   PERF_EVENT(0x11, (ULONG_PTR) _x_)
 
#define PERF_EVENT_CANCELIRP(_x_)   PERF_EVENT(0x12, (ULONG_PTR) _x_)
 
#define PERF_EVENT_IOCTL_QUEUE(_x_)   PERF_EVENT(0x20, _x_)
 
#define PERF_EVENT_IOCTL_EXECUTE(_x_)   PERF_EVENT(0x21, _x_)
 
#define PERF_EVENT_OPEN_QUEUE()   PERF_EVENT(0x30, 0)
 
#define PERF_EVENT_OPEN_EXECUTE()   PERF_EVENT(0x31, 0)
 
#define PERF_EVENT_CLOSE_QUEUE()   PERF_EVENT(0x40, 0)
 
#define PERF_EVENT_CLOSE_EXECUTE()   PERF_EVENT(0x41, 0)
 
#define PERF_EVENT_READ_QUEUE(_x_)   PERF_EVENT(0x50, _x_)
 
#define PERF_EVENT_READ_EXECUTE(_x_)   PERF_EVENT(0x51, _x_)
 
#define PERF_EVENT_WRITE_QUEUE(_x_)   PERF_EVENT(0x60, _x_)
 
#define PERF_EVENT_WRITE_EXECUTE(_x_)   PERF_EVENT(0x61, _x_)
 
#define PERF_EVENT_THREAD_START_SCHED()   PERF_EVENT(0x100, 0)
 
#define PERF_EVENT_THREAD_START_EXEC()   PERF_EVENT(0x100, 1)
 
#define PERF_EVENT_THREAD_POLL()   PERF_EVENT(0x100, 2)
 
#define PERF_EVENT_THREAD_STOP_SCHED()   PERF_EVENT(0x100, 3)
 
#define PERF_EVENT_THREAD_STOP_EXEC()   PERF_EVENT(0x100, 4)
 
#define PERF_EVENT_READ_BYTE_NO(_x_)   PERF_EVENT(0x200, _x_)
 
#define PERF_EVENT_READ_BYTE(_x_)   PERF_EVENT(0x201, _x_)
 
#define PERF_EVENT_READ_BIT_NO(_x_)   PERF_EVENT(0x202, _x_)
 
#define PERF_EVENT_WRITE_BYTE_NO(_x_)   PERF_EVENT(0x210, _x_)
 
#define PERF_EVENT_WRITE_BYTE(_x_)   PERF_EVENT(0x211, _x_)
 
#define PERF_EVENT_WRITE_BIT_NO(_x_)   PERF_EVENT(0x212, _x_)
 

Typedefs

typedef struct DEVICE_EXTENSION_s DEVICE_EXTENSION
 @@@ More...
 
typedef struct DEVICE_EXTENSION_sPDEVICE_EXTENSION
 @@@ More...
 
typedef enum cablestate_e CABLESTATE
 @@@ More...
 

Detailed Description

Definitions for the opencbm driver.



Author
Spiro Trikaliotis

Definition in file cbm_driver.h.

Macro Definition Documentation

#define DBG_KERNELMODE

Debugging is for the kernel-mode

Definition at line 28 of file cbm_driver.h.

#define PERF_EVENT_CANCELIRP (   _x_)    PERF_EVENT(0x12, (ULONG_PTR) _x_)

Performance evaluation: An IRP is cancelled

Definition at line 44 of file cbm_driver.h.

#define PERF_EVENT_CLOSE_EXECUTE ( )    PERF_EVENT(0x41, 0)

Performance evaluation: An CLOSE request is executed

Definition at line 57 of file cbm_driver.h.

Referenced by cbm_execute_close().

#define PERF_EVENT_CLOSE_QUEUE ( )    PERF_EVENT(0x40, 0)

Performance evaluation: An CLOSE request is queued

Definition at line 55 of file cbm_driver.h.

Referenced by cbm_createopenclose().

#define PERF_EVENT_COMPLETEIRP (   _x_)    PERF_EVENT(0x11, (ULONG_PTR) _x_)

Performance evaluation: An IRP is completed

Definition at line 42 of file cbm_driver.h.

Referenced by QueueCompleteIrp().

#define PERF_EVENT_IOCTL_EXECUTE (   _x_)    PERF_EVENT(0x21, _x_)

Performance evaluation: An IOCTL is executed

Definition at line 49 of file cbm_driver.h.

Referenced by cbm_execute_devicecontrol().

#define PERF_EVENT_IOCTL_QUEUE (   _x_)    PERF_EVENT(0x20, _x_)

Performance evaluation: An IOCTL is queued

Definition at line 47 of file cbm_driver.h.

Referenced by cbm_devicecontrol().

#define PERF_EVENT_MEASURE_TIME (   _x_)    PERF_EVENT(0x1, (ULONG_PTR) _x_)

Performance evaluation: Make sure the measuring system works as expected

Definition at line 37 of file cbm_driver.h.

#define PERF_EVENT_OPEN_EXECUTE ( )    PERF_EVENT(0x31, 0)

Performance evaluation: An OPEN request is executed

Definition at line 53 of file cbm_driver.h.

Referenced by cbm_execute_createopen().

#define PERF_EVENT_OPEN_QUEUE ( )    PERF_EVENT(0x30, 0)

Performance evaluation: An OPEN request is queued

Definition at line 51 of file cbm_driver.h.

Referenced by cbm_createopenclose().

#define PERF_EVENT_READ_BIT_NO (   _x_)    PERF_EVENT(0x202, _x_)

Performance evaluation: Reading bit no. x

Definition at line 83 of file cbm_driver.h.

Referenced by cbmiec_i_raw_read().

#define PERF_EVENT_READ_BYTE (   _x_)    PERF_EVENT(0x201, _x_)

Performance evaluation: Read a byte x

Definition at line 81 of file cbm_driver.h.

Referenced by cbmiec_i_raw_read().

#define PERF_EVENT_READ_BYTE_NO (   _x_)    PERF_EVENT(0x200, _x_)

Performance evaluation: Reading byte no x

Definition at line 79 of file cbm_driver.h.

Referenced by cbmiec_i_raw_read().

#define PERF_EVENT_READ_EXECUTE (   _x_)    PERF_EVENT(0x51, _x_)

Performance evaluation: A READ request is executed

Definition at line 61 of file cbm_driver.h.

Referenced by cbm_execute_readwrite().

#define PERF_EVENT_READ_QUEUE (   _x_)    PERF_EVENT(0x50, _x_)

Performance evaluation: A READ request is queued

Definition at line 59 of file cbm_driver.h.

Referenced by cbm_readwrite().

#define PERF_EVENT_STARTIO (   _x_)    PERF_EVENT(0x10, (ULONG_PTR) _x_)

Performance evaluation: StartIo() is performed

Definition at line 40 of file cbm_driver.h.

Referenced by cbm_startio().

#define PERF_EVENT_THREAD_POLL ( )    PERF_EVENT(0x100, 2)

Performance evaluation: Thread polls for IRPs

Definition at line 72 of file cbm_driver.h.

Referenced by cbm_thread().

#define PERF_EVENT_THREAD_START_EXEC ( )    PERF_EVENT(0x100, 1)

Performance evaluation: Thread is actually started

Definition at line 70 of file cbm_driver.h.

Referenced by cbm_thread().

#define PERF_EVENT_THREAD_START_SCHED ( )    PERF_EVENT(0x100, 0)

Performance evaluation: Schedule a start of the thread

Definition at line 68 of file cbm_driver.h.

Referenced by cbm_start_thread().

#define PERF_EVENT_THREAD_STOP_EXEC ( )    PERF_EVENT(0x100, 4)

Performance evaluation: Thread is actually stopped

Definition at line 76 of file cbm_driver.h.

Referenced by cbm_thread().

#define PERF_EVENT_THREAD_STOP_SCHED ( )    PERF_EVENT(0x100, 3)

Performance evaluation: Schedule a stop of the thread

Definition at line 74 of file cbm_driver.h.

Referenced by cbm_stop_thread().

#define PERF_EVENT_WRITE_BIT_NO (   _x_)    PERF_EVENT(0x212, _x_)

Performance evaluation: Writing bit no. x

Definition at line 89 of file cbm_driver.h.

Referenced by cbmiec_send_byte().

#define PERF_EVENT_WRITE_BYTE (   _x_)    PERF_EVENT(0x211, _x_)

Performance evaluation: Writing byte x

Definition at line 87 of file cbm_driver.h.

Referenced by cbmiec_i_raw_write().

#define PERF_EVENT_WRITE_BYTE_NO (   _x_)    PERF_EVENT(0x210, _x_)

Performance evaluation: Writing byte no x

Definition at line 85 of file cbm_driver.h.

Referenced by cbmiec_i_raw_write().

#define PERF_EVENT_WRITE_EXECUTE (   _x_)    PERF_EVENT(0x61, _x_)

Performance evaluation: A WRITE request is executed

Definition at line 65 of file cbm_driver.h.

Referenced by cbm_execute_readwrite().

#define PERF_EVENT_WRITE_QUEUE (   _x_)    PERF_EVENT(0x60, _x_)

Performance evaluation: A WRITE request is queued

Definition at line 63 of file cbm_driver.h.

Referenced by cbm_readwrite().

Typedef Documentation

typedef enum cablestate_e CABLESTATE

@@@

Todo:
document

Definition at line 92 of file cbm_driver.h.

@@@

Todo:
document

The device extension for the device

Definition at line 20 of file cbm_driver.h.

typedef struct DEVICE_EXTENSION_s * PDEVICE_EXTENSION

@@@

Todo:
document

Definition at line 23 of file cbm_driver.h.