drivers/scsi/isci/scu_task_context.h
Source file repositories/reference/linux-study-clean/drivers/scsi/isci/scu_task_context.h
File Facts
- System
- Linux kernel
- Corpus path
drivers/scsi/isci/scu_task_context.h- Extension
.h- Size
- 24826 bytes
- Lines
- 964
- 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 ssp_task_contextstruct stp_task_contextstruct smp_task_contextstruct primitive_task_contextstruct scu_sgl_elementstruct scu_sgl_element_pairstruct transport_snapshotstruct scu_task_context
Annotated Snippet
struct ssp_task_context {
/* OFFSET 0x18 */
u32 reserved00:24;
u32 frame_type:8;
/* OFFSET 0x1C */
u32 reserved01;
/* OFFSET 0x20 */
u32 fill_bytes:2;
u32 reserved02:6;
u32 changing_data_pointer:1;
u32 retransmit:1;
u32 retry_data_frame:1;
u32 tlr_control:2;
u32 reserved03:19;
/* OFFSET 0x24 */
u32 uiRsvd4;
/* OFFSET 0x28 */
u32 target_port_transfer_tag:16;
u32 tag:16;
/* OFFSET 0x2C */
u32 data_offset;
};
/**
* struct stp_task_context - This is the SCU hardware definition for an STP
* request.
*
*
*/
struct stp_task_context {
/* OFFSET 0x18 */
u32 fis_type:8;
u32 pm_port:4;
u32 reserved0:3;
u32 control:1;
u32 command:8;
u32 features:8;
/* OFFSET 0x1C */
u32 reserved1;
/* OFFSET 0x20 */
u32 reserved2;
/* OFFSET 0x24 */
u32 reserved3;
/* OFFSET 0x28 */
u32 ncq_tag:5;
u32 reserved4:27;
/* OFFSET 0x2C */
u32 data_offset; /* TODO: What is this used for? */
};
/**
* struct smp_task_context - This is the SCU hardware definition for an SMP
* request.
*
*
*/
struct smp_task_context {
/* OFFSET 0x18 */
u32 response_length:8;
u32 function_result:8;
u32 function:8;
u32 frame_type:8;
/* OFFSET 0x1C */
u32 smp_response_ufi:12;
u32 reserved1:20;
/* OFFSET 0x20 */
u32 reserved2;
/* OFFSET 0x24 */
u32 reserved3;
/* OFFSET 0x28 */
u32 reserved4;
/* OFFSET 0x2C */
u32 reserved5;
};
Annotation
- Detected declarations: `struct ssp_task_context`, `struct stp_task_context`, `struct smp_task_context`, `struct primitive_task_context`, `struct scu_sgl_element`, `struct scu_sgl_element_pair`, `struct transport_snapshot`, `struct scu_task_context`.
- 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.