ENUM IWL_HCMD_DATAFLAG(9)
π enum iwl_hcmd_dataflag(9) β like, the Kernel API Manual page, bestie β¨
okay so picture this: you're deep in the iwlwifi driver, the kernel API manual is open, and you find this little enum. it's giving "small but crucial" energy, and honestly? we're obsessed. this is the manual page for enum iwl_hcmd_dataflag, and it's literally the flag for each one of the chunks of the command. periodt. π
πΈ NAME πΈ
enum iwl_hcmd_dataflag β the flag for each one of the chunks of the command π¦
β¨ SYNOPSIS β¨
enum iwl_hcmd_dataflag {
IWL_HCMD_DFL_NOCOPY ,
IWL_HCMD_DFL_DUP
};
like, that's it. two constants. two icons. no cap. π
π Constants π
IWL_HCMD_DFL_NOCOPYβ okay so by default the command gets copied to the host command's ring. the transport layer doesn't map the command's buffer to DMA β instead it copies it to a previously allocated DMA buffer. this flag is the "not me, don't copy me" of the situation: it tells the transport layer not to copy the command, and to map the existing buffer (the one that's passed in) instead. it saves thememcpyand it lets commands that are bigger than the fixed buffer be submitted. iconic behaviour, truly. π«
β οΈ heads up though: a TFD entry after a NOCOPY one cannot be a normal copied one. that's just how it is, bestie. no notes. π
IWL_HCMD_DFL_DUPβ this one is only valid withoutNOCOPY. it duplicates the memory for this chunk internally and frees it again after the command completes. and ngl, this can (currently) be used only once per command. so don't get too comfy with it. π
β οΈ also: a TFD entry after a DUP one cannot be a normal copied one. same rule, different flag. π
π¦ SEE ALSO π¦
like, the whole friend group of related pages, fr fr:
- 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)
- 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_imr_data(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)
π reminder that this came out of./drivers/net/wireless/intel/i...(yes it's truncated, that's the source string, don't come for me π) and it's dated October 2026, page nameenum iwl_hcmd_dataflag(9). slay. go read the transport layer docs, bestie. iykyk. ππ«Ά
π¦ 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