drivers: audio: Port to the new timeout API

Port the I2S and DMIC drivers to the new timeout API so that they do
not need to enable legacy timeouts.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
This commit is contained in:
Carles Cufi 2020-05-04 13:13:36 +02:00 committed by Carles Cufí
commit 9ba20dd48e
8 changed files with 20 additions and 15 deletions

View file

@ -8,7 +8,6 @@
#
menuconfig I2S
bool "I2S bus drivers"
select LEGACY_TIMEOUT_API
help
Enable support for the I2S (Inter-IC Sound) hardware bus.

View file

@ -779,7 +779,8 @@ static int i2s_cavs_read(struct device *dev, void **mem_block, size_t *size)
return -EIO;
}
ret = k_msgq_get(&strm->out_queue, &buffer, dev_data->cfg.timeout);
ret = k_msgq_get(&strm->out_queue, &buffer,
SYS_TIMEOUT_MS(dev_data->cfg.timeout));
if (ret != 0) {
return -EAGAIN;
}
@ -803,7 +804,8 @@ static int i2s_cavs_write(struct device *dev, void *mem_block, size_t size)
SOC_DCACHE_FLUSH(mem_block, size);
ret = k_msgq_put(&strm->in_queue, &mem_block, dev_data->cfg.timeout);
ret = k_msgq_put(&strm->in_queue, &mem_block,
SYS_TIMEOUT_MS(dev_data->cfg.timeout));
if (ret) {
LOG_ERR("k_msgq_put failed %d", ret);
return ret;

View file

@ -384,7 +384,7 @@ static int i2s_stm32_read(struct device *dev, void **mem_block, size_t *size)
if (dev_data->rx.state != I2S_STATE_ERROR) {
ret = k_sem_take(&dev_data->rx.sem,
K_MSEC(dev_data->rx.cfg.timeout));
SYS_TIMEOUT_MS(dev_data->rx.cfg.timeout));
if (ret < 0) {
return ret;
}
@ -410,7 +410,8 @@ static int i2s_stm32_write(struct device *dev, void *mem_block, size_t size)
return -EIO;
}
ret = k_sem_take(&dev_data->tx.sem, K_MSEC(dev_data->tx.cfg.timeout));
ret = k_sem_take(&dev_data->tx.sem,
SYS_TIMEOUT_MS(dev_data->tx.cfg.timeout));
if (ret < 0) {
return ret;
}

View file

@ -840,7 +840,8 @@ static int i2s_sam_read(struct device *dev, void **mem_block, size_t *size)
}
if (dev_data->rx.state != I2S_STATE_ERROR) {
ret = k_sem_take(&dev_data->rx.sem, dev_data->rx.cfg.timeout);
ret = k_sem_take(&dev_data->rx.sem,
SYS_TIMEOUT_MS(dev_data->rx.cfg.timeout));
if (ret < 0) {
return ret;
}
@ -866,7 +867,8 @@ static int i2s_sam_write(struct device *dev, void *mem_block, size_t size)
return -EIO;
}
ret = k_sem_take(&dev_data->tx.sem, dev_data->tx.cfg.timeout);
ret = k_sem_take(&dev_data->tx.sem,
SYS_TIMEOUT_MS(dev_data->tx.cfg.timeout));
if (ret < 0) {
return ret;
}