qed_read_fw_info(9)
π qed_read_fw_info(9) β like, the FW info getter π
okay so bestie, welcome to the Kernel API Manual page for qed_read_fw_info β yes that's the (9) section, kernel internals territory, main character energy only π
β¨ NAME β¨
qed_read_fw_info β reads FW info from the chip. that's it. that's the whole vibe. π¦
πΈ SYNOPSIS πΈ
bool qed_read_fw_info (struct qed_hwfn *p_hwfn , struct qed_ptt *p_ptt ,
struct fw_info *fw_info );
like, it returns a bool and takes three things. she's simple, she's iconic π
π«Ά ARGUMENTS π«Ά
p_hwfnβ the HW device data. the hardware's whole deal, basically π₯οΈp_pttβ the Ptt window used for writing the registers. that's your little doorway into the registers β¨fw_infoβ an (Out) pointer, so the function writes the FW info into it. output param, she writes back, no cap π
π RETURN π
Returns true if the FW info was read successfully from one of the Storms β and false if all the Storms are in reset. like, every single one π if they're all resetting bestie, you get nothing. false. periodt.
π§ DESCRIPTION π§
so the FW info is this bundle of FW-related information β¨ β think the FW version, the FW image (main/L2B/kuku), the FW timestamp, etc. all the good stuff π
and the way it gets read? from the internal RAM of the first Storm that is not in reset. first available Storm, that's the one. the others are literally asleep π
π SEE ALSO π
the Kernel file:
./drivers/net/ethernet/qlogic/qed/qed_dbg_hsi.h
and the whole friend group π«Ά (yes, all of them, i'm not skipping a single one, i would never):
qed_dbg_set_bin_ptr(9)qed_read_regs(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_reg_fifo_dump(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)
and that's the whole page bestie, mwah π shoutout to the source <pink>./drivers/net/ethernet/qlogic/qed</pink>, dated October 2026 β slay, we love a properly documented driver πβ¨π
π¦ 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