include/linux/net/intel/iidc_rdma_idpf.h
Source file repositories/reference/linux-study-clean/include/linux/net/intel/iidc_rdma_idpf.h
File Facts
- System
- Linux kernel
- Corpus path
include/linux/net/intel/iidc_rdma_idpf.h- Extension
.h- Size
- 1566 bytes
- Lines
- 56
- Domain
- Core OS
- Bucket
- Core Kernel Interface
- Inferred role
- Core OS: implementation source
- Status
- source implementation candidate
Why This File Exists
Core operating-system implementation surface: boot, tasks, memory, VFS, syscall-facing interfaces, synchronization, credentials, and isolation.
- Core operating-system implementation surface: boot, tasks, memory, VFS, syscall-facing interfaces, synchronization, credentials, and isolation.
- Touches IRQ or DMA behavior; this matters for the representative real-device path.
- Defines or uses C structs; map object ownership, embedded links, reference counts, and lock ownership.
Dependency Surface
linux/auxiliary_bus.h
Detected Declarations
struct iidc_rdma_vport_dev_infostruct iidc_rdma_vport_auxiliary_devstruct iidc_rdma_vport_auxiliary_drvstruct iidc_rdma_lan_mapped_mem_regionstruct iidc_rdma_priv_dev_infoenum iidc_function_type
Annotated Snippet
struct iidc_rdma_vport_dev_info {
struct auxiliary_device *adev;
struct auxiliary_device *core_adev;
struct net_device *netdev;
u16 vport_id;
};
struct iidc_rdma_vport_auxiliary_dev {
struct auxiliary_device adev;
struct iidc_rdma_vport_dev_info *vdev_info;
};
struct iidc_rdma_vport_auxiliary_drv {
struct auxiliary_driver adrv;
void (*event_handler)(struct iidc_rdma_vport_dev_info *vdev,
struct iidc_rdma_event *event);
};
/* struct to be populated by core LAN PCI driver */
enum iidc_function_type {
IIDC_FUNCTION_TYPE_PF,
IIDC_FUNCTION_TYPE_VF,
};
struct iidc_rdma_lan_mapped_mem_region {
u8 __iomem *region_addr;
__le64 size;
__le64 start_offset;
};
struct iidc_rdma_priv_dev_info {
struct msix_entry *msix_entries;
u16 msix_count; /* How many vectors are reserved for this device */
enum iidc_function_type ftype;
__le16 num_memory_regions;
struct iidc_rdma_lan_mapped_mem_region *mapped_mem_regions;
};
int idpf_idc_vport_dev_ctrl(struct iidc_rdma_core_dev_info *cdev_info, bool up);
int idpf_idc_request_reset(struct iidc_rdma_core_dev_info *cdev_info,
enum iidc_rdma_reset_type __always_unused reset_type);
int idpf_idc_rdma_vc_send_sync(struct iidc_rdma_core_dev_info *cdev_info,
u8 *send_msg, u16 msg_size,
u8 *recv_msg, u16 *recv_len);
#endif /* _IIDC_RDMA_IDPF_H_ */
Annotation
- Immediate include surface: `linux/auxiliary_bus.h`.
- Detected declarations: `struct iidc_rdma_vport_dev_info`, `struct iidc_rdma_vport_auxiliary_dev`, `struct iidc_rdma_vport_auxiliary_drv`, `struct iidc_rdma_lan_mapped_mem_region`, `struct iidc_rdma_priv_dev_info`, `enum iidc_function_type`.
- Atlas domain: Core OS / Core Kernel Interface.
- Implementation status: source implementation candidate.
- IRQ or DMA behavior appears here, which is relevant to the selected PCIe/NVMe device path.
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.