STRUCT DFL_FEATURE(9)
π NAME π
okay bestie, welcome to struct dfl_feature(9) from the Kernel API Manual β yes, that manual. this whole page is about struct dfl_feature, which is the sub feature of the feature devices. no cap, that's the name situation π
β¨ SYNOPSIS β¨
here's the struct itself, copied exactly so you can trust it:
struct dfl_feature {
struct platform_device *dev;
u16 id;
u8 revision;
int resource_index;
void __iomem *ioaddr;
struct dfl_feature_irq_ctx *irq_ctx;
unsigned int nr_irqs;
const struct dfl_feature_ops *ops;
struct dfl_device *ddev;
void *priv;
u8 dfh_version;
unsigned int param_size;
void *params;
};
π Members π
okay so every member is iconic in its own way β let's go one by one, bestie π«Ά
devβ ptr to pdev of the feature device which has the sub feature. like, the pdev pointer for the feature device that has this sub feature πidβ sub feature id. short, sweet, identifying β¨revisionβ revision of this sub feature. it's giving version energy πresource_indexβ each sub feature has one mmio resource for its registers. this index is used to find its mmio resource from the feature dev (platform device)'s resources. so yes, it's the little index that finds the mmio resource from the feature dev (platform device)'s resources π₯ioaddrβ mapped mmio resource address. literally the address after mapping, periodt π¦irq_ctxβ interrupt context list. the interrupt context list, no cap πnr_irqsβ number of interrupt contexts. it counts the interrupt contexts πΈopsβ ops of this sub feature. the operations for this sub feature, iykyk πddevβ ptr to the dfl device of this sub feature. the dfl device pointer for this sub feature πprivβ priv data of this feature. private data, staying in its lane πdfh_versionβ version of the DFH. uppercase DFH, lowercase "version", we respect the casing πparam_sizeβ size of dfh parameters. it's the size, bestie πparamsβ point to memory copy of dfh parameters. yes, "point to memory copy of dfh parameters" β that's the wording, and it ate π
π¦ SEE ALSO π¦
these are the vibes you should also check out, fr fr:
- Kernel file
./drivers/fpga/dfl.h struct dfl_fpga_port_ops(9)struct dfl_feature_id(9)struct dfl_feature_driver(9)struct dfl_feature_irq_ctx(9)struct dfl_feature_dev_data(9)struct dfl_feature_platform_data(9)struct dfl_fpga_enum_info(9)struct dfl_fpga_enum_dfl(9)struct dfl_fpga_cdev(9)
mwah π this page came from the source/version path ./drivers/fpga, dated October 2026, and it's the struct dfl_feature(9) manual. slay and stay hydrated πβ¨
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms