bnx2x_func_init_func(9)
π bnx2x_func_init_func(9) π
okay so bestie, we're in the Kernel API Manual today and this page is literally about bnx2x_func_init_func β the little function that does HW init at the function stage. it's giving "small but crucial", ngl. let's get into it π«Ά
β¨ NAME β¨
bnx2x_func_init_func β performs HW init at function stage π€
π¦ SYNOPSIS π¦
int bnx2x_func_init_func (struct bnx2x *bp , const struct
bnx2x_func_sp_drv_ops *drv );
like, it returns an int, takes a struct bnx2x *bp and a const struct bnx2x_func_sp_drv_ops *drv, and that's the whole vibe. slay.
π ARGUMENTS π
bpβ device handle. that's your baby, your main character, the actual device πdrvβ so the original page literally leaves this one blank, no cap. zero description. it's giving mysterious π€« but it is, for the record, aconst struct bnx2x_func_sp_drv_ops *per the synopsis above. don't come for me, i'm just relaying π«‘
πΈ DESCRIPTION πΈ
this one inits the HW when the current phase is FW_MSG_CODE_DRV_LOAD_FUNCTION β so it initializes only FUNCTION-only HW blocks and nothing else. lowkey surgical. βοΈβ¨
so like, if the phase is right, this is the moment, and if it's not⦠it's not. periodt.
π SEE ALSO π
bestie. buckle up. this list is long β it ate and left no crumbs. every single one, in order, exactly as printed:
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_port(9)bnx2x_func_init_cmn_chip(9)bnx2x_func_init_cmn(9)bnx2x_func_reset_func(9)bnx2x_func_reset_port(9)bnx2x_func_reset_cmn(9)bnx2x_func_state_change(9)
and the kernel file this lives in, exactly as given:
./drivers/net/ethernet/broadcom/bnx2x/bnx2x_sp.c
ngl, __atomic_dec_ifmoe(9) is right there in the list and it's not a typo on my end β that's literally how it's printed. iykyk π
π okay that's the page!! π
source + version on the footer: ./drivers/net/ethernet/broadco... β yep, it's truncated with the ... and everything, i'm not fixing it, it's iconic π β and the date is October 2026. so future-coded of it. bye bestie, go init those FUNCTION-only HW blocks πβ¨π¦
π¦ 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