i40e_read_nvm_aq(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– i40e_read_nvm_aq β€” read that Shadow RAM bestie ✨

okay so real quick β€” this page lives in the Kernel API Manual, and it's about one tiny legendary function that goes and fetches some Shadow RAM for you. no cap, it's giving "small function, big job" πŸ’…


🌸 NAME 🌸

i40e_read_nvm_aq β€” Read Shadow RAM. that's it. that's the whole vibe. πŸŽ€


✨ SYNOPSIS ✨

int i40e_read_nvm_aq (struct i40e_hw *hw , u8 module_pointer , u32
       offset , u16 words , void *data , bool last_command );

like, look at her. six whole arguments. main character energy fr fr πŸ‘‘


πŸ¦‹ ARGUMENTS πŸ¦‹

  • hw β€” pointer to the HW structure. yes the hardware struct, hand it over, she needs it 🫢
  • module_pointer β€” module pointer location in words from the NVM beginning. key word: from the NVM beginning, not from your module, iykyk πŸ“
  • offset β€” offset in words from module start. so this one counts from the module, not the NVM beginning. don't mix them up bestie πŸ™ˆ
  • words β€” number of words to read. how many we grabbing. πŸ’―
  • data β€” buffer with words to read to the Shadow RAM. the destination, the lil home for your words 🏠
  • last_command β€” tells the AdminQ that this is the last command. the "okay we're done here" flag, literally 🌈

πŸ’œ DESCRIPTION πŸ’œ

Reads a 16 bit words buffer to the Shadow RAM using the admin command.

that's the whole thing. 16-bit words, admin command, Shadow RAM, done. iconic behaviour, no notes πŸ’…βœ¨


πŸ”₯ SEE ALSO πŸ”₯

so like, the kernel file for this is ./drivers/net/ethernet/intel/i40e/i40e_nvm.c β€” go read it, it's right there πŸ“

and then there's the whole friend group, ok. the entire squad. here we go:

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_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_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)

that's thirty whole functions. she has a LOT of friends. ate. πŸ‘‘


mwah πŸ’‹ k bye β€” this page came from ./drivers/net/ethernet/intel/i40e, dated October 2026, and it's literally titled i40e_read_nvm_aq(9). go read some Shadow RAM for me bestie, you got this πŸ«ΆπŸ’–β­

πŸ“¦ where this page comes from