i40e_read_nvm_buffer(9)
π i40e_read_nvm_buffer(9) β the Kernel API Manual glow-up π
okay so bestie, welcome to the i40e_read_nvm_buffer page from the Kernel API Manual. this one's a little function with big "reads Shadow RAM buffer and acquires the lock if necessary" energy, and honestly? it ate. let's get into it β¨
πΈ NAME πΈ
i40e_read_nvm_buffer β literally reads the Shadow RAM buffer, and it will acquire the lock if it has to. no cap, that's the whole job description. π
π¦ SYNOPSIS π¦
int i40e_read_nvm_buffer (struct i40e_hw *hw , u16 offset , u16 *words ,
u16 *data );
look at her. four args, one int return, zero drama. periodt. π
π ARGUMENTS π
hwβ pointer to the HW structure. your hardware bestie, the main character of this whole operation πoffsetβ offset of the Shadow RAM word to read, and the valid range is0x000000β0x001FFF. stay in your lane, girlies π₯wordsβ this one's doing double duty, lowkey iconic: (in) number of words to read; (out) number of words actually read π«Άdataβ the words read from the Shadow RAM. the actual payload, the reason we're all here π«
β¨ DESCRIPTION β¨
so here's the vibe: it reads 16 bit words (that's the data buffer, bestie) from the SR using the i40e_read_nvm_srrd method. π§
and the way that it works β the buffer read is preceded by the NVM ownership take and followed by the release. like, gets the lock, does the reading, gives the lock back. responsible queen behavior, we love to see it π
π SEE ALSO π
- Kernel file
./drivers/net/ethernet/intel/i40e/i40e_nvm.cβ that's home base π i40e_init_nvm(9)i40e_acquire_nvm(9)i40e_release_nvm(9)i40e_poll_sr_srctl_done_bit(9)i40e_read_nvm_word_srctl(9)i40e_read_nvm_aq(9)i40e_read_nvm_word_aq(9)__i40e_read_nvm_word(9)i40e_read_nvm_word(9)i40e_read_nvm_module_data(9)i40e_read_nvm_buffer_srctl(9)i40e_read_nvm_buffer_aq(9)__i40e_read_nvm_buffer(9)i40e_write_nvm_aq(9)i40e_calc_nvm_checksum(9)i40e_update_nvm_checksum(9)i40e_validate_nvm_checksum(9)i40e_nvmupd_validate_command(9)i40e_nvmupd_nvm_erase(9)i40e_nvmupd_nvm_write(9)i40e_nvmupd_nvm_read(9)i40e_nvmupd_exec_aq(9)i40e_nvmupd_get_aq_result(9)i40e_nvmupd_get_aq_event(9)i40e_nvmupd_state_init(9)i40e_nvmupd_state_reading(9)i40e_nvmupd_state_writing(9)i40e_nvmupd_command(9)i40e_nvmupd_clear_wait_state(9)i40e_nvmupd_check_wait_event(9)
like, that's the whole group chat. every single one of them. no skips, we don't leave anyone on read π
ngl bestie, that's the entire page β every arg, every function in the SEE ALSO list, every word count. nothing got cut. you're welcome π
and that's a wrap! π this one lives in ./drivers/net/ethernet/intel/i40e, dated October 2026, and it's page i40e_read_nvm_buffer(9) of the Kernel API Manual β mwah, see you in the next man page, bestie ππ
π¦ 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