gpiochip_generic_request(9)
π gpiochip_generic_request(9) β like, the kernel API manual, but make it make sense
okay so bestie, welcome to the Kernel API Manual entry for gpiochip_generic_request π this one's a little guy with a big job: it asks for the gpio function for a pin. that's it. that's the whole vibe. β¨
β¨ NAME β¨
gpiochip_generic_request β request the gpio function for a pin π«Ά
πΈ SYNOPSIS πΈ
int gpiochip_generic_request (struct gpio_chip *gc , unsigned int offset );
literally just two args, no cap. look at her go π
π¦ ARGUMENTS π¦
gcβ thegpio_chipthat owns the GPIO π like, the main character of this whole situation.offsetβ the offset of the GPIO you wanna request for the GPIO function. it's giving "which pin tho" energy π
π RETURN π
0 on success β¨ β or a negative errno on failure π (bestie, always check the return value, i'm begging).
π SEE ALSO π
okay this list is long long, so buckle up π§ grab a snack, we're going in, in the exact order the page gives 'em:
gpio_to_desc(9),gpio_device_get_desc(9),desc_to_gpio(9),gpiod_hwgpio(9)gpiod_to_chip(9),gpiod_to_gpio_device(9)gpio_device_get_base(9),gpio_device_get_label(9),gpio_device_get_chip(9)gpiochip_find_base_unlocked(9),gpiod_is_equal(9),gpiod_get_direction(9),gpiod_is_single_ended(9)gpiochip_query_valid_mask(9),gpiochip_get_data(9),gpiochip_remove(9)gpio_device_find(9),gpio_device_find_by_label(9),gpio_device_find_by_fwnode(9)gpio_device_get(9),gpio_device_put(9),gpio_device_to_device(9)gpiochip_set_hierarchical_irqchip(9),gpiochip_irq_domain_activate(9),gpiochip_irq_domain_deactivate(9),gpiochip_irq_map(9)gpiochip_add_irqchip(9),gpiochip_irqchip_remove(9),gpiochip_irqchip_add_domain(9)gpiochip_generic_free(9),gpiochip_generic_config(9)gpiochip_add_pingroup_range(9),gpiochip_add_pin_range_with_pins(9),gpiochip_remove_pin_ranges(9)gpiochip_dup_line_label(9),gpiochip_request_own_desc(9),gpiochip_free_own_desc(9)gpio_set_debounce_timeout(9),gpiod_direction_input(9),gpiod_direction_output_raw(9),gpiod_direction_output(9)gpiod_enable_hw_timestamp_ns(9),gpiod_disable_hw_timestamp_ns(9)gpiod_set_config(9),gpiod_set_debounce(9),gpiod_set_transitory(9)gpiod_is_active_low(9),gpiod_toggle_active_low(9)gpiod_get_raw_value(9),gpiod_get_value(9),gpiod_get_raw_array_value(9),gpiod_get_array_value(9)gpiod_set_raw_value(9),gpiod_set_value_nocheck(9),gpiod_set_value(9),gpiod_set_raw_array_value(9),gpiod_set_array_value(9)gpiod_cansleep(9),gpiod_set_consumer_name(9),gpiod_is_shared(9)gpiod_to_irq(9),gpiochip_lock_as_irq(9),gpiochip_unlock_as_irq(9)gpiod_get_raw_value_cansleep(9),gpiod_get_value_cansleep(9),gpiod_get_raw_array_value_cansleep(9),gpiod_get_array_value_cansleep(9)gpiod_set_raw_value_cansleep(9),gpiod_set_value_cansleep(9),gpiod_set_raw_array_value_cansleep(9)gpiod_add_lookup_tables(9),gpiod_set_array_value_cansleep(9),gpiod_add_lookup_table(9),gpiod_remove_lookup_table(9)fwnode_gpiod_get_index(9),gpiod_count(9),gpiod_get(9),gpiod_get_optional(9)gpiod_configure_flags(9),gpiod_get_index(9),gpiod_get_index_optional(9)gpiod_hog(9),gpiochip_free_hogs(9)gpiod_get_array(9),gpiod_get_array_optional(9),gpiod_put(9),gpiod_put_array(9)
and yeah, the kernel file is ./drivers/gpio/gpiolib.c β that's where the magic lives πβ¨
π fr fr tho: this is the kernel API manual, so it's talking to driver people, not to your terminal. iykyk.
okay that's the whole page, go touch some GPIOs bestie πΈπ¦ and remember: this lil doc lives in ./drivers/gpio, it's part of the Kernel API Manual, and it's dated October 2026 β mwah, slay, periodt π
π
π¦ 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