include/uapi/scsi/scsi_bsg_ufs.h
Source file repositories/reference/linux-study-clean/include/uapi/scsi/scsi_bsg_ufs.h
File Facts
- System
- Linux kernel
- Corpus path
include/uapi/scsi/scsi_bsg_ufs.h- Extension
.h- Size
- 5636 bytes
- Lines
- 222
- Domain
- Repository Root And Misc
- Bucket
- include
- Inferred role
- Repository Root And Misc: implementation source
- Status
- source implementation candidate
Why This File Exists
Top-level or miscellaneous repository surface. Use this as map coverage unless a later manual pass promotes the file into a deeper subsystem dossier.
- Top-level or miscellaneous repository surface. Use this as map coverage unless a later manual pass promotes the file into a deeper subsystem dossier.
- Defines or uses C structs; map object ownership, embedded links, reference counts, and lock ownership.
Dependency Surface
asm/byteorder.hlinux/types.h
Detected Declarations
struct utp_upiu_headerstruct utp_upiu_querystruct utp_upiu_query_v4_0struct utp_upiu_cmdstruct utp_upiu_reqstruct ufs_arpmb_metastruct ufs_ehsstruct ufs_bsg_requeststruct ufs_bsg_replystruct ufs_rpmb_requeststruct ufs_rpmb_replyenum ufs_bsg_msg_codeenum ufs_rpmb_op_type
Annotated Snippet
struct utp_upiu_header {
union {
struct {
__be32 dword_0;
__be32 dword_1;
__be32 dword_2;
};
struct {
__u8 transaction_code;
__u8 flags;
__u8 lun;
__u8 task_tag;
#if defined(__BIG_ENDIAN)
__u8 iid: 4;
__u8 command_set_type: 4;
#elif defined(__LITTLE_ENDIAN)
__u8 command_set_type: 4;
__u8 iid: 4;
#else
#error
#endif
union {
__u8 tm_function;
__u8 query_function;
} __attribute__((packed));
__u8 response;
__u8 status;
__u8 ehs_length;
__u8 device_information;
__be16 data_segment_length;
};
};
};
/**
* struct utp_upiu_query - QUERY REQUEST UPIU structure.
* @opcode: query function to perform B-0
* @idn: descriptor or attribute identification number B-1
* @index: Index that further identifies which data to access B-2
* @selector: Index that further identifies which data to access B-3
* @reserved_osf: spec reserved field B-4,5
* @length: number of descriptor bytes to read or write B-6,7
* @value: if @opcode == UPIU_QUERY_OPCODE_WRITE_ATTR, the value to be written B-6,7
* @reserved: reserved for future use DW-6,7
*/
struct utp_upiu_query {
__u8 opcode;
__u8 idn;
__u8 index;
__u8 selector;
__be16 reserved_osf;
__be16 length;
__be32 value;
__be32 reserved[2];
};
/**
* struct utp_upiu_query_v4_0 - upiu request buffer structure for
* query request >= UFS 4.0 spec.
* @opcode: command to perform B-0
* @idn: a value that indicates the particular type of data B-1
* @index: Index to further identify data B-2
* @selector: Index to further identify data B-3
* @osf3: spec field B-4
* @osf4: spec field B-5
* @osf5: spec field B 6,7
* @osf6: spec field DW 8,9
* @osf7: spec field DW 10,11
*/
struct utp_upiu_query_v4_0 {
__u8 opcode;
__u8 idn;
__u8 index;
__u8 selector;
__u8 osf3;
__u8 osf4;
__be16 osf5;
__be32 osf6;
__be32 osf7;
/* private: */
__be32 reserved;
};
/**
* struct utp_upiu_cmd - Command UPIU structure
* @exp_data_transfer_len: Data Transfer Length DW-3
* @cdb: Command Descriptor Block CDB DW-4 to DW-7
*/
struct utp_upiu_cmd {
__be32 exp_data_transfer_len;
Annotation
- Immediate include surface: `asm/byteorder.h`, `linux/types.h`.
- Detected declarations: `struct utp_upiu_header`, `struct utp_upiu_query`, `struct utp_upiu_query_v4_0`, `struct utp_upiu_cmd`, `struct utp_upiu_req`, `struct ufs_arpmb_meta`, `struct ufs_ehs`, `struct ufs_bsg_request`, `struct ufs_bsg_reply`, `struct ufs_rpmb_request`.
- Atlas domain: Repository Root And Misc / include.
- 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.