UNION FUS_DAT1(9)
union fus_dat1(9) π
Kernel API Manual β yes bestie, we're reading a manpage for a union today, and honestly? It ate. π
β¨ NAME β¨
union fus_dat1 β the Fuse Data 1 Register. that's it, that's the whole vibe. π₯
πΈ SYNOPSIS πΈ
union fus_dat1 {
u64 value;
struct {
#if (defined(__BIG_ENDIAN_BITFIELD));
u64 raz_57_63 : 7;
u64 pll_mul : 3;
u64 pll_half_dis : 1;
u64 raz_43_52 : 10;
u64 efus_lck : 3;
u64 raz_26_39 : 14;
u64 zip_info : 5;
u64 bar2_sz_conf : 1;
u64 efus_ign : 1;
u64 nozip : 1;
u64 raz_11_17 : 7;
u64 pll_alt_matrix : 1;
u64 pll_bwadj_denom : 2;
u64 chip_id : 8;
#else;
u64 chip_id : 8;
u64 pll_bwadj_denom : 2;
u64 pll_alt_matrix : 1;
u64 raz_11_17 : 7;
u64 nozip : 1;
u64 efus_ign : 1;
u64 bar2_sz_conf : 1;
u64 zip_info : 5;
u64 raz_26_39 : 14;
u64 efus_lck : 3;
u64 raz_43_52 : 10;
u64 pll_half_dis : 1;
u64 pll_mul : 3;
u64 raz_57_63 : 7;
#endif;
};
};
okay so it's a u64 (value) or a bitfield struct living in the same spot β union classic. the bitfield order flips depending on whether __BIG_ENDIAN_BITFIELD is defined, and yes, the two branches list the fields in mirror order. icon behavior honestly. πͺβ¨
π¦ Members π¦
first up, the anonymous one:
{unnamed_struct}β anonymous. it's giving mysterious. no name, all main character energy. π«Ά
π the __BIG_ENDIAN_BITFIELD branch, in order:
pll_mulβ main clock PLL multiplier hardware limitpll_half_disβ main clock PLL controlefus_lckβ efuse lockdownzip_infoβ ZIP informationbar2_sz_confβ when zero, BAR2 size conforms to PCIe specificationefus_ignβ efuse ignorenozipβ ZIP disablepll_alt_matrixβ select alternate PLL matrixpll_bwadj_denomβ select CLKF denominator for BWADJ valuechip_idβ chip ID
π the #else branch, in order:
chip_idβ chip IDpll_bwadj_denomβ select CLKF denominator for BWADJ valuepll_alt_matrixβ select alternate PLL matrixnozipβ ZIP disableefus_ignβ efuse ignorebar2_sz_confβ when zero, BAR2 size conforms to PCIe specificationzip_infoβ ZIP informationefus_lckβ efuse lockdownpll_half_disβ main clock PLL controlpll_mulβ main clock PLL multiplier hardware limit
and yes, every single one of those appears twice in the original because of the two branches β so it appears twice here too. no cap, no shortcuts. π
π₯ SEE ALSO π₯
kernel file: ./drivers/crypto/cavium/nitrox/nitrox_csr.h β that's where this union actually lives, bestie. π§
- union
ucd_core_eid_ucode_block_num(9) - union
aqm_grp_execmsk_lo(9) - union
aqm_grp_execmsk_hi(9) - union
aqmq_drbl(9) - union
aqmq_qsz(9) - union
aqmq_cmp_thr(9) - union
aqmq_cmp_cnt(9) - union
aqmq_en(9) - union
aqmq_activity_stat(9) - union
emu_fuse_map(9) - union
emu_se_enable(9) - union
emu_ae_enable(9) - union
emu_wd_int_ena_w1s(9) - union
emu_ge_int_ena_w1s(9) - union
nps_pkt_slc_ctl(9) - union
nps_pkt_slc_cnts(9) - union
nps_pkt_slc_int_levels(9) - union
nps_pkt_in_done_cnts(9) - union
nps_pkt_in_instr_ctl(9) - union
nps_pkt_in_instr_rsize(9) - union
nps_pkt_in_instr_baoff_dbell(9) - union
nps_core_int_ena_w1s(9) - union
nps_core_gbl_vfcfg(9) - union
nps_core_int_active(9) - union
efl_core_int(9) - union
efl_core_int_ena_w1s(9) - union
efl_rnm_ctl_status(9) - union
bmi_ctl(9) - union
bmi_int_ena_w1s(9) - union
bmo_ctl2(9) - union
pom_int_ena_w1s(9) - union
lbc_inval_ctl(9) - union
lbc_int_ena_w1s(9) - union
lbc_int(9) - union
lbc_inval_status(9) - union
rst_boot(9)
reminder bestie: the fields are bitfields β the raz_* ones are just reserved bits sitting there being quiet. don't go assigning meaning to them, that's not the vibe. π
okay that's the whole page, go drink some water and read a union. π
./drivers/crypto/cavium/nitrox Β· October 2026 Β· union fus_dat1(9) β mwah, signed, sealed, slayed. π
β¨π¦
π¦ 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