gpiod_set_array_value(9)
π gpiod_set_array_value(9) β the kernel API manual, bestie edition
okay so, before we even start: this is a page from the Kernel API Manual, section 9, and the whole thing is about gpiod_set_array_value. yes, the array one. the group-chat version of "set a value" π
β¨ NAME β¨
gpiod_set_array_value β assign values to an array of GPIOs
like, plural. many at once. we love efficiency π
π¦ SYNOPSIS π¦
int gpiod_set_array_value (unsigned int array_size , struct gpio_desc
**desc_array , struct gpio_array *array_info , unsigned long
*value_bitmap );
she takes four things and gives you back an int. that's it. that's the whole vibe check β¨
πΈ ARGUMENTS πΈ
array_sizeβ how many elements are in the descriptor array / value bitmap. basically the headcount of your little GPIO squad πdesc_arrayβ the array of GPIO descriptors whose values will be assigned. these are the girlies getting their new looks π₯array_infoβ info on whether the fast bitmap processing path applies here. think of it as the "can we skip the line" pass ποΈvalue_bitmapβ the bitmap of values to assign. the actual lewks, bit by bit π
π DESCRIPTION π
So she sets the logical values of the GPIOs β and bestie, that means she's taking their ACTIVE_LOW status into account. yes, the polarity girlies get their moment. not me being obsessed with correctness π
Also, important, highkey: this function can be called from contexts where we cannot sleep, and she will complain if the GPIO chip functions potentially sleep. so likeβ¦ read the room before you call her from an atomic context, fr fr π
β RETURN β
0on success π- negative
errnoon failure π
π«Ά SEE ALSO π«Ά
the whole friend group, no gatekeeping π β
Kernel file ./drivers/gpio/gpiolib.c
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_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_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 whole page, bestie. you ate that π«Ά
this little masterpiece lives in ./drivers/gpio, and it's stamped October 2026 β so yes, she's from the future and she's still iconic πβ¨π
π¦ 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