drivers/scsi/mpt3sas/mpt3sas_trigger_diag.h
Source file repositories/reference/linux-study-clean/drivers/scsi/mpt3sas/mpt3sas_trigger_diag.h
File Facts
- System
- Linux kernel
- Corpus path
drivers/scsi/mpt3sas/mpt3sas_trigger_diag.h- Extension
.h- Size
- 6939 bytes
- Lines
- 195
- Domain
- Driver Families
- Bucket
- drivers/scsi
- Inferred role
- Driver Families: implementation source
- Status
- source implementation candidate
Why This File Exists
Repeatable hardware-adapter layer. Deep compatibility for every driver is out of scope; this atlas records patterns, probe lifecycles, bus glue, IRQ/DMA usage, and links back to core abstractions.
- Repeatable hardware-adapter layer. Deep compatibility for every driver is out of scope; this atlas records patterns, probe lifecycles, bus glue, IRQ/DMA usage, and links back to core abstractions.
- Defines or uses C structs; map object ownership, embedded links, reference counts, and lock ownership.
Dependency Surface
- No C-style include directives detected by the generator.
Detected Declarations
struct SL_WH_MASTER_TRIGGER_Tstruct SL_WH_EVENT_TRIGGER_Tstruct SL_WH_EVENT_TRIGGERS_Tstruct SL_WH_SCSI_TRIGGER_Tstruct SL_WH_SCSI_TRIGGERS_Tstruct SL_WH_MPI_TRIGGER_Tstruct SL_WH_MPI_TRIGGERS_Tstruct SL_WH_TRIGGERS_EVENT_DATA_T
Annotated Snippet
struct SL_WH_MASTER_TRIGGER_T {
uint32_t MasterData;
};
/**
* struct SL_WH_EVENT_TRIGGER_T - Definition of an event trigger element
* @EventValue: Event Code to trigger on
* @LogEntryQualifier: Type of FW event that logged (Log Entry Added Event only)
*
* Defines an event that should induce a DIAG_TRIGGER driver event if observed.
*/
struct SL_WH_EVENT_TRIGGER_T {
uint16_t EventValue;
uint16_t LogEntryQualifier;
};
/**
* struct SL_WH_EVENT_TRIGGERS_T - Structure passed to/from sysfs containing a
* list of Event Triggers to be monitored for.
* @ValidEntries: Number of _SL_WH_EVENT_TRIGGER_T structures contained in this
* structure.
* @EventTriggerEntry: List of Event trigger elements.
*
* This binary structure is transferred via sysfs to get/set Event Triggers
* in the Linux Driver.
*/
struct SL_WH_EVENT_TRIGGERS_T {
uint32_t ValidEntries;
struct SL_WH_EVENT_TRIGGER_T EventTriggerEntry[NUM_VALID_ENTRIES];
};
/**
* struct SL_WH_SCSI_TRIGGER_T - Definition of a SCSI trigger element
* @ASCQ: Additional Sense Code Qualifier. Can be specific or 0xFF for
* wildcard.
* @ASC: Additional Sense Code. Can be specific or 0xFF for wildcard
* @SenseKey: SCSI Sense Key
*
* Defines a sense key (single or many variants) that should induce a
* DIAG_TRIGGER driver event if observed.
*/
struct SL_WH_SCSI_TRIGGER_T {
U8 ASCQ;
U8 ASC;
U8 SenseKey;
U8 Reserved;
};
/**
* struct SL_WH_SCSI_TRIGGERS_T - Structure passed to/from sysfs containing a
* list of SCSI sense codes that should trigger a DIAG_SERVICE event when
* observed.
* @ValidEntries: Number of _SL_WH_SCSI_TRIGGER_T structures contained in this
* structure.
* @SCSITriggerEntry: List of SCSI Sense Code trigger elements.
*
* This binary structure is transferred via sysfs to get/set SCSI Sense Code
* Triggers in the Linux Driver.
*/
struct SL_WH_SCSI_TRIGGERS_T {
uint32_t ValidEntries;
struct SL_WH_SCSI_TRIGGER_T SCSITriggerEntry[NUM_VALID_ENTRIES];
};
/**
* struct SL_WH_MPI_TRIGGER_T - Definition of an MPI trigger element
* @IOCStatus: MPI IOCStatus
* @IocLogInfo: MPI IocLogInfo. Can be specific or 0xFFFFFFFF for wildcard
*
* Defines a MPI IOCStatus/IocLogInfo pair that should induce a DIAG_TRIGGER
* driver event if observed.
*/
struct SL_WH_MPI_TRIGGER_T {
uint16_t IOCStatus;
uint16_t Reserved;
uint32_t IocLogInfo;
};
/**
* struct SL_WH_MPI_TRIGGERS_T - Structure passed to/from sysfs containing a
* list of MPI IOCStatus/IocLogInfo pairs that should trigger a DIAG_SERVICE
* event when observed.
* @ValidEntries: Number of _SL_WH_MPI_TRIGGER_T structures contained in this
* structure.
* @MPITriggerEntry: List of MPI IOCStatus/IocLogInfo trigger elements.
*
* This binary structure is transferred via sysfs to get/set MPI Error Triggers
* in the Linux Driver.
*/
Annotation
- Detected declarations: `struct SL_WH_MASTER_TRIGGER_T`, `struct SL_WH_EVENT_TRIGGER_T`, `struct SL_WH_EVENT_TRIGGERS_T`, `struct SL_WH_SCSI_TRIGGER_T`, `struct SL_WH_SCSI_TRIGGERS_T`, `struct SL_WH_MPI_TRIGGER_T`, `struct SL_WH_MPI_TRIGGERS_T`, `struct SL_WH_TRIGGERS_EVENT_DATA_T`.
- Atlas domain: Driver Families / drivers/scsi.
- Implementation status: source implementation candidate.
Implementation Notes
- This generated page is the file-by-file coverage layer; curated subsystem chapters should link here when they synthesize a multi-file control flow.
- Core OS pages should be promoted from atlas-only to deep-reviewed when they explain data structures, invariants, locking, lifecycle, and C implementation snippets.
- Driver-family pages are intentionally pattern-oriented unless they are part of the selected PCIe/NVMe representative device path.