|
@@ -233,12 +233,6 @@ enum BusLogic_BIOS_DiskGeometryTranslation {
|
|
} PACKED;
|
|
} PACKED;
|
|
|
|
|
|
|
|
|
|
-/*
|
|
|
|
- Define a Boolean data type.
|
|
|
|
-*/
|
|
|
|
-
|
|
|
|
-typedef bool boolean;
|
|
|
|
-
|
|
|
|
/*
|
|
/*
|
|
Define a 10^18 Statistics Byte Counter data type.
|
|
Define a 10^18 Statistics Byte Counter data type.
|
|
*/
|
|
*/
|
|
@@ -269,19 +263,19 @@ struct BusLogic_ProbeInfo {
|
|
*/
|
|
*/
|
|
|
|
|
|
struct BusLogic_ProbeOptions {
|
|
struct BusLogic_ProbeOptions {
|
|
- boolean NoProbe:1; /* Bit 0 */
|
|
|
|
- boolean NoProbeISA:1; /* Bit 1 */
|
|
|
|
- boolean NoProbePCI:1; /* Bit 2 */
|
|
|
|
- boolean NoSortPCI:1; /* Bit 3 */
|
|
|
|
- boolean MultiMasterFirst:1; /* Bit 4 */
|
|
|
|
- boolean FlashPointFirst:1; /* Bit 5 */
|
|
|
|
- boolean LimitedProbeISA:1; /* Bit 6 */
|
|
|
|
- boolean Probe330:1; /* Bit 7 */
|
|
|
|
- boolean Probe334:1; /* Bit 8 */
|
|
|
|
- boolean Probe230:1; /* Bit 9 */
|
|
|
|
- boolean Probe234:1; /* Bit 10 */
|
|
|
|
- boolean Probe130:1; /* Bit 11 */
|
|
|
|
- boolean Probe134:1; /* Bit 12 */
|
|
|
|
|
|
+ bool NoProbe:1; /* Bit 0 */
|
|
|
|
+ bool NoProbeISA:1; /* Bit 1 */
|
|
|
|
+ bool NoProbePCI:1; /* Bit 2 */
|
|
|
|
+ bool NoSortPCI:1; /* Bit 3 */
|
|
|
|
+ bool MultiMasterFirst:1;/* Bit 4 */
|
|
|
|
+ bool FlashPointFirst:1; /* Bit 5 */
|
|
|
|
+ bool LimitedProbeISA:1; /* Bit 6 */
|
|
|
|
+ bool Probe330:1; /* Bit 7 */
|
|
|
|
+ bool Probe334:1; /* Bit 8 */
|
|
|
|
+ bool Probe230:1; /* Bit 9 */
|
|
|
|
+ bool Probe234:1; /* Bit 10 */
|
|
|
|
+ bool Probe130:1; /* Bit 11 */
|
|
|
|
+ bool Probe134:1; /* Bit 12 */
|
|
};
|
|
};
|
|
|
|
|
|
/*
|
|
/*
|
|
@@ -289,10 +283,10 @@ struct BusLogic_ProbeOptions {
|
|
*/
|
|
*/
|
|
|
|
|
|
struct BusLogic_GlobalOptions {
|
|
struct BusLogic_GlobalOptions {
|
|
- boolean TraceProbe:1; /* Bit 0 */
|
|
|
|
- boolean TraceHardwareReset:1; /* Bit 1 */
|
|
|
|
- boolean TraceConfiguration:1; /* Bit 2 */
|
|
|
|
- boolean TraceErrors:1; /* Bit 3 */
|
|
|
|
|
|
+ bool TraceProbe:1; /* Bit 0 */
|
|
|
|
+ bool TraceHardwareReset:1; /* Bit 1 */
|
|
|
|
+ bool TraceConfiguration:1; /* Bit 2 */
|
|
|
|
+ bool TraceErrors:1; /* Bit 3 */
|
|
};
|
|
};
|
|
|
|
|
|
/*
|
|
/*
|
|
@@ -300,7 +294,7 @@ struct BusLogic_GlobalOptions {
|
|
*/
|
|
*/
|
|
|
|
|
|
struct BusLogic_LocalOptions {
|
|
struct BusLogic_LocalOptions {
|
|
- boolean InhibitTargetInquiry:1; /* Bit 0 */
|
|
|
|
|
|
+ bool InhibitTargetInquiry:1; /* Bit 0 */
|
|
};
|
|
};
|
|
|
|
|
|
/*
|
|
/*
|
|
@@ -322,10 +316,10 @@ union BusLogic_ControlRegister {
|
|
unsigned char All;
|
|
unsigned char All;
|
|
struct {
|
|
struct {
|
|
unsigned char:4; /* Bits 0-3 */
|
|
unsigned char:4; /* Bits 0-3 */
|
|
- boolean SCSIBusReset:1; /* Bit 4 */
|
|
|
|
- boolean InterruptReset:1; /* Bit 5 */
|
|
|
|
- boolean SoftReset:1; /* Bit 6 */
|
|
|
|
- boolean HardReset:1; /* Bit 7 */
|
|
|
|
|
|
+ bool SCSIBusReset:1; /* Bit 4 */
|
|
|
|
+ bool InterruptReset:1; /* Bit 5 */
|
|
|
|
+ bool SoftReset:1; /* Bit 6 */
|
|
|
|
+ bool HardReset:1; /* Bit 7 */
|
|
} cr;
|
|
} cr;
|
|
};
|
|
};
|
|
|
|
|
|
@@ -336,14 +330,14 @@ union BusLogic_ControlRegister {
|
|
union BusLogic_StatusRegister {
|
|
union BusLogic_StatusRegister {
|
|
unsigned char All;
|
|
unsigned char All;
|
|
struct {
|
|
struct {
|
|
- boolean CommandInvalid:1; /* Bit 0 */
|
|
|
|
- boolean Reserved:1; /* Bit 1 */
|
|
|
|
- boolean DataInRegisterReady:1; /* Bit 2 */
|
|
|
|
- boolean CommandParameterRegisterBusy:1; /* Bit 3 */
|
|
|
|
- boolean HostAdapterReady:1; /* Bit 4 */
|
|
|
|
- boolean InitializationRequired:1; /* Bit 5 */
|
|
|
|
- boolean DiagnosticFailure:1; /* Bit 6 */
|
|
|
|
- boolean DiagnosticActive:1; /* Bit 7 */
|
|
|
|
|
|
+ bool CommandInvalid:1; /* Bit 0 */
|
|
|
|
+ bool Reserved:1; /* Bit 1 */
|
|
|
|
+ bool DataInRegisterReady:1; /* Bit 2 */
|
|
|
|
+ bool CommandParameterRegisterBusy:1; /* Bit 3 */
|
|
|
|
+ bool HostAdapterReady:1; /* Bit 4 */
|
|
|
|
+ bool InitializationRequired:1; /* Bit 5 */
|
|
|
|
+ bool DiagnosticFailure:1; /* Bit 6 */
|
|
|
|
+ bool DiagnosticActive:1; /* Bit 7 */
|
|
} sr;
|
|
} sr;
|
|
};
|
|
};
|
|
|
|
|
|
@@ -354,12 +348,12 @@ union BusLogic_StatusRegister {
|
|
union BusLogic_InterruptRegister {
|
|
union BusLogic_InterruptRegister {
|
|
unsigned char All;
|
|
unsigned char All;
|
|
struct {
|
|
struct {
|
|
- boolean IncomingMailboxLoaded:1; /* Bit 0 */
|
|
|
|
- boolean OutgoingMailboxAvailable:1; /* Bit 1 */
|
|
|
|
- boolean CommandComplete:1; /* Bit 2 */
|
|
|
|
- boolean ExternalBusReset:1; /* Bit 3 */
|
|
|
|
|
|
+ bool IncomingMailboxLoaded:1; /* Bit 0 */
|
|
|
|
+ bool OutgoingMailboxAvailable:1;/* Bit 1 */
|
|
|
|
+ bool CommandComplete:1; /* Bit 2 */
|
|
|
|
+ bool ExternalBusReset:1; /* Bit 3 */
|
|
unsigned char Reserved:3; /* Bits 4-6 */
|
|
unsigned char Reserved:3; /* Bits 4-6 */
|
|
- boolean InterruptValid:1; /* Bit 7 */
|
|
|
|
|
|
+ bool InterruptValid:1; /* Bit 7 */
|
|
} ir;
|
|
} ir;
|
|
};
|
|
};
|
|
|
|
|
|
@@ -373,7 +367,7 @@ union BusLogic_GeometryRegister {
|
|
enum BusLogic_BIOS_DiskGeometryTranslation Drive0Geometry:2; /* Bits 0-1 */
|
|
enum BusLogic_BIOS_DiskGeometryTranslation Drive0Geometry:2; /* Bits 0-1 */
|
|
enum BusLogic_BIOS_DiskGeometryTranslation Drive1Geometry:2; /* Bits 2-3 */
|
|
enum BusLogic_BIOS_DiskGeometryTranslation Drive1Geometry:2; /* Bits 2-3 */
|
|
unsigned char:3; /* Bits 4-6 */
|
|
unsigned char:3; /* Bits 4-6 */
|
|
- boolean ExtendedTranslationEnabled:1; /* Bit 7 */
|
|
|
|
|
|
+ bool ExtendedTranslationEnabled:1; /* Bit 7 */
|
|
} gr;
|
|
} gr;
|
|
};
|
|
};
|
|
|
|
|
|
@@ -445,16 +439,16 @@ struct BusLogic_BoardID {
|
|
|
|
|
|
struct BusLogic_Configuration {
|
|
struct BusLogic_Configuration {
|
|
unsigned char:5; /* Byte 0 Bits 0-4 */
|
|
unsigned char:5; /* Byte 0 Bits 0-4 */
|
|
- boolean DMA_Channel5:1; /* Byte 0 Bit 5 */
|
|
|
|
- boolean DMA_Channel6:1; /* Byte 0 Bit 6 */
|
|
|
|
- boolean DMA_Channel7:1; /* Byte 0 Bit 7 */
|
|
|
|
- boolean IRQ_Channel9:1; /* Byte 1 Bit 0 */
|
|
|
|
- boolean IRQ_Channel10:1; /* Byte 1 Bit 1 */
|
|
|
|
- boolean IRQ_Channel11:1; /* Byte 1 Bit 2 */
|
|
|
|
- boolean IRQ_Channel12:1; /* Byte 1 Bit 3 */
|
|
|
|
|
|
+ bool DMA_Channel5:1; /* Byte 0 Bit 5 */
|
|
|
|
+ bool DMA_Channel6:1; /* Byte 0 Bit 6 */
|
|
|
|
+ bool DMA_Channel7:1; /* Byte 0 Bit 7 */
|
|
|
|
+ bool IRQ_Channel9:1; /* Byte 1 Bit 0 */
|
|
|
|
+ bool IRQ_Channel10:1; /* Byte 1 Bit 1 */
|
|
|
|
+ bool IRQ_Channel11:1; /* Byte 1 Bit 2 */
|
|
|
|
+ bool IRQ_Channel12:1; /* Byte 1 Bit 3 */
|
|
unsigned char:1; /* Byte 1 Bit 4 */
|
|
unsigned char:1; /* Byte 1 Bit 4 */
|
|
- boolean IRQ_Channel14:1; /* Byte 1 Bit 5 */
|
|
|
|
- boolean IRQ_Channel15:1; /* Byte 1 Bit 6 */
|
|
|
|
|
|
+ bool IRQ_Channel14:1; /* Byte 1 Bit 5 */
|
|
|
|
+ bool IRQ_Channel15:1; /* Byte 1 Bit 6 */
|
|
unsigned char:1; /* Byte 1 Bit 7 */
|
|
unsigned char:1; /* Byte 1 Bit 7 */
|
|
unsigned char HostAdapterID:4; /* Byte 2 Bits 0-3 */
|
|
unsigned char HostAdapterID:4; /* Byte 2 Bits 0-3 */
|
|
unsigned char:4; /* Byte 2 Bits 4-7 */
|
|
unsigned char:4; /* Byte 2 Bits 4-7 */
|
|
@@ -467,12 +461,12 @@ struct BusLogic_Configuration {
|
|
struct BusLogic_SynchronousValue {
|
|
struct BusLogic_SynchronousValue {
|
|
unsigned char Offset:4; /* Bits 0-3 */
|
|
unsigned char Offset:4; /* Bits 0-3 */
|
|
unsigned char TransferPeriod:3; /* Bits 4-6 */
|
|
unsigned char TransferPeriod:3; /* Bits 4-6 */
|
|
- boolean Synchronous:1; /* Bit 7 */
|
|
|
|
|
|
+ bool Synchronous:1; /* Bit 7 */
|
|
};
|
|
};
|
|
|
|
|
|
struct BusLogic_SetupInformation {
|
|
struct BusLogic_SetupInformation {
|
|
- boolean SynchronousInitiationEnabled:1; /* Byte 0 Bit 0 */
|
|
|
|
- boolean ParityCheckingEnabled:1; /* Byte 0 Bit 1 */
|
|
|
|
|
|
+ bool SynchronousInitiationEnabled:1; /* Byte 0 Bit 0 */
|
|
|
|
+ bool ParityCheckingEnabled:1; /* Byte 0 Bit 1 */
|
|
unsigned char:6; /* Byte 0 Bits 2-7 */
|
|
unsigned char:6; /* Byte 0 Bits 2-7 */
|
|
unsigned char BusTransferRate; /* Byte 1 */
|
|
unsigned char BusTransferRate; /* Byte 1 */
|
|
unsigned char PreemptTimeOnBus; /* Byte 2 */
|
|
unsigned char PreemptTimeOnBus; /* Byte 2 */
|
|
@@ -523,13 +517,13 @@ enum BusLogic_ISACompatibleIOPort {
|
|
struct BusLogic_PCIHostAdapterInformation {
|
|
struct BusLogic_PCIHostAdapterInformation {
|
|
enum BusLogic_ISACompatibleIOPort ISACompatibleIOPort; /* Byte 0 */
|
|
enum BusLogic_ISACompatibleIOPort ISACompatibleIOPort; /* Byte 0 */
|
|
unsigned char PCIAssignedIRQChannel; /* Byte 1 */
|
|
unsigned char PCIAssignedIRQChannel; /* Byte 1 */
|
|
- boolean LowByteTerminated:1; /* Byte 2 Bit 0 */
|
|
|
|
- boolean HighByteTerminated:1; /* Byte 2 Bit 1 */
|
|
|
|
|
|
+ bool LowByteTerminated:1; /* Byte 2 Bit 0 */
|
|
|
|
+ bool HighByteTerminated:1; /* Byte 2 Bit 1 */
|
|
unsigned char:2; /* Byte 2 Bits 2-3 */
|
|
unsigned char:2; /* Byte 2 Bits 2-3 */
|
|
- boolean JP1:1; /* Byte 2 Bit 4 */
|
|
|
|
- boolean JP2:1; /* Byte 2 Bit 5 */
|
|
|
|
- boolean JP3:1; /* Byte 2 Bit 6 */
|
|
|
|
- boolean GenericInfoValid:1; /* Byte 2 Bit 7 */
|
|
|
|
|
|
+ bool JP1:1; /* Byte 2 Bit 4 */
|
|
|
|
+ bool JP2:1; /* Byte 2 Bit 5 */
|
|
|
|
+ bool JP3:1; /* Byte 2 Bit 6 */
|
|
|
|
+ bool GenericInfoValid:1;/* Byte 2 Bit 7 */
|
|
unsigned char:8; /* Byte 3 */
|
|
unsigned char:8; /* Byte 3 */
|
|
};
|
|
};
|
|
|
|
|
|
@@ -545,17 +539,17 @@ struct BusLogic_ExtendedSetupInformation {
|
|
u32 BaseMailboxAddress; /* Bytes 5-8 */
|
|
u32 BaseMailboxAddress; /* Bytes 5-8 */
|
|
struct {
|
|
struct {
|
|
unsigned char:2; /* Byte 9 Bits 0-1 */
|
|
unsigned char:2; /* Byte 9 Bits 0-1 */
|
|
- boolean FastOnEISA:1; /* Byte 9 Bit 2 */
|
|
|
|
|
|
+ bool FastOnEISA:1; /* Byte 9 Bit 2 */
|
|
unsigned char:3; /* Byte 9 Bits 3-5 */
|
|
unsigned char:3; /* Byte 9 Bits 3-5 */
|
|
- boolean LevelSensitiveInterrupt:1; /* Byte 9 Bit 6 */
|
|
|
|
|
|
+ bool LevelSensitiveInterrupt:1; /* Byte 9 Bit 6 */
|
|
unsigned char:1; /* Byte 9 Bit 7 */
|
|
unsigned char:1; /* Byte 9 Bit 7 */
|
|
} Misc;
|
|
} Misc;
|
|
unsigned char FirmwareRevision[3]; /* Bytes 10-12 */
|
|
unsigned char FirmwareRevision[3]; /* Bytes 10-12 */
|
|
- boolean HostWideSCSI:1; /* Byte 13 Bit 0 */
|
|
|
|
- boolean HostDifferentialSCSI:1; /* Byte 13 Bit 1 */
|
|
|
|
- boolean HostSupportsSCAM:1; /* Byte 13 Bit 2 */
|
|
|
|
- boolean HostUltraSCSI:1; /* Byte 13 Bit 3 */
|
|
|
|
- boolean HostSmartTermination:1; /* Byte 13 Bit 4 */
|
|
|
|
|
|
+ bool HostWideSCSI:1; /* Byte 13 Bit 0 */
|
|
|
|
+ bool HostDifferentialSCSI:1; /* Byte 13 Bit 1 */
|
|
|
|
+ bool HostSupportsSCAM:1; /* Byte 13 Bit 2 */
|
|
|
|
+ bool HostUltraSCSI:1; /* Byte 13 Bit 3 */
|
|
|
|
+ bool HostSmartTermination:1; /* Byte 13 Bit 4 */
|
|
unsigned char:3; /* Byte 13 Bits 5-7 */
|
|
unsigned char:3; /* Byte 13 Bits 5-7 */
|
|
} PACKED;
|
|
} PACKED;
|
|
|
|
|
|
@@ -590,35 +584,35 @@ struct BusLogic_AutoSCSIData {
|
|
unsigned char InformationByteCount; /* Byte 2 */
|
|
unsigned char InformationByteCount; /* Byte 2 */
|
|
unsigned char HostAdapterType[6]; /* Bytes 3-8 */
|
|
unsigned char HostAdapterType[6]; /* Bytes 3-8 */
|
|
unsigned char:8; /* Byte 9 */
|
|
unsigned char:8; /* Byte 9 */
|
|
- boolean FloppyEnabled:1; /* Byte 10 Bit 0 */
|
|
|
|
- boolean FloppySecondary:1; /* Byte 10 Bit 1 */
|
|
|
|
- boolean LevelSensitiveInterrupt:1; /* Byte 10 Bit 2 */
|
|
|
|
|
|
+ bool FloppyEnabled:1; /* Byte 10 Bit 0 */
|
|
|
|
+ bool FloppySecondary:1; /* Byte 10 Bit 1 */
|
|
|
|
+ bool LevelSensitiveInterrupt:1; /* Byte 10 Bit 2 */
|
|
unsigned char:2; /* Byte 10 Bits 3-4 */
|
|
unsigned char:2; /* Byte 10 Bits 3-4 */
|
|
unsigned char SystemRAMAreaForBIOS:3; /* Byte 10 Bits 5-7 */
|
|
unsigned char SystemRAMAreaForBIOS:3; /* Byte 10 Bits 5-7 */
|
|
unsigned char DMA_Channel:7; /* Byte 11 Bits 0-6 */
|
|
unsigned char DMA_Channel:7; /* Byte 11 Bits 0-6 */
|
|
- boolean DMA_AutoConfiguration:1; /* Byte 11 Bit 7 */
|
|
|
|
|
|
+ bool DMA_AutoConfiguration:1; /* Byte 11 Bit 7 */
|
|
unsigned char IRQ_Channel:7; /* Byte 12 Bits 0-6 */
|
|
unsigned char IRQ_Channel:7; /* Byte 12 Bits 0-6 */
|
|
- boolean IRQ_AutoConfiguration:1; /* Byte 12 Bit 7 */
|
|
|
|
|
|
+ bool IRQ_AutoConfiguration:1; /* Byte 12 Bit 7 */
|
|
unsigned char DMA_TransferRate; /* Byte 13 */
|
|
unsigned char DMA_TransferRate; /* Byte 13 */
|
|
unsigned char SCSI_ID; /* Byte 14 */
|
|
unsigned char SCSI_ID; /* Byte 14 */
|
|
- boolean LowByteTerminated:1; /* Byte 15 Bit 0 */
|
|
|
|
- boolean ParityCheckingEnabled:1; /* Byte 15 Bit 1 */
|
|
|
|
- boolean HighByteTerminated:1; /* Byte 15 Bit 2 */
|
|
|
|
- boolean NoisyCablingEnvironment:1; /* Byte 15 Bit 3 */
|
|
|
|
- boolean FastSynchronousNegotiation:1; /* Byte 15 Bit 4 */
|
|
|
|
- boolean BusResetEnabled:1; /* Byte 15 Bit 5 */
|
|
|
|
- boolean:1; /* Byte 15 Bit 6 */
|
|
|
|
- boolean ActiveNegationEnabled:1; /* Byte 15 Bit 7 */
|
|
|
|
|
|
+ bool LowByteTerminated:1; /* Byte 15 Bit 0 */
|
|
|
|
+ bool ParityCheckingEnabled:1; /* Byte 15 Bit 1 */
|
|
|
|
+ bool HighByteTerminated:1; /* Byte 15 Bit 2 */
|
|
|
|
+ bool NoisyCablingEnvironment:1; /* Byte 15 Bit 3 */
|
|
|
|
+ bool FastSynchronousNegotiation:1; /* Byte 15 Bit 4 */
|
|
|
|
+ bool BusResetEnabled:1; /* Byte 15 Bit 5 */
|
|
|
|
+ bool:1; /* Byte 15 Bit 6 */
|
|
|
|
+ bool ActiveNegationEnabled:1; /* Byte 15 Bit 7 */
|
|
unsigned char BusOnDelay; /* Byte 16 */
|
|
unsigned char BusOnDelay; /* Byte 16 */
|
|
unsigned char BusOffDelay; /* Byte 17 */
|
|
unsigned char BusOffDelay; /* Byte 17 */
|
|
- boolean HostAdapterBIOSEnabled:1; /* Byte 18 Bit 0 */
|
|
|
|
- boolean BIOSRedirectionOfINT19Enabled:1; /* Byte 18 Bit 1 */
|
|
|
|
- boolean ExtendedTranslationEnabled:1; /* Byte 18 Bit 2 */
|
|
|
|
- boolean MapRemovableAsFixedEnabled:1; /* Byte 18 Bit 3 */
|
|
|
|
- boolean:1; /* Byte 18 Bit 4 */
|
|
|
|
- boolean BIOSSupportsMoreThan2DrivesEnabled:1; /* Byte 18 Bit 5 */
|
|
|
|
- boolean BIOSInterruptModeEnabled:1; /* Byte 18 Bit 6 */
|
|
|
|
- boolean FlopticalSupportEnabled:1; /* Byte 19 Bit 7 */
|
|
|
|
|
|
+ bool HostAdapterBIOSEnabled:1; /* Byte 18 Bit 0 */
|
|
|
|
+ bool BIOSRedirectionOfINT19Enabled:1; /* Byte 18 Bit 1 */
|
|
|
|
+ bool ExtendedTranslationEnabled:1; /* Byte 18 Bit 2 */
|
|
|
|
+ bool MapRemovableAsFixedEnabled:1; /* Byte 18 Bit 3 */
|
|
|
|
+ bool:1; /* Byte 18 Bit 4 */
|
|
|
|
+ bool BIOSSupportsMoreThan2DrivesEnabled:1; /* Byte 18 Bit 5 */
|
|
|
|
+ bool BIOSInterruptModeEnabled:1; /* Byte 18 Bit 6 */
|
|
|
|
+ bool FlopticalSupportEnabled:1; /* Byte 19 Bit 7 */
|
|
unsigned short DeviceEnabled; /* Bytes 19-20 */
|
|
unsigned short DeviceEnabled; /* Bytes 19-20 */
|
|
unsigned short WidePermitted; /* Bytes 21-22 */
|
|
unsigned short WidePermitted; /* Bytes 21-22 */
|
|
unsigned short FastPermitted; /* Bytes 23-24 */
|
|
unsigned short FastPermitted; /* Bytes 23-24 */
|
|
@@ -628,22 +622,22 @@ struct BusLogic_AutoSCSIData {
|
|
unsigned short IgnoreInBIOSScan; /* Bytes 31-32 */
|
|
unsigned short IgnoreInBIOSScan; /* Bytes 31-32 */
|
|
unsigned char PCIInterruptPin:2; /* Byte 33 Bits 0-1 */
|
|
unsigned char PCIInterruptPin:2; /* Byte 33 Bits 0-1 */
|
|
unsigned char HostAdapterIOPortAddress:2; /* Byte 33 Bits 2-3 */
|
|
unsigned char HostAdapterIOPortAddress:2; /* Byte 33 Bits 2-3 */
|
|
- boolean StrictRoundRobinModeEnabled:1; /* Byte 33 Bit 4 */
|
|
|
|
- boolean VESABusSpeedGreaterThan33MHz:1; /* Byte 33 Bit 5 */
|
|
|
|
- boolean VESABurstWriteEnabled:1; /* Byte 33 Bit 6 */
|
|
|
|
- boolean VESABurstReadEnabled:1; /* Byte 33 Bit 7 */
|
|
|
|
|
|
+ bool StrictRoundRobinModeEnabled:1; /* Byte 33 Bit 4 */
|
|
|
|
+ bool VESABusSpeedGreaterThan33MHz:1; /* Byte 33 Bit 5 */
|
|
|
|
+ bool VESABurstWriteEnabled:1; /* Byte 33 Bit 6 */
|
|
|
|
+ bool VESABurstReadEnabled:1; /* Byte 33 Bit 7 */
|
|
unsigned short UltraPermitted; /* Bytes 34-35 */
|
|
unsigned short UltraPermitted; /* Bytes 34-35 */
|
|
unsigned int:32; /* Bytes 36-39 */
|
|
unsigned int:32; /* Bytes 36-39 */
|
|
unsigned char:8; /* Byte 40 */
|
|
unsigned char:8; /* Byte 40 */
|
|
unsigned char AutoSCSIMaximumLUN; /* Byte 41 */
|
|
unsigned char AutoSCSIMaximumLUN; /* Byte 41 */
|
|
- boolean:1; /* Byte 42 Bit 0 */
|
|
|
|
- boolean SCAM_Dominant:1; /* Byte 42 Bit 1 */
|
|
|
|
- boolean SCAM_Enabled:1; /* Byte 42 Bit 2 */
|
|
|
|
- boolean SCAM_Level2:1; /* Byte 42 Bit 3 */
|
|
|
|
|
|
+ bool:1; /* Byte 42 Bit 0 */
|
|
|
|
+ bool SCAM_Dominant:1; /* Byte 42 Bit 1 */
|
|
|
|
+ bool SCAM_Enabled:1; /* Byte 42 Bit 2 */
|
|
|
|
+ bool SCAM_Level2:1; /* Byte 42 Bit 3 */
|
|
unsigned char:4; /* Byte 42 Bits 4-7 */
|
|
unsigned char:4; /* Byte 42 Bits 4-7 */
|
|
- boolean INT13ExtensionEnabled:1; /* Byte 43 Bit 0 */
|
|
|
|
- boolean:1; /* Byte 43 Bit 1 */
|
|
|
|
- boolean CDROMBootEnabled:1; /* Byte 43 Bit 2 */
|
|
|
|
|
|
+ bool INT13ExtensionEnabled:1; /* Byte 43 Bit 0 */
|
|
|
|
+ bool:1; /* Byte 43 Bit 1 */
|
|
|
|
+ bool CDROMBootEnabled:1; /* Byte 43 Bit 2 */
|
|
unsigned char:5; /* Byte 43 Bits 3-7 */
|
|
unsigned char:5; /* Byte 43 Bits 3-7 */
|
|
unsigned char BootTargetID:4; /* Byte 44 Bits 0-3 */
|
|
unsigned char BootTargetID:4; /* Byte 44 Bits 0-3 */
|
|
unsigned char BootChannel:4; /* Byte 44 Bits 4-7 */
|
|
unsigned char BootChannel:4; /* Byte 44 Bits 4-7 */
|
|
@@ -852,7 +846,7 @@ struct BusLogic_CCB {
|
|
enum BusLogic_CCB_Opcode Opcode; /* Byte 0 */
|
|
enum BusLogic_CCB_Opcode Opcode; /* Byte 0 */
|
|
unsigned char:3; /* Byte 1 Bits 0-2 */
|
|
unsigned char:3; /* Byte 1 Bits 0-2 */
|
|
enum BusLogic_DataDirection DataDirection:2; /* Byte 1 Bits 3-4 */
|
|
enum BusLogic_DataDirection DataDirection:2; /* Byte 1 Bits 3-4 */
|
|
- boolean TagEnable:1; /* Byte 1 Bit 5 */
|
|
|
|
|
|
+ bool TagEnable:1; /* Byte 1 Bit 5 */
|
|
enum BusLogic_QueueTag QueueTag:2; /* Byte 1 Bits 6-7 */
|
|
enum BusLogic_QueueTag QueueTag:2; /* Byte 1 Bits 6-7 */
|
|
unsigned char CDB_Length; /* Byte 2 */
|
|
unsigned char CDB_Length; /* Byte 2 */
|
|
unsigned char SenseDataLength; /* Byte 3 */
|
|
unsigned char SenseDataLength; /* Byte 3 */
|
|
@@ -864,7 +858,7 @@ struct BusLogic_CCB {
|
|
enum BusLogic_TargetDeviceStatus TargetDeviceStatus; /* Byte 15 */
|
|
enum BusLogic_TargetDeviceStatus TargetDeviceStatus; /* Byte 15 */
|
|
unsigned char TargetID; /* Byte 16 */
|
|
unsigned char TargetID; /* Byte 16 */
|
|
unsigned char LogicalUnit:5; /* Byte 17 Bits 0-4 */
|
|
unsigned char LogicalUnit:5; /* Byte 17 Bits 0-4 */
|
|
- boolean LegacyTagEnable:1; /* Byte 17 Bit 5 */
|
|
|
|
|
|
+ bool LegacyTagEnable:1; /* Byte 17 Bit 5 */
|
|
enum BusLogic_QueueTag LegacyQueueTag:2; /* Byte 17 Bits 6-7 */
|
|
enum BusLogic_QueueTag LegacyQueueTag:2; /* Byte 17 Bits 6-7 */
|
|
SCSI_CDB_T CDB; /* Bytes 18-29 */
|
|
SCSI_CDB_T CDB; /* Bytes 18-29 */
|
|
unsigned char:8; /* Byte 30 */
|
|
unsigned char:8; /* Byte 30 */
|
|
@@ -939,13 +933,13 @@ struct BusLogic_DriverOptions {
|
|
*/
|
|
*/
|
|
|
|
|
|
struct BusLogic_TargetFlags {
|
|
struct BusLogic_TargetFlags {
|
|
- boolean TargetExists:1;
|
|
|
|
- boolean TaggedQueuingSupported:1;
|
|
|
|
- boolean WideTransfersSupported:1;
|
|
|
|
- boolean TaggedQueuingActive:1;
|
|
|
|
- boolean WideTransfersActive:1;
|
|
|
|
- boolean CommandSuccessfulFlag:1;
|
|
|
|
- boolean TargetInfoReported:1;
|
|
|
|
|
|
+ bool TargetExists:1;
|
|
|
|
+ bool TaggedQueuingSupported:1;
|
|
|
|
+ bool WideTransfersSupported:1;
|
|
|
|
+ bool TaggedQueuingActive:1;
|
|
|
|
+ bool WideTransfersActive:1;
|
|
|
|
+ bool CommandSuccessfulFlag:1;
|
|
|
|
+ bool TargetInfoReported:1;
|
|
};
|
|
};
|
|
|
|
|
|
/*
|
|
/*
|
|
@@ -992,7 +986,7 @@ typedef unsigned int FlashPoint_CardHandle_T;
|
|
|
|
|
|
struct FlashPoint_Info {
|
|
struct FlashPoint_Info {
|
|
u32 BaseAddress; /* Bytes 0-3 */
|
|
u32 BaseAddress; /* Bytes 0-3 */
|
|
- boolean Present; /* Byte 4 */
|
|
|
|
|
|
+ bool Present; /* Byte 4 */
|
|
unsigned char IRQ_Channel; /* Byte 5 */
|
|
unsigned char IRQ_Channel; /* Byte 5 */
|
|
unsigned char SCSI_ID; /* Byte 6 */
|
|
unsigned char SCSI_ID; /* Byte 6 */
|
|
unsigned char SCSI_LUN; /* Byte 7 */
|
|
unsigned char SCSI_LUN; /* Byte 7 */
|
|
@@ -1002,15 +996,15 @@ struct FlashPoint_Info {
|
|
unsigned short UltraPermitted; /* Bytes 14-15 */
|
|
unsigned short UltraPermitted; /* Bytes 14-15 */
|
|
unsigned short DisconnectPermitted; /* Bytes 16-17 */
|
|
unsigned short DisconnectPermitted; /* Bytes 16-17 */
|
|
unsigned short WidePermitted; /* Bytes 18-19 */
|
|
unsigned short WidePermitted; /* Bytes 18-19 */
|
|
- boolean ParityCheckingEnabled:1; /* Byte 20 Bit 0 */
|
|
|
|
- boolean HostWideSCSI:1; /* Byte 20 Bit 1 */
|
|
|
|
- boolean HostSoftReset:1; /* Byte 20 Bit 2 */
|
|
|
|
- boolean ExtendedTranslationEnabled:1; /* Byte 20 Bit 3 */
|
|
|
|
- boolean LowByteTerminated:1; /* Byte 20 Bit 4 */
|
|
|
|
- boolean HighByteTerminated:1; /* Byte 20 Bit 5 */
|
|
|
|
- boolean ReportDataUnderrun:1; /* Byte 20 Bit 6 */
|
|
|
|
- boolean SCAM_Enabled:1; /* Byte 20 Bit 7 */
|
|
|
|
- boolean SCAM_Level2:1; /* Byte 21 Bit 0 */
|
|
|
|
|
|
+ bool ParityCheckingEnabled:1; /* Byte 20 Bit 0 */
|
|
|
|
+ bool HostWideSCSI:1; /* Byte 20 Bit 1 */
|
|
|
|
+ bool HostSoftReset:1; /* Byte 20 Bit 2 */
|
|
|
|
+ bool ExtendedTranslationEnabled:1; /* Byte 20 Bit 3 */
|
|
|
|
+ bool LowByteTerminated:1; /* Byte 20 Bit 4 */
|
|
|
|
+ bool HighByteTerminated:1; /* Byte 20 Bit 5 */
|
|
|
|
+ bool ReportDataUnderrun:1; /* Byte 20 Bit 6 */
|
|
|
|
+ bool SCAM_Enabled:1; /* Byte 20 Bit 7 */
|
|
|
|
+ bool SCAM_Level2:1; /* Byte 21 Bit 0 */
|
|
unsigned char:7; /* Byte 21 Bits 1-7 */
|
|
unsigned char:7; /* Byte 21 Bits 1-7 */
|
|
unsigned char Family; /* Byte 22 */
|
|
unsigned char Family; /* Byte 22 */
|
|
unsigned char BusType; /* Byte 23 */
|
|
unsigned char BusType; /* Byte 23 */
|
|
@@ -1044,29 +1038,29 @@ struct BusLogic_HostAdapter {
|
|
unsigned char IRQ_Channel;
|
|
unsigned char IRQ_Channel;
|
|
unsigned char DMA_Channel;
|
|
unsigned char DMA_Channel;
|
|
unsigned char SCSI_ID;
|
|
unsigned char SCSI_ID;
|
|
- boolean IRQ_ChannelAcquired:1;
|
|
|
|
- boolean DMA_ChannelAcquired:1;
|
|
|
|
- boolean ExtendedTranslationEnabled:1;
|
|
|
|
- boolean ParityCheckingEnabled:1;
|
|
|
|
- boolean BusResetEnabled:1;
|
|
|
|
- boolean LevelSensitiveInterrupt:1;
|
|
|
|
- boolean HostWideSCSI:1;
|
|
|
|
- boolean HostDifferentialSCSI:1;
|
|
|
|
- boolean HostSupportsSCAM:1;
|
|
|
|
- boolean HostUltraSCSI:1;
|
|
|
|
- boolean ExtendedLUNSupport:1;
|
|
|
|
- boolean TerminationInfoValid:1;
|
|
|
|
- boolean LowByteTerminated:1;
|
|
|
|
- boolean HighByteTerminated:1;
|
|
|
|
- boolean BounceBuffersRequired:1;
|
|
|
|
- boolean StrictRoundRobinModeSupport:1;
|
|
|
|
- boolean SCAM_Enabled:1;
|
|
|
|
- boolean SCAM_Level2:1;
|
|
|
|
- boolean HostAdapterInitialized:1;
|
|
|
|
- boolean HostAdapterExternalReset:1;
|
|
|
|
- boolean HostAdapterInternalError:1;
|
|
|
|
- boolean ProcessCompletedCCBsActive;
|
|
|
|
- volatile boolean HostAdapterCommandCompleted;
|
|
|
|
|
|
+ bool IRQ_ChannelAcquired:1;
|
|
|
|
+ bool DMA_ChannelAcquired:1;
|
|
|
|
+ bool ExtendedTranslationEnabled:1;
|
|
|
|
+ bool ParityCheckingEnabled:1;
|
|
|
|
+ bool BusResetEnabled:1;
|
|
|
|
+ bool LevelSensitiveInterrupt:1;
|
|
|
|
+ bool HostWideSCSI:1;
|
|
|
|
+ bool HostDifferentialSCSI:1;
|
|
|
|
+ bool HostSupportsSCAM:1;
|
|
|
|
+ bool HostUltraSCSI:1;
|
|
|
|
+ bool ExtendedLUNSupport:1;
|
|
|
|
+ bool TerminationInfoValid:1;
|
|
|
|
+ bool LowByteTerminated:1;
|
|
|
|
+ bool HighByteTerminated:1;
|
|
|
|
+ bool BounceBuffersRequired:1;
|
|
|
|
+ bool StrictRoundRobinModeSupport:1;
|
|
|
|
+ bool SCAM_Enabled:1;
|
|
|
|
+ bool SCAM_Level2:1;
|
|
|
|
+ bool HostAdapterInitialized:1;
|
|
|
|
+ bool HostAdapterExternalReset:1;
|
|
|
|
+ bool HostAdapterInternalError:1;
|
|
|
|
+ bool ProcessCompletedCCBsActive;
|
|
|
|
+ volatile bool HostAdapterCommandCompleted;
|
|
unsigned short HostAdapterScatterGatherLimit;
|
|
unsigned short HostAdapterScatterGatherLimit;
|
|
unsigned short DriverScatterGatherLimit;
|
|
unsigned short DriverScatterGatherLimit;
|
|
unsigned short MaxTargetDevices;
|
|
unsigned short MaxTargetDevices;
|
|
@@ -1141,25 +1135,25 @@ struct SCSI_Inquiry {
|
|
unsigned char PeripheralDeviceType:5; /* Byte 0 Bits 0-4 */
|
|
unsigned char PeripheralDeviceType:5; /* Byte 0 Bits 0-4 */
|
|
unsigned char PeripheralQualifier:3; /* Byte 0 Bits 5-7 */
|
|
unsigned char PeripheralQualifier:3; /* Byte 0 Bits 5-7 */
|
|
unsigned char DeviceTypeModifier:7; /* Byte 1 Bits 0-6 */
|
|
unsigned char DeviceTypeModifier:7; /* Byte 1 Bits 0-6 */
|
|
- boolean RMB:1; /* Byte 1 Bit 7 */
|
|
|
|
|
|
+ bool RMB:1; /* Byte 1 Bit 7 */
|
|
unsigned char ANSI_ApprovedVersion:3; /* Byte 2 Bits 0-2 */
|
|
unsigned char ANSI_ApprovedVersion:3; /* Byte 2 Bits 0-2 */
|
|
unsigned char ECMA_Version:3; /* Byte 2 Bits 3-5 */
|
|
unsigned char ECMA_Version:3; /* Byte 2 Bits 3-5 */
|
|
unsigned char ISO_Version:2; /* Byte 2 Bits 6-7 */
|
|
unsigned char ISO_Version:2; /* Byte 2 Bits 6-7 */
|
|
unsigned char ResponseDataFormat:4; /* Byte 3 Bits 0-3 */
|
|
unsigned char ResponseDataFormat:4; /* Byte 3 Bits 0-3 */
|
|
unsigned char:2; /* Byte 3 Bits 4-5 */
|
|
unsigned char:2; /* Byte 3 Bits 4-5 */
|
|
- boolean TrmIOP:1; /* Byte 3 Bit 6 */
|
|
|
|
- boolean AENC:1; /* Byte 3 Bit 7 */
|
|
|
|
|
|
+ bool TrmIOP:1; /* Byte 3 Bit 6 */
|
|
|
|
+ bool AENC:1; /* Byte 3 Bit 7 */
|
|
unsigned char AdditionalLength; /* Byte 4 */
|
|
unsigned char AdditionalLength; /* Byte 4 */
|
|
unsigned char:8; /* Byte 5 */
|
|
unsigned char:8; /* Byte 5 */
|
|
unsigned char:8; /* Byte 6 */
|
|
unsigned char:8; /* Byte 6 */
|
|
- boolean SftRe:1; /* Byte 7 Bit 0 */
|
|
|
|
- boolean CmdQue:1; /* Byte 7 Bit 1 */
|
|
|
|
- boolean:1; /* Byte 7 Bit 2 */
|
|
|
|
- boolean Linked:1; /* Byte 7 Bit 3 */
|
|
|
|
- boolean Sync:1; /* Byte 7 Bit 4 */
|
|
|
|
- boolean WBus16:1; /* Byte 7 Bit 5 */
|
|
|
|
- boolean WBus32:1; /* Byte 7 Bit 6 */
|
|
|
|
- boolean RelAdr:1; /* Byte 7 Bit 7 */
|
|
|
|
|
|
+ bool SftRe:1; /* Byte 7 Bit 0 */
|
|
|
|
+ bool CmdQue:1; /* Byte 7 Bit 1 */
|
|
|
|
+ bool:1; /* Byte 7 Bit 2 */
|
|
|
|
+ bool Linked:1; /* Byte 7 Bit 3 */
|
|
|
|
+ bool Sync:1; /* Byte 7 Bit 4 */
|
|
|
|
+ bool WBus16:1; /* Byte 7 Bit 5 */
|
|
|
|
+ bool WBus32:1; /* Byte 7 Bit 6 */
|
|
|
|
+ bool RelAdr:1; /* Byte 7 Bit 7 */
|
|
unsigned char VendorIdentification[8]; /* Bytes 8-15 */
|
|
unsigned char VendorIdentification[8]; /* Bytes 8-15 */
|
|
unsigned char ProductIdentification[16]; /* Bytes 16-31 */
|
|
unsigned char ProductIdentification[16]; /* Bytes 16-31 */
|
|
unsigned char ProductRevisionLevel[4]; /* Bytes 32-35 */
|
|
unsigned char ProductRevisionLevel[4]; /* Bytes 32-35 */
|
|
@@ -1348,7 +1342,7 @@ static int BusLogic_ProcDirectoryInfo(struct Scsi_Host *, char *, char **, off_t
|
|
static int BusLogic_SlaveConfigure(struct scsi_device *);
|
|
static int BusLogic_SlaveConfigure(struct scsi_device *);
|
|
static void BusLogic_QueueCompletedCCB(struct BusLogic_CCB *);
|
|
static void BusLogic_QueueCompletedCCB(struct BusLogic_CCB *);
|
|
static irqreturn_t BusLogic_InterruptHandler(int, void *);
|
|
static irqreturn_t BusLogic_InterruptHandler(int, void *);
|
|
-static int BusLogic_ResetHostAdapter(struct BusLogic_HostAdapter *, boolean HardReset);
|
|
|
|
|
|
+static int BusLogic_ResetHostAdapter(struct BusLogic_HostAdapter *, bool HardReset);
|
|
static void BusLogic_Message(enum BusLogic_MessageLevel, char *, struct BusLogic_HostAdapter *, ...);
|
|
static void BusLogic_Message(enum BusLogic_MessageLevel, char *, struct BusLogic_HostAdapter *, ...);
|
|
static int __init BusLogic_Setup(char *);
|
|
static int __init BusLogic_Setup(char *);
|
|
|
|
|