gpiod_set_raw_array_value(9)
π gpiod_set_raw_array_value(9) β the Kernel API Manual glow-up π
okay bestie, so you know how sometimes you gotta yeet a whole pile of values at a whole pile of GPIOs, all at once, no big deal? yeah. that's this. she's from the Kernel API Manual and she's lowkey iconic for it. periodt. β¨
π¦ SYNOPSIS
int gpiod_set_raw_array_value (unsigned int array_size , struct
gpio_desc **desc_array , struct gpio_array *array_info , unsigned long
*value_bitmap );
like, that's the whole signature. she's not asking for much, she's just asking for everything at once π
π ARGUMENTS
array_sizeβ how many things live in the descriptor array / value bitmap. it's giving "headcount for the group chat." β¨desc_arrayβ the array of GPIO descriptors that are about to get their values assigned. these are the girlies receiving the tea π«Άarray_infoβ info about whether the fast bitmap processing path is applicable. basically the vibe check on whether we can go fast or not β‘value_bitmapβ the bitmap of values to assign. the actual content of the group message, if you will π
π DESCRIPTION
so what she does is: sets the raw values of the GPIOs. and "raw" here is doing a LOT of work, bestie β it means the values of the physical lines, without regard for their ACTIVE_LOW status. like she does not care about the polarity situation at all, she's looking straight at the hardware. no filter. no cap.
also important, so listen up: this function can be called from contexts where we cannot sleep π₯ and she will complain if the GPIO chip functions potentially sleep. so like, don't try it. she's not shy about it. she will say something. π
π RETURN
0 on success, or negative errno on failure. slay when it's a zero, sad little errno when it's not π
π SEE ALSO
the whole extended fam, fr fr. kernel file ./drivers/gpio/gpiolib.c plus:
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_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)
bestie note π§: everything above lives under./drivers/gpioπΈ that's the source, and the version/date stamp says October 2026 β so like, she's fresh. and the page is, of course,gpiod_set_raw_array_value(9)β the main character herself ππ
okay that's the whole page, go forth and set those raw array values responsibly ππ«Άπ
π¦ 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