STRUCT LEAPRAID_RAID_CFG_P0(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– struct leapraid_raid_cfg_p0(9) πŸ’–

okay so bestie, welcome to the Kernel API Manual entry for struct leapraid_raid_cfg_p0 β€” yes the whole manual name is in the title, we're doing this properly ✨ this page is literally about RAID configuration page 0, and it's giving "table of contents but make it firmware" πŸŽ€


🌸 NAME 🌸

struct leapraid_raid_cfg_p0 β€” RAID configuration page 0 πŸ’… that's the whole vibe, that's the whole struct, no notes 🫢


⭐ SYNOPSIS ⭐

here's the exact shape of it, no cap, copy it into ur brain exactly like this:

struct leapraid_raid_cfg_p0 {
    struct leapraid_cfg_ext_pg_header header;
    u8 r1[3];
    u8 cfg_num;
    u8 r2[32];
    u8 elements_num;
    u8 r3[3];
    struct leapraid_raid_cfg_p0_element cfg_element[];
};

that trailing cfg_element[] is a flexible array member btw, it's the main character at the end of the struct πŸ‘‘


πŸ¦‹ Members πŸ¦‹

okay so let's go member by member, every single one, we're not skipping ANY of them, that would be disrespectful to the struct 😭

  • header β€” the extended configuration page header. it's the little label on the front of the page, extended config page flavour specifically 🌈
  • r1 β€” reserved. that's it, that's the whole job, it's just vibing there πŸ’€
  • cfg_num β€” the configuration number. ur little ID badge number for this config πŸŽ€
  • r2 β€” reserved. (u8 r2[32] of pure "don't touch" energy, respect the space πŸ™ˆ)
  • elements_num β€” the number of RAID elements. how many besties are in the cfg_element friend group ✨
  • r3 β€” reserved. third reserved one, iconic consistency πŸ’…
  • cfg_element β€” array of RAID elements. this is where the actual RAID elements live, struct leapraid_raid_cfg_p0_element sized, and it's elements_num of them long, iykyk 🫢
ngl the reserved fields (r1, r2, r3) are reserved β€” that's the whole fact, don't go reading meaning into them πŸ“

πŸ‘‘ SEE ALSO πŸ‘‘

the source of truth lives in the kernel file ./drivers/scsi/leapraid/leapraid.h β€” that's where all these structs and unions actually are, go look, it's fine, it's literally in the source tree 🧚

and here's the full friend list, every single one, in order, because we do NOT drop references on this page πŸ’–

  • struct leapraid_reg_base(9)
  • struct leapraid_atomic_req_desc(9)
  • union leapraid_rep_desc_union(9)
  • struct leapraid_req(9)
  • struct leapraid_rep(9)
  • struct leapraid_sge_simple32(9)
  • struct leapraid_sge_simple64(9)
  • struct leapraid_sge_simple_union(9)
  • struct leapraid_sge_chain_union(9)
  • struct leapraid_ieee_sge_simple32(9)
  • struct leapraid_ieee_sge_simple64(9)
  • union leapraid_ieee_sge_simple_union(9)
  • union leapraid_ieee_sge_chain_union(9)
  • struct leapraid_chain64_ieee_sg(9)
  • union leapraid_ieee_sge_io_union(9)
  • union leapraid_simple_sge_union(9)
  • union leapraid_sge_io_union(9)
  • struct leapraid_cfg_pg_header(9)
  • struct leapraid_cfg_ext_pg_header(9)
  • struct leapraid_cfg_req(9)
  • struct leapraid_cfg_rep(9)
  • struct leapraid_boot_dev_format_sas_wwid(9)
  • struct leapraid_boot_dev_format_enc_slot(9)
  • struct leapraid_boot_dev_format_dev_name(9)
  • union leapraid_boot_dev_format(9)
  • struct leapraid_manufacturing_p0(9)
  • struct leapraid_bios_page2(9)
  • struct leapraid_bios_page3(9)
  • struct leapraid_raidvol0_phys_disk(9)
  • struct leapraid_raidvol_p0(9)
  • struct leapraid_raidvol_p1(9)
  • struct leapraid_raidpd_p0(9)
  • struct leapraid_sas_io_unit0_phy_info(9)
  • struct leapraid_sas_io_unit_p0(9)
  • struct leapraid_exp_p0(9)
  • struct leapraid_exp_p1(9)
  • struct leapraid_sas_dev_p0(9)
  • struct leapraid_sas_phy_p0(9)
  • struct leapraid_enc_p0(9)
  • struct leapraid_raid_cfg_p0_element(9)
  • union leapraid_mpi_scsi_io_cdb_union(9)
  • struct leapraid_mpi_scsiio_req(9)
  • union leapraid_scsi_io_cdb_union(9)
  • struct leapraid_scsiio_req(9)
  • struct leapraid_scsiio_rep(9)
  • struct leapraid_scsi_tm_req(9)
  • struct leapraid_scsi_tm_rep(9)
  • struct leapraid_sep_req(9)
  • struct leapraid_sep_rep(9)
  • struct leapraid_adapter_init_req(9)
  • struct leapraid_rep_desc_q_arr(9)
  • struct leapraid_adapter_init_rep(9)
  • struct leapraid_adapter_log_req(9)
  • struct leapraid_adapter_log_rep(9)
  • struct leapraid_adapter_features_req(9)
  • struct leapraid_adapter_features_rep(9)
  • struct leapraid_scan_dev_req(9)
  • struct leapraid_scan_dev_rep(9)
  • struct leapraid_evt_notify_req(9)
  • struct leapraid_evt_notify_rep(9)
  • struct leapraid_evt_data_sas_dev_status_change(9)
  • struct leapraid_evt_data_ir_change(9)
  • struct leapraid_evt_data_sas_disc(9)
  • struct leapraid_evt_sas_topo_phy_entry(9)
  • struct leapraid_evt_data_sas_topo_change_list(9)
  • struct leapraid_evt_data_sas_enc_dev_status_change(9)
  • struct leapraid_io_unit_ctrl_req(9)
  • struct leapraid_io_unit_ctrl_rep(9)
  • struct leapraid_raid_act_req(9)
  • struct leapraid_raid_act_rep(9)
  • struct leapraid_smp_passthrough_req(9)
  • struct leapraid_smp_passthrough_rep(9)
  • struct leapraid_sas_io_unit_ctrl_req(9)

fr fr bestie, that's the whole page. struct understood, reserved fields respected, references intact, vibes immaculate πŸ’œ

okay and for the cute sign-off moment: this one lives under ./drivers/scsi/leapraid, and the page is dated October 2026 β€” so yeah, future-dated manual page, main character energy for real πŸ‘‘βœ¨πŸŽ€ slay, go read the header file πŸ¦‹

πŸ“¦ where this page comes from