STRUCT LEAPRAID_ADAPTER_FEATURES(9)
π NAME π
struct leapraid_adapter_features β literally the whole vibe of an adapter's features and capabilities, bestie. This is the page from the Kernel API Manual, and it's lowkey just a struct that holds all the "what can this card even do" receipts. β¨
πΈ SYNOPSIS πΈ
Ok so here's the actual shape of it, no cap, copied exactly:
struct leapraid_adapter_features {
u16 req_slot;
u16 hp_slot;
u32 adapter_caps;
u32 fw_version;
u8 max_msix_vectors;
u8 max_volumes;
u16 max_dev_handle;
u16 min_dev_handle;
u16 msg_ver;
u16 product_id;
};
π MEMBERS π
Every field gets its moment, periodt:
req_slotβ how many request slots the adapter supports. Like, its slot budget. πhp_slotβ how many high-priority slots the adapter supports. The VIP section of slots, honestly. πadapter_capsβ the adapter's capabilities. Yes the name is doing all the work, and yes it ate. β¨fw_versionβ the firmware version of the adapter. Gotta know what it's running, always. π¦max_dev_handleβ the maximum device handle the adapter supports.min_dev_handleβ the minimum device handle the adapter supports. (Yes, they're a matched set, we stan. π«Ά)
Not me noticing the struct also hasmax_msix_vectors,max_volumes,msg_verandproduct_idup in the synopsis with no lil description attached π β they're 100% in the struct above, character for character, the page just doesn't break them down. So don't come for me, I'm only telling you what it says, fr fr. π
π SEE ALSO π
Go read these next, iykyk β first up is the kernel file itself:
Kernel file ./drivers/scsi/leapraid/leapraid_func.hstruct leapraid_adapter_attr(9)struct leapraid_io_req_tracker(9)struct leapraid_task_tracker(9)struct leapraid_rep_desc_maint(9)struct leapraid_rep_desc_seg_maint(9)struct leapraid_mem_desc(9)enum LEAPRAID_CB_INDEX(9)struct leapraid_default_reply(9)struct leapraid_sense_buffer(9)struct leapraid_driver_cmd(9)struct leapraid_driver_cmds(9)struct leapraid_dynamic_task_desc(9)struct leapraid_fw_evt_work(9)struct leapraid_fw_evt_struct(9)struct leapraid_rq(9)struct leapraid_int_rq(9)struct leapraid_blk_mq_poll_rq(9)struct leapraid_notification_desc(9)struct leapraid_overheat_desc(9)struct leapraid_reset_desc(9)struct leapraid_scan_dev_desc(9)struct leapraid_access_ctrl(9)struct leapraid_fw_log_desc(9)struct leapraid_card_port(9)struct leapraid_card_phy(9)struct leapraid_topo_node(9)struct leapraid_dev_topo(9)struct leapraid_boot_dev(9)struct leapraid_boot_devs(9)struct leapraid_adapter(9)struct leapraid_enc_node(9)struct leapraid_raid_volume(9)struct leapraid_starget_priv(9)struct leapraid_sdev_priv(9)struct leapraid_sas_dev(9)struct leapraid_sas_port(9)struct leapraid_vphy(9)struct leapraid_tgt_rst_list(9)struct sense_info(9)struct leapraid_fw_log_info(9)enum reset_type(9)struct leapraid_card_port_feature(9)
That's the whole page, bestie β and before you go, the source lives in ./drivers/scsi/leapraid and this lil gem is dated October 2026. Slay, go read your structs πβ¨
π¦ 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