STRUCT IWL_IMR_DATA(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– struct iwl_imr_data β€” the Kernel API Manual, bestie edition πŸ’–

okay so listen. this page is from the Kernel API Manual, and it's all about struct iwl_imr_data β€” literally the imr dram data used during the debug process 🫢 that's it, that's the whole vibe. it's giving "small struct, big debug energy" ✨


✨ NAME ✨

struct iwl_imr_data β€” imr dram data used during debug process πŸ’…


πŸŽ€ SYNOPSIS πŸŽ€

struct iwl_imr_data {
    u32 imr_enable;
    u32 imr_size;
    u32 sram_addr;
    u32 sram_size;
    u32 imr2sram_remainbyte;
    u64 imr_curr_addr;
    __le64 imr_base_addr;
 };

no cap, that's the whole struct, every field accounted for, not one dropped πŸ”₯


🌸 Members 🌸

okay bestie, field by field, let's go πŸ‘‘

  • imr_enable β€” the imr enable status, and guess what, it's received from fw. that's it. that's the field πŸ’«
  • imr_size β€” the imr dram size, also received from fw. the fw is really out here feeding us all the size info fr fr πŸ“
  • sram_addr β€” the sram address, straight from the debug tlv πŸ”
  • sram_size β€” the sram size, also from the debug tlv. twins! 🧚
  • imr2sram_remainbyte β€” the size remained after each dma transfer. lowkey the "how much is left" field, iconic behaviour 😭
  • imr_curr_addr β€” the current dst address used during dma transfer. main character of the transfer loop, honestly πŸ’…
  • imr_base_addr β€” the imr address received from fw. third fw-sourced field, the fw is carrying this struct ngl πŸ‘‘

πŸ¦‹ SEE ALSO πŸ¦‹

the whole friend group, present and accounted for, no one left behind πŸ’œ

  • Kernel file ./drivers/net/wireless/intel/iwlwifi/iwl-trans.h
  • Transport layer - what is it ?(9)
  • Life cycle of the transport layer(9)
  • enum CMD_MODE(9)
  • struct iwl_device_cmd(9)
  • struct iwl_device_tx_cmd(9)
  • enum iwl_hcmd_dataflag(9)
  • struct iwl_host_cmd(9)
  • enum iwl_trans_status(9)
  • struct iwl_dump_sanitize_ops(9)
  • struct iwl_trans_config(9)
  • struct iwl_trans_rxq_dma_data(9)
  • struct iwl_pnvm_image(9)
  • enum iwl_trans_state(9)
  • Platform power management(9)
  • enum iwl_ini_cfg_state(9)
  • struct iwl_dram_data(9)
  • struct iwl_dram_regions(9)
  • struct iwl_fw_mon(9)
  • struct iwl_self_init_dram(9)
  • struct iwl_pc_data(9)
  • struct iwl_trans_debug(9)
  • struct iwl_trans_info(9)
  • struct iwl_trans(9)
  • iwl_trans_resched_with_nic_access(9)

ngl the source line got a lil truncated in the original and it just says ./drivers/net/wireless/intel/i... β€” that's literally how it's printed, so we're keeping it exactly like that, no guessing at the rest of the path πŸ™ˆ

🌸 that's the page!! mwah πŸ’‹ this cutie dropped in October 2026, lives under ./drivers/net/wireless/intel/i..., and is officially titled struct iwl_imr_data(9) β€” go read the whole transport layer friend group next, iykyk πŸ’–βœ¨πŸŽ€

πŸ“¦ where this page comes from