drivers/net/ethernet/broadcom/cnic_defs.h
Source file repositories/reference/linux-study-clean/drivers/net/ethernet/broadcom/cnic_defs.h
File Facts
- System
- Linux kernel
- Corpus path
drivers/net/ethernet/broadcom/cnic_defs.h- Extension
.h- Size
- 173243 bytes
- Lines
- 5463
- Domain
- Driver Families
- Bucket
- drivers/net
- 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 l4_kcqstruct l4_kcq_upload_pgstruct l4_kwq_close_reqstruct l4_kwq_connect_req1struct l4_kwq_connect_req2struct l4_kwq_connect_req3struct l4_kwq_offload_pgstruct l4_kwq_reset_reqstruct l4_kwq_update_pgstruct l4_kwq_uploadstruct cstorm_iscsi_ag_contextstruct tstorm_fcoe_extra_ag_context_sectionstruct tstorm_fcoe_ag_contextstruct tstorm_tcp_tcp_ag_context_sectionstruct tstorm_iscsi_ag_contextstruct ustorm_fcoe_ag_contextstruct ustorm_iscsi_ag_contextstruct xstorm_fcoe_extra_ag_context_sectionstruct xstorm_fcoe_ag_contextstruct xstorm_tcp_tcp_ag_context_sectionstruct xstorm_iscsi_ag_contextstruct xstorm_l5cm_ag_contextstruct fcoe_abts_infostruct fcoe_abts_rsp_unionstruct fcoe_bd_ctxstruct fcoe_cached_sge_ctxstruct fcoe_cleanup_infostruct fcoe_fcp_rsp_flagsstruct fcoe_fcp_rsp_payloadstruct fcoe_fcp_rsp_unionstruct fcoe_fc_hdrstruct fcoe_mp_rsp_unionstruct fcoe_ext_abts_infostruct fcoe_ext_cleanup_infostruct fcoe_fw_tx_seq_ctxstruct fcoe_ext_fw_tx_seq_ctxstruct fcoe_mul_sges_ctxstruct fcoe_ext_mul_sges_ctxstruct fcoe_fcp_cmd_payloadstruct fcoe_fcp_xfr_rdy_payloadstruct fcoe_fc_framestruct fcoe_kcqestruct fcoe_kwqe_headerstruct fcoe_kwqe_init1struct fcoe_kwqe_init2struct fcoe_kwqe_init3struct fcoe_kwqe_conn_offload1struct fcoe_kwqe_conn_offload2
Annotated Snippet
struct l4_kcq {
u32 cid;
u32 pg_cid;
u32 conn_id;
u32 pg_host_opaque;
#if defined(__BIG_ENDIAN)
u16 status;
u16 reserved1;
#elif defined(__LITTLE_ENDIAN)
u16 reserved1;
u16 status;
#endif
u32 reserved2[2];
#if defined(__BIG_ENDIAN)
u8 flags;
#define L4_KCQ_RESERVED3 (0x7<<0)
#define L4_KCQ_RESERVED3_SHIFT 0
#define L4_KCQ_RAMROD_COMPLETION (0x1<<3) /* Everest only */
#define L4_KCQ_RAMROD_COMPLETION_SHIFT 3
#define L4_KCQ_LAYER_CODE (0x7<<4)
#define L4_KCQ_LAYER_CODE_SHIFT 4
#define L4_KCQ_RESERVED4 (0x1<<7)
#define L4_KCQ_RESERVED4_SHIFT 7
u8 op_code;
u16 qe_self_seq;
#elif defined(__LITTLE_ENDIAN)
u16 qe_self_seq;
u8 op_code;
u8 flags;
#define L4_KCQ_RESERVED3 (0xF<<0)
#define L4_KCQ_RESERVED3_SHIFT 0
#define L4_KCQ_RAMROD_COMPLETION (0x1<<3) /* Everest only */
#define L4_KCQ_RAMROD_COMPLETION_SHIFT 3
#define L4_KCQ_LAYER_CODE (0x7<<4)
#define L4_KCQ_LAYER_CODE_SHIFT 4
#define L4_KCQ_RESERVED4 (0x1<<7)
#define L4_KCQ_RESERVED4_SHIFT 7
#endif
};
/*
* L4 KCQ CQE PG upload
*/
struct l4_kcq_upload_pg {
u32 pg_cid;
#if defined(__BIG_ENDIAN)
u16 pg_status;
u16 pg_ipid_count;
#elif defined(__LITTLE_ENDIAN)
u16 pg_ipid_count;
u16 pg_status;
#endif
u32 reserved1[5];
#if defined(__BIG_ENDIAN)
u8 flags;
#define L4_KCQ_UPLOAD_PG_RESERVED3 (0xF<<0)
#define L4_KCQ_UPLOAD_PG_RESERVED3_SHIFT 0
#define L4_KCQ_UPLOAD_PG_LAYER_CODE (0x7<<4)
#define L4_KCQ_UPLOAD_PG_LAYER_CODE_SHIFT 4
#define L4_KCQ_UPLOAD_PG_RESERVED4 (0x1<<7)
#define L4_KCQ_UPLOAD_PG_RESERVED4_SHIFT 7
u8 op_code;
u16 qe_self_seq;
#elif defined(__LITTLE_ENDIAN)
u16 qe_self_seq;
u8 op_code;
u8 flags;
#define L4_KCQ_UPLOAD_PG_RESERVED3 (0xF<<0)
#define L4_KCQ_UPLOAD_PG_RESERVED3_SHIFT 0
#define L4_KCQ_UPLOAD_PG_LAYER_CODE (0x7<<4)
#define L4_KCQ_UPLOAD_PG_LAYER_CODE_SHIFT 4
#define L4_KCQ_UPLOAD_PG_RESERVED4 (0x1<<7)
#define L4_KCQ_UPLOAD_PG_RESERVED4_SHIFT 7
#endif
};
/*
* Gracefully close the connection request
*/
struct l4_kwq_close_req {
#if defined(__BIG_ENDIAN)
u8 flags;
#define L4_KWQ_CLOSE_REQ_RESERVED1 (0xF<<0)
#define L4_KWQ_CLOSE_REQ_RESERVED1_SHIFT 0
#define L4_KWQ_CLOSE_REQ_LAYER_CODE (0x7<<4)
#define L4_KWQ_CLOSE_REQ_LAYER_CODE_SHIFT 4
#define L4_KWQ_CLOSE_REQ_LINKED_WITH_NEXT (0x1<<7)
#define L4_KWQ_CLOSE_REQ_LINKED_WITH_NEXT_SHIFT 7
Annotation
- Detected declarations: `struct l4_kcq`, `struct l4_kcq_upload_pg`, `struct l4_kwq_close_req`, `struct l4_kwq_connect_req1`, `struct l4_kwq_connect_req2`, `struct l4_kwq_connect_req3`, `struct l4_kwq_offload_pg`, `struct l4_kwq_reset_req`, `struct l4_kwq_update_pg`, `struct l4_kwq_upload`.
- Atlas domain: Driver Families / drivers/net.
- 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.