Sync with trunk (r48123)
[reactos.git] / drivers / storage / port / buslogic / BT958dt.h
1 /*
2 * vmscsi-- Miniport driver for the Buslogic BT 958 SCSI Controller
3 * under Windows 2000/XP/Server 2003
4 *
5 * Based in parts on the buslogic driver for the same device
6 * available with the GNU Linux Operating System.
7 *
8 * This program is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU General Public License
10 * as published by the Free Software Foundation; either version 2
11 * of the License, or (at your option) any later version.
12 *
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU General Public License for more details.
17 *
18 * You should have received a copy of the GNU General Public License along
19 * with this program; if not, write to the Free Software Foundation, Inc.,
20 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
21 */
22
23 #pragma once
24
25 // BT958ExtendedSetupInfoGuid - BT958ExtendedSetupInfo
26 // BT958 Extended Setup Information (Operation Code 8Dh)
27 #define BT958Wmi_ExtendedSetupInfo_Guid \
28 { 0xcbd60d59,0xce49,0x4cf4, { 0xab,0x7a,0xde,0xc6,0xf4,0x98,0x8d,0x1a } }
29
30 DEFINE_GUID(BT958ExtendedSetupInfoGuid_GUID, \
31 0xcbd60d59,0xce49,0x4cf4,0xab,0x7a,0xde,0xc6,0xf4,0x98,0x8d,0x1a);
32
33
34 typedef struct _BT958ExtendedSetupInfo
35 {
36 //
37 UCHAR BusType;
38 #define BT958ExtendedSetupInfo_BusType_SIZE sizeof(UCHAR)
39 #define BT958ExtendedSetupInfo_BusType_ID 1
40
41 //
42 UCHAR BIOS_Address;
43 #define BT958ExtendedSetupInfo_BIOS_Address_SIZE sizeof(UCHAR)
44 #define BT958ExtendedSetupInfo_BIOS_Address_ID 2
45
46 //
47 USHORT ScatterGatherLimit;
48 #define BT958ExtendedSetupInfo_ScatterGatherLimit_SIZE sizeof(USHORT)
49 #define BT958ExtendedSetupInfo_ScatterGatherLimit_ID 3
50
51 //
52 UCHAR MailboxCount;
53 #define BT958ExtendedSetupInfo_MailboxCount_SIZE sizeof(UCHAR)
54 #define BT958ExtendedSetupInfo_MailboxCount_ID 4
55
56 //
57 ULONG BaseMailboxAddress;
58 #define BT958ExtendedSetupInfo_BaseMailboxAddress_SIZE sizeof(ULONG)
59 #define BT958ExtendedSetupInfo_BaseMailboxAddress_ID 5
60
61 //
62 BOOLEAN FastOnEISA;
63 #define BT958ExtendedSetupInfo_FastOnEISA_SIZE sizeof(BOOLEAN)
64 #define BT958ExtendedSetupInfo_FastOnEISA_ID 6
65
66 //
67 BOOLEAN LevelSensitiveInterrupt;
68 #define BT958ExtendedSetupInfo_LevelSensitiveInterrupt_SIZE sizeof(BOOLEAN)
69 #define BT958ExtendedSetupInfo_LevelSensitiveInterrupt_ID 7
70
71 //
72 UCHAR FirmwareRevision[3];
73 #define BT958ExtendedSetupInfo_FirmwareRevision_SIZE sizeof(UCHAR[3])
74 #define BT958ExtendedSetupInfo_FirmwareRevision_ID 8
75
76 //
77 BOOLEAN HostWideSCSI;
78 #define BT958ExtendedSetupInfo_HostWideSCSI_SIZE sizeof(BOOLEAN)
79 #define BT958ExtendedSetupInfo_HostWideSCSI_ID 9
80
81 //
82 BOOLEAN HostDifferentialSCSI;
83 #define BT958ExtendedSetupInfo_HostDifferentialSCSI_SIZE sizeof(BOOLEAN)
84 #define BT958ExtendedSetupInfo_HostDifferentialSCSI_ID 10
85
86 //
87 BOOLEAN HostSupportsSCAM;
88 #define BT958ExtendedSetupInfo_HostSupportsSCAM_SIZE sizeof(BOOLEAN)
89 #define BT958ExtendedSetupInfo_HostSupportsSCAM_ID 11
90
91 //
92 BOOLEAN HostUltraSCSI;
93 #define BT958ExtendedSetupInfo_HostUltraSCSI_SIZE sizeof(BOOLEAN)
94 #define BT958ExtendedSetupInfo_HostUltraSCSI_ID 12
95
96 //
97 BOOLEAN HostSmartTermination;
98 #define BT958ExtendedSetupInfo_HostSmartTermination_SIZE sizeof(BOOLEAN)
99 #define BT958ExtendedSetupInfo_HostSmartTermination_ID 13
100
101 } BT958ExtendedSetupInfo, *PBT958ExtendedSetupInfo;