Deleted Added
full compact
aacreg.h (109088) aacreg.h (112679)
1/*-
2 * Copyright (c) 2000 Michael Smith
3 * Copyright (c) 2000-2001 Scott Long
4 * Copyright (c) 2000 BSDi
5 * Copyright (c) 2001 Adaptec, Inc.
6 * All rights reserved.
7 *
8 * Redistribution and use in source and binary forms, with or without

--- 12 unchanged lines hidden (view full) ---

21 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
22 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
23 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
24 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
25 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
26 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
27 * SUCH DAMAGE.
28 *
1/*-
2 * Copyright (c) 2000 Michael Smith
3 * Copyright (c) 2000-2001 Scott Long
4 * Copyright (c) 2000 BSDi
5 * Copyright (c) 2001 Adaptec, Inc.
6 * All rights reserved.
7 *
8 * Redistribution and use in source and binary forms, with or without

--- 12 unchanged lines hidden (view full) ---

21 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
22 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
23 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
24 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
25 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
26 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
27 * SUCH DAMAGE.
28 *
29 * $FreeBSD: head/sys/dev/aac/aacreg.h 109088 2003-01-11 01:59:21Z scottl $
29 * $FreeBSD: head/sys/dev/aac/aacreg.h 112679 2003-03-26 17:50:11Z scottl $
30 */
31
32/*
33 * Data structures defining the interface between the driver and the Adaptec
34 * 'FSA' adapters. Note that many field names and comments here are taken
35 * verbatim from the Adaptec driver source in order to make comparing the
36 * two slightly easier.
37 */

--- 298 unchanged lines hidden (view full) ---

336/*
337 * Host-side scatter/gather list for 32-bit commands.
338 */
339struct aac_sg_entry {
340 u_int32_t SgAddress;
341 u_int32_t SgByteCount;
342} __packed;
343
30 */
31
32/*
33 * Data structures defining the interface between the driver and the Adaptec
34 * 'FSA' adapters. Note that many field names and comments here are taken
35 * verbatim from the Adaptec driver source in order to make comparing the
36 * two slightly easier.
37 */

--- 298 unchanged lines hidden (view full) ---

