bnx2x_func_reset_port(9)
π bnx2x_func_reset_port(9) π
okay so this one's from the Kernel API Manual, and it's the little function that handles resetting hardware at the port stage. short page, big responsibilities, let's get into it bestie π«Ά
β¨ NAME β¨
bnx2x_func_reset_port β reset HW at port stage. that's it, that's the vibe πΈ
β¨ SYNOPSIS β¨
void bnx2x_func_reset_port (struct bnx2x *bp , const struct
bnx2x_func_sp_drv_ops *drv );
β¨ ARGUMENTS β¨
bpβ device handle. this is your actual device bestie, the thing you're poking at πdrvβ ngl the page literally does not describe this one, so I'm not gonna invent something and lie to you π it's theconst struct bnx2x_func_sp_drv_ops *from the synopsis up there, that's all we know, fr fr.
β¨ DESCRIPTION β¨
so what it does is reset HW at the FW_MSG_CODE_DRV_UNLOAD_PORT stage: it resets the FUNCTION-only HW blocks and the PORT-only HW blocks. both. slay π₯
!!!IMPORTANT!!! π¨ you must callreset_portbeforereset_func. and I mean it, no cap. because the last thingreset_funcdoes ispf_disable, which disablesPGLUE_B, and once that's off it is literally impossible to do any DMAE transactions. like at all. game over bestie π so:reset_portfirst,reset_funcafter. periodt.
β¨ SEE ALSO β¨
the kernel file where this lives, icon behavior:
./drivers/net/ethernet/broadcom/bnx2x/bnx2x_sp.c
and now the whole group chat, everybody's here π:
bnx2x_exe_queue_init(9)bnx2x_exe_queue_add(9)bnx2x_exe_queue_step(9)bnx2x_state_wait(9)__bnx2x_vlan_mac_h_write_trylock(9)__bnx2x_vlan_mac_h_exec_pending(9)__bnx2x_vlan_mac_h_pend(9)__bnx2x_vlan_mac_h_write_unlock(9)__bnx2x_vlan_mac_h_read_lock(9)bnx2x_vlan_mac_h_read_lock(9)__bnx2x_vlan_mac_h_read_unlock(9)bnx2x_vlan_mac_h_read_unlock(9)bnx2x_vlan_mac_set_cmd_hdr_e2(9)bnx2x_vlan_mac_set_rdata_hdr_e2(9)bnx2x_vlan_mac_set_rdata_hdr_e1x(9)bnx2x_set_one_mac_e1x(9)bnx2x_set_one_vlan_mac_e1h(9)bnx2x_vlan_mac_restore(9)bnx2x_validate_vlan_mac_add(9)bnx2x_validate_vlan_mac_del(9)bnx2x_validate_vlan_mac_move(9)bnx2x_wait_vlan_mac(9)bnx2x_complete_vlan_mac(9)bnx2x_optimize_vlan_mac(9)bnx2x_vlan_mac_get_registry_elem(9)bnx2x_execute_vlan_mac(9)bnx2x_config_vlan_mac(9)bnx2x_vlan_mac_del_all(9)bnx2x_mcast_get_next_bin(9)bnx2x_mcast_clear_first_bin(9)bnx2x_mcast_handle_restore_cmd_e2(9)bnx2x_mcast_handle_current_cmd(9)bnx2x_mcast_set_rdata_hdr_e2(9)bnx2x_mcast_refresh_registry_e2(9)bnx2x_mcast_set_rdata_hdr_e1(9)bnx2x_mcast_handle_restore_cmd_e1(9)bnx2x_get_fw_mac_addr(9)bnx2x_mcast_refresh_registry_e1(9)__atomic_add_ifless(9)__atomic_dec_ifmoe(9)bnx2x_init_credit_pool(9)bnx2x_debug_print_ind_table(9)bnx2x_setup_rss(9)bnx2x_queue_state_change(9)bnx2x_queue_comp_cmd(9)bnx2x_q_init(9)bnx2x_q_send_deactivate(9)bnx2x_q_send_activate(9)bnx2x_queue_chk_transition(9)bnx2x_func_state_change_comp(9)bnx2x_func_comp_cmd(9)bnx2x_func_chk_transition(9)bnx2x_func_init_func(9)bnx2x_func_init_port(9)bnx2x_func_init_cmn_chip(9)bnx2x_func_init_cmn(9)bnx2x_func_reset_func(9)bnx2x_func_reset_cmn(9)bnx2x_func_state_change(9)
aaaaaaaaand that's the page!! β¨ source/version is ./drivers/net/ethernet/broadco... and the date on this bad boy is October 2026 β ty for coming to my ted talk, go reset your port before your func, ily, bye ππ¦
π¦ 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