pinctrl_register_mappings(9)
π pinctrl_register_mappings(9) β from the Kernel API Manual, bestie β¨
okay so. picture this: you're deep in the kernel, you've got a whole table of pin mappings, and literally nobody knows about them yet. bestie, that's the whole plot. this page is the pinctrl_register_mappings origin story and honestly it's giving main character energy π
β¨ NAME β¨
pinctrl_register_mappings β register a set of pin controller mappings π¦
like, you show up with your mappings table and the pin control core is like "say less, they're mine now."
πΈ SYNOPSIS πΈ
int pinctrl_register_mappings (const struct pinctrl_map *maps , unsigned
int num_maps );
the way that function signature ate and left no crumbs π₯ returns an int, bestie β don't forget that part.
π ARGUMENTS π
mapsβ the pincontrol mappings table to register. and here's the tea π«: the pinctrl-core keeps a reference to the passed in maps, so they should_not_be marked with__initdata. like, no cap, if you mark them with__initdatayou're setting yourself up for a bad time. the underscores around_not_are there because the kernel devs are dramatic and correct πnum_mapsβ the number of maps in the mapping table. just a count. a little integer doing its little job π count your maps, bestie, don't guess.
π₯ SEE ALSO π₯
kernel file ./drivers/pinctrl/core.c β that's the icon, the legend, the moment π
and now the full roll call, no one left behind, every single one of them π:
pinctrl_provide_dummies(9)get_pinctrl_dev_from_devname(9)pin_get_from_name(9)pin_get_name(9)gpio_to_pin(9)pinctrl_match_gpio_range(9)pinctrl_ready_for_gpio_range(9)pinctrl_get_device_gpio_range(9)pinctrl_add_gpio_range(9)pinctrl_find_gpio_range_from_pin(9)pinctrl_remove_gpio_range(9)pinctrl_generic_get_group_count(9)pinctrl_generic_get_group_name(9)pinctrl_generic_get_group_pins(9)pinctrl_generic_get_group(9)pinctrl_generic_add_group(9)pinctrl_generic_remove_group(9)pinctrl_generic_free_groups(9)pinctrl_get_group_selector(9)pinctrl_gpio_request(9)pinctrl_gpio_free(9)pinctrl_gpio_direction_input(9)pinctrl_gpio_direction_output(9)pinctrl_gpio_set_config(9)pinctrl_gpio_get_config(9)pinctrl_get(9)pinctrl_release(9)pinctrl_put(9)pinctrl_lookup_state(9)pinctrl_commit_state(9)pinctrl_select_state(9)devm_pinctrl_get(9)devm_pinctrl_put(9)pinctrl_unregister_mappings(9)devm_pinctrl_register_mappings(9)pinctrl_force_sleep(9)pinctrl_force_default(9)pinctrl_init_done(9)pinctrl_select_default_state(9)pinctrl_pm_select_default_state(9)pinctrl_pm_select_init_state(9)pinctrl_pm_select_sleep_state(9)pinctrl_pm_select_idle_state(9)pinctrl_init_controller(9)pinctrl_register(9)pinctrl_register_and_init(9)pinctrl_unregister(9)devm_pinctrl_register(9)devm_pinctrl_register_and_init(9)
π«Ά friendly reminder before you go:mapsstays referenced by the core, so_not___initdata. iykyk. that's the whole vibe check of this page and it passed π
and that's the page, bestie π straight out of ./drivers/pinctrl, dated October 2026, and yeah β it's pinctrl_register_mappings(9) all the way down. slay πβ¨π
π¦ 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