source: trunk/include/rmbase.h@ 10366

Last change on this file since 10366 was 8403, checked in by sandervl, 23 years ago

added resource manager header files

File size: 26.6 KB
Line 
1/**************************************************************************
2 *
3 * SOURCE FILE NAME = RMBASE.H
4 *
5 * DESCRIPTIVE NAME = RM Base types and definitions
6 *
7 *
8 * Copyright : COPYRIGHT IBM CORPORATION, 1994, 1995
9 * LICENSED MATERIAL - PROGRAM PROPERTY OF IBM
10 * REFER TO COPYRIGHT INSTRUCTION FORM#G120-2083
11 * RESTRICTED MATERIALS OF IBM
12 * IBM CONFIDENTIAL
13 *
14 * VERSION = V1.01
15 *
16 * DATE
17 *
18 * DESCRIPTION :
19 *
20 * Purpose:
21 *
22 *
23 *
24 * FUNCTIONS :
25 *
26 * NOTES
27 *
28 *
29 * STRUCTURES
30 *
31 * EXTERNAL REFERENCES
32 *
33 *
34 *
35 * EXTERNAL FUNCTIONS
36 *
37 * CHANGE ACTIVITY =
38 * DATE FLAG APAR CHANGE DESCRIPTION
39 * -------- ---------- ----- --------------------------------------
40 *
41 ****************************************************************************/
42
43
44#ifndef __RM_HEADER__
45#define __RM_HEADER__
46
47
48#define CMVERSION_MAJOR 0x01
49#define CMVERSION_MINOR 0x01
50
51#define CMVERSION_MAJOR_21 0x02
52#define CMVERSION_MINOR_21 0x01
53
54#define FAR /* this will be deleted shortly */
55#define NEAR /* this will be deleted shortly */
56
57typedef ULONG RMHANDLE, FAR *PRMHANDLE, NEAR *NPRMHANDLE;
58typedef RMHANDLE HDRIVER;
59typedef RMHANDLE HADAPTER;
60typedef RMHANDLE HDEVICE;
61typedef RMHANDLE HRESOURCE;
62typedef RMHANDLE HLDEV;
63typedef RMHANDLE HSYSNAME;
64typedef RMHANDLE HDETECTED;
65
66typedef HDRIVER FAR *PHDRIVER;
67typedef HDRIVER NEAR *NPHDRIVER;
68typedef HADAPTER FAR *PHADAPTER;
69typedef HADAPTER NEAR *NPHADAPTER;
70typedef HDEVICE FAR *PHDEVICE;
71typedef HDEVICE NEAR *NPHDEVICE;
72typedef HRESOURCE FAR *PHRESOURCE;
73typedef HRESOURCE NEAR *NPHRESOURCE;
74typedef HLDEV FAR *PHLDEV;
75typedef HLDEV NEAR *NPHLDEV;
76typedef HSYSNAME FAR *PHSYSNAME;
77typedef HSYSNAME NEAR *NPHSYSNAME;
78typedef HDETECTED FAR *PHDETECTED ;
79typedef HDETECTED NEAR *NPHDETECTED ;
80
81/*********************************/
82/* pResourceStruct->ResourceType */
83/*********************************/
84
85#define RS_TYPE_IO 1
86#define RS_TYPE_IRQ 2
87#define RS_TYPE_MEM 3
88#define RS_TYPE_DMA 4
89#define RS_TYPE_TIMER 5
90#define RS_TYPE_NEW 0xffff
91
92typedef struct _hresource {
93 ULONG NumResource;
94 HRESOURCE hResource[1]; /*First Entry in Array of HRESOURCE */
95}AHRESOURCE, FAR *PAHRESOURCE, NEAR *NPAHRESOURCE;
96
97
98/****************************************************************************/
99/* */
100/* Driver Structure */
101/* */
102/****************************************************************************/
103
104typedef struct {
105 USHORT Year;
106 UCHAR Month;
107 UCHAR Day;
108} DATESTAMP, FAR *PDATESTAMP, NEAR *NPDATESTAMP;
109
110
111/* Callback for Grant/Yield; Indicates CM resolves resource to handle */
112#ifdef __IBMCPP__
113typedef ULONG PFNRMCB;
114#else
115typedef USHORT (_cdecl FAR *PFNRMCB)(HRESOURCE hResource);
116#endif
117
118
119typedef struct {
120 PSZ DrvrName;
121 PSZ DrvrDescript;
122 PSZ VendorName;
123 UCHAR MajorVer;
124 UCHAR MinorVer;
125 DATESTAMP Date;
126 USHORT DrvrFlags;
127 USHORT DrvrType;
128 USHORT DrvrSubType;
129 PFNRMCB DrvrCallback; /* Event notification */
130} DRIVERSTRUCT, FAR *PDRIVERSTRUCT, NEAR *NPDRIVERSTRUCT;
131
132
133/********************************/
134/* pDriverStruct->DrvrFlags */
135/********************************/
136
137#define DRF_STATIC 0x0000
138#define DRF_DYNAMIC 0x0001
139#define DRF_PREVIOUS 0x0002
140
141
142/* pDriverStruct->DriverType */
143/* pDriverStruct->DriverSubType */
144#define DRT_UNDEFINED 0
145 #define DRS_UNDEFINED 0
146
147#define DRT_PCMCIA 1
148 #define DRS_SOCKETSERV 1
149 #define DRS_CARDSERV 2
150 #define DRS_CLIENT 3
151
152#define DRT_ADDDM 2
153 #define DRS_DM 1
154 #define DRS_FILTER 2
155 #define DRS_ADD 3
156 #define DRS_DM_TRANSPORT 4
157
158#define DRT_OS2 3
159 #define DRS_CHAR 1
160 #define DRS_BLOCK 2
161 #define DRS_APP_HELPER 3
162
163#define DRT_NETWORK 4
164#define DRT_VIDEO 5
165#define DRT_AUDIO 6
166#define DRT_SERVICE 7
167 #define DRS_SNOOPER 1
168 #define DRS_CONFIG 2
169
170/****************************************************************************/
171/* */
172/* Adapter Structure - Device Bus */
173/* */
174/****************************************************************************/
175
176typedef struct {
177 USHORT ADDHandle;
178 USHORT UnitHandle;
179}ADD_UNIT, FAR *PADD_UNIT, NEAR *NPADD_UNIT;
180
181typedef struct {
182 USHORT VolFlags;
183 USHORT VolIFSType;
184 ULONG VolSize;
185 ULONG VolID;
186} DASD_VOL, FAR *PDASD_VOL, NEAR *NPDASD_VOL;
187
188typedef struct {
189 USHORT Priority;
190 USHORT DriverType;
191 UCHAR DriverName[12];
192 UCHAR DriverParmLine[1]; /* Embedded asciiz */
193} DRIVERINFO, FAR *PDRIVERINFO, NEAR *NPDRIVERINFO;
194
195#define DriverBase 0
196#define DriverLoadable 1
197
198
199typedef struct _ADJUNCT FAR *PADJUNCT;
200typedef struct _ADJUNCT{
201// warning all common field sizes needed
202// see FIELDOFFSETOF() macro below
203 PADJUNCT pNextAdj;
204 USHORT AdjLength;
205 USHORT AdjType;
206 union {
207 USHORT AdjBase;
208 USHORT SCSI_Target_LUN;
209 USHORT Adapter_Number;
210 USHORT Device_Number;
211 USHORT PCI_DevFunc;
212 USHORT Model_Info;
213 ADD_UNIT Add_Unit;
214 DASD_VOL Dasd_Vol;
215 DRIVERINFO DriverInfo;
216 };
217}ADJUNCT, NEAR *NPADJUNCT;
218
219
220/********************************/
221/* pAdjunct->AdjunctType */
222/********************************/
223
224//#define ADJ_HEADER_SIZE sizeof(struct _ADJHEADER)
225#ifndef FIELDOFFSET
226#define FIELDOFFSET(type, field) ((SHORT)&(((type *)0)->field))
227#endif
228#define ADJ_HEADER_SIZE FIELDOFFSET(ADJUNCT,AdjBase)
229
230#define ADJ_SCSI_TARGET_LUN 1
231#define ADJ_ADAPTER_NUMBER 2
232#define ADJ_DEVICE_NUMBER 3
233#define ADJ_PCI_DEVFUNC 4
234#define ADJ_MODEL_INFO 5
235#define ADJ_ADD_UNIT 6
236#define ADJ_DASD_VOL 7
237#define ADJ_DRIVER_DATA 8
238
239
240typedef struct{
241 PSZ AdaptDescriptName;
242 USHORT AdaptFlags;
243 USHORT BaseType; /* From PCI/PNP */
244 USHORT SubType;
245 USHORT InterfaceType;
246 USHORT HostBusType;
247 USHORT HostBusWidth;
248 PADJUNCT pAdjunctList;
249 ULONG Reserved; /* Logical Name addition? */
250} ADAPTERSTRUCT, FAR *PADAPTERSTRUCT, NEAR *NPADAPTERSTRUCT;
251
252
253
254/********************************/
255/* pAdapteStruct->BaseType */
256/* pAdapteStruct->Sub */
257/* pAdapteStruct->InterfaceType */
258/* From PNP/PCI Specs */
259/********************************/
260
261#define AS_BASE_RESERVED 0x00
262 #define AS_SUB_OTHER 0x80 /* Can Be used by any BASE type */
263 #define AS_INTF_GENERIC 0x01 /* Can Be used by any SUB type */
264
265#define AS_BASE_MSD 0x01 /* Mass Storage Device */
266 #define AS_SUB_SCSI 0x01
267 #define AS_SUB_IDE 0x02
268 #define AS_SUB_FLPY 0x03
269 #define AS_SUB_IPI 0x04
270
271#define AS_BASE_NETWORK 0x02 /* Network Interface Controller */
272 #define AS_SUB_ETHERNET 0x01
273 #define AS_SUB_TOKENRING 0x02
274 #define AS_SUB_FDDI 0x03
275
276#define AS_BASE_DISPLAY 0x03 /* Display Controller */
277 #define AS_SUB_VGA 0x01
278 #define AS_INTF_VGA_GEN 0x01
279 #define AS_INTF_VESA_SVGA 0x02
280 #define AS_SUB_XGA 0x02
281
282
283#define AS_BASE_MMEDIA 0x04 /* Multi-media Controller */
284 #define AS_SUB_MM_VIDEO 0x01
285 #define AS_SUB_MM_AUDIO 0x02
286
287#define AS_BASE_MEMORY 0x05 /* Memory */
288 #define AS_SUB_BIOS_ROM 0x01
289
290#define AS_BASE_BRIDGE 0x06 /* Bridge Controller */
291
292#define AS_BASE_COMM 0x07 /* Communications Device */
293 #define AS_SUB_SERIAL 0x01
294 #define AS_INTF_16450 0x01
295 #define AS_INTF_16550 0x02
296 #define AS_SUB_PARALLEL 0x02
297 #define AS_INTF_BIDI 0x01
298 #define AS_INTF_ECP 0x02
299 #define AS_SUB_ISDN 0x03 /* ISDN Device */ /* @@JD01 */
300 #define AS_INTF_UNKNOWN 0x01 /* Any I/F not yet defined @@JD01 */
301 #define AS_INTF_A2000FIFO 0x02 /* Active 2000 Fifo based @@JD01 */
302 #define AS_INTF_A2000SLC 0x03 /* Active 2000 Serial Link @@JD01 */
303
304#define AS_BASE_PERIPH 0x08 /* System Peripherals */
305 #define AS_SUB_PIC 0x01
306 #define AS_INTF_ISAPIC 0x01
307 #define AS_INTF_EISAPIC 0x02
308 #define AS_SUB_DMA 0x02
309 #define AS_SUB_TIMER 0x03
310 #define AS_SUB_RTC 0x04
311
312#define AS_BASE_INPUT 0x09 /* Input Device */
313 #define AS_SUB_KBD 0x01
314 #define AS_SUB_DIGIT 0x02
315 #define AS_SUB_MOUSE 0x03
316
317#define AS_BASE_DOCK 0x0a /* Docking Station */
318
319#define AS_BASE_CPU 0x0b /* CPU */
320
321#define AS_BASE_PCMCIA 0x0c /* PCMCIA */
322 #define AS_SUB_SOCKET_CONTROLLER 0x01 /* Socket Controller */
323
324#define AS_BASE_BIOS_ROM 0x0d
325
326/********************************/
327/* pAdapterStruct->HostBusType */
328/********************************/
329
330#define AS_HOSTBUS_OTHER 0x00
331#define AS_HOSTBUS_ISA 0x01
332#define AS_HOSTBUS_EISA 0x02
333#define AS_HOSTBUS_uCHNL 0x03
334#define AS_HOSTBUS_PCI 0x04
335#define AS_HOSTBUS_SCSI 0x05
336#define AS_HOSTBUS_PCMCIA 0x06
337#define AS_HOSTBUS_PARALLEL 0x07
338#define AS_HOSTBUS_PLANAR 0x08
339#define AS_HOSTBUS_UNKNOWN 0xff
340/* Others SERIAL??? */
341
342/********************************/
343/* pAdapterStruct->HostBusWidth */
344/********************************/
345
346#define AS_BUSWIDTH_8BIT 0x10
347#define AS_BUSWIDTH_16BIT 0x20
348#define AS_BUSWIDTH_32BIT 0x30
349#define AS_BUSWIDTH_64BIT 0x40
350#define AS_BUSWIDTH_UNKNOWN 0xf0
351
352/********************************/
353/* pAdapterStruct->AdapterFlags */
354/********************************/
355
356#define AS_16MB_ADDRESS_LIMIT 0x01
357#define AS_NO16MB_ADDRESS_LIMIT 0x00
358
359
360/****************************************************************************/
361/* */
362/* Device Structure - Object hanging off Adapter */
363/* */
364/****************************************************************************/
365
366typedef struct {
367 PSZ DevDescriptName;
368 USHORT DevFlags;
369 USHORT DevType;
370 PADJUNCT pAdjunctList;
371} DEVICESTRUCT, FAR *PDEVICESTRUCT, NEAR *NPDEVICESTRUCT;
372
373/********************************/
374/* pDeviceStruct->DevType */
375/********************************/
376
377
378#define DS_TYPE_DISK 0x0000 /* All Direct Access Devices */
379#define DS_TYPE_TAPE 0x0001 /* Sequencial Access Devices */
380#define DS_TYPE_PRINTER 0x0002 /* Printer Device */
381#define DS_TYPE_PROCESSOR 0x0003 /* Processor type device */
382#define DS_TYPE_WORM 0x0004 /* Write Once Read Many Device */
383#define DS_TYPE_CDROM 0x0005 /* CD ROM Device */
384#define DS_TYPE_SCANNER 0x0006 /* Scanner Device */
385#define DS_TYPE_OPT_MEM 0x0007 /* some Optical disk */
386#define DS_TYPE_CHANGER 0x0008 /* Changer device e.g. juke box */
387#define DS_TYPE_COMM 0x0009 /* Communication devices */
388#define DS_TYPE_ATAPI 0x000A /* Unspecific ATAPI protocol device */
389#define DS_TYPE_SCSI_ATT 0x000B /* SCSI Attach */
390#define DS_TYPE_SOCKET 0x000C /* PCMCIA Socket */
391#define DS_TYPE_SLOT 0x000D /* Bus Slot */
392#define DS_TYPE_PLANAR_CHIPSET 0x000E /* DMA/IRQ/TIMER Controllers */
393#define DS_TYPE_IO 0x000F /* Input/Output */
394#define DS_TYPE_AUDIO 0x0010 /* Audio Device */
395#define DS_TYPE_UNKNOWN 0xFFFF
396
397/********************************/
398/* pDeviceStruct->DevFlags */
399/********************************/
400
401#define DS_REMOVEABLE_MEDIA 0x01
402#define DS_FIXED_LOGICALNAME 0x02
403
404
405
406typedef struct {
407 ULONG NumDevices;
408 HDEVICE hDevice[1]; /* First Entry in array of HRESOURCE */
409 }AHDEVICES, FAR *PAHDEVICES, NEAR *NPAHDEVICES;
410
411
412/****************************************************************************/
413/* */
414/* Resource Structure */
415/* */
416/****************************************************************************/
417
418typedef struct {
419 USHORT BaseIOPort;
420 USHORT NumIOPorts;
421 USHORT IOFlags;
422 USHORT IOAddressLines;
423} IORESOURCE, FAR *PIORESOURCE, NEAR *NPIORESOURCE;
424
425/********************************/
426/* pIOResource->IOFlags */
427/********************************/
428
429#define RS_IO_EXCLUSIVE 0x0001
430#define RS_IO_MULTIPLEXED 0x0002
431#define RS_IO_SHARED 0x0004
432#define RS_IO_RECONFIGURE 0x0008
433#define RS_IO_GRANT_YIELD 0x0010
434#define RS_IO_FORCE_ALIAS 0x0020
435#define RS_SEARCH 0x4000
436#define RS_NONOWNER_ALLOWED 0x8000 /*@V103757*/
437
438/****************************************************************************/
439/* */
440/* IRQ Resource Structure */
441/* */
442/****************************************************************************/
443
444/* Interrupt handler for Grant/Yield with RM routing interrupts */
445#ifdef __IBMCPP__
446typedef ULONG PFNRMINTHANDLER;
447#else
448typedef USHORT (_cdecl FAR *PFNRMINTHANDLER)(VOID);
449#endif
450
451typedef struct {
452 USHORT IRQLevel; /* < 16 */
453 USHORT PCIIrqPin; /* < 5 */
454 USHORT IRQFlags;
455 USHORT Reserved; /* Alignment for 32 bit code */
456 PFNRMINTHANDLER pfnIntHandler;
457} IRQRESOURCE, FAR *PIRQRESOURCE, NEAR *NPIRQRESOURCE;
458
459/********************************/
460/* pIRQResource->PCIIrqPin */
461/********************************/
462#define RS_PCI_INT_NONE 0 /* For completeness, on non-PCI box */
463#define RS_PCI_INT_A 1
464#define RS_PCI_INT_B 2
465#define RS_PCI_INT_C 3
466#define RS_PCI_INT_D 4
467
468
469/********************************/
470/* pIRQResource->IRQFlags */
471/********************************/
472
473#define RS_IRQ_EXCLUSIVE 0x01
474#define RS_IRQ_MULTIPLEXED 0x02
475#define RS_IRQ_SHARED 0x04
476#define RS_IRQ_RECONFIGURE 0x08
477#define RS_IRQ_GRANT_YIELD 0x10
478#define RS_IRQ_ROUTER 0x20
479
480/****************************************************************************/
481/* */
482/* MEM Resource Structure */
483/* */
484/****************************************************************************/
485
486typedef struct {
487 ULONG MemBase;
488 ULONG MemSize;
489 USHORT MemFlags;
490 USHORT ReservedAlign; /* Alignment for 32-bit code */
491} MEMRESOURCE, FAR *PMEMRESOURCE, NEAR *NPMEMRESOURCE;
492
493
494/********************************/
495/* pMemResource->MemFlags */
496/********************************/
497
498#define RS_MEM_EXCLUSIVE 0x01
499#define RS_MEM_MULTIPLEXED 0x02
500#define RS_MEM_SHARED 0x04
501#define RS_MEM_RECONFIGURE 0x08
502#define RS_MEM_GRANT_YIELD 0x10
503
504/****************************************************************************/
505/* */
506/* DMA Resource Structure */
507/* */
508/****************************************************************************/
509
510typedef struct {
511 USHORT DMAChannel;
512 USHORT DMAFlags;
513} DMARESOURCE, FAR *PDMARESOURCE, NEAR *NPDMARESOURCE;
514
515
516/********************************/
517/* pDMAResource->DMAFlags */
518/********************************/
519
520#define RS_DMA_EXCLUSIVE 0x01
521#define RS_DMA_MULTIPLEXED 0x02
522#define RS_DMA_SHARED 0x04
523#define RS_DMA_RECONFIGURE 0x08
524#define RS_DMA_GRANT_YIELD 0x10
525
526/****************************************************************************/
527/* */
528/* Timer Resource Structure */
529/* */
530/****************************************************************************/
531
532typedef struct {
533 USHORT TMRChannel;
534 USHORT TMRFlags;
535} TMRRESOURCE, FAR *PTMRRESOURCE, NEAR *NPTMRRESOURCE;
536
537
538/********************************/
539/* pTmrResource->TMRFlags */
540/********************************/
541
542#define RS_TMR_EXCLUSIVE 0x01
543#define RS_TMR_MULTIPLEXED 0x02
544#define RS_TMR_SHARED 0x04
545
546
547/****************************************************************************/
548
549typedef struct {
550 ULONG ResourceType;
551 union {
552 IORESOURCE IOResource;
553 IRQRESOURCE IRQResource;
554 MEMRESOURCE MEMResource;
555 DMARESOURCE DMAResource;
556 TMRRESOURCE TMRResource;
557 };
558 ULONG Reserved;
559} RESOURCESTRUCT, FAR *PRESOURCESTRUCT, NEAR *NPRESOURCESTRUCT;
560
561
562/********************************/
563/* RMModifyResource Command */
564/********************************/
565#define RM_MODIFY_ADD 0
566#define RM_MODIFY_DELETE 1
567
568
569/****************************************************************************/
570/* */
571/* LDEV - Logical Device Structure */
572/* */
573/****************************************************************************/
574
575typedef struct {
576 PSZ LDevDescriptName;
577 USHORT LDevFlags;
578 USHORT LDevClass;
579 HDEVICE LDevHDevice;
580 PADJUNCT pAdjunctList;
581} LDEVSTRUCT, FAR *PLDEVSTRUCT, NEAR *NPLDEVSTRUCT;
582
583/*********************************/
584/* pLDevStruct->LDevFlags */
585/*********************************/
586/*- TBD -*/
587
588#define LDEV_CLASS_BASE 0
589#define LDEV_CLASS_ROOT (LDEV_CLASS_BASE+1)
590#define LDEV_CLASS_DASD (LDEV_CLASS_BASE+2)
591#define LDEV_CLASS_CDROM (LDEV_CLASS_BASE+3)
592#define LDEV_CLASS_SERIAL (LDEV_CLASS_BASE+4)
593#define LDEV_CLASS_PARALLEL (LDEV_CLASS_BASE+5)
594#define LDEV_CLASS_TAPE (LDEV_CLASS_BASE+6)
595
596#define NUM_LDEV_CLASSES 6
597#define MAX_LDEV_CLASSES 10
598#define NUM_DDCFG_TYPES 2
599
600/****************************************************************************/
601/* */
602/* SYSNAME - System Name */
603/* */
604/****************************************************************************/
605
606typedef struct {
607 PSZ SysDescriptName;
608 PADJUNCT pAdjunctList;
609 USHORT SysFlags;
610 USHORT Reserved;
611} SYSNAMESTRUCT, FAR *PSYSNAMESTRUCT, NEAR *NPSYSNAMESTRUCT;
612
613
614
615/****************************************************************************/
616/* */
617/* DETECTED - Detected HW Function */
618/* */
619/****************************************************************************/
620typedef ULONG IDTYPE;
621
622#define RM_IDTYPE_RM 0 /* Resource Manager Internal */
623#define RM_IDTYPE_EISA 1 /* EISA (Also ISA PNP) */
624#define RM_IDTYPE_PCI 2 /* PCI */
625#define RM_IDTYPE_LEGACY 3 /* LEGACY */
626
627typedef ULONG DEVID;
628typedef ULONG VENDID;
629typedef ULONG SERNUM;
630
631typedef struct {
632 PSZ DetectDescriptName;/* Ascii name */
633 USHORT DetectFlags; /* ??? */
634 IDTYPE IDType; /* EISA, PCI, etc.. */
635 DEVID DeviceID; /* EISA, PCI, etc.. ID */
636 DEVID FunctionID; /* For multi-function hw */
637 DEVID CompatibleID; /* Compatible Device */
638 PADJUNCT pAdjunctList;
639 VENDID VendorID;
640 SERNUM SerialNumber;
641} DETECTEDSTRUCT, FAR *PDETECTEDSTRUCT, NEAR *NPDETECTEDSTRUCT;
642
643/********************************/
644/* pDetectStruct->DetectFlags */
645/********************************/
646
647#define DS_PREVIOUS_BOOT 0x01 /* Note: not settable externally */
648
649
650
651
652/****************************************************************************/
653/* */
654/* Handle List Structure */
655/* */
656/****************************************************************************/
657
658typedef struct
659{
660 USHORT cMaxHandles;
661 USHORT cHandles;
662 HADAPTER Handles[1];
663
664} HANDLELIST, FAR *PHANDLELIST, NEAR *NPHANDLELIST;
665
666typedef struct _ADJINFO
667{
668 HADAPTER hAdapter;
669 USHORT AdjIndex;
670
671} ADJINFO;
672
673typedef struct
674{
675 USHORT cMaxHandles;
676 USHORT cHandles;
677 ADJINFO Adj[1];
678
679} ADJHANDLELIST, FAR *PADJHANDLELIST, NEAR *NPADJHANDLELIST;
680
681/****************************************************************************/
682/* */
683/* PreAssigned Node Handles */
684/* */
685/****************************************************************************/
686
687#define HANDLE_PHYS_TREE 0xffff8000
688#define HANDLE_SYS_TREE 0xffff8001
689#define HANDLE_DEFAULT_SYSBUS 0xffff8002
690#define HANDLE_X_BUS 0xffff8003
691#define HANDLE_PCI_BUS 0xffff8004
692#define HANDLE_PREVIOUS_DETECTED 0xffff8005
693#define HANDLE_CURRENT_DETECTED 0xffff8006
694
695/****************************************************************************/
696/* */
697/* Handle Types */
698/* */
699/****************************************************************************/
700
701#define HANDLE_TYPE_INVALID 0
702#define HANDLE_TYPE_DRIVER 1
703#define HANDLE_TYPE_ADAPTER 2
704#define HANDLE_TYPE_DEVICE 3
705#define HANDLE_TYPE_RESOURCE 4
706#define HANDLE_TYPE_LOGDEV 5
707#define HANDLE_TYPE_SYSDEV 6
708#define HANDLE_TYPE_DETECTED 7
709
710/****************************************************************************/
711/* */
712/* Search ID Flags */
713/* */
714/****************************************************************************/
715typedef ULONG SEARCHIDFLAGS;
716
717#define SEARCH_ID_DEVICEID 1
718#define SEARCH_ID_FUNCTIONID 2
719#define SEARCH_ID_COMPATIBLEID 4
720#define SEARCH_ID_VENDOR 8
721#define SEARCH_ID_SERIAL 16
722
723/****************************************************************************/
724/* */
725/* Convert ID */
726/* */
727/****************************************************************************/
728
729#define RM_CONVERT_TO_TEXT 1
730#define RM_CONVERT_TO_ID 2
731
732/****************************************************************************/
733/* */
734/* SNOOPLEVEL definitions */
735/* */
736/****************************************************************************/
737
738typedef enum {SNP_NO_RISK,SNP_LOW_RISK,SNP_MEDIUM_RISK,SNP_HIGH_RISK,SNP_WARP_RISK } SNOOPLEVEL;
739
740#define SNP_FLG_NEXTBOOT 1
741#define SNP_FLG_DEFAULT 2
742
743/****************************************************************************/
744/* */
745/* RMINFO Flag definitions */
746/* */
747/****************************************************************************/
748
749#define RM_SAVE_DEFAULT 0
750#define RM_DELETE_DEFAULT 0
751
752#endif /* __RM_HEADER__ */
753
754
755/****************************************************************************/
756/* */
757/* Comon Keys */
758/* */
759/****************************************************************************/
760
761#define KEY_FIXDISK "DISK_# "
762#define KEY_TAPE "TAPE_# "
763#define KEY_PRINTER "PRINTER_# "
764#define KEY_CPU "CPU_# "
765#define KEY_WORM "WORM_# "
766#define KEY_CDROM "CDROM_# "
767#define KEY_SCANNER "SCANNER_# "
768#define KEY_OPTICAL_MEM "OPTICAL_MEM_# "
769#define KEY_CHANGER "CHANGER_# "
770#define KEY_COMM "COMM_# "
771#define KEY_SCSI_UNKNOWN "UNKNOWN_# "
772
773/****************************************************************************/
774/* */
775/* DDtype for RMGetCommandLine() */
776/* */
777/****************************************************************************/
778
779#define RM_CMD_BASE 0
780#define RM_CMD_DEVICE 1
781
Note: See TracBrowser for help on using the repository browser.