drivers/vfio/fsl-mc/vfio_fsl_mc_private.h

Source file repositories/reference/linux-study-clean/drivers/vfio/fsl-mc/vfio_fsl_mc_private.h

File Facts

System
Linux kernel
Corpus path
drivers/vfio/fsl-mc/vfio_fsl_mc_private.h
Extension
.h
Size
1249 bytes
Lines
50
Domain
Driver Families
Bucket
drivers/vfio
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.

Dependency Surface

Detected Declarations

Annotated Snippet

struct vfio_fsl_mc_irq {
	u32         flags;
	u32         count;
	struct eventfd_ctx  *trigger;
	char            *name;
};

struct vfio_fsl_mc_region {
	u32			flags;
	u32			type;
	u64			addr;
	resource_size_t		size;
	void __iomem		*ioaddr;
};

struct vfio_fsl_mc_device {
	struct vfio_device		vdev;
	struct fsl_mc_device		*mc_dev;
	struct notifier_block        nb;
	struct vfio_fsl_mc_region	*regions;
	struct mutex         igate;
	struct vfio_fsl_mc_irq      *mc_irqs;
};

int vfio_fsl_mc_set_irqs_ioctl(struct vfio_fsl_mc_device *vdev,
			       u32 flags, unsigned int index,
			       unsigned int start, unsigned int count,
			       void *data);

void vfio_fsl_mc_irqs_cleanup(struct vfio_fsl_mc_device *vdev);

#endif /* VFIO_FSL_MC_PRIVATE_H */

Annotation

Implementation Notes