drivers/fpga/dfl-fme-pr.h

Source file repositories/reference/linux-study-clean/drivers/fpga/dfl-fme-pr.h

File Facts

System
Linux kernel
Corpus path
drivers/fpga/dfl-fme-pr.h
Extension
.h
Size
2087 bytes
Lines
85
Domain
Driver Families
Bucket
drivers/fpga
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 dfl_fme_region {
	struct platform_device *region;
	struct list_head node;
	int port_id;
};

/**
 * struct dfl_fme_region_pdata - platform data for FME region platform device.
 *
 * @mgr: platform device of the FPGA manager.
 * @br: platform device of the FPGA bridge.
 * @region_id: region id (same as port_id).
 */
struct dfl_fme_region_pdata {
	struct platform_device *mgr;
	struct platform_device *br;
	int region_id;
};

/**
 * struct dfl_fme_bridge - FME fpga bridge data structure
 *
 * @br: platform device of the FPGA bridge.
 * @node: used to link fme_bridge to a list.
 */
struct dfl_fme_bridge {
	struct platform_device *br;
	struct list_head node;
};

/**
 * struct dfl_fme_br_pdata - platform data for FME bridge platform device.
 *
 * @cdev: container device.
 * @port_id: port id.
 */
struct dfl_fme_br_pdata {
	struct dfl_fpga_cdev *cdev;
	int port_id;
};

/**
 * struct dfl_fme_mgr_pdata - platform data for FME manager platform device.
 *
 * @ioaddr: mapped io address for FME manager platform device.
 */
struct dfl_fme_mgr_pdata {
	void __iomem *ioaddr;
};

#define DFL_FPGA_FME_MGR	"dfl-fme-mgr"
#define DFL_FPGA_FME_BRIDGE	"dfl-fme-bridge"
#define DFL_FPGA_FME_REGION	"dfl-fme-region"

#endif /* __DFL_FME_PR_H */

Annotation

Implementation Notes