gpiod_enable...timestamp_ns(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ gpiod_enable...timestamp_ns(9) ✨

okay so bestie, welcome to the Kernel API Manual β€” yes that's the manual name, we're in the big leagues now πŸ’… this one's all about gpiod_enable_hw_timestamp_ns, which is a whole vibe: it turns on hardware timestamping, measured in nanoseconds. iconic behavior honestly πŸ•°οΈβœ¨


🌸 NAME 🌸

gpiod_enable_hw_timestamp_ns β€” Enable hardware timestamp in nanoseconds.

no cap, that's literally what it does. hardware. timestamps. nanoseconds. slay πŸŽ€


πŸ¦‹ SYNOPSIS πŸ¦‹

int gpiod_enable_hw_timestamp_ns (struct gpio_desc *desc , unsigned long
flags );

that's the whole signature, copy it exactly bestie, don't be out here renaming things πŸ™ˆ


πŸ’– ARGUMENTS πŸ’–

  • desc β€” GPIO to enable. like, the actual line you want to get timestamping on 🎯
  • flags β€” Flags related to GPIO edge. the edge of the signal is the moment we care about, and these flags speak to that ⚑

πŸ‘‘ RETURN πŸ‘‘

0 on success, or a negative errno on failure. so like β€” zero is the good ending, negative numbers are the group chat saying "it didn't work" 😭

fr fr, always check the return value. negative errno is not a drill.

🌈 SEE ALSO 🌈

the way this list is long β€” it's giving "everyone in the GPIO group chat got invited to the party" 🫢 keep the whole squad intact:

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_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)

also the kernel file it lives near: ./drivers/gpio/gpiolib.c β€” that's the source, iykyk 🧚

lowkey the sibling function is gpiod_disable_hw_timestamp_ns(9) up there in the list, so if you ever need to turn it back off… you already know where to look πŸ’€ no extra info, i'm just pointing respectfully.

that's the whole page, bestie πŸ’œ β€” this one's from the ./drivers/gpio source, October 2026, and it's page gpiod_enable...timestamp_ns(9) of the Kernel API Manual. go timestamp something, and remember: nanoseconds are tiny but your impact is not 🌟

πŸ“¦ where this page comes from