drivers/net/ethernet/freescale/dpaa2/dpsw-cmd.h
Source file repositories/reference/linux-study-clean/drivers/net/ethernet/freescale/dpaa2/dpsw-cmd.h
File Facts
- System
- Linux kernel
- Corpus path
drivers/net/ethernet/freescale/dpaa2/dpsw-cmd.h- Extension
.h- Size
- 11662 bytes
- Lines
- 557
- 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
dpsw.h
Detected Declarations
struct dpsw_cmd_openstruct dpsw_cmd_createstruct dpsw_cmd_destroystruct dpsw_rsp_is_enabledstruct dpsw_cmd_set_irq_enablestruct dpsw_cmd_get_irq_enablestruct dpsw_rsp_get_irq_enablestruct dpsw_cmd_set_irq_maskstruct dpsw_cmd_get_irq_maskstruct dpsw_rsp_get_irq_maskstruct dpsw_cmd_get_irq_statusstruct dpsw_rsp_get_irq_statusstruct dpsw_cmd_clear_irq_statusstruct dpsw_rsp_get_attrstruct dpsw_cmd_if_set_tcistruct dpsw_cmd_if_get_tcistruct dpsw_rsp_if_get_tcistruct dpsw_cmd_if_set_stpstruct dpsw_cmd_if_get_counterstruct dpsw_rsp_if_get_counterstruct dpsw_cmd_ifstruct dpsw_rsp_if_get_attrstruct dpsw_cmd_if_set_max_frame_lengthstruct dpsw_cmd_if_set_link_cfgstruct dpsw_cmd_if_get_link_statestruct dpsw_rsp_if_get_link_statestruct dpsw_vlan_addstruct dpsw_cmd_vlan_add_ifstruct dpsw_cmd_vlan_manage_ifstruct dpsw_cmd_vlan_removestruct dpsw_cmd_fdb_addstruct dpsw_rsp_fdb_addstruct dpsw_cmd_fdb_removestruct dpsw_cmd_fdb_unicast_opstruct dpsw_cmd_fdb_multicast_opstruct dpsw_cmd_fdb_dumpstruct dpsw_rsp_fdb_dumpstruct dpsw_rsp_ctrl_if_get_attrstruct dpsw_cmd_ctrl_if_set_poolsstruct dpsw_cmd_ctrl_if_set_queuestruct dpsw_rsp_get_api_versionstruct dpsw_rsp_if_get_mac_addrstruct dpsw_cmd_set_egress_floodstruct dpsw_cmd_if_set_learning_modestruct dpsw_cmd_acl_addstruct dpsw_rsp_acl_addstruct dpsw_cmd_acl_removestruct dpsw_cmd_acl_if
Annotated Snippet
struct dpsw_cmd_open {
__le32 dpsw_id;
};
#define DPSW_COMPONENT_TYPE_SHIFT 0
#define DPSW_COMPONENT_TYPE_SIZE 4
struct dpsw_cmd_create {
/* cmd word 0 */
__le16 num_ifs;
u8 max_fdbs;
u8 max_meters_per_if;
/* from LSB: only the first 4 bits */
u8 component_type;
u8 pad[3];
/* cmd word 1 */
__le16 max_vlans;
__le16 max_fdb_entries;
__le16 fdb_aging_time;
__le16 max_fdb_mc_groups;
/* cmd word 2 */
__le64 options;
};
struct dpsw_cmd_destroy {
__le32 dpsw_id;
};
#define DPSW_ENABLE_SHIFT 0
#define DPSW_ENABLE_SIZE 1
struct dpsw_rsp_is_enabled {
/* from LSB: enable:1 */
u8 enabled;
};
struct dpsw_cmd_set_irq_enable {
u8 enable_state;
u8 pad[3];
u8 irq_index;
};
struct dpsw_cmd_get_irq_enable {
__le32 pad;
u8 irq_index;
};
struct dpsw_rsp_get_irq_enable {
u8 enable_state;
};
struct dpsw_cmd_set_irq_mask {
__le32 mask;
u8 irq_index;
};
struct dpsw_cmd_get_irq_mask {
__le32 pad;
u8 irq_index;
};
struct dpsw_rsp_get_irq_mask {
__le32 mask;
};
struct dpsw_cmd_get_irq_status {
__le32 status;
u8 irq_index;
};
struct dpsw_rsp_get_irq_status {
__le32 status;
};
struct dpsw_cmd_clear_irq_status {
__le32 status;
u8 irq_index;
};
#define DPSW_COMPONENT_TYPE_SHIFT 0
#define DPSW_COMPONENT_TYPE_SIZE 4
#define DPSW_FLOODING_CFG_SHIFT 0
#define DPSW_FLOODING_CFG_SIZE 4
#define DPSW_BROADCAST_CFG_SHIFT 4
#define DPSW_BROADCAST_CFG_SIZE 4
struct dpsw_rsp_get_attr {
/* cmd word 0 */
Annotation
- Immediate include surface: `dpsw.h`.
- Detected declarations: `struct dpsw_cmd_open`, `struct dpsw_cmd_create`, `struct dpsw_cmd_destroy`, `struct dpsw_rsp_is_enabled`, `struct dpsw_cmd_set_irq_enable`, `struct dpsw_cmd_get_irq_enable`, `struct dpsw_rsp_get_irq_enable`, `struct dpsw_cmd_set_irq_mask`, `struct dpsw_cmd_get_irq_mask`, `struct dpsw_rsp_get_irq_mask`.
- 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.