bnx2x_func_init_cmn_chip(9)
π bnx2x_func_init_cmn_chip β a vibe check on the kernel API manual, bestie
okay so picture this: you're deep in the 9 section of the manual (that's the kernel API one, iykyk) and you stumble on bnx2x_func_init_cmn_chip. Bestie. Sit down. Let me tell you about her. πΈ
β¨ NAME β¨
bnx2x_func_init_cmn_chip β she's the one who performs HW init at chip-common stage. That's literally her whole job and she does it flawlessly π
π¦ SYNOPSIS π¦
int bnx2x_func_init_cmn_chip (struct bnx2x *bp , const struct
bnx2x_func_sp_drv_ops *drv );
look at her. returning an int and everything. main character energy fr fr π₯
π ARGUMENTS π
bpβ the device handle. your little handle-y bestie for the device. she's the one you're doing all this for πdrvβ okay so the original page literally leaves this one blank (no description, nothing, a whole empty line π). I'm not gonna make up a meaning for her, so just know she's aconst struct bnx2x_func_sp_drv_ops *and that's the tea. no cap. π«Ά
π DESCRIPTION π
So here's the situation, bestie: this function does the init HW thing when the current phase is FW_MSG_CODE_DRV_LOAD_COMMON_CHIP β
And then β the way that she does it β she initializes:
- the
COMMON_CHIPHW blocks - the
PORT-only HW blocks - and the
FUNCTION-only HW blocks
all three. not one, not two, three. she ate and left no crumbs π
π SEE ALSO π
the whole friend group π«Ά the kernel file lives at ./drivers/net/ethernet/broadcom/bnx2x/bnx2x_sp.c, and honestly, here's everyone she's linked with (all section 9, obviously, we're classy 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(9)bnx2x_func_reset_func(9)bnx2x_func_reset_port(9)bnx2x_func_reset_cmn(9)bnx2x_func_state_change(9)
like. that's the whole group chat. every single one of them. no gatekeeping πβ¨
lowkey a reminder bestie: this is a 9 page, i.e. Kernel API Manual β not your everyday user command, so don't go typing her into a shell and expecting a slay π
and that's the page!! π¦ sourced from ./drivers/net/ethernet/broadco... (yes it's truncated, that's how she came, don't come for me π), from October 2026, living in the Kernel API Manual as bnx2x_func_init_cmn_chip(9). mwah, ily, go init some 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