qed_dbg_reg_fifo_dump(9)
π
qed_dbg_reg_fifo_dump β NAME β¨
okay so bestie, this is qed_dbg_reg_fifo_dump(9) from the Kernel API Manual, and it literally does what it says: it reads the reg fifo and then writes the results into the buffer you handed it. that's the whole vibe. π
πΈ SYNOPSIS πΈ
enum dbg_status qed_dbg_reg_fifo_dump (struct qed_hwfn *p_hwfn , struct
qed_ptt *p_ptt , u32 *dump_buf , u32 buf_size_in_dwords , u32
*num_dumped_dwords );
like, that's the whole signature, no cap. five args, one enum dbg_status coming back at you. π¦
π ARGUMENTS π
p_hwfnβ HW device data. that's your hardware function struct, the main character of the whole qed situation πp_pttβ the ptt window that gets used for writing the registers. ptt = the little doorway you go through, iykyk πͺβ¨dump_bufβ pointer to write the reg fifo data into. this is the destination, the place the good stuff lands π«Άbuf_size_in_dwordsβ the size of the buffer you specified, measured in dwords (yes, dwords, not bytes, pay attention bestie π)num_dumped_dwordsβ (OUT) number of dumped dwords. it's an OUT param, meaning it comes back with info for you, so don't expect it to hold anything useful on the way in π
π₯ RETURN π₯
it returns an error if any one of these holds:
- the version wasn't set π
- the buffer you specified is too small (ngl this is the classic one, size your buffers correctly besties) π
- the DMAE transaction failed π
otherwise? it returns ok. slay. β¨
fr fr, those are the only three failure cases listed β don't go inventing extra ones, that's not the vibe.
π SEE ALSO π
first up, the kernel file itself:
Kernel file ./drivers/net/ethernet/qlogic/qed/qed_dbg_hsi.h
and then the whole friend group, in order, all of them, no skipping:
qed_dbg_set_bin_ptr(9)qed_read_regs(9)qed_read_fw_info(9)qed_dbg_grc_config(9)qed_dbg_grc_set_params_default(9)qed_dbg_grc_get_dump_buf_size(9)qed_dbg_grc_dump(9)qed_dbg_idle_chk_get_dump_buf_size(9)qed_dbg_idle_chk_dump(9)qed_dbg_mcp_trace_get_dump_buf_size(9)qed_dbg_mcp_trace_dump(9)qed_dbg_reg_fifo_get_dump_buf_size(9)qed_dbg_igu_fifo_get_dump_buf_size(9)qed_dbg_igu_fifo_dump(9)qed_dbg_protection_override_get_dump_buf_size(9)qed_dbg_protection_override_dump(9)qed_dbg_fw_asserts_get_dump_buf_size(9)qed_dbg_fw_asserts_dump(9)qed_dbg_read_attn(9)qed_dbg_print_attn(9)qed_dbg_user_set_bin_ptr(9)qed_dbg_alloc_user_data(9)qed_dbg_get_status_str(9)qed_get_idle_chk_results_buf_size(9)qed_print_idle_chk_results(9)qed_dbg_mcp_trace_set_meta_data(9)qed_get_mcp_trace_results_buf_size(9)qed_print_mcp_trace_results(9)qed_mcp_trace_free_meta_data(9)qed_get_reg_fifo_results_buf_size(9)qed_print_reg_fifo_results(9)qed_get_igu_fifo_results_buf_size(9)qed_print_igu_fifo_results(9)qed_get_protection_override_results_buf_size(9)qed_print_protection_override_results(9)qed_get_fw_asserts_results_buf_size(9)qed_print_fw_asserts_results(9)qed_dbg_parse_attn(9)
like, that's a lot of siblings, but every single one of them is on the list so we're listing every single one of them. periodt. π
and that's the page!! π§ this little beauty lives in ./drivers/net/ethernet/qlogic/qed, and the version we're reading is dated October 2026 β so go forth, dump that reg fifo, and remember: check your buffer size first, bestie ππ
π¦ 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