Zephyr Project API 4.3.99
A Scalable Open Source RTOS
Loading...
Searching...
No Matches

Bouffalolab BL61x GPIO FIFO / Wire Out device-specific API extension. More...

Go to the source code of this file.

Data Structures

struct  bl61x_wo_config
 Structure holding the configuration for the GPIO FIFO pulse width, polarity, and pins. More...

Macros

#define BL61X_WO_PIN_CNT   16
 Maximum number of pin toggled at the same time.

Typedefs

typedef void(* bl61x_wo_callback_t) (void *user_data)
 Callback type used to inform user async write has completed.

Functions

uint16_t bl61x_wo_frequency_to_cycles (const uint32_t frequency, const bool exact)
 Convert a frequency to WO clock cycles.
uint16_t bl61x_wo_time_to_cycles (const uint32_t time, const bool exact)
 Convert a time to WO clock cycles.
int bl61x_wo_configure (const struct bl61x_wo_config *const config, const uint8_t *pins, const gpio_flags_t *flags, const size_t pin_cnt)
 Configure GPIO FIFO.
int bl61x_wo_configure_dt (const struct bl61x_wo_config *const config, const struct gpio_dt_spec *pins, const size_t pin_cnt)
 Configure GPIO FIFO using devicetree.
int bl61x_wo_write (const uint16_t *const data, const size_t len)
 Write to GPIO FIFO.
int bl61x_wo_write_async (const uint16_t *const data, const size_t len, bl61x_wo_callback_t cb, void *user_data)
 Write to GPIO FIFO Asynchronously.

Detailed Description

Bouffalolab BL61x GPIO FIFO / Wire Out device-specific API extension.