STRUCT DFL_FEATURE_DEV_DATA(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ struct dfl_feature_dev_data(9) β€” the kernel API manual, bestie edition ✨

okay so we're in the kernel API manual for struct dfl_feature_dev_data, and no cap, this is the whole vibe: it's the dfl enumeration data for dfl feature dev πŸ’… like, the little data bundle that holds everything a DFL feature device needs to know about itself. she's giving main character energy in ./drivers/fpga. let's get into it πŸŽ€


🌸 NAME 🌸

struct dfl_feature_dev_data β€” dfl enumeration data for dfl feature dev. periodt. that's her whole job 🫢


✨ SYNOPSIS ✨

struct dfl_feature_dev_data {
    struct list_head node;
    struct mutex lock;
    struct platform_device *dev;
    enum dfl_id_type type;
    int pdev_id;
    const char *pdev_name;
    struct dfl_fpga_cdev *dfl_cdev;
    int id;
    unsigned int disable_count;
    bool excl_open;
    int open_count;
    void *private;
    int num;
    struct dfl_feature *features;
    int resource_num;
    struct resource *resources;
 };

like, look at her. seventeen fields of pure usefulness πŸ¦‹


πŸ’– Members πŸ’–

okay bestie, field-by-field, here we go β€” every single one, no skipping πŸ™ˆ

  • node β€” node to link the data structure to container device's port_dev_list.
  • lock β€” mutex to protect feature dev data. guard her πŸ”’
  • dev β€” ptr to the feature's platform device linked with this structure.
  • type β€” type of DFL FIU for the feature dev. See enum dfl_id_type. iykyk.
  • pdev_id β€” platform device id for the feature dev.
  • pdev_name β€” platform device name for the feature dev.
  • dfl_cdev β€” ptr to container device.
  • id β€” id used for the feature device.
  • disable_count β€” count for port disable.
  • excl_open β€” set on feature device exclusive open. very "do not disturb" of her πŸ’…
  • open_count β€” count for feature device open.
  • private β€” ptr to feature dev private data.
  • num β€” number for sub features.
  • features β€” sub features for the feature dev.
  • resource_num β€” number of resources for the feature dev.
  • resources β€” resources for the feature dev. the whole resource moment πŸ”₯

πŸŽ€ SEE ALSO πŸŽ€

Kernel file ./drivers/fpga/dfl.h β€” and then the whole friend group, fr fr:

  • 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(9)
  • struct dfl_feature_platform_data(9)
  • struct dfl_fpga_enum_info(9)
  • struct dfl_fpga_enum_dfl(9)
  • struct dfl_fpga_cdev(9)

ngl, read the whole squad before you go poking at dfl_feature_dev_data β€” she does NOT travel alone 😭

k bye bestie, mwah πŸ’‹ this came straight out of ./drivers/fpga, dated October 2026, and the manual itself is struct dfl_feature_dev_data(9) β€” slay, go read the source, ily πŸŒˆβ­πŸ’œ

πŸ“¦ where this page comes from