STRUCT IOSM_DEVLINK(9)
π struct iosm_devlink(9) π
okay so this is a page from the Kernel API Manual, and the star of the show is struct iosm_devlink β literally the IOSM devlink structure itself, no cap. it's giving "backstage pass to the whole devlink situation" and i'm obsessed. let's get into it π«Ά
β¨ NAME β¨
struct iosm_devlink β the IOSM Devlink structure. that's her. that's the whole vibe. π
π¦ SYNOPSIS π¦
bestie. look at this. it's a struct, so it's basically the friend group roster β every field is a member of the squad:
struct iosm_devlink {
struct iosm_devlink_sio devlink_sio;
struct iosm_pcie *pcie;
struct device *dev;
struct devlink *devlink_ctx;
struct iosm_flash_params param;
struct iosm_ebl_ctx_data ebl_ctx;
struct iosm_coredump_file_info *cd_file_info;
struct devlink_region_ops
iosm_devlink_mdm_coredump[IOSM_NOF_CD_REGION];
struct devlink_region *cd_regions[IOSM_NOF_CD_REGION];
};
(and yes, that struct devlink_region_ops line wraps down onto iosm_devlink_mdm_coredump[IOSM_NOF_CD_REGION]; β that's just how she's written, don't come for her π)
π Members π
okay so every single field, one by one, no skipping, we're doing the full tour π§
devlink_sioβ the SIO instance that handles read/write functionality. she does the reading and the writing, highkey multi-talented. πβοΈpcieβ a pointer to the PCIe component. just pointing at it, living its life. πβ¨devβ a pointer to thedevicestruct. classic. iconic. we love a device pointer. πdevlink_ctxβ a pointer to the devlink context. the context is right there, bestie. π«Άparamβ the params required for flashing. important stuff, put some respect on it. π₯ebl_ctxβ the data to be read and written to the Modem. modem says hi. π‘cd_file_infoβ coredump file info.cdhere is coredump, not a change directory moment, iykyk. πiosm_devlink_mdm_coredumpβ the region ops for coredump collection. it's an array, sizedIOSM_NOF_CD_REGION, and it does the collecting. ποΈcd_regionsβ the coredump regions themselves, also an array of sizeIOSM_NOF_CD_REGION. matching set, slay. β¨
π SEE ALSO π
go read these next, bestie, they're all in the kernel file ./drivers/net/wwan/iosm/iosm_ipc_devlink.h and the family is large:
enum iosm_devlink_param_id(9)enum iosm_rpsi_cmd_code(9)enum iosm_flash_comp_type(9)struct iosm_devlink_sio(9)struct iosm_flash_params(9)struct iosm_devlink_image(9)struct iosm_ebl_ctx_data(9)struct iosm_coredump_file_info(9)union iosm_rpsi_param_u(9)struct iosm_rpsi_cmd(9)
π also flagged up top as a see-also: the kernel file./drivers/net/wwan/iosm/iosm_ipc_devlink.henumβ that's where this whole situationship lives.
and that's the page, bestie!! π it lives over in ./drivers/net/wwan/iosm, it's dated October 2026, and it goes by struct iosm_devlink(9). go off, king. ππ
π¦ 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