i10nm_get_imc_num(9)
π i10nm_get_imc_num(9) π
okay bestie, welcome to the Kernel API Manual β¨ β this one's a little function from the kernel's EDAC corner and honestly? she's doing more than she looks like she's doing. let's get into it π«Ά
πΈ NAME πΈ
i10nm_get_imc_num β get the number of present DDR memory controllers π
β¨ SYNOPSIS β¨
int i10nm_get_imc_num (struct res_config *cfg );
π ARGUMENTS π
cfgβ the pointer to the structure of EDAC resource configurations. that's it, that's the whole argument list, she travels light π¦
π DESCRIPTION π
ok so here's the tea, and it genuinely depends on which CPU you're running β
- For Granite Rapids CPUs: the number of present DDR memory controllers is read at runtime, and that runtime value overwrites the value statically configured in
cfg->ddr_imc_num. so like, the static number gets gently pushed aside and the live one takes main character energy π₯ - For other CPUs: the number of present DDR memory controllers is just the statically configured value in
cfg->ddr_imc_num. no runtime reading, no drama, it is what it is π
so basically: Granite Rapids gets the fresh dynamic count, everyone else keeps the one that was already written into the config. periodt π
β RETURN β
0on success π< 0on failure π
ngl, that's the entire return contract β no secret bonus values, no in-between, just success or a negative number telling you it went sideways.
π¦ SEE ALSO π¦
- Kernel file
./drivers/edac/i10nm_base.c get_gnr_mdev(9)get_ddr_munit(9)i10nm_imc_absent(9)
go read those too, they're the rest of the friend group π
and that's the whole page!! sign-off time: this cutie lives in ./drivers/edac, hails from October 2026, and answers to i10nm_get_imc_num(9) β mwah ππ§
π¦ 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