oveRTOS C API
Embedded RTOS framework — build system, configuration, and portable C API
Loading...
Searching...
No Matches
hal_i2s.h
1/*
2 * Copyright (C) 2026 Kamil Lulko <kamil.lulko@gmail.com>
3 *
4 * SPDX-License-Identifier: GPL-3.0-or-later
5 *
6 * This file is part of oveRTOS.
7 */
8
9#ifndef OVE_HAL_I2S_H
10#define OVE_HAL_I2S_H
11
29#include "ove/i2s.h"
30
31#ifdef __cplusplus
32extern "C" {
33#endif
34
45int ove_hal_i2s_open(ove_i2s_t i2s, const struct ove_i2s_cfg *cfg);
46
51
58
63
68
73
74#ifdef __cplusplus
75}
76#endif
77
80#endif /* OVE_HAL_I2S_H */
int ove_hal_i2s_resume(ove_i2s_t i2s)
Resume DMA after pause.
int ove_hal_i2s_pause(ove_i2s_t i2s)
Pause DMA (can be resumed without reconfiguration).
void ove_hal_i2s_close(ove_i2s_t i2s)
Disable the I2S peripheral and release DMA resources.
int ove_hal_i2s_start(ove_i2s_t i2s)
Start circular DMA streaming.
int ove_hal_i2s_open(ove_i2s_t i2s, const struct ove_i2s_cfg *cfg)
Configure and enable the I2S / SAI peripheral.
int ove_hal_i2s_stop(ove_i2s_t i2s)
Stop DMA streaming.
struct ove_i2s * ove_i2s_t
Opaque handle for an I2S / SAI bus controller.
Definition types.h:145
I2S bus configuration descriptor.
Definition i2s.h:67