regmap_init_mmio(9)
π regmap_init_mmio(9) β Kernel API Manual π
okay so bestie, welcome to the Kernel API Manual, and today's main character is regmap_init_mmio β literally the glow-up ritual that turns your tiny baby register map into a fully functioning icon β¨
πΈ NAME πΈ
regmap_init_mmio β Initialise register map
like, it's giving "wake up babe, new regmap just dropped" π
π¦ SYNOPSIS π¦
regmap_init_mmio (dev , regs , config );
no cap, that's the whole invocation. three lil arguments and you're off π«Ά
β¨ ARGUMENTS β¨
devβ the Device that will be interacted with. this is the whole entire point of the operation, she's the one actually being interacted with πregsβ Pointer to memory-mapped IO region. yes. mmio. it's in the name, iykyk π§configβ Configuration for register map. your settings, your vibes, your rules π
π₯ DESCRIPTION π₯
So here's the tea β β the return value will be an ERR_PTR on error, or a valid pointer to a struct regmap if everything slayed. That's it. That's the deal. π
Also lowkey important: it implies 'fast_io'. Like, it just does that. periodt. β
bestie please check your return value π β anERR_PTRis literally the function telling you it did not eat. use yourIS_ERR()checks, i'm begging π₯Ί
π SEE ALSO π
okay this list is LONG and we're gonna get through all of it because every single one of these is iconic in her own right π
Kernel file ./include/linux/regmap.h π«
struct reg_default(9)struct reg_sequence(9)regmap_read_poll_timeout(9)regmap_read_poll_timeout_atomic(9)regmap_field_read_poll_timeout(9)struct regmap_range(9)struct regmap_access_table(9)struct regmap_config(9)struct regmap_range_cfg(9)struct regmap_sdw_mbq_cfg(9)struct regmap_bus(9)regmap_init(9)regmap_init_i2c(9)regmap_init_mdio(9)regmap_init_sccb(9)regmap_init_slimbus(9)regmap_init_spi(9)regmap_init_spmi_base(9)regmap_init_spmi_ext(9)regmap_init_w1(9)regmap_init_mmio_clk(9)regmap_init_ac97(9)regmap_init_sdw(9)regmap_init_sdw_mbq(9)regmap_init_sdw_mbq_cfg(9)regmap_init_i3c(9)regmap_init_spi_avmm(9)regmap_init_fsi(9)devm_regmap_init(9)devm_regmap_init_i2c(9)devm_regmap_init_mdio(9)devm_regmap_init_sccb(9)devm_regmap_init_spi(9)devm_regmap_init_spmi_base(9)devm_regmap_init_spmi_ext(9)devm_regmap_init_w1(9)devm_regmap_init_mmio_clk(9)devm_regmap_init_mmio(9)devm_regmap_init_ac97(9)devm_regmap_init_sdw(9)devm_regmap_init_sdw_mbq(9)devm_regmap_init_sdw_mbq_cfg(9)devm_regmap_init_slimbus(9)devm_regmap_init_i3c(9)devm_regmap_init_spi_avmm(9)devm_regmap_init_fsi(9)struct reg_field(9)struct regmap_irq_type(9)struct regmap_irq(9)struct regmap_irq_chip(9)
not me listing all fifty-ish of these π but like, they're all family, we don't leave anyone out π
<div align="center">πΈ π¦ π π¦ πΈ</div>
k bye bestie, this page lives in ./include/linux and the version/date stamp on it is October 2026 β so mark your calendar, the regmap init is eternal βππ
π¦ 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