summaryrefslogtreecommitdiffstats
path: root/private/ntos/ndis/digi/pcimac/idd_pub.h
diff options
context:
space:
mode:
Diffstat (limited to 'private/ntos/ndis/digi/pcimac/idd_pub.h')
-rw-r--r--private/ntos/ndis/digi/pcimac/idd_pub.h59
1 files changed, 59 insertions, 0 deletions
diff --git a/private/ntos/ndis/digi/pcimac/idd_pub.h b/private/ntos/ndis/digi/pcimac/idd_pub.h
new file mode 100644
index 000000000..da43ee2b4
--- /dev/null
+++ b/private/ntos/ndis/digi/pcimac/idd_pub.h
@@ -0,0 +1,59 @@
+/*
+ * IDD_PUB.H - IDP Device Driver public header for PCIMAC/ISA
+ */
+
+#ifndef _IDD_PUB_
+#define _IDD_PUB_
+
+#define IDD_MAX_AREA 512 /* max size of area got in get_area */
+
+//
+// global idd def's
+//
+/* IDD message descriptor */
+typedef struct
+{
+ USHORT opcode; /* message opcode (type) */
+ USHORT buflen; /* related buffer length */
+ UCHAR *bufptr; /* related buffer pointer (0=none) */
+ ULONG bufid; /* related buffer id */
+ ULONG param; /* parameter area */
+} IDD_MSG;
+
+/* IDD extended message descriptor */
+typedef struct
+{
+ USHORT opcode; /* message opcode (type) */
+ USHORT buflen; /* related buffer length */
+ UCHAR *bufptr; /* related buffer pointer (0=none) */
+ ULONG bufid; /* related buffer id */
+ ULONG param; /* parameter area */
+ USHORT FragmentFlags; /* fragmentation flags */
+} IDD_XMSG;
+
+/* IDD fragment descriptor */
+typedef struct
+{
+ USHORT len; /* fragment length */
+ CHAR *ptr; /* fragment buffer pointer */
+} IDD_FRAG;
+
+typedef struct
+{
+ VOID (*area_handler)(); /* handler for get_area */
+ VOID *area_handler_arg; /* argument for handler */
+
+ ULONG area_state; /* state of last/current get_area command */
+#define AREA_ST_IDLE 0 /* - idle, no area defined */
+#define AREA_ST_PEND 1 /* - pending, get_area in progress */
+#define AREA_ST_DONE 2 /* - done, results ready */
+
+ ULONG area_id; /* area id (number) pend/done */
+
+ VOID *area_idd; /* related idd (from which area is retreived) */
+ UCHAR area_buf[IDD_MAX_AREA]; /* buffer receiving/containing area data */
+ ULONG area_len; /* length of actual data */
+}IDD_AREA;
+
+#endif /* _IDD_PUB_ */
+