ixgbe_get_orom_civd_data(9)
π ixgbe_get_orom_civd_data(9) π
okay bestie, buckle up β this one lives in the Kernel API Manual, so you know it's legit. the function is ixgbe_get_orom_civd_data, and it's basically the girl who goes digging through the Option ROM to find the combo version info. she's thorough. she's got a checksum thing. we love her. π
β¨ NAME β¨
ixgbe_get_orom_civd_data β get the combo version information from Option ROM πΈ
π¦ SYNOPSIS π¦
int ixgbe_get_orom_civd_data (struct ixgbe_hw *hw , enum
ixgbe_bank_select bank , struct ixgbe_orom_civd_info *civd );
literally three args and a dream, no cap.
π ARGUMENTS π
hwβ pointer to the HW struct. like, the whole hardware situation, handed to you on a platter. π«Άbankβ whether to read from the active or inactive flash module. yes, you get to choose your fighter. βcivdβ storage for the Option ROM CIVD data. this is where the good stuff goes on success, so make sure it's ready to receive. π
π₯ DESCRIPTION π₯
so what does she actually do. she searches through the Option ROM flash contents β like, physically rummages around in there β to locate the CIVD data for the image. that's the whole mission. πβ¨
On success civd stores collected data. periodt. π
π RETURN π
she returns an int, and every value has a personality, so let's meet the cast:
-ENOMEMβ when cannot allocate memory. she tried, the memory said no. π-EDOMβ for checksum violation. the math did not math. π-ENODATAβ when cannot find proper data. nothing here babe, the vibes were off. π-EIOβ for faulty read. the read was giving nothing but problems. π₯0β on success. we slayed. ππ
π SEE ALSO π
she does not exist in a vacuum, bestie β she's part of a whole ecosystem. Kernel file ./drivers/net/ethernet/intel/ixgbe/ixgbe_e610.c, and honestly? the whole friend group:
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_read_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_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)
and that's the whole page, bestie π§π this one came out of ./drivers/net/ethernet/intel/i... (that path is literally truncated in the source, don't come for me π), stamped October 2026, from the Kernel API Manual β go read the actual source file ./drivers/net/ethernet/intel/ixgbe/ixgbe_e610.c if you want the real tea. mwah! ππ
π¦ 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