336/*
337 * Host-side scatter/gather list for 32-bit commands.
338 */
339struct aac_sg_entry {
340 u_int32_t SgAddress;
341 u_int32_t SgByteCount;
342} __packed;
343
344struct aac_sg_entry64 {
345 u_int64_t SgAddress;
346 u_int32_t SgByteCount;
347} __packed;
348
344struct aac_sg_table {
345 u_int32_t SgCount;
346 struct aac_sg_entry SgEntry[0];
347} __packed;
348
349/*
350 * Host-side scatter/gather list for 64-bit commands.
351 */
352struct aac_sg_table64 {
349struct aac_sg_table {
350 u_int32_t SgCount;
351 struct aac_sg_entry SgEntry[0];
352} __packed;
353
354/*
355 * Host-side scatter/gather list for 64-bit commands.
356 */
357struct aac_sg_table64 {
353 u_int8_t SgCount;
354 u_int8_t SgSectorsPerPage;
355 u_int16_t SgByteOffset;
356 u_int64_t SgEntry[0];
358 u_int32_t SgCount;
359 struct aac_sg_entry64 SgEntry64[0];
357} __packed;
358
359/*
360 * Container creation data
361 */
362struct aac_container_creation {
363 u_int8_t ViaBuildNumber;
364 u_int8_t MicroSecond;

--- 118 unchanged lines hidden (view full) ---

483 * fsaapi.h, search for FSA_SUPPORT_SNAPSHOT
484 */
485#define AAC_SUPPORTED_SNAPSHOT 0x01
486#define AAC_SUPPORTED_CLUSTERS 0x02
487#define AAC_SUPPORTED_WRITE_CACHE 0x04
488#define AAC_SUPPORTED_64BIT_DATA 0x08
489#define AAC_SUPPORTED_HOST_TIME_FIB 0x10
490#define AAC_SUPPORTED_RAID50 0x20
360} __packed;
361
362/*
363 * Container creation data
364 */
365struct aac_container_creation {
366 u_int8_t ViaBuildNumber;
367 u_int8_t MicroSecond;

--- 118 unchanged lines hidden (view full) ---

486 * fsaapi.h, search for FSA_SUPPORT_SNAPSHOT
487 */
488#define AAC_SUPPORTED_SNAPSHOT 0x01
489#define AAC_SUPPORTED_CLUSTERS 0x02
490#define AAC_SUPPORTED_WRITE_CACHE 0x04
491#define AAC_SUPPORTED_64BIT_DATA 0x08
492#define AAC_SUPPORTED_HOST_TIME_FIB 0x10
493#define AAC_SUPPORTED_RAID50 0x20
494#define AAC_SUPPORTED_4GB_WINDOW 0x40
495#define AAC_SUPPORTED_SCSI_UPGRADEABLE 0x80
496#define AAC_SUPPORTED_SOFT_ERR_REPORT 0x100
497#define AAC_SUPPORTED_NOT_RECONDITION 0x200
498#define AAC_SUPPORTED_SGMAP_HOST64 0x400
499#define AAC_SUPPORTED_ALARM 0x800
500#define AAC_SUPPORTED_NONDASD 0x1000
491
492/*
493 * Structure used to respond to a RequestAdapterInfo fib.
494 */
495struct aac_adapter_info {
496 AAC_Platform PlatformBase; /* adapter type */
497 AAC_CpuType CpuArchitecture; /* adapter CPU type */
498 AAC_CpuSubType CpuVariant; /* adapter CPU subtype */

--- 22 unchanged lines hidden (view full) ---

521 */
522
523/*
524 * Synchronous commands to the monitor/kernel.
525 */
526#define AAC_MONKER_INITSTRUCT 0x05
527#define AAC_MONKER_SYNCFIB 0x0c
528#define AAC_MONKER_GETKERNVER 0x11
501
502/*
503 * Structure used to respond to a RequestAdapterInfo fib.
504 */
505struct aac_adapter_info {
506 AAC_Platform PlatformBase; /* adapter type */
507 AAC_CpuType CpuArchitecture; /* adapter CPU type */
508 AAC_CpuSubType CpuVariant; /* adapter CPU subtype */

--- 22 unchanged lines hidden (view full) ---

531 */
532
533/*
534 * Synchronous commands to the monitor/kernel.
535 */
536#define AAC_MONKER_INITSTRUCT 0x05
537#define AAC_MONKER_SYNCFIB 0x0c
538#define AAC_MONKER_GETKERNVER 0x11
539#define AAC_MONKER_GETINFO 0x19
529
530/*
531 * Adapter Status Register
532 *
533 * Phase Staus mailbox is 32bits:
534 * <31:16> = Phase Status
535 * <15:0> = Phase
536 *

--- 419 unchanged lines hidden (view full) ---

956 VM_DriveBlockWrite,
957 VM_EnclosureMgt, /* enclosure management */
958 VM_Unused, /* used to be diskset management */
959 VM_CtBlockVerify,
960 VM_CtPerf, /* performance test */
961 VM_CtBlockRead64,
962 VM_CtBlockWrite64,
963 VM_CtBlockVerify64,
540
541/*
542 * Adapter Status Register
543 *
544 * Phase Staus mailbox is 32bits:
545 * <31:16> = Phase Status
546 * <15:0> = Phase
547 *

--- 419 unchanged lines hidden (view full) ---

967 VM_DriveBlockWrite,
968 VM_EnclosureMgt, /* enclosure management */
969 VM_Unused, /* used to be diskset management */
970 VM_CtBlockVerify,
971 VM_CtPerf, /* performance test */
972 VM_CtBlockRead64,
973 VM_CtBlockWrite64,
974 VM_CtBlockVerify64,
975 VM_CtHostRead64,
976 VM_CtHostWrite64,
964} AAC_VMCommand;
965
966/*
967 * "mountable object"
968 */
969struct aac_mntobj {
970 u_int32_t ObjectId;
971 char FileSystemName[16];

--- 157 unchanged lines hidden (view full) ---

1129struct aac_blockread {
1130 u_int32_t Command; /* not FSACommand! */
1131 u_int32_t ContainerId;
1132 u_int32_t BlockNumber;
1133 u_int32_t ByteCount;
1134 struct aac_sg_table SgMap; /* variable size */
1135} __packed;
1136
977} AAC_VMCommand;
978
979/*
980 * "mountable object"
981 */
982struct aac_mntobj {
983 u_int32_t ObjectId;
984 char FileSystemName[16];

--- 157 unchanged lines hidden (view full) ---

1142struct aac_blockread {
1143 u_int32_t Command; /* not FSACommand! */
1144 u_int32_t ContainerId;
1145 u_int32_t BlockNumber;
1146 u_int32_t ByteCount;
1147 struct aac_sg_table SgMap; /* variable size */
1148} __packed;
1149
1150struct aac_blockread64 {
1151 u_int32_t Command;
1152 u_int16_t ContainerId;
1153 u_int16_t SectorCount;
1154 u_int32_t BlockNumber;
1155 u_int16_t Pad;
1156 u_int16_t Flags;
1157 struct aac_sg_table64 SgMap64;
1158} __packed;
1159
1137struct aac_blockread_response {
1138 u_int32_t Status;
1139 u_int32_t ByteCount;
1140} __packed;
1141
1142struct aac_blockwrite {
1143 u_int32_t Command; /* not FSACommand! */
1144 u_int32_t ContainerId;
1145 u_int32_t BlockNumber;
1146 u_int32_t ByteCount;
1147 u_int32_t Stable;
1148 struct aac_sg_table SgMap; /* variable size */
1149} __packed;
1150
1160struct aac_blockread_response {
1161 u_int32_t Status;
1162 u_int32_t ByteCount;
1163} __packed;
1164
1165struct aac_blockwrite {
1166 u_int32_t Command; /* not FSACommand! */
1167 u_int32_t ContainerId;
1168 u_int32_t BlockNumber;
1169 u_int32_t ByteCount;
1170 u_int32_t Stable;
1171 struct aac_sg_table SgMap; /* variable size */
1172} __packed;
1173
1174struct aac_blockwrite64 {
1175 u_int32_t Command; /* not FSACommand! */
1176 u_int16_t ContainerId;
1177 u_int16_t SectorCount;
1178 u_int32_t BlockNumber;
1179 u_int16_t Pad;
1180 u_int16_t Flags;
1181 struct aac_sg_table64 SgMap64; /* variable size */
1182} __packed;
1183
1151struct aac_blockwrite_response {
1152 u_int32_t Status;
1153 u_int32_t ByteCount;
1154 u_int32_t Committed;
1155} __packed;
1156
1157/*
1158 * Container shutdown command.

--- 176 unchanged lines hidden ---
1184struct aac_blockwrite_response {
1185 u_int32_t Status;
1186 u_int32_t ByteCount;
1187 u_int32_t Committed;
1188} __packed;
1189
1190/*
1191 * Container shutdown command.

--- 176 unchanged lines hidden ---