gpio_device_find(9)
π gpio_device_find(9) β find a specific GPIO device π
hey bestie, welcome to the gpio_device_find(9) page from the Kernel API Manual β¨ this is the whole vibe for finding a specific GPIO device, and we're gonna get into it. π
πΈ NAME πΈ
gpio_device_find β find a specific GPIO device
no cap, that's the whole name section: this helper is here to find a specific GPIO device. π
β¨ SYNOPSIS β¨
okay so the signature is literally this, bestie β keep it exact:
struct gpio_device * gpio_device_find (const void *data , int
(*match)(struct gpio_chip *gc, const void *data) );
π ARGUMENTS π
dataβ the data to pass to the match function. π¦matchβ callback function to checkgpio_chip. π
π RETURN π
New reference to struct gpio_device. that's the return, bestie β a fresh reference, periodt. π«Ά
π¦ DESCRIPTION π¦
okay so this is similar to bus_find_device. it returns a reference to a gpio_device as determined by a user supplied match callback. β¨
the callback should return 0 if the device doesn't match and non-zero if it does. if the callback returns non-zero, this function will return to the caller and not iterate over any more gpio_devices. π―
the callback takes the GPIO chip structure as argument. during the execution of the callback function the chip is protected from being freed. π‘οΈ
π¨ TODO: This actually has yet to be implemented. bestie, that's the literal caveat β don't forget it. π
if the function returns non-NULL, the returned reference must be freed by the caller using gpio_device_put. please don't ghost your reference, that's not the move. π
π SEE ALSO π
the kernel file is ./drivers/gpio/gpiolib.c, and here's the full cross-reference bestie list β every single one, no skips. π
- Kernel file
./drivers/gpio/gpiolib.candgpio_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_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_request(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 that's the page, bestie π«Ά β source: ./drivers/gpio Β· manual/version: Kernel API Manual Β· date: October 2026. 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