ipc_pcie_addr_map(9)
π ipc_pcie_addr_map β a kernel API manual moment (section 9, bestie)
okay so real talk, this is ipc_pcie_addr_map from the Kernel API Manual, section 9, and it's genuinely one of those little functions that's doing the absolute most behind the scenes β¨
πΈ NAME πΈ
ipc_pcie_addr_map β bestie, what it does is take the kernel's virtual address and map it over to either the IOVA address space or the Physical address space (pick your fighter π
), and then that mapping gets stashed away in the skb's cb. that's the whole vibe. no cap.
π SYNOPSIS π
int ipc_pcie_addr_map (struct iosm_pcie *ipc_pcie , unsigned char *data
, size_t size , dma_addr_t *mapping , int direction );
like, look at her. iconic signature. five arguments, one int return, zero notes. π¦
β¨ ARGUMENTS β¨
ipc_pcieβ pointer tostruct iosm_pcie. she's the main character, everything routes through her πdataβ the skb mem containing the data. yes, that skb. the one whosecbwe're about to fill π«Άsizeβ the data size. how much data we're talking about, fr frmappingβ the DMA mapping address. this is where the mapped address lands π«directionβ the data direction. which way the data's going, iykyk π
π₯ RETURN π₯
0on success π β slay, it worked- a failure value on error π β not slay, something went wrong
no in-between, bestie. it's either the 0 glow-up or the failure arc. π
π SEE ALSO π
first up, the kernel file itself, go read it:
./drivers/net/wwan/iosm/iosm_ipc_pcie.h
and then the whole friend group, because of course there's a whole friend group:
enum ipc_pcie_sleep_state(9)struct iosm_pcie(9)struct ipc_skb_cb(9)enum ipc_ul_usr_op(9)ipc_pcie_addr_unmap(9)ipc_pcie_alloc_skb(9)ipc_pcie_alloc_local_skb(9)ipc_pcie_kfree_skb(9)ipc_pcie_check_data_link_active(9)ipc_pcie_suspend(9)ipc_pcie_resume(9)ipc_pcie_check_aspm_enabled(9)ipc_pcie_config_aspm(9)
like, that's the group chat. they all get it. π
and that's the page! π§ source lives in <pink>./drivers/net/wwan/iosm</pink>, dated October 2026, and she's filed under ipc_pcie_addr_map(9) β mwah, kiss the manual, bye 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