feat(i2s): add BLE destination config for esp32s31

This commit is contained in:
Chen Chen
2026-05-19 17:31:48 +08:00
parent 8f28ebb6d1
commit 145bf152de
28 changed files with 850 additions and 60 deletions
@@ -27,6 +27,7 @@
#define I2S_LL_SUPPORT(_feat) I2S_LL_SUPPORT_ ## _feat
#define I2S_LL_BUS_WIDTH 24
#define I2S_LL_INST_NUM 1
#define I2S_LL_PDM_SUPPORTED_PORT_MASK (1U << 0) // PDM is supported on I2S0
#ifdef __cplusplus
extern "C" {
@@ -1015,6 +1016,51 @@ static inline void i2s_ll_tx_stop_on_fifo_empty(i2s_dev_t *hw, bool en)
hw->conf1.tx_stop_en = en;
}
/**
* @brief Set I2S data destination
*/
static inline void i2s_ll_set_destination(i2s_dev_t *hw, i2s_dir_t dir, i2s_destination_t destination)
{
(void)hw;
(void)dir;
(void)destination;
}
/**
* @brief Check whether an I2S data destination is supported on the specified port
*/
static inline bool i2s_ll_is_destination_supported(int port_id, i2s_destination_t destination)
{
(void)port_id;
return destination == I2S_DESTINATION_DMA;
}
/**
* @brief Check whether I2S PDM mode is supported on the specified port
*/
static inline bool i2s_ll_is_pdm_supported(int port_id)
{
return (I2S_LL_PDM_SUPPORTED_PORT_MASK & (1U << port_id)) != 0;
}
/**
* @brief Check whether I2S TX PCM2PDM converter is supported on the specified port
*/
static inline bool i2s_ll_is_pcm2pdm_supported(int port_id)
{
(void)port_id;
return false;
}
/**
* @brief Check whether I2S RX PDM2PCM converter is supported on the specified port
*/
static inline bool i2s_ll_is_pdm2pcm_supported(int port_id)
{
(void)port_id;
return false;
}
#ifdef __cplusplus
}
#endif