ice_read_nvm_sr_copy(9)
π ice_read_nvm_sr_copy β like, the whole lore
okay so this is ice_read_nvm_sr_copy(9) from the Kernel API Manual (section 9, bestie β kernel internals, we're in the big leagues now β¨). She's a little function that goes and grabs a single word out of the Shadow RAM copy sitting in the NVM bank. Cute, right? π
β¨ NAME β¨
ice_read_nvm_sr_copy β read a word from the Shadow RAM copy in the NVM bank π¦
πΈ SYNOPSIS πΈ
int ice_read_nvm_sr_copy (struct ice_hw *hw , enum ice_bank_select bank
, u32 offset , u16 *data );
π ARGUMENTS π
hwβ pointer to the HW structure π«Ά literally the hardware handshake, can't do anything without herbankβ tells us whether we're reading from the active or the inactive NVM module π pick your fighteroffsetβ offset into the Shadow RAM copy that we're reading, and bestie it's measured in words (not bytes, don't come at me) πdataβ the storage where the returned word value lands β she comes back through this pointer, that's the whole vibe
π¦ DESCRIPTION π¦
So what does she actually do? She reads the specified word from the copy of the Shadow RAM that lives inside the specified NVM module. That's it. That's the job. Slay. π
lowkey important note π§: the Shadow RAM copy is always located after the CSS header, and it's aligned to 64-byte (32-word) offsets. no cap, that's just how she's laid out.
π₯ SEE ALSO π₯
Kernel file ./drivers/net/ethernet/intel/ice/ice_nvm.c β go read the source, iykyk π
And the whole friend group, fr fr:
ice_aq_read_nvm(9)ice_read_flat_nvm(9)ice_aq_update_nvm(9)ice_aq_erase_nvm(9)ice_read_sr_word(9)ice_acquire_nvm(9)ice_release_nvm(9)ice_get_flash_bank_offset(9)ice_read_flash_module(9)ice_read_nvm_module(9)ice_read_netlist_module(9)ice_get_pfa_module_tlv(9)ice_read_pba_string(9)ice_get_nvm_ver_info(9)ice_get_inactive_nvm_ver(9)ice_get_orom_civd_data(9)ice_get_orom_ver_info(9)ice_get_inactive_orom_ver(9)ice_get_netlist_info(9)ice_get_inactive_netlist_ver(9)ice_discover_flash_size(9)ice_read_sr_pointer(9)ice_read_sr_area_size(9)ice_determine_active_flash_banks(9)ice_get_nvm_css_hdr_len(9)ice_determine_css_hdr_len(9)ice_init_nvm(9)ice_nvm_validate_checksum(9)ice_nvm_write_activate(9)ice_aq_nvm_update_empr(9)
okay that's the whole page, mwah π this came from ./drivers/net/ethernet/intel/ice, dated October 2026 β main character documentation energy, periodt. ππ
π¦ 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