Zephyr Project API 3.7.0
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
timeaware_gpio.h File Reference

Public APIs for Time-aware GPIO drivers. More...

#include <zephyr/sys/__assert.h>
#include <zephyr/sys/slist.h>
#include <zephyr/types.h>
#include <stddef.h>
#include <zephyr/device.h>
#include <zephyr/internal/syscall_handler.h>
#include <zephyr/syscalls/timeaware_gpio.h>

Go to the source code of this file.

Enumerations

enum  tgpio_pin_polarity { TGPIO_RISING_EDGE = 0 , TGPIO_FALLING_EDGE , TGPIO_TOGGLE_EDGE }
 Event polarity. More...
 

Functions

int tgpio_port_get_time (const struct device *dev, uint64_t *current_time)
 Get time from ART timer.
 
int tgpio_port_get_cycles_per_second (const struct device *dev, uint32_t *cycles)
 Get current running rate.
 
int tgpio_pin_disable (const struct device *dev, uint32_t pin)
 Disable operation on pin.
 
int tgpio_pin_config_ext_timestamp (const struct device *dev, uint32_t pin, uint32_t event_polarity)
 Enable/Continue operation on pin.
 
int tgpio_pin_periodic_output (const struct device *dev, uint32_t pin, uint64_t start_time, uint64_t repeat_interval, bool periodic_enable)
 Enable periodic pulse generation on a pin.
 
int tgpio_pin_read_ts_ec (const struct device *dev, uint32_t pin, uint64_t *timestamp, uint64_t *event_count)
 Read timestamp and event counter from TGPIO.
 

Detailed Description

Public APIs for Time-aware GPIO drivers.