qed_iov_config_perm_table(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… NAME πŸ’…

qed_iov_config_perm_table β€” ok so this is the function that configures the permission zone table ✨ literally its whole job πŸŽ€


🌸 SYNOPSIS 🌸

void qed_iov_config_perm_table (struct qed_hwfn *p_hwfn , struct qed_ptt
* p_ptt , struct qed_vf_info *vf , u8 enable );

bestie it returns void, so like… don't go looking for a return value, there isn't one 🫢


πŸ¦‹ ARGUMENTS πŸ¦‹

  • p_hwfn β€” the HW device data πŸ’– that's your hardware function handle, your main character struct.
  • p_ptt β€” the PTT window for writing the registers ✨ this is the window you poke the registers through, no window no writing, periodt.
  • vf β€” the VF info data πŸ‘‘ all the deets about this particular virtual function.
  • enable β€” the actual permission for this VF 🌈 typed as a u8, it's literally the permission value you're setting. the real one. the actual one.

⭐ DESCRIPTION ⭐

okay so here's the lore 🧚 in E4, the queue zone permission table size is 320x9. not 319, not 321. 320x9. write that down πŸ’€

and there are 320 VF queues for a single engine device β€” but heads up, it's 256 for dual engine device πŸ™ˆ so the count is not the same everywhere, iykyk.

each entry has the following format: {Valid, VF[7:0]} πŸ”₯ so that's a Valid field plus the VF field going from bit 7 down to bit 0, no cap.


πŸŽ€ SEE ALSO πŸŽ€

  • Kernel file ./drivers/net/ethernet/qlogic/qed/qed_sriov.c πŸ’œ
  • qed_schedule_iov(9) ✨

ngl, if you're messing with permission tables, read those first bestie, they're right there πŸ“

and that's the whole page, mwah πŸ’‹ this one came out of ./drivers/net/ethernet/qlogic/qed and it's dated October 2026 β€” qed_iov_config_perm_table(9), slay πŸ’…βœ¨

πŸ“¦ where this page comes from