This is an automated email from the ASF dual-hosted git repository.
xiaoxiang781216 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/nuttx.git
The following commit(s) were added to refs/heads/master by this push:
new 8b49e46b9ee drivers/audio/i2s: Fix unsigned integers in function
signatures
8b49e46b9ee is described below
commit 8b49e46b9ee7306a463107aad643c93d5b604309
Author: Matteo Golin <[email protected]>
AuthorDate: Sat Jul 4 15:42:24 2026 -0400
drivers/audio/i2s: Fix unsigned integers in function signatures
All I2S driver operation functions say in their signature description
that negative errno values are returned on failure. However, some of
these same functions had `uint32_t` return types. This would result in
incorrect comparison of the return value against signed error code
values.
Signed-off-by: Matteo Golin <[email protected]>
---
arch/arm/src/common/stm32/stm32_i2s_m3m4_v1.c | 16 ++++++++--------
arch/arm/src/lc823450/lc823450_i2s.c | 16 ++++++++--------
arch/arm/src/rp2040/rp2040_i2s.c | 8 ++++----
arch/arm/src/rp23xx/rp23xx_i2s.c | 8 ++++----
arch/arm/src/sama5/sam_ssc.c | 16 ++++++++--------
arch/arm/src/samv7/sam_ssc.c | 18 +++++++++---------
arch/arm/src/stm32f7/stm32_i2s.c | 16 ++++++++--------
arch/arm/src/stm32f7/stm32_sai.c | 8 ++++----
arch/arm/src/stm32l4/stm32l4_sai.c | 8 ++++----
arch/risc-v/src/common/espressif/esp_i2s.c | 24 ++++++++++++------------
arch/risc-v/src/rp23xx-rv/rp23xx_i2s.c | 10 +++++-----
arch/xtensa/src/common/espressif/esp_i2s.c | 24 ++++++++++++------------
arch/xtensa/src/esp32/esp32_i2s.c | 24 ++++++++++++------------
arch/xtensa/src/esp32s2/esp32s2_i2s.c | 24 ++++++++++++------------
include/nuttx/audio/i2s.h | 26 +++++++++++++-------------
15 files changed, 123 insertions(+), 123 deletions(-)
diff --git a/arch/arm/src/common/stm32/stm32_i2s_m3m4_v1.c
b/arch/arm/src/common/stm32/stm32_i2s_m3m4_v1.c
index 49be32aa826..04f50729f91 100644
--- a/arch/arm/src/common/stm32/stm32_i2s_m3m4_v1.c
+++ b/arch/arm/src/common/stm32/stm32_i2s_m3m4_v1.c
@@ -407,14 +407,14 @@ static void i2s_txdma_callback(DMA_HANDLE handle,
uint8_t result,
static int i2s_checkwidth(struct stm32_i2s_s *priv, int bits);
-static uint32_t stm32_i2s_rxsamplerate(struct i2s_dev_s *dev, uint32_t rate);
-static uint32_t stm32_i2s_rxdatawidth(struct i2s_dev_s *dev, int bits);
+static int32_t stm32_i2s_rxsamplerate(struct i2s_dev_s *dev, uint32_t rate);
+static int32_t stm32_i2s_rxdatawidth(struct i2s_dev_s *dev, int bits);
static int stm32_i2s_receive(struct i2s_dev_s *dev,
struct ap_buffer_s *apb,
i2s_callback_t callback,
void *arg, uint32_t timeout);
-static uint32_t stm32_i2s_txsamplerate(struct i2s_dev_s *dev, uint32_t rate);
-static uint32_t stm32_i2s_txdatawidth(struct i2s_dev_s *dev, int bits);
+static int32_t stm32_i2s_txsamplerate(struct i2s_dev_s *dev, uint32_t rate);
+static int32_t stm32_i2s_txdatawidth(struct i2s_dev_s *dev, int bits);
static int stm32_i2s_send(struct i2s_dev_s *dev,
struct ap_buffer_s *apb,
i2s_callback_t callback, void *arg,
@@ -1723,7 +1723,7 @@ static int i2s_checkwidth(struct stm32_i2s_s *priv, int
bits)
*
****************************************************************************/
-static uint32_t stm32_i2s_rxsamplerate(struct i2s_dev_s *dev, uint32_t rate)
+static int32_t stm32_i2s_rxsamplerate(struct i2s_dev_s *dev, uint32_t rate)
{
#if defined(I2S_HAVE_RX) && defined(I2S_HAVE_MCK)
struct stm32_i2s_s *priv = (struct stm32_i2s_s *)dev;
@@ -1759,7 +1759,7 @@ static uint32_t stm32_i2s_rxsamplerate(struct i2s_dev_s
*dev, uint32_t rate)
*
****************************************************************************/
-static uint32_t stm32_i2s_rxdatawidth(struct i2s_dev_s *dev, int bits)
+static int32_t stm32_i2s_rxdatawidth(struct i2s_dev_s *dev, int bits)
{
#ifdef I2S_HAVE_RX
struct stm32_i2s_s *priv = (struct stm32_i2s_s *)dev;
@@ -1928,7 +1928,7 @@ static int stm32_i2s_roundf(float num)
*
****************************************************************************/
-static uint32_t stm32_i2s_txsamplerate(struct i2s_dev_s *dev, uint32_t rate)
+static int32_t stm32_i2s_txsamplerate(struct i2s_dev_s *dev, uint32_t rate)
{
#if defined(I2S_HAVE_TX) && defined(I2S_HAVE_MCK)
struct stm32_i2s_s *priv = (struct stm32_i2s_s *)dev;
@@ -1965,7 +1965,7 @@ static uint32_t stm32_i2s_txsamplerate(struct i2s_dev_s
*dev, uint32_t rate)
*
****************************************************************************/
-static uint32_t stm32_i2s_txdatawidth(struct i2s_dev_s *dev, int bits)
+static int32_t stm32_i2s_txdatawidth(struct i2s_dev_s *dev, int bits)
{
#ifdef I2S_HAVE_TX
struct stm32_i2s_s *priv = (struct stm32_i2s_s *)dev;
diff --git a/arch/arm/src/lc823450/lc823450_i2s.c
b/arch/arm/src/lc823450/lc823450_i2s.c
index 1c1a34b1862..6d2c260ed3c 100644
--- a/arch/arm/src/lc823450/lc823450_i2s.c
+++ b/arch/arm/src/lc823450/lc823450_i2s.c
@@ -186,17 +186,17 @@ static uint32_t _i2s_tx_th_bytes;
* Private Function Prototypes
****************************************************************************/
-static uint32_t lc823450_i2s_rxsamplerate(struct i2s_dev_s *dev,
+static int32_t lc823450_i2s_rxsamplerate(struct i2s_dev_s *dev,
uint32_t rate);
-static uint32_t lc823450_i2s_rxdatawidth(struct i2s_dev_s *dev, int bits);
+static int32_t lc823450_i2s_rxdatawidth(struct i2s_dev_s *dev, int bits);
static int lc823450_i2s_receive(struct i2s_dev_s *dev,
struct ap_buffer_s *apb,
i2s_callback_t callback, void *arg,
uint32_t timeout);
-static uint32_t lc823450_i2s_txsamplerate(struct i2s_dev_s *dev,
+static int32_t lc823450_i2s_txsamplerate(struct i2s_dev_s *dev,
uint32_t rate);
-static uint32_t lc823450_i2s_txdatawidth(struct i2s_dev_s *dev, int bits);
+static int32_t lc823450_i2s_txdatawidth(struct i2s_dev_s *dev, int bits);
static int lc823450_i2s_send(struct i2s_dev_s *dev,
struct ap_buffer_s *apb,
i2s_callback_t callback, void *arg,
@@ -312,7 +312,7 @@ static void _setup_audio_pll(uint32_t freq)
* Name: lc823450_i2s_rxsamplerate
****************************************************************************/
-static uint32_t lc823450_i2s_rxsamplerate(struct i2s_dev_s *dev,
+static int32_t lc823450_i2s_rxsamplerate(struct i2s_dev_s *dev,
uint32_t rate)
{
/* Change ASRC FSO rate */
@@ -340,7 +340,7 @@ static uint32_t lc823450_i2s_rxsamplerate(struct i2s_dev_s
*dev,
* Name: lc823450_i2s_rxdatawidth
****************************************************************************/
-static uint32_t lc823450_i2s_rxdatawidth(struct i2s_dev_s *dev, int bits)
+static int32_t lc823450_i2s_rxdatawidth(struct i2s_dev_s *dev, int bits)
{
return 0;
}
@@ -573,7 +573,7 @@ static void _i2s_txdma_callback(DMA_HANDLE hdma, void *arg,
int result)
* Name: lc823450_i2s_txsamplerate
****************************************************************************/
-static uint32_t lc823450_i2s_txsamplerate(struct i2s_dev_s *dev,
+static int32_t lc823450_i2s_txsamplerate(struct i2s_dev_s *dev,
uint32_t rate)
{
/* Change SSRC FSI rate */
@@ -601,7 +601,7 @@ static uint32_t lc823450_i2s_txsamplerate(struct i2s_dev_s
*dev,
* Name: lc823450_i2s_txdatawidth
****************************************************************************/
-static uint32_t lc823450_i2s_txdatawidth(struct i2s_dev_s *dev, int bits)
+static int32_t lc823450_i2s_txdatawidth(struct i2s_dev_s *dev, int bits)
{
return 0;
}
diff --git a/arch/arm/src/rp2040/rp2040_i2s.c b/arch/arm/src/rp2040/rp2040_i2s.c
index 0ace4c7d153..7016f7821e4 100644
--- a/arch/arm/src/rp2040/rp2040_i2s.c
+++ b/arch/arm/src/rp2040/rp2040_i2s.c
@@ -194,9 +194,9 @@ static int i2s_checkwidth(struct rp2040_i2s_s *priv,
int bits);
static int rp2040_i2s_txchannels(struct i2s_dev_s *dev,
uint8_t channels);
-static uint32_t rp2040_i2s_txsamplerate(struct i2s_dev_s *dev,
+static int32_t rp2040_i2s_txsamplerate(struct i2s_dev_s *dev,
uint32_t rate);
-static uint32_t rp2040_i2s_txdatawidth(struct i2s_dev_s *dev, int bits);
+static int32_t rp2040_i2s_txdatawidth(struct i2s_dev_s *dev, int bits);
static int rp2040_i2s_send(struct i2s_dev_s *dev,
struct ap_buffer_s *apb,
i2s_callback_t callback, void *arg,
@@ -749,7 +749,7 @@ static int rp2040_i2s_txchannels(struct i2s_dev_s *dev,
uint8_t channels)
*
****************************************************************************/
-static uint32_t rp2040_i2s_txsamplerate(struct i2s_dev_s *dev, uint32_t rate)
+static int32_t rp2040_i2s_txsamplerate(struct i2s_dev_s *dev, uint32_t rate)
{
struct rp2040_i2s_s *priv = (struct rp2040_i2s_s *)dev;
@@ -780,7 +780,7 @@ static uint32_t rp2040_i2s_txsamplerate(struct i2s_dev_s
*dev, uint32_t rate)
*
****************************************************************************/
-static uint32_t rp2040_i2s_txdatawidth(struct i2s_dev_s *dev, int bits)
+static int32_t rp2040_i2s_txdatawidth(struct i2s_dev_s *dev, int bits)
{
struct rp2040_i2s_s *priv = (struct rp2040_i2s_s *)dev;
int ret;
diff --git a/arch/arm/src/rp23xx/rp23xx_i2s.c b/arch/arm/src/rp23xx/rp23xx_i2s.c
index 12301234465..ce3c241c5b0 100644
--- a/arch/arm/src/rp23xx/rp23xx_i2s.c
+++ b/arch/arm/src/rp23xx/rp23xx_i2s.c
@@ -194,9 +194,9 @@ static int i2s_checkwidth(struct rp23xx_i2s_s *priv,
int bits);
static int rp23xx_i2s_txchannels(struct i2s_dev_s *dev,
uint8_t channels);
-static uint32_t rp23xx_i2s_txsamplerate(struct i2s_dev_s *dev,
+static int32_t rp23xx_i2s_txsamplerate(struct i2s_dev_s *dev,
uint32_t rate);
-static uint32_t rp23xx_i2s_txdatawidth(struct i2s_dev_s *dev, int bits);
+static int32_t rp23xx_i2s_txdatawidth(struct i2s_dev_s *dev, int bits);
static int rp23xx_i2s_send(struct i2s_dev_s *dev,
struct ap_buffer_s *apb,
i2s_callback_t callback, void *arg,
@@ -749,7 +749,7 @@ static int rp23xx_i2s_txchannels(struct i2s_dev_s *dev,
uint8_t channels)
*
****************************************************************************/
-static uint32_t rp23xx_i2s_txsamplerate(struct i2s_dev_s *dev, uint32_t rate)
+static int32_t rp23xx_i2s_txsamplerate(struct i2s_dev_s *dev, uint32_t rate)
{
struct rp23xx_i2s_s *priv = (struct rp23xx_i2s_s *)dev;
@@ -780,7 +780,7 @@ static uint32_t rp23xx_i2s_txsamplerate(struct i2s_dev_s
*dev, uint32_t rate)
*
****************************************************************************/
-static uint32_t rp23xx_i2s_txdatawidth(struct i2s_dev_s *dev, int bits)
+static int32_t rp23xx_i2s_txdatawidth(struct i2s_dev_s *dev, int bits)
{
struct rp23xx_i2s_s *priv = (struct rp23xx_i2s_s *)dev;
int ret;
diff --git a/arch/arm/src/sama5/sam_ssc.c b/arch/arm/src/sama5/sam_ssc.c
index 4b7587f640e..b71d08a962a 100644
--- a/arch/arm/src/sama5/sam_ssc.c
+++ b/arch/arm/src/sama5/sam_ssc.c
@@ -590,12 +590,12 @@ static void ssc_txdma_callback(DMA_HANDLE handle,
void *arg, int result);
static int ssc_checkwidth(struct sam_ssc_s *priv, int bits);
-static uint32_t ssc_rxsamplerate(struct i2s_dev_s *dev, uint32_t rate);
-static uint32_t ssc_rxdatawidth(struct i2s_dev_s *dev, int bits);
+static int32_t ssc_rxsamplerate(struct i2s_dev_s *dev, uint32_t rate);
+static int32_t ssc_rxdatawidth(struct i2s_dev_s *dev, int bits);
static int ssc_receive(struct i2s_dev_s *dev, struct ap_buffer_s *apb,
i2s_callback_t callback, void *arg, uint32_t timeout);
-static uint32_t ssc_txsamplerate(struct i2s_dev_s *dev, uint32_t rate);
-static uint32_t ssc_txdatawidth(struct i2s_dev_s *dev, int bits);
+static int32_t ssc_txsamplerate(struct i2s_dev_s *dev, uint32_t rate);
+static int32_t ssc_txdatawidth(struct i2s_dev_s *dev, int bits);
static int ssc_send(struct i2s_dev_s *dev, struct ap_buffer_s *apb,
i2s_callback_t callback, void *arg,
uint32_t timeout);
@@ -2012,7 +2012,7 @@ static int ssc_checkwidth(struct sam_ssc_s *priv, int
bits)
*
****************************************************************************/
-static uint32_t ssc_rxsamplerate(struct i2s_dev_s *dev, uint32_t rate)
+static int32_t ssc_rxsamplerate(struct i2s_dev_s *dev, uint32_t rate)
{
#if defined(SSC_HAVE_RX) && defined(SSC_HAVE_MCK2)
struct sam_ssc_s *priv = (struct sam_ssc_s *)dev;
@@ -2048,7 +2048,7 @@ static uint32_t ssc_rxsamplerate(struct i2s_dev_s *dev,
uint32_t rate)
*
****************************************************************************/
-static uint32_t ssc_rxdatawidth(struct i2s_dev_s *dev, int bits)
+static int32_t ssc_rxdatawidth(struct i2s_dev_s *dev, int bits)
{
#ifdef SSC_HAVE_RX
struct sam_ssc_s *priv = (struct sam_ssc_s *)dev;
@@ -2229,7 +2229,7 @@ errout_with_buf:
*
****************************************************************************/
-static uint32_t ssc_txsamplerate(struct i2s_dev_s *dev, uint32_t rate)
+static int32_t ssc_txsamplerate(struct i2s_dev_s *dev, uint32_t rate)
{
#if defined(SSC_HAVE_TX) && defined(SSC_HAVE_MCK2)
struct sam_ssc_s *priv = (struct sam_ssc_s *)dev;
@@ -2265,7 +2265,7 @@ static uint32_t ssc_txsamplerate(struct i2s_dev_s *dev,
uint32_t rate)
*
****************************************************************************/
-static uint32_t ssc_txdatawidth(struct i2s_dev_s *dev, int bits)
+static int32_t ssc_txdatawidth(struct i2s_dev_s *dev, int bits)
{
#ifdef SSC_HAVE_TX
struct sam_ssc_s *priv = (struct sam_ssc_s *)dev;
diff --git a/arch/arm/src/samv7/sam_ssc.c b/arch/arm/src/samv7/sam_ssc.c
index fa8f4358820..296125fcf15 100644
--- a/arch/arm/src/samv7/sam_ssc.c
+++ b/arch/arm/src/samv7/sam_ssc.c
@@ -564,12 +564,12 @@ static void ssc_txdma_callback(DMA_HANDLE handle,
void *arg, int result);
static int ssc_checkwidth(struct sam_ssc_s *priv, int bits);
-static uint32_t ssc_rxsamplerate(struct i2s_dev_s *dev, uint32_t rate);
-static uint32_t ssc_rxdatawidth(struct i2s_dev_s *dev, int bits);
+static int32_t ssc_rxsamplerate(struct i2s_dev_s *dev, uint32_t rate);
+static int32_t ssc_rxdatawidth(struct i2s_dev_s *dev, int bits);
static int ssc_receive(struct i2s_dev_s *dev, struct ap_buffer_s *apb,
i2s_callback_t callback, void *arg, uint32_t timeout);
-static uint32_t ssc_txsamplerate(struct i2s_dev_s *dev, uint32_t rate);
-static uint32_t ssc_txdatawidth(struct i2s_dev_s *dev, int bits);
+static int32_t ssc_txsamplerate(struct i2s_dev_s *dev, uint32_t rate);
+static int32_t ssc_txdatawidth(struct i2s_dev_s *dev, int bits);
static int ssc_send(struct i2s_dev_s *dev, struct ap_buffer_s *apb,
i2s_callback_t callback, void *arg,
uint32_t timeout);
@@ -1992,7 +1992,7 @@ static int ssc_checkwidth(struct sam_ssc_s *priv, int
bits)
*
****************************************************************************/
-static uint32_t ssc_rxsamplerate(struct i2s_dev_s *dev, uint32_t rate)
+static int32_t ssc_rxsamplerate(struct i2s_dev_s *dev, uint32_t rate)
{
#if defined(SSC_HAVE_RX) && defined(SSC_HAVE_MCK2)
struct sam_ssc_s *priv = (struct sam_ssc_s *)dev;
@@ -2028,7 +2028,7 @@ static uint32_t ssc_rxsamplerate(struct i2s_dev_s *dev,
uint32_t rate)
*
****************************************************************************/
-static uint32_t ssc_rxdatawidth(struct i2s_dev_s *dev, int bits)
+static int32_t ssc_rxdatawidth(struct i2s_dev_s *dev, int bits)
{
#ifdef SSC_HAVE_RX
struct sam_ssc_s *priv = (struct sam_ssc_s *)dev;
@@ -2212,7 +2212,7 @@ errout_with_buf:
*
****************************************************************************/
-static uint32_t ssc_txsamplerate(struct i2s_dev_s *dev, uint32_t rate)
+static int32_t ssc_txsamplerate(struct i2s_dev_s *dev, uint32_t rate)
{
#if defined(SSC_HAVE_TX) && defined(SSC_HAVE_MCK2)
struct sam_ssc_s *priv = (struct sam_ssc_s *)dev;
@@ -2248,7 +2248,7 @@ static uint32_t ssc_txsamplerate(struct i2s_dev_s *dev,
uint32_t rate)
*
****************************************************************************/
-static uint32_t ssc_txdatawidth(struct i2s_dev_s *dev, int bits)
+static int32_t ssc_txdatawidth(struct i2s_dev_s *dev, int bits)
{
#ifdef SSC_HAVE_TX
struct sam_ssc_s *priv = (struct sam_ssc_s *)dev;
@@ -2730,7 +2730,7 @@ static int ssc_tx_configure(struct sam_ssc_s *priv)
*
****************************************************************************/
-static uint32_t ssc_mck2divider(struct sam_ssc_s *priv)
+static int32_t ssc_mck2divider(struct sam_ssc_s *priv)
{
#ifdef SSC_HAVE_MCK2
uint32_t bitrate;
diff --git a/arch/arm/src/stm32f7/stm32_i2s.c b/arch/arm/src/stm32f7/stm32_i2s.c
index 3bb12864f51..13449214c36 100644
--- a/arch/arm/src/stm32f7/stm32_i2s.c
+++ b/arch/arm/src/stm32f7/stm32_i2s.c
@@ -447,14 +447,14 @@ static void i2s_txdma_callback(DMA_HANDLE handle,
uint8_t result,
static int i2s_checkwidth(struct stm32_i2s_s *priv, int bits);
-static uint32_t stm32_i2s_rxsamplerate(struct i2s_dev_s *dev, uint32_t rate);
-static uint32_t stm32_i2s_rxdatawidth(struct i2s_dev_s *dev, int bits);
+static int32_t stm32_i2s_rxsamplerate(struct i2s_dev_s *dev, uint32_t rate);
+static int32_t stm32_i2s_rxdatawidth(struct i2s_dev_s *dev, int bits);
static int stm32_i2s_receive(struct i2s_dev_s *dev,
struct ap_buffer_s *apb,
i2s_callback_t callback,
void *arg, uint32_t timeout);
-static uint32_t stm32_i2s_txsamplerate(struct i2s_dev_s *dev, uint32_t rate);
-static uint32_t stm32_i2s_txdatawidth(struct i2s_dev_s *dev, int bits);
+static int32_t stm32_i2s_txsamplerate(struct i2s_dev_s *dev, uint32_t rate);
+static int32_t stm32_i2s_txdatawidth(struct i2s_dev_s *dev, int bits);
static int stm32_i2s_send(struct i2s_dev_s *dev,
struct ap_buffer_s *apb,
i2s_callback_t callback, void *arg,
@@ -1770,7 +1770,7 @@ static int i2s_checkwidth(struct stm32_i2s_s *priv, int
bits)
*
****************************************************************************/
-static uint32_t stm32_i2s_rxsamplerate(struct i2s_dev_s *dev, uint32_t rate)
+static int32_t stm32_i2s_rxsamplerate(struct i2s_dev_s *dev, uint32_t rate)
{
#if defined(I2S_HAVE_RX) && defined(I2S_HAVE_MCK)
struct stm32_i2s_s *priv = (struct stm32_i2s_s *)dev;
@@ -1806,7 +1806,7 @@ static uint32_t stm32_i2s_rxsamplerate(struct i2s_dev_s
*dev, uint32_t rate)
*
****************************************************************************/
-static uint32_t stm32_i2s_rxdatawidth(struct i2s_dev_s *dev, int bits)
+static int32_t stm32_i2s_rxdatawidth(struct i2s_dev_s *dev, int bits)
{
#ifdef I2S_HAVE_RX
struct stm32_i2s_s *priv = (struct stm32_i2s_s *)dev;
@@ -1975,7 +1975,7 @@ static int stm32_i2s_roundf(float num)
*
****************************************************************************/
-static uint32_t stm32_i2s_txsamplerate(struct i2s_dev_s *dev, uint32_t rate)
+static int32_t stm32_i2s_txsamplerate(struct i2s_dev_s *dev, uint32_t rate)
{
#if defined(I2S_HAVE_TX) && defined(I2S_HAVE_MCK)
struct stm32_i2s_s *priv = (struct stm32_i2s_s *)dev;
@@ -2012,7 +2012,7 @@ static uint32_t stm32_i2s_txsamplerate(struct i2s_dev_s
*dev, uint32_t rate)
*
****************************************************************************/
-static uint32_t stm32_i2s_txdatawidth(struct i2s_dev_s *dev, int bits)
+static int32_t stm32_i2s_txdatawidth(struct i2s_dev_s *dev, int bits)
{
#ifdef I2S_HAVE_TX
struct stm32_i2s_s *priv = (struct stm32_i2s_s *)dev;
diff --git a/arch/arm/src/stm32f7/stm32_sai.c b/arch/arm/src/stm32f7/stm32_sai.c
index 75d8e998f4e..25aaf8d0063 100644
--- a/arch/arm/src/stm32f7/stm32_sai.c
+++ b/arch/arm/src/stm32f7/stm32_sai.c
@@ -243,8 +243,8 @@ static void sai_dma_callback(DMA_HANDLE handle, uint8_t
isr, void *arg);
/* I2S methods */
-static uint32_t sai_samplerate(struct i2s_dev_s *dev, uint32_t rate);
-static uint32_t sai_datawidth(struct i2s_dev_s *dev, int bits);
+static int32_t sai_samplerate(struct i2s_dev_s *dev, uint32_t rate);
+static int32_t sai_datawidth(struct i2s_dev_s *dev, int bits);
static int sai_receive(struct i2s_dev_s *dev, struct ap_buffer_s *apb,
i2s_callback_t callback, void *arg, uint32_t timeout);
static int sai_send(struct i2s_dev_s *dev, struct ap_buffer_s *apb,
@@ -1102,7 +1102,7 @@ static void sai_dma_callback(DMA_HANDLE handle, uint8_t
isr, void *arg)
*
****************************************************************************/
-static uint32_t sai_samplerate(struct i2s_dev_s *dev, uint32_t rate)
+static int32_t sai_samplerate(struct i2s_dev_s *dev, uint32_t rate)
{
struct stm32f7_sai_s *priv = (struct stm32f7_sai_s *)dev;
@@ -1143,7 +1143,7 @@ static uint32_t sai_samplerate(struct i2s_dev_s *dev,
uint32_t rate)
*
****************************************************************************/
-static uint32_t sai_datawidth(struct i2s_dev_s *dev, int bits)
+static int32_t sai_datawidth(struct i2s_dev_s *dev, int bits)
{
struct stm32f7_sai_s *priv = (struct stm32f7_sai_s *)dev;
uint32_t setbits;
diff --git a/arch/arm/src/stm32l4/stm32l4_sai.c
b/arch/arm/src/stm32l4/stm32l4_sai.c
index 4b2ab152851..bb68784d21e 100644
--- a/arch/arm/src/stm32l4/stm32l4_sai.c
+++ b/arch/arm/src/stm32l4/stm32l4_sai.c
@@ -198,8 +198,8 @@ static void sai_dma_callback(DMA_HANDLE handle, uint8_t
isr, void *arg);
/* I2S methods */
-static uint32_t sai_samplerate(struct i2s_dev_s *dev, uint32_t rate);
-static uint32_t sai_datawidth(struct i2s_dev_s *dev, int bits);
+static int32_t sai_samplerate(struct i2s_dev_s *dev, uint32_t rate);
+static int32_t sai_datawidth(struct i2s_dev_s *dev, int bits);
static int sai_receive(struct i2s_dev_s *dev, struct ap_buffer_s *apb,
i2s_callback_t callback, void *arg, uint32_t timeout);
static int sai_send(struct i2s_dev_s *dev, struct ap_buffer_s *apb,
@@ -845,7 +845,7 @@ static void sai_dma_callback(DMA_HANDLE handle, uint8_t
isr, void *arg)
*
****************************************************************************/
-static uint32_t sai_samplerate(struct i2s_dev_s *dev, uint32_t rate)
+static int32_t sai_samplerate(struct i2s_dev_s *dev, uint32_t rate)
{
struct stm32_sai_s *priv = (struct stm32_sai_s *)dev;
@@ -875,7 +875,7 @@ static uint32_t sai_samplerate(struct i2s_dev_s *dev,
uint32_t rate)
*
****************************************************************************/
-static uint32_t sai_datawidth(struct i2s_dev_s *dev, int bits)
+static int32_t sai_datawidth(struct i2s_dev_s *dev, int bits)
{
struct stm32_sai_s *priv = (struct stm32_sai_s *)dev;
uint32_t setbits;
diff --git a/arch/risc-v/src/common/espressif/esp_i2s.c
b/arch/risc-v/src/common/espressif/esp_i2s.c
index cd60b631e93..885c16b6abc 100644
--- a/arch/risc-v/src/common/espressif/esp_i2s.c
+++ b/arch/risc-v/src/common/espressif/esp_i2s.c
@@ -380,16 +380,16 @@ static uint32_t i2s_get_source_clk_freq(i2s_clock_src_t
clk_src,
static int32_t i2s_check_mclkfrequency(struct esp_i2s_s *priv);
static uint32_t i2s_set_datawidth(struct esp_i2s_s *priv);
static int i2s_set_clock(struct esp_i2s_s *priv);
-static uint32_t i2s_getmclkfrequency(struct i2s_dev_s *dev);
-static uint32_t i2s_setmclkfrequency(struct i2s_dev_s *dev,
+static int32_t i2s_getmclkfrequency(struct i2s_dev_s *dev);
+static int32_t i2s_setmclkfrequency(struct i2s_dev_s *dev,
uint32_t frequency);
static int i2s_ioctl(struct i2s_dev_s *dev, int cmd, unsigned long arg);
static void i2s_tx_channel_start(struct esp_i2s_s *priv);
static int i2s_tx_channel_stop(struct esp_i2s_s *priv);
static int i2s_txchannels(struct i2s_dev_s *dev, uint8_t channels);
-static uint32_t i2s_txsamplerate(struct i2s_dev_s *dev, uint32_t rate);
-static uint32_t i2s_txdatawidth(struct i2s_dev_s *dev, int bits);
+static int32_t i2s_txsamplerate(struct i2s_dev_s *dev, uint32_t rate);
+static int32_t i2s_txdatawidth(struct i2s_dev_s *dev, int bits);
static int i2s_send(struct i2s_dev_s *dev, struct ap_buffer_s *apb,
i2s_callback_t callback, void *arg,
uint32_t timeout);
@@ -404,8 +404,8 @@ static bool i2s_rx_error(gdma_channel_handle_t dma_chan,
void *arg);
static int i2s_rxchannels(struct i2s_dev_s *dev, uint8_t channels);
-static uint32_t i2s_rxsamplerate(struct i2s_dev_s *dev, uint32_t rate);
-static uint32_t i2s_rxdatawidth(struct i2s_dev_s *dev, int bits);
+static int32_t i2s_rxsamplerate(struct i2s_dev_s *dev, uint32_t rate);
+static int32_t i2s_rxdatawidth(struct i2s_dev_s *dev, int bits);
static int i2s_receive(struct i2s_dev_s *dev, struct ap_buffer_s *apb,
i2s_callback_t callback, void *arg,
uint32_t timeout);
@@ -2563,7 +2563,7 @@ static bool IRAM_ATTR
i2s_rx_interrupt(gdma_channel_handle_t dma_chan,
*
****************************************************************************/
-static uint32_t i2s_getmclkfrequency(struct i2s_dev_s *dev)
+static int32_t i2s_getmclkfrequency(struct i2s_dev_s *dev)
{
struct esp_i2s_s *priv = (struct esp_i2s_s *)dev;
@@ -2587,7 +2587,7 @@ static uint32_t i2s_getmclkfrequency(struct i2s_dev_s
*dev)
*
****************************************************************************/
-static uint32_t i2s_setmclkfrequency(struct i2s_dev_s *dev,
+static int32_t i2s_setmclkfrequency(struct i2s_dev_s *dev,
uint32_t frequency)
{
struct esp_i2s_s *priv = (struct esp_i2s_s *)dev;
@@ -2747,7 +2747,7 @@ static int i2s_rxchannels(struct i2s_dev_s *dev, uint8_t
channels)
*
****************************************************************************/
-static uint32_t i2s_txsamplerate(struct i2s_dev_s *dev, uint32_t rate)
+static int32_t i2s_txsamplerate(struct i2s_dev_s *dev, uint32_t rate)
{
struct esp_i2s_s *priv = (struct esp_i2s_s *)dev;
@@ -2805,7 +2805,7 @@ static uint32_t i2s_txsamplerate(struct i2s_dev_s *dev,
uint32_t rate)
*
****************************************************************************/
-static uint32_t i2s_rxsamplerate(struct i2s_dev_s *dev, uint32_t rate)
+static int32_t i2s_rxsamplerate(struct i2s_dev_s *dev, uint32_t rate)
{
struct esp_i2s_s *priv = (struct esp_i2s_s *)dev;
@@ -2864,7 +2864,7 @@ static uint32_t i2s_rxsamplerate(struct i2s_dev_s *dev,
uint32_t rate)
*
****************************************************************************/
-static uint32_t i2s_txdatawidth(struct i2s_dev_s *dev, int bits)
+static int32_t i2s_txdatawidth(struct i2s_dev_s *dev, int bits)
{
struct esp_i2s_s *priv = (struct esp_i2s_s *)dev;
@@ -2914,7 +2914,7 @@ static uint32_t i2s_txdatawidth(struct i2s_dev_s *dev,
int bits)
*
****************************************************************************/
-static uint32_t i2s_rxdatawidth(struct i2s_dev_s *dev, int bits)
+static int32_t i2s_rxdatawidth(struct i2s_dev_s *dev, int bits)
{
struct esp_i2s_s *priv = (struct esp_i2s_s *)dev;
diff --git a/arch/risc-v/src/rp23xx-rv/rp23xx_i2s.c
b/arch/risc-v/src/rp23xx-rv/rp23xx_i2s.c
index 8af25629757..149d8cf0b41 100644
--- a/arch/risc-v/src/rp23xx-rv/rp23xx_i2s.c
+++ b/arch/risc-v/src/rp23xx-rv/rp23xx_i2s.c
@@ -194,9 +194,9 @@ static int i2s_checkwidth(struct rp23xx_i2s_s *priv,
int bits);
static int rp23xx_i2s_txchannels(struct i2s_dev_s *dev,
uint8_t channels);
-static uint32_t rp23xx_i2s_txsamplerate(struct i2s_dev_s *dev,
- uint32_t rate);
-static uint32_t rp23xx_i2s_txdatawidth(struct i2s_dev_s *dev, int bits);
+static int32_t rp23xx_i2s_txsamplerate(struct i2s_dev_s *dev,
+ uint32_t rate);
+static int32_t rp23xx_i2s_txdatawidth(struct i2s_dev_s *dev, int bits);
static int rp23xx_i2s_send(struct i2s_dev_s *dev,
struct ap_buffer_s *apb,
i2s_callback_t callback, void *arg,
@@ -749,7 +749,7 @@ static int rp23xx_i2s_txchannels(struct i2s_dev_s *dev,
uint8_t channels)
*
****************************************************************************/
-static uint32_t rp23xx_i2s_txsamplerate(struct i2s_dev_s *dev, uint32_t rate)
+static int32_t rp23xx_i2s_txsamplerate(struct i2s_dev_s *dev, uint32_t rate)
{
struct rp23xx_i2s_s *priv = (struct rp23xx_i2s_s *)dev;
@@ -780,7 +780,7 @@ static uint32_t rp23xx_i2s_txsamplerate(struct i2s_dev_s
*dev, uint32_t rate)
*
****************************************************************************/
-static uint32_t rp23xx_i2s_txdatawidth(struct i2s_dev_s *dev, int bits)
+static int32_t rp23xx_i2s_txdatawidth(struct i2s_dev_s *dev, int bits)
{
struct rp23xx_i2s_s *priv = (struct rp23xx_i2s_s *)dev;
int ret;
diff --git a/arch/xtensa/src/common/espressif/esp_i2s.c
b/arch/xtensa/src/common/espressif/esp_i2s.c
index 3b7c95ecd8f..eae5d86f0d3 100644
--- a/arch/xtensa/src/common/espressif/esp_i2s.c
+++ b/arch/xtensa/src/common/espressif/esp_i2s.c
@@ -498,8 +498,8 @@ static void i2s_rx_schedule(struct esp_i2s_s
*priv,
static int32_t i2s_check_mclkfrequency(struct esp_i2s_s *priv);
static uint32_t i2s_set_datawidth(struct esp_i2s_s *priv);
static void i2s_set_clock(struct esp_i2s_s *priv);
-static uint32_t i2s_getmclkfrequency(struct i2s_dev_s *dev);
-static uint32_t i2s_setmclkfrequency(struct i2s_dev_s *dev,
+static int32_t i2s_getmclkfrequency(struct i2s_dev_s *dev);
+static int32_t i2s_setmclkfrequency(struct i2s_dev_s *dev,
uint32_t frequency);
static int i2s_ioctl(struct i2s_dev_s *dev, int cmd, unsigned long arg);
@@ -507,8 +507,8 @@ static int i2s_ioctl(struct i2s_dev_s *dev, int cmd,
unsigned long arg);
static void i2s_tx_channel_start(struct esp_i2s_s *priv);
static void i2s_tx_channel_stop(struct esp_i2s_s *priv);
static int i2s_txchannels(struct i2s_dev_s *dev, uint8_t channels);
-static uint32_t i2s_txsamplerate(struct i2s_dev_s *dev, uint32_t rate);
-static uint32_t i2s_txdatawidth(struct i2s_dev_s *dev, int bits);
+static int32_t i2s_txsamplerate(struct i2s_dev_s *dev, uint32_t rate);
+static int32_t i2s_txdatawidth(struct i2s_dev_s *dev, int bits);
static int i2s_send(struct i2s_dev_s *dev, struct ap_buffer_s *apb,
i2s_callback_t callback, void *arg,
uint32_t timeout);
@@ -518,8 +518,8 @@ static int i2s_send(struct i2s_dev_s *dev, struct
ap_buffer_s *apb,
static void i2s_rx_channel_start(struct esp_i2s_s *priv);
static void i2s_rx_channel_stop(struct esp_i2s_s *priv);
static int i2s_rxchannels(struct i2s_dev_s *dev, uint8_t channels);
-static uint32_t i2s_rxsamplerate(struct i2s_dev_s *dev, uint32_t rate);
-static uint32_t i2s_rxdatawidth(struct i2s_dev_s *dev, int bits);
+static int32_t i2s_rxsamplerate(struct i2s_dev_s *dev, uint32_t rate);
+static int32_t i2s_rxdatawidth(struct i2s_dev_s *dev, int bits);
static int i2s_receive(struct i2s_dev_s *dev, struct ap_buffer_s *apb,
i2s_callback_t callback, void *arg,
uint32_t timeout);
@@ -2590,7 +2590,7 @@ static int i2s_interrupt(int irq, void *context, void
*arg)
*
****************************************************************************/
-static uint32_t i2s_getmclkfrequency(struct i2s_dev_s *dev)
+static int32_t i2s_getmclkfrequency(struct i2s_dev_s *dev)
{
struct esp_i2s_s *priv = (struct esp_i2s_s *)dev;
@@ -2614,7 +2614,7 @@ static uint32_t i2s_getmclkfrequency(struct i2s_dev_s
*dev)
*
****************************************************************************/
-static uint32_t i2s_setmclkfrequency(struct i2s_dev_s *dev,
+static int32_t i2s_setmclkfrequency(struct i2s_dev_s *dev,
uint32_t frequency)
{
struct esp_i2s_s *priv = (struct esp_i2s_s *)dev;
@@ -2767,7 +2767,7 @@ static int i2s_rxchannels(struct i2s_dev_s *dev, uint8_t
channels)
****************************************************************************/
#ifdef I2S_HAVE_TX
-static uint32_t i2s_txsamplerate(struct i2s_dev_s *dev, uint32_t rate)
+static int32_t i2s_txsamplerate(struct i2s_dev_s *dev, uint32_t rate)
{
struct esp_i2s_s *priv = (struct esp_i2s_s *)dev;
@@ -2809,7 +2809,7 @@ static uint32_t i2s_txsamplerate(struct i2s_dev_s *dev,
uint32_t rate)
****************************************************************************/
#ifdef I2S_HAVE_RX
-static uint32_t i2s_rxsamplerate(struct i2s_dev_s *dev, uint32_t rate)
+static int32_t i2s_rxsamplerate(struct i2s_dev_s *dev, uint32_t rate)
{
struct esp_i2s_s *priv = (struct esp_i2s_s *)dev;
@@ -2852,7 +2852,7 @@ static uint32_t i2s_rxsamplerate(struct i2s_dev_s *dev,
uint32_t rate)
****************************************************************************/
#ifdef I2S_HAVE_TX
-static uint32_t i2s_txdatawidth(struct i2s_dev_s *dev, int bits)
+static int32_t i2s_txdatawidth(struct i2s_dev_s *dev, int bits)
{
struct esp_i2s_s *priv = (struct esp_i2s_s *)dev;
@@ -2890,7 +2890,7 @@ static uint32_t i2s_txdatawidth(struct i2s_dev_s *dev,
int bits)
****************************************************************************/
#ifdef I2S_HAVE_RX
-static uint32_t i2s_rxdatawidth(struct i2s_dev_s *dev, int bits)
+static int32_t i2s_rxdatawidth(struct i2s_dev_s *dev, int bits)
{
struct esp_i2s_s *priv = (struct esp_i2s_s *)dev;
diff --git a/arch/xtensa/src/esp32/esp32_i2s.c
b/arch/xtensa/src/esp32/esp32_i2s.c
index 7848bf5361d..09f943f5c2e 100644
--- a/arch/xtensa/src/esp32/esp32_i2s.c
+++ b/arch/xtensa/src/esp32/esp32_i2s.c
@@ -336,8 +336,8 @@ static void i2s_rx_schedule(struct esp32_i2s_s
*priv,
static uint32_t i2s_set_datawidth(struct esp32_i2s_s *priv);
static uint32_t i2s_set_clock(struct esp32_i2s_s *priv);
-static uint32_t i2s_getmclkfrequency(struct i2s_dev_s *dev);
-static uint32_t i2s_setmclkfrequency(struct i2s_dev_s *dev,
+static int32_t i2s_getmclkfrequency(struct i2s_dev_s *dev);
+static int32_t i2s_setmclkfrequency(struct i2s_dev_s *dev,
uint32_t frequency);
static int i2s_ioctl(struct i2s_dev_s *dev, int cmd, unsigned long arg);
@@ -345,8 +345,8 @@ static int i2s_ioctl(struct i2s_dev_s *dev, int cmd,
unsigned long arg);
static void i2s_tx_channel_start(struct esp32_i2s_s *priv);
static void i2s_tx_channel_stop(struct esp32_i2s_s *priv);
static int i2s_txchannels(struct i2s_dev_s *dev, uint8_t channels);
-static uint32_t i2s_txsamplerate(struct i2s_dev_s *dev, uint32_t rate);
-static uint32_t i2s_txdatawidth(struct i2s_dev_s *dev, int bits);
+static int32_t i2s_txsamplerate(struct i2s_dev_s *dev, uint32_t rate);
+static int32_t i2s_txdatawidth(struct i2s_dev_s *dev, int bits);
static int i2s_send(struct i2s_dev_s *dev, struct ap_buffer_s *apb,
i2s_callback_t callback, void *arg,
uint32_t timeout);
@@ -356,8 +356,8 @@ static int i2s_send(struct i2s_dev_s *dev, struct
ap_buffer_s *apb,
static void i2s_rx_channel_start(struct esp32_i2s_s *priv);
static void i2s_rx_channel_stop(struct esp32_i2s_s *priv);
static int i2s_rxchannels(struct i2s_dev_s *dev, uint8_t channels);
-static uint32_t i2s_rxsamplerate(struct i2s_dev_s *dev, uint32_t rate);
-static uint32_t i2s_rxdatawidth(struct i2s_dev_s *dev, int bits);
+static int32_t i2s_rxsamplerate(struct i2s_dev_s *dev, uint32_t rate);
+static int32_t i2s_rxdatawidth(struct i2s_dev_s *dev, int bits);
static void i2s_cleanup_queues(struct esp32_i2s_s *priv);
static int i2s_receive(struct i2s_dev_s *dev, struct ap_buffer_s *apb,
i2s_callback_t callback, void *arg,
@@ -2349,7 +2349,7 @@ static int i2s_interrupt(int irq, void *context, void
*arg)
*
****************************************************************************/
-static uint32_t i2s_getmclkfrequency(struct i2s_dev_s *dev)
+static int32_t i2s_getmclkfrequency(struct i2s_dev_s *dev)
{
struct esp32_i2s_s *priv = (struct esp32_i2s_s *)dev;
@@ -2373,7 +2373,7 @@ static uint32_t i2s_getmclkfrequency(struct i2s_dev_s
*dev)
*
****************************************************************************/
-static uint32_t i2s_setmclkfrequency(struct i2s_dev_s *dev,
+static int32_t i2s_setmclkfrequency(struct i2s_dev_s *dev,
uint32_t frequency)
{
struct esp32_i2s_s *priv = (struct esp32_i2s_s *)dev;
@@ -2481,7 +2481,7 @@ static int i2s_rxchannels(struct i2s_dev_s *dev, uint8_t
channels)
****************************************************************************/
#ifdef I2S_HAVE_TX
-static uint32_t i2s_txsamplerate(struct i2s_dev_s *dev, uint32_t rate)
+static int32_t i2s_txsamplerate(struct i2s_dev_s *dev, uint32_t rate)
{
struct esp32_i2s_s *priv = (struct esp32_i2s_s *)dev;
@@ -2518,7 +2518,7 @@ static uint32_t i2s_txsamplerate(struct i2s_dev_s *dev,
uint32_t rate)
****************************************************************************/
#ifdef I2S_HAVE_RX
-static uint32_t i2s_rxsamplerate(struct i2s_dev_s *dev, uint32_t rate)
+static int32_t i2s_rxsamplerate(struct i2s_dev_s *dev, uint32_t rate)
{
struct esp32_i2s_s *priv = (struct esp32_i2s_s *)dev;
@@ -2556,7 +2556,7 @@ static uint32_t i2s_rxsamplerate(struct i2s_dev_s *dev,
uint32_t rate)
****************************************************************************/
#ifdef I2S_HAVE_TX
-static uint32_t i2s_txdatawidth(struct i2s_dev_s *dev, int bits)
+static int32_t i2s_txdatawidth(struct i2s_dev_s *dev, int bits)
{
struct esp32_i2s_s *priv = (struct esp32_i2s_s *)dev;
@@ -2594,7 +2594,7 @@ static uint32_t i2s_txdatawidth(struct i2s_dev_s *dev,
int bits)
****************************************************************************/
#ifdef I2S_HAVE_RX
-static uint32_t i2s_rxdatawidth(struct i2s_dev_s *dev, int bits)
+static int32_t i2s_rxdatawidth(struct i2s_dev_s *dev, int bits)
{
struct esp32_i2s_s *priv = (struct esp32_i2s_s *)dev;
diff --git a/arch/xtensa/src/esp32s2/esp32s2_i2s.c
b/arch/xtensa/src/esp32s2/esp32s2_i2s.c
index 9084bc04cd9..3ca369cf7a8 100644
--- a/arch/xtensa/src/esp32s2/esp32s2_i2s.c
+++ b/arch/xtensa/src/esp32s2/esp32s2_i2s.c
@@ -320,8 +320,8 @@ static void i2s_rx_schedule(struct esp32s2_i2s_s *priv,
static uint32_t i2s_set_datawidth(struct esp32s2_i2s_s *priv);
static uint32_t i2s_set_clock(struct esp32s2_i2s_s *priv);
-static uint32_t i2s_getmclkfrequency(struct i2s_dev_s *dev);
-static uint32_t i2s_setmclkfrequency(struct i2s_dev_s *dev,
+static int32_t i2s_getmclkfrequency(struct i2s_dev_s *dev);
+static int32_t i2s_setmclkfrequency(struct i2s_dev_s *dev,
uint32_t frequency);
static int i2s_ioctl(struct i2s_dev_s *dev, int cmd, unsigned long arg);
@@ -329,8 +329,8 @@ static int i2s_ioctl(struct i2s_dev_s *dev, int cmd,
unsigned long arg);
static void i2s_tx_channel_start(struct esp32s2_i2s_s *priv);
static void i2s_tx_channel_stop(struct esp32s2_i2s_s *priv);
static int i2s_txchannels(struct i2s_dev_s *dev, uint8_t channels);
-static uint32_t i2s_txsamplerate(struct i2s_dev_s *dev, uint32_t rate);
-static uint32_t i2s_txdatawidth(struct i2s_dev_s *dev, int bits);
+static int32_t i2s_txsamplerate(struct i2s_dev_s *dev, uint32_t rate);
+static int32_t i2s_txdatawidth(struct i2s_dev_s *dev, int bits);
static int i2s_send(struct i2s_dev_s *dev, struct ap_buffer_s *apb,
i2s_callback_t callback, void *arg,
uint32_t timeout);
@@ -340,8 +340,8 @@ static int i2s_send(struct i2s_dev_s *dev, struct
ap_buffer_s *apb,
static void i2s_rx_channel_start(struct esp32s2_i2s_s *priv);
static void i2s_rx_channel_stop(struct esp32s2_i2s_s *priv);
static int i2s_rxchannels(struct i2s_dev_s *dev, uint8_t channels);
-static uint32_t i2s_rxsamplerate(struct i2s_dev_s *dev, uint32_t rate);
-static uint32_t i2s_rxdatawidth(struct i2s_dev_s *dev, int bits);
+static int32_t i2s_rxsamplerate(struct i2s_dev_s *dev, uint32_t rate);
+static int32_t i2s_rxdatawidth(struct i2s_dev_s *dev, int bits);
static int i2s_receive(struct i2s_dev_s *dev, struct ap_buffer_s *apb,
i2s_callback_t callback, void *arg,
uint32_t timeout);
@@ -2063,7 +2063,7 @@ static void i2s_interrupt(void *arg)
*
****************************************************************************/
-static uint32_t i2s_getmclkfrequency(struct i2s_dev_s *dev)
+static int32_t i2s_getmclkfrequency(struct i2s_dev_s *dev)
{
struct esp32s2_i2s_s *priv = (struct esp32s2_i2s_s *)dev;
@@ -2087,7 +2087,7 @@ static uint32_t i2s_getmclkfrequency(struct i2s_dev_s
*dev)
*
****************************************************************************/
-static uint32_t i2s_setmclkfrequency(struct i2s_dev_s *dev,
+static int32_t i2s_setmclkfrequency(struct i2s_dev_s *dev,
uint32_t frequency)
{
struct esp32s2_i2s_s *priv = (struct esp32s2_i2s_s *)dev;
@@ -2211,7 +2211,7 @@ static int i2s_rxchannels(struct i2s_dev_s *dev, uint8_t
channels)
****************************************************************************/
#ifdef I2S_HAVE_TX
-static uint32_t i2s_txsamplerate(struct i2s_dev_s *dev, uint32_t rate)
+static int32_t i2s_txsamplerate(struct i2s_dev_s *dev, uint32_t rate)
{
struct esp32s2_i2s_s *priv = (struct esp32s2_i2s_s *)dev;
@@ -2248,7 +2248,7 @@ static uint32_t i2s_txsamplerate(struct i2s_dev_s *dev,
uint32_t rate)
****************************************************************************/
#ifdef I2S_HAVE_RX
-static uint32_t i2s_rxsamplerate(struct i2s_dev_s *dev, uint32_t rate)
+static int32_t i2s_rxsamplerate(struct i2s_dev_s *dev, uint32_t rate)
{
struct esp32s2_i2s_s *priv = (struct esp32s2_i2s_s *)dev;
@@ -2286,7 +2286,7 @@ static uint32_t i2s_rxsamplerate(struct i2s_dev_s *dev,
uint32_t rate)
****************************************************************************/
#ifdef I2S_HAVE_TX
-static uint32_t i2s_txdatawidth(struct i2s_dev_s *dev, int bits)
+static int32_t i2s_txdatawidth(struct i2s_dev_s *dev, int bits)
{
struct esp32s2_i2s_s *priv = (struct esp32s2_i2s_s *)dev;
@@ -2324,7 +2324,7 @@ static uint32_t i2s_txdatawidth(struct i2s_dev_s *dev,
int bits)
****************************************************************************/
#ifdef I2S_HAVE_RX
-static uint32_t i2s_rxdatawidth(struct i2s_dev_s *dev, int bits)
+static int32_t i2s_rxdatawidth(struct i2s_dev_s *dev, int bits)
{
struct esp32s2_i2s_s *priv = (struct esp32s2_i2s_s *)dev;
diff --git a/include/nuttx/audio/i2s.h b/include/nuttx/audio/i2s.h
index 618ec03bb50..30d659e4cfc 100644
--- a/include/nuttx/audio/i2s.h
+++ b/include/nuttx/audio/i2s.h
@@ -166,7 +166,7 @@
* channel - The I2S channel num
*
* Returned Value:
- * Returns the number of RX channels
+ * Returns the number of RX channels or negated errno on failure.
*
****************************************************************************/
@@ -187,7 +187,7 @@
* rate - The I2S sample rate in samples (not bits) per second
*
* Returned Value:
- * Returns the resulting bitrate
+ * Returns the resulting bitrate or negated errno on failure.
*
****************************************************************************/
@@ -206,7 +206,7 @@
* width - The I2S data with in bits.
*
* Returned Value:
- * Returns the resulting bitrate
+ * Returns the resulting bitrate or negated errno on failure.
*
****************************************************************************/
@@ -258,7 +258,7 @@
* channel - The I2S channel num
*
* Returned Value:
- * Returns the number of TX channels
+ * Returns the number of TX channels or negated errno on failure.
*
****************************************************************************/
@@ -279,7 +279,7 @@
* rate - The I2S sample rate in samples (not bits) per second
*
* Returned Value:
- * Returns the resulting bitrate
+ * Returns the resulting bitrate or negated errno on failure.
*
****************************************************************************/
@@ -298,7 +298,7 @@
* width - The I2S data with in bits.
*
* Returned Value:
- * Returns the resulting bitrate
+ * Returns the resulting bitrate or negated errno on failure.
*
****************************************************************************/
@@ -418,10 +418,10 @@ struct i2s_ops_s
CODE int (*i2s_rxchannels)(FAR struct i2s_dev_s *dev,
uint8_t channels);
- CODE uint32_t (*i2s_rxsamplerate)(FAR struct i2s_dev_s *dev,
+ CODE int32_t (*i2s_rxsamplerate)(FAR struct i2s_dev_s *dev,
uint32_t rate);
- CODE uint32_t (*i2s_rxdatawidth)(FAR struct i2s_dev_s *dev,
- int bits);
+ CODE int32_t (*i2s_rxdatawidth)(FAR struct i2s_dev_s *dev,
+ int bits);
CODE int (*i2s_receive)(FAR struct i2s_dev_s *dev,
FAR struct ap_buffer_s *apb,
i2s_callback_t callback,
@@ -432,9 +432,9 @@ struct i2s_ops_s
CODE int (*i2s_txchannels)(FAR struct i2s_dev_s *dev,
uint8_t channels);
- CODE uint32_t (*i2s_txsamplerate)(FAR struct i2s_dev_s *dev,
+ CODE int32_t (*i2s_txsamplerate)(FAR struct i2s_dev_s *dev,
uint32_t rate);
- CODE uint32_t (*i2s_txdatawidth)(FAR struct i2s_dev_s *dev,
+ CODE int32_t (*i2s_txdatawidth)(FAR struct i2s_dev_s *dev,
int bits);
CODE int (*i2s_send)(FAR struct i2s_dev_s *dev,
FAR struct ap_buffer_s *apb,
@@ -444,8 +444,8 @@ struct i2s_ops_s
/* Master Clock methods */
- CODE uint32_t (*i2s_getmclkfrequency)(FAR struct i2s_dev_s *dev);
- CODE uint32_t (*i2s_setmclkfrequency)(FAR struct i2s_dev_s *dev,
+ CODE int32_t (*i2s_getmclkfrequency)(FAR struct i2s_dev_s *dev);
+ CODE int32_t (*i2s_setmclkfrequency)(FAR struct i2s_dev_s *dev,
uint32_t frequency);
/* Ioctl */