Lines Matching refs:i2s_config

1228 static void i2s_mode_identify(i2s_port_t i2s_num, const i2s_config_t *i2s_config)  in i2s_mode_identify()  argument
1233 if (i2s_config->mode & I2S_MODE_MASTER) { in i2s_mode_identify()
1235 } else if (i2s_config->mode & I2S_MODE_SLAVE) { in i2s_mode_identify()
1238 if (i2s_config->mode & I2S_MODE_TX) { in i2s_mode_identify()
1241 if (i2s_config->mode & I2S_MODE_RX) { in i2s_mode_identify()
1245 if (i2s_config->mode & I2S_MODE_PDM) { in i2s_mode_identify()
1251 if (i2s_config->channel_format == I2S_CHANNEL_FMT_MULTIPLE) { in i2s_mode_identify()
1257 if ((i2s_config->mode & I2S_MODE_DAC_BUILT_IN) || in i2s_mode_identify()
1258 (i2s_config->mode & I2S_MODE_ADC_BUILT_IN)) { in i2s_mode_identify()
1264 static esp_err_t i2s_config_transfer(i2s_port_t i2s_num, const i2s_config_t *i2s_config) in i2s_config_transfer() argument
1269 p_i2s[i2s_num]->slot_cfg.data_bit_width = i2s_config->bits_per_sample; in i2s_config_transfer()
1270 …p_i2s[i2s_num]->slot_cfg.slot_bit_width = (int)i2s_config->bits_per_chan < (int)i2s_config->bits_p… in i2s_config_transfer()
1271 i2s_config->bits_per_sample : i2s_config->bits_per_chan; in i2s_config_transfer()
1273 p_i2s[i2s_num]->slot_cfg.slot_mode = i2s_config->channel_format < I2S_CHANNEL_FMT_ONLY_RIGHT ? in i2s_config_transfer()
1275 CLK_CFG().sample_rate_hz = i2s_config->sample_rate; in i2s_config_transfer()
1276 …CLK_CFG().mclk_multiple = i2s_config->mclk_multiple == 0 ? I2S_MCLK_MULTIPLE_256 : i2s_config->mcl… in i2s_config_transfer()
1278 p_i2s[i2s_num]->fixed_mclk = i2s_config->fixed_mclk; in i2s_config_transfer()
1281 CLK_CFG().clk_src = i2s_config->use_apll ? I2S_CLK_SRC_APLL : I2S_CLK_SRC_DEFAULT; in i2s_config_transfer()
1282 p_i2s[i2s_num]->use_apll = i2s_config->use_apll; in i2s_config_transfer()
1288 SLOT_CFG(std).ws_width = i2s_config->bits_per_sample; in i2s_config_transfer()
1290 if (i2s_config->channel_format == I2S_CHANNEL_FMT_RIGHT_LEFT) { in i2s_config_transfer()
1292 } else if (i2s_config->channel_format == I2S_CHANNEL_FMT_ALL_LEFT || in i2s_config_transfer()
1293 i2s_config->channel_format == I2S_CHANNEL_FMT_ONLY_LEFT) { in i2s_config_transfer()
1298 if (i2s_config->communication_format == I2S_COMM_FORMAT_STAND_I2S) { in i2s_config_transfer()
1301 if (i2s_config->communication_format & I2S_COMM_FORMAT_STAND_PCM_SHORT) { in i2s_config_transfer()
1309 SLOT_CFG(std).left_align = i2s_config->left_align; in i2s_config_transfer()
1310 SLOT_CFG(std).big_endian = i2s_config->big_edin; in i2s_config_transfer()
1311 SLOT_CFG(std).bit_order_lsb = i2s_config->bit_order_msb; // The old name is incorrect in i2s_config_transfer()
1336 CLK_CFG().up_sample_fs = i2s_config->sample_rate / 100; in i2s_config_transfer()
1356 SLOT_CFG(tdm).slot_mask = i2s_config->chan_mask >> 16; in i2s_config_transfer()
1361 if (i2s_config->communication_format == I2S_COMM_FORMAT_STAND_I2S) { in i2s_config_transfer()
1363 } else if (i2s_config->communication_format == I2S_COMM_FORMAT_STAND_PCM_SHORT) { in i2s_config_transfer()
1367 } else if (i2s_config->communication_format == I2S_COMM_FORMAT_STAND_PCM_LONG) { in i2s_config_transfer()
1372 SLOT_CFG(tdm).left_align = i2s_config->left_align; in i2s_config_transfer()
1373 SLOT_CFG(tdm).big_endian = i2s_config->big_edin; in i2s_config_transfer()
1374 SLOT_CFG(tdm).bit_order_lsb = i2s_config->bit_order_msb; // The old name is incorrect in i2s_config_transfer()
1375 SLOT_CFG(tdm).skip_mask = i2s_config->skip_msk; in i2s_config_transfer()
1381 … p_i2s[i2s_num]->total_slot = mx_slot < i2s_config->total_chan ? mx_slot : i2s_config->total_chan; in i2s_config_transfer()
1574 esp_err_t i2s_driver_install(i2s_port_t i2s_num, const i2s_config_t *i2s_config, int queue_size, vo… in i2s_driver_install() argument
1582 …ESP_RETURN_ON_ERROR(i2s_check_cfg_validity(i2s_num, i2s_config), TAG, "I2S configuration is invali… in i2s_driver_install()
1596 i2s_mode_identify(i2s_num, i2s_config); in i2s_driver_install()
1597 ESP_GOTO_ON_ERROR(i2s_config_transfer(i2s_num, i2s_config), err, TAG, "I2S install failed"); in i2s_driver_install()
1598 i2s_obj->dma_desc_num = i2s_config->dma_desc_num; in i2s_driver_install()
1599 i2s_obj->dma_frame_num = i2s_config->dma_frame_num; in i2s_driver_install()
1600 i2s_obj->tx_desc_auto_clear = i2s_config->tx_desc_auto_clear; in i2s_driver_install()
1603 …ESP_GOTO_ON_ERROR(i2s_init_legacy(i2s_num, i2s_config->intr_alloc_flags), err, TAG, "I2S init fail… in i2s_driver_install()