drivers/scsi/scsi_sas_internal.h
Source file repositories/reference/linux-study-clean/drivers/scsi/scsi_sas_internal.h
File Facts
- System
- Linux kernel
- Corpus path
drivers/scsi/scsi_sas_internal.h- Extension
.h- Size
- 1540 bytes
- Lines
- 44
- 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 sas_internal
Annotated Snippet
struct sas_internal {
struct scsi_transport_template t;
struct sas_function_template *f;
struct sas_domain_function_template *dft;
struct device_attribute private_host_attrs[SAS_HOST_ATTRS];
struct device_attribute private_phy_attrs[SAS_PHY_ATTRS];
struct device_attribute private_port_attrs[SAS_PORT_ATTRS];
struct device_attribute private_rphy_attrs[SAS_RPORT_ATTRS];
struct device_attribute private_end_dev_attrs[SAS_END_DEV_ATTRS];
struct device_attribute private_expander_attrs[SAS_EXPANDER_ATTRS];
struct transport_container phy_attr_cont;
struct transport_container port_attr_cont;
struct transport_container rphy_attr_cont;
struct transport_container end_dev_attr_cont;
struct transport_container expander_attr_cont;
/*
* The array of null terminated pointers to attributes
* needed by scsi_sysfs.c
*/
struct device_attribute *host_attrs[SAS_HOST_ATTRS + 1];
struct device_attribute *phy_attrs[SAS_PHY_ATTRS + 1];
struct device_attribute *port_attrs[SAS_PORT_ATTRS + 1];
struct device_attribute *rphy_attrs[SAS_RPORT_ATTRS + 1];
struct device_attribute *end_dev_attrs[SAS_END_DEV_ATTRS + 1];
struct device_attribute *expander_attrs[SAS_EXPANDER_ATTRS + 1];
};
#define to_sas_internal(tmpl) container_of(tmpl, struct sas_internal, t)
#endif
Annotation
- Detected declarations: `struct sas_internal`.
- 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.