ixgbe_aci_read_nvm(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… ixgbe_aci_read_nvm(9) β€” like, the NVM-reading girlie ✨

okay so bestie, welcome to the Kernel API Manual and today's main character is ixgbe_aci_read_nvm πŸ’– she's a little function with one job and she does it immaculately. the whole thing is about reading NVM, and yes we're gonna get into it 🫢


🌸 NAME 🌸

ixgbe_aci_read_nvm β€” read NVM πŸ“–βœ¨

literally that's it. read NVM. iconic, concise, no notes πŸ‘‘


πŸ¦‹ SYNOPSIS πŸ¦‹

int ixgbe_aci_read_nvm (struct ixgbe_hw *hw , u16 module_typeid , u32
offset , u16 length , void *data , bool last_command , bool
read_shadow_ram );

seven arguments, one int coming back at you, and she ate πŸ’…


πŸŽ€ ARGUMENTS πŸŽ€

  • hw β€” pointer to the HW struct 🧸 like, the hardware context, the whole vibe, you need her.
  • module_typeid β€” module pointer location in words from the NVM beginning ✨ (words, bestie, not bytes β€” note it).
  • offset β€” byte offset from the module beginning πŸ“ relative to wherever the module starts.
  • length β€” length of the section to be read (in bytes from the offset) 🌸 how much we're grabbing, counted in bytes, starting from offset.
  • data β€” command buffer (size [bytes] = length) πŸ’Ύ so the buffer gotta be length bytes big, fr fr, do not undersize her πŸ™ˆ
  • last_command β€” tells if this is the last command in a series 🏁 like, "bestie this is the finale" for a batch of commands.
  • read_shadow_ram β€” tell if this is a shadow RAM read πŸ‘» exactly what it sounds like, the shadow RAM flag.

⭐ DESCRIPTION ⭐

Read the NVM using ACI command (0x0701) πŸ”₯ that's the whole description, she's lowkey mysterious but the hex is right there: 0x0701. write it down, iykyk πŸ’œ


🌈 RETURN 🌈

the exit code of the operation πŸ’« so like, check her return value, bestie β€” she's telling you how it went.


πŸ‘‘ SEE ALSO πŸ‘‘

the whole friend group, no cap 🫢 this is the kernel file ./drivers/net/ethernet/intel/ixgbe/ixgbe_e610.c and every single one of these icons:

ixgbe_should_retry_aci_send_cmd_execute(9),
ixgbe_aci_send_cmd_execute(9), ixgbe_aci_send_cmd(9),
ixgbe_aci_check_event_pending(9), ixgbe_aci_get_event(9),
ixgbe_fill_dflt_direct_cmd_desc(9), ixgbe_aci_get_fw_ver(9),
ixgbe_aci_req_res(9), ixgbe_aci_release_res(9), ixgbe_acquire_res(9),
ixgbe_release_res(9), ixgbe_parse_e610_caps(9),
ixgbe_parse_valid_functions_cap(9), ixgbe_parse_vf_dev_caps(9),
ixgbe_parse_vsi_dev_caps(9), ixgbe_parse_fdir_dev_caps(9),
ixgbe_parse_dev_caps(9), ixgbe_parse_vf_func_caps(9),
ixgbe_get_num_per_func(9), ixgbe_parse_vsi_func_caps(9),
ixgbe_parse_func_caps(9), ixgbe_aci_list_caps(9),
ixgbe_discover_dev_caps(9), ixgbe_discover_func_caps(9),
ixgbe_get_caps(9), ixgbe_aci_disable_rxen(9), ixgbe_aci_get_phy_caps(9),
ixgbe_copy_phy_caps_to_cfg(9), ixgbe_aci_set_phy_cfg(9),
ixgbe_aci_set_link_restart_an(9), ixgbe_is_media_cage_present(9),
ixgbe_get_media_type_from_phy_type(9), ixgbe_update_link_info(9),
ixgbe_get_link_status(9), ixgbe_aci_get_link_info(9),
ixgbe_aci_set_event_mask(9), ixgbe_configure_lse(9),
ixgbe_start_hw_e610(9), ixgbe_aci_set_port_id_led(9),
ixgbe_get_media_type_e610(9), ixgbe_setup_link_e610(9),
ixgbe_check_link_e610(9), ixgbe_get_link_capabilities_e610(9),
ixgbe_cfg_phy_fc(9), ixgbe_setup_fc_e610(9), ixgbe_fc_autoneg_e610(9),
ixgbe_disable_rx_e610(9), ixgbe_fw_recovery_mode_e610(9),
ixgbe_fw_rollback_mode_e610(9), ixgbe_init_phy_ops_e610(9),
ixgbe_identify_phy_e610(9), ixgbe_setup_eee_e610(9),
ixgbe_identify_module_e610(9), ixgbe_setup_phy_link_e610(9),
ixgbe_set_phy_power_e610(9), ixgbe_enter_lplu_e610(9),
ixgbe_init_eeprom_params_e610(9), ixgbe_aci_get_netlist_node(9),
ixgbe_acquire_nvm(9), ixgbe_release_nvm(9), ixgbe_aci_erase_nvm(9),
ixgbe_aci_update_nvm(9), ixgbe_nvm_write_activate(9),
ixgbe_nvm_validate_checksum(9), ixgbe_discover_flash_size(9),
ixgbe_read_sr_base_address(9), ixgbe_read_sr_area_size(9),
ixgbe_determine_active_flash_banks(9), ixgbe_get_flash_bank_offset(9),
ixgbe_read_flash_module(9), ixgbe_read_nvm_module(9),
ixgbe_read_netlist_module(9), ixgbe_read_orom_module(9),
ixgbe_get_nvm_css_hdr_len(9), ixgbe_read_nvm_sr_copy(9),
ixgbe_get_nvm_srev(9), ixgbe_get_orom_civd_data(9),
ixgbe_get_orom_srev(9), ixgbe_get_orom_ver_info(9),
ixgbe_get_inactive_orom_ver(9), ixgbe_get_nvm_ver_info(9),
ixgbe_get_inactive_nvm_ver(9), ixgbe_get_active_nvm_ver(9),
ixgbe_get_netlist_info(9), ixgbe_get_inactive_netlist_ver(9),
ixgbe_get_flash_data(9), ixgbe_aci_nvm_update_empr(9),
ixgbe_read_sr_word_aci(9), ixgbe_read_flat_nvm(9),
ixgbe_read_sr_buf_aci(9), ixgbe_read_ee_aci_e610(9),
ixgbe_read_ee_aci_buffer_e610(9),
ixgbe_validate_eeprom_checksum_e610(9), ixgbe_reset_hw_e610(9),
ixgbe_get_pfa_module_tlv(9), ixgbe_read_pba_string_e610(9)

that's the whole roster, bestie. go read 'em. every single one of them. πŸ’€βœ¨


ngl this page is short but she's doing the work β€” that 0x0701 is the moment, the whole ACI command, the main character energy 🌟

and that's the page πŸŽ€ this lil beauty comes from ./drivers/net/ethernet/intel/i... (yeah the path got cut off in the footer, that's literally what it says, don't come for me πŸ™ˆ), dated October 2026, and the footer signs off with ixgbe_aci_read_nvm(9) one more time for the people in the back πŸ’œ bye bestie, go read that NVM πŸ¦‹πŸ“

πŸ“¦ where this page comes from