49namespace tlv320aic3110_detail {
59 return (
static_cast<RegAddr>(page) << 8) | reg;
188 (1 << 7) | (1 << 6) | (1 << 4) | (1 << 2);
293 bool begin(uint32_t sample_rate, uint8_t bits) {
294 return begin(12000000, sample_rate, bits);
298 i2s_format_t fmt,
bool is_master, uint8_t channels)
override {
303 return begin(sample_rate, bits);
306 bool begin(uint32_t mclk = 12000000, uint32_t sample_rate = 44100,
307 uint8_t word_size = 16,
bool bclk_master =
false) {
324 bool configureDai(uint8_t word_size,
bool bclk_master,
bool wclk_master) {
357 uint8_t word_size,
bool bclk_master) {
362 for (
size_t i = 0; i < count; i++) {
363 if (table[i].rate == sample_rate && table[i].mclk == mclk) {
368 if (entry ==
nullptr)
return false;
371 uint8_t p = entry->
pll_p;
373 uint8_t j = entry->
pll_j;
374 uint16_t d = entry->
pll_d;
382 uint8_t madc = entry->
madc;
383 uint8_t nadc = entry->
nadc;
384 uint8_t aosr = entry->
aosr;
385 uint8_t ndac = entry->
ndac;
386 uint8_t mdac = entry->
mdac;
387 uint8_t dosr = entry->
dosr;
391 bclk_div = (dosr * mdac) / (word_size * 2U);
392 if ((bclk_div * word_size * 2) != (dosr * mdac))
return false;
418 uint8_t mclk_div = (uint8_t)((mclk + 999999U) / 1000000U);
427 uint8_t dac_proc_blk, adc_proc_blk;
429 if (sample_rate >= 192000) {
432 }
else if (sample_rate >= 96000) {
545 static const uint8_t vol_array[] = {107, 108, 110, 113, 116, 120,
546 125, 128, 132, 138, 144};
547 static constexpr size_t vol_array_len =
sizeof(vol_array) /
sizeof(vol_array[0]);
558 size_t vol_index = 0;
559 for (; vol_index < vol_array_len; vol_index++) {
560 if (vol_array[vol_index] >= (uint8_t)vol)
break;
564 vol_val = (uint8_t)vol;
591 uint8_t sp_val = (uint8_t)((mute ? 1U : 0U) << 2U);
643 if (!
writeReg(reg, page))
return false;
664 uint8_t updated = (old & ~mask) | (value & mask);
665 if (updated == old)
return true;
675 {12000000, 8000, 1, 8, 1920, 128, 48, 2, 128, 48, 2},
676 {24000000, 8000, 2, 8, 1920, 128, 48, 2, 128, 48, 2},
677 {25000000, 8000, 2, 7, 8643, 128, 48, 2, 128, 48, 2},
679 {12000000, 11025, 1, 7, 5264, 128, 32, 2, 128, 32, 2},
680 {24000000, 11025, 2, 7, 5264, 128, 32, 2, 128, 32, 2},
681 {25000000, 11025, 2, 7, 2253, 128, 32, 2, 128, 32, 2},
683 {12000000, 16000, 1, 8, 1920, 128, 24, 2, 128, 24, 2},
684 {24000000, 16000, 2, 8, 1920, 128, 24, 2, 128, 24, 2},
685 {25000000, 16000, 2, 7, 8643, 128, 24, 2, 128, 24, 2},
687 {12000000, 22050, 1, 7, 5264, 128, 16, 2, 128, 16, 2},
688 {24000000, 22050, 2, 7, 5264, 128, 16, 2, 128, 16, 2},
689 {25000000, 22050, 2, 7, 2253, 128, 16, 2, 128, 16, 2},
691 {12000000, 32000, 1, 8, 1920, 128, 12, 2, 128, 12, 2},
692 {24000000, 32000, 2, 8, 1920, 128, 12, 2, 128, 12, 2},
693 {25000000, 32000, 2, 7, 8643, 128, 12, 2, 128, 12, 2},
695 {12000000, 44100, 1, 7, 5264, 128, 8, 2, 128, 8, 2},
696 {24000000, 44100, 2, 7, 5264, 128, 8, 2, 128, 8, 2},
697 {25000000, 44100, 2, 7, 2253, 128, 8, 2, 128, 8, 2},
699 {12000000, 48000, 1, 8, 1920, 128, 8, 2, 128, 8, 2},
700 {24000000, 48000, 2, 8, 1920, 128, 8, 2, 128, 8, 2},
701 {25000000, 48000, 2, 7, 8643, 128, 8, 2, 128, 8, 2},
703 {12000000, 88200, 1, 7, 5264, 64, 8, 2, 64, 8, 2},
704 {24000000, 88200, 2, 7, 5264, 64, 8, 2, 64, 8, 2},
705 {25000000, 88200, 2, 7, 2253, 64, 8, 2, 64, 8, 2},
707 {12000000, 96000, 1, 8, 1920, 64, 8, 2, 64, 8, 2},
708 {24000000, 96000, 2, 8, 1920, 64, 8, 2, 64, 8, 2},
709 {25000000, 96000, 2, 7, 8643, 64, 8, 2, 64, 8, 2},
711 {12000000, 176400, 1, 7, 5264, 32, 8, 2, 32, 8, 2},
712 {24000000, 176400, 2, 7, 5264, 32, 8, 2, 32, 8, 2},
713 {25000000, 176400, 2, 7, 2253, 32, 8, 2, 32, 8, 2},
715 {12000000, 192000, 1, 8, 1920, 32, 8, 2, 32, 8, 2},
716 {24000000, 192000, 2, 8, 1920, 32, 8, 2, 32, 8, 2},
717 {25000000, 192000, 2, 7, 8643, 32, 8, 2, 32, 8, 2},
719 count =
sizeof(table) /
sizeof(table[0]);
Header only C++ driver for the TLV320AIC3110 audio codec.
Definition TLV320AIC3110.h:74
static constexpr RegAddr NDAC_DIV_ADDR
Definition TLV320AIC3110.h:94
static constexpr uint8_t MDAC_POWER_UP
Definition TLV320AIC3110.h:155
static constexpr RegAddr TIMER_MCLK_DIV_ADDR
Definition TLV320AIC3110.h:141
static const RateDivs * pllDivTable(size_t &count)
PLL/clock divider table indexed by (mclk, sample rate)
Definition TLV320AIC3110.h:672
static constexpr uint8_t NDAC_POWER_UP
Definition TLV320AIC3110.h:153
bool setOutputMute(bool mute, AIC3110Channel channel=AIC3110Channel::All)
Mute / unmute the headphone and/or speaker driver(s)
Definition TLV320AIC3110.h:589
static constexpr uint8_t MIC_FCTRL_DEFAULT
Definition TLV320AIC3110.h:244
static constexpr RegAddr SPR_ANA_VOL_CTRL_ADDR
Definition TLV320AIC3110.h:128
static constexpr RegAddr L_DIG_VOL_CTRL_ADDR
Definition TLV320AIC3110.h:108
bool setDevices(input_device_t input_device, output_device_t output_device) override
Stores the output device selection for use by configureOutput()
Definition TLV320AIC3110.h:628
bool begin(uint32_t sample_rate, uint8_t bits)
Initialize the codec: soft reset, configure the PLL/clock dividers for the given MCLK and sample rate...
Definition TLV320AIC3110.h:293
static uint8_t MDAC_DIV(uint8_t val)
Definition TLV320AIC3110.h:165
static constexpr RegAddr SPL_ANA_VOL_CTRL_ADDR
Definition TLV320AIC3110.h:127
bool setOutputVolume(int vol, AIC3110Channel channel=AIC3110Channel::All)
Set the output (headphone / speaker) volume.
Definition TLV320AIC3110.h:544
static constexpr uint8_t OSR_MSB_MASK
Definition TLV320AIC3110.h:157
static constexpr uint8_t IF_CTRL_IFTYPE_DSP
Definition TLV320AIC3110.h:172
static constexpr RegAddr BCLK_DIV_ADDR
Definition TLV320AIC3110.h:102
static constexpr uint8_t HPX_DRV_UNMUTE
Definition TLV320AIC3110.h:233
static constexpr RegAddr ADC_PROC_BLK_SEL_ADDR
Definition TLV320AIC3110.h:105
static constexpr uint8_t SOFT_RESET_ASSERT
Definition TLV320AIC3110.h:144
static constexpr uint8_t MIC_CCTRL_DEFAULT
Definition TLV320AIC3110.h:245
static constexpr uint8_t SPX_ANA_VOL_FLOOR
Definition TLV320AIC3110.h:230
static constexpr RegAddr BEEP_LEN_MSB_ADDR
Definition TLV320AIC3110.h:112
static uint8_t BCLK_DIV(uint8_t val)
Definition TLV320AIC3110.h:168
static constexpr RegAddr HPL_ANA_VOL_CTRL_ADDR
Definition TLV320AIC3110.h:125
static constexpr uint8_t PLL_R_MASK
Definition TLV320AIC3110.h:149
static constexpr RegAddr DATA_PATH_SETUP_ADDR
Definition TLV320AIC3110.h:106
static uint8_t NADC_DIV(uint8_t val)
Definition TLV320AIC3110.h:166
bool softReset()
Soft reset of the codec.
Definition TLV320AIC3110.h:321
static uint8_t HEADPHONE_DRV_CM(uint8_t val)
Definition TLV320AIC3110.h:199
static constexpr uint8_t SPEAKER_DRV_RESERVED
Definition TLV320AIC3110.h:240
static uint8_t IF_CTRL_IFTYPE(uint8_t val)
Definition TLV320AIC3110.h:175
static constexpr uint8_t IF_CTRL_IFTYPE_RJF
Definition TLV320AIC3110.h:173
static uint8_t TIMER_MCLK_DIV_VAL(uint8_t val)
Definition TLV320AIC3110.h:254
static constexpr RegAddr MIC_CCTRL_ADDR
Definition TLV320AIC3110.h:118
static constexpr uint8_t HPX_ANA_VOL_MAX
Definition TLV320AIC3110.h:217
static constexpr uint8_t HPX_ANA_VOL_LOW_THRESH
Definition TLV320AIC3110.h:220
static constexpr uint8_t OUTPUT_ROUTING_HPR
Definition TLV320AIC3110.h:208
static constexpr uint8_t MDAC_DIV_MASK
Definition TLV320AIC3110.h:156
static constexpr RegAddr MIC_FCTRL_ADDR
Definition TLV320AIC3110.h:117
static constexpr uint8_t NDAC_DIV_MASK
Definition TLV320AIC3110.h:154
static constexpr RegAddr PLL_P_R_ADDR
Definition TLV320AIC3110.h:90
static constexpr RegAddr SOFT_RESET_ADDR
Definition TLV320AIC3110.h:88
bool configureInput()
Configure the microphone input path: power up the ADC, set the microphone bias, unmute the input,...
Definition TLV320AIC3110.h:527
bool setMute(bool mute) override
Mutes/unmutes all outputs.
Definition TLV320AIC3110.h:625
static uint8_t HPX_ANA_VOL(uint8_t val)
Definition TLV320AIC3110.h:214
static constexpr uint8_t IF_CTRL_WLEN_32
Definition TLV320AIC3110.h:179
static constexpr uint8_t HPX_ANA_VOL_ENABLE
Definition TLV320AIC3110.h:212
static constexpr uint8_t OUTPUT_ROUTING_MIXER
Definition TLV320AIC3110.h:209
static constexpr uint8_t regAddrReg(RegAddr addr)
Definition TLV320AIC3110.h:83
output_device_t output_device
Output device selection set via setDevices(), used by configureOutput()
Definition TLV320AIC3110.h:637
static constexpr uint8_t NADC_DIV_MASK
Definition TLV320AIC3110.h:160
static constexpr RegAddr BEEP_LEN_MIB_ADDR
Definition TLV320AIC3110.h:113
bool begin(uint32_t mclk=12000000, uint32_t sample_rate=44100, uint8_t word_size=16, bool bclk_master=false)
Definition TLV320AIC3110.h:306
static constexpr RegAddr HP_OUT_POP_RM_ADDR
Definition TLV320AIC3110.h:123
bool configureOutput()
Configure the headphone and/or speaker output paths (depending on the output device selected via setD...
Definition TLV320AIC3110.h:469
static constexpr uint8_t VOL_CTRL_MUTE_DEFAULT
Definition TLV320AIC3110.h:192
static constexpr uint8_t MIC_PGAPI_L_DEFAULT
Definition TLV320AIC3110.h:248
static constexpr uint8_t HPX_DRV_RESERVED
Definition TLV320AIC3110.h:234
static constexpr RegAddr HPR_DRV_GAIN_CTRL_ADDR
Definition TLV320AIC3110.h:130
static constexpr int CODEC_OUTPUT_VOLUME_MIN
Definition TLV320AIC3110.h:260
uint8_t current_page
Definition TLV320AIC3110.h:635
static constexpr RegAddr MIC_ICM_ADDR
Definition TLV320AIC3110.h:138
static constexpr uint8_t OUTPUT_ROUTING_HPL
Definition TLV320AIC3110.h:207
static constexpr RegAddr MIC_PGAPI_ADDR
Definition TLV320AIC3110.h:136
static constexpr RegAddr CLOCK_GEN_MUX_ADDR
Definition TLV320AIC3110.h:89
static constexpr RegAddr PLL_D_LSB_ADDR
Definition TLV320AIC3110.h:93
static constexpr uint8_t MADC_DIV_MASK
Definition TLV320AIC3110.h:162
static constexpr int CODEC_OUTPUT_VOLUME_MAX
Output volume range, in 0.5dB steps (-39dB .. 0dB)
Definition TLV320AIC3110.h:259
static constexpr uint8_t VOL_CTRL_UNMUTE_DEFAULT
Definition TLV320AIC3110.h:191
static constexpr RegAddr MIC_BIAS_ADDR
Definition TLV320AIC3110.h:134
static constexpr uint8_t TIMER_MCLK_DIV_EN_EXT
Definition TLV320AIC3110.h:252
static constexpr uint8_t HP_OUT_POP_RM_ENABLE
Definition TLV320AIC3110.h:205
TLV320AIC3110()
Definition TLV320AIC3110.h:277
static constexpr RegAddr regAddr(uint8_t page, uint8_t reg)
Definition TLV320AIC3110.h:77
bool startOutput()
Power up the DAC channels and unmute them.
Definition TLV320AIC3110.h:447
static constexpr uint8_t SPX_ANA_VOL_ENABLE
Definition TLV320AIC3110.h:223
static constexpr uint8_t MICBIAS_DEFAULT
Definition TLV320AIC3110.h:246
static constexpr RegAddr DRC_CTRL1_ADDR
Definition TLV320AIC3110.h:109
static constexpr RegAddr MIC_PGAMI_ADDR
Definition TLV320AIC3110.h:137
static constexpr uint8_t IF_CTRL_WLEN_24
Definition TLV320AIC3110.h:178
static constexpr RegAddr NADC_DIV_ADDR
Definition TLV320AIC3110.h:98
static constexpr RegAddr SPR_DRV_GAIN_CTRL_ADDR
Definition TLV320AIC3110.h:132
bool configureDai(uint8_t word_size, bool bclk_master, bool wclk_master)
Configure the digital audio interface (I2S) word size and clock direction.
Definition TLV320AIC3110.h:324
static constexpr RegAddr OVF_FLAG_ADDR
Definition TLV320AIC3110.h:103
static constexpr uint8_t BEEP_GEN_EN_BEEP
Definition TLV320AIC3110.h:194
static constexpr RegAddr SPEAKER_DRV_ADDR
Definition TLV320AIC3110.h:122
bool updatePagedReg(RegAddr reg, uint8_t mask, uint8_t value)
Read-Modify-Write of a register on the given page.
Definition TLV320AIC3110.h:661
static constexpr uint8_t regAddrPage(RegAddr addr)
Definition TLV320AIC3110.h:80
static constexpr uint8_t MIC_ADC_POWERUP
Definition TLV320AIC3110.h:243
static constexpr RegAddr HEADPHONE_DRV_ADDR
Definition TLV320AIC3110.h:121
static constexpr uint8_t BCLK_DIV_POWER_UP
Definition TLV320AIC3110.h:185
static constexpr uint8_t PLL_POWER_UP
Definition TLV320AIC3110.h:147
static constexpr uint8_t PLL_P_MASK
Definition TLV320AIC3110.h:148
bool readPagedReg(RegAddr reg, uint8_t &value)
Reads a register on the given page.
Definition TLV320AIC3110.h:655
static uint8_t SPX_ANA_VOL(uint8_t val)
Definition TLV320AIC3110.h:225
static constexpr uint8_t IF_CTRL_WLEN_20
Definition TLV320AIC3110.h:177
static constexpr RegAddr BEEP_LEN_LSB_ADDR
Definition TLV320AIC3110.h:114
static constexpr uint8_t SPX_ANA_VOL_DEFAULT
Definition TLV320AIC3110.h:228
static constexpr RegAddr DAC_PROC_BLK_SEL_ADDR
Definition TLV320AIC3110.h:104
static constexpr RegAddr IF_CTRL1_ADDR
Definition TLV320AIC3110.h:101
static constexpr uint8_t HEADPHONE_DRV_CM_MASK
Definition TLV320AIC3110.h:198
static constexpr RegAddr OUTPUT_ROUTING_ADDR
Definition TLV320AIC3110.h:124
static constexpr uint8_t HEADPHONE_DRV_POWERUP
Definition TLV320AIC3110.h:197
static uint8_t PLL_P(uint8_t val)
Definition TLV320AIC3110.h:150
static constexpr uint8_t IF_CTRL_BCLK_OUT
Definition TLV320AIC3110.h:181
bool begin(uint32_t sample_rate, uint8_t bits, codec_mode_t mode, i2s_format_t fmt, bool is_master, uint8_t channels) override
Initializes the codec.
Definition TLV320AIC3110.h:297
static constexpr RegAddr MDAC_DIV_ADDR
Definition TLV320AIC3110.h:95
static constexpr uint8_t OSR_LSB_MASK
Definition TLV320AIC3110.h:158
static constexpr RegAddr HPR_ANA_VOL_CTRL_ADDR
Definition TLV320AIC3110.h:126
static constexpr uint8_t CLOCK_GEN_MUX_DEFAULT
Definition TLV320AIC3110.h:145
static constexpr uint8_t SPX_ANA_VOL_MASK
Definition TLV320AIC3110.h:224
bool selectPage(uint8_t page)
Selects the active register page (writes register 0 of page 0)
Definition TLV320AIC3110.h:640
static constexpr RegAddr OSR_MSB_ADDR
Definition TLV320AIC3110.h:96
static constexpr uint8_t IF_CTRL_WCLK_OUT
Definition TLV320AIC3110.h:182
static constexpr uint8_t HPX_ANA_VOL_DEFAULT
Definition TLV320AIC3110.h:218
static uint8_t MADC_DIV(uint8_t val)
Definition TLV320AIC3110.h:167
static constexpr RegAddr HPL_DRV_GAIN_CTRL_ADDR
Definition TLV320AIC3110.h:129
static uint8_t IF_CTRL_WLEN(uint8_t val)
Definition TLV320AIC3110.h:180
static constexpr uint8_t IF_CTRL_IFTYPE_LJF
Definition TLV320AIC3110.h:174
static constexpr RegAddr L_BEEP_GEN_ADDR
Definition TLV320AIC3110.h:110
static constexpr RegAddr MADC_DIV_ADDR
Definition TLV320AIC3110.h:99
static constexpr RegAddr R_BEEP_GEN_ADDR
Definition TLV320AIC3110.h:111
static constexpr uint8_t TIMER_MCLK_DIV_MASK
Definition TLV320AIC3110.h:253
static constexpr RegAddr MIC_ADC_CTRL_ADDR
Definition TLV320AIC3110.h:116
static constexpr RegAddr MIC_ADC_FLAG_ADDR
Definition TLV320AIC3110.h:115
static constexpr uint8_t DAC_LR_POWERUP_DEFAULT
Definition TLV320AIC3110.h:187
static constexpr uint8_t HEADPHONE_DRV_LINEOUT
Definition TLV320AIC3110.h:203
bool configureClocks(uint32_t mclk, uint32_t sample_rate, uint8_t word_size, bool bclk_master)
Configure the PLL and the NDAC/MDAC/NADC/MADC/(B)OSR clock dividers for the given MCLK and sample rat...
Definition TLV320AIC3110.h:356
tlv320aic3110_detail::RegAddr RegAddr
Definition TLV320AIC3110.h:76
bool stopOutput()
Mute the DAC channels and power them down.
Definition TLV320AIC3110.h:455
static constexpr uint8_t HEADPHONE_DRV_RESERVED
Definition TLV320AIC3110.h:202
bool setVolume(int volume) override
Definition TLV320AIC3110.h:617
static constexpr RegAddr AOSR_ADDR
Definition TLV320AIC3110.h:100
static constexpr RegAddr VOL_CTRL_ADDR
Definition TLV320AIC3110.h:107
static constexpr uint8_t MIC_PGAPI_R_DEFAULT
Definition TLV320AIC3110.h:249
static constexpr uint8_t IF_CTRL_IFTYPE_I2S
Definition TLV320AIC3110.h:171
static constexpr uint8_t DAC_LR_POWERDN_DEFAULT
Definition TLV320AIC3110.h:189
static constexpr uint8_t MIC_PGA_VOL_DEFAULT
Definition TLV320AIC3110.h:247
static constexpr RegAddr HEADPHONE_DRV_CTRL_ADDR
Definition TLV320AIC3110.h:133
static constexpr uint8_t MADC_POWER_UP
Definition TLV320AIC3110.h:161
static constexpr uint8_t HPX_ANA_VOL_MASK
Definition TLV320AIC3110.h:213
static constexpr RegAddr SPL_DRV_GAIN_CTRL_ADDR
Definition TLV320AIC3110.h:131
static constexpr uint8_t SPX_DRV_RESERVED
Definition TLV320AIC3110.h:236
static constexpr uint8_t PAGE_CONTROL_ADDR
Definition TLV320AIC3110.h:669
bool writePagedReg(RegAddr reg, uint8_t value)
Writes a register on the given page.
Definition TLV320AIC3110.h:649
static constexpr uint8_t SPEAKER_DRV_POWERUP
Definition TLV320AIC3110.h:239
static uint8_t PLL_R(uint8_t val)
Definition TLV320AIC3110.h:151
static constexpr uint8_t IF_CTRL_DOUT_HIGH_Z
Definition TLV320AIC3110.h:183
static constexpr uint8_t NADC_POWER_UP
Definition TLV320AIC3110.h:159
static constexpr uint8_t HPX_ANA_VOL_MIN
Definition TLV320AIC3110.h:219
static constexpr RegAddr MIC_PGA_ADDR
Definition TLV320AIC3110.h:135
static constexpr RegAddr OSR_LSB_ADDR
Definition TLV320AIC3110.h:97
static uint8_t NDAC_DIV(uint8_t val)
Definition TLV320AIC3110.h:164
static constexpr uint8_t HPX_ANA_VOL_FLOOR
Definition TLV320AIC3110.h:221
static constexpr uint8_t SPX_DRV_UNMUTE
Definition TLV320AIC3110.h:235
static constexpr RegAddr PLL_D_MSB_ADDR
Definition TLV320AIC3110.h:92
static constexpr uint8_t SPX_ANA_VOL_LOW_THRESH
Definition TLV320AIC3110.h:229
static constexpr uint8_t IF_CTRL_WLEN_16
Definition TLV320AIC3110.h:176
bool configureFilters(uint32_t sample_rate)
Select the DAC/ADC decimation filter (processing block) based on sample rate.
Definition TLV320AIC3110.h:426
static constexpr RegAddr PLL_J_ADDR
Definition TLV320AIC3110.h:91
Common parent class for codec drivers that have been ported from the Zephyr RTOS audio driver impleme...
Definition ZephyrDriverCommon.h:22
uint8_t i2c_addr
Definition ZephyrDriverCommon.h:87
int volume_percent
Last volume (in %) provided to setVolume()
Definition ZephyrDriverCommon.h:89
bool readReg(uint8_t reg, uint8_t &value, bool stopBit=true)
Reads a single byte from an 8 bit register address.
Definition ZephyrDriverCommon.h:100
bool writeReg(uint8_t reg, uint8_t value)
Writes a single byte to an 8 bit register address.
Definition ZephyrDriverCommon.h:94
constexpr uint8_t regAddrPage(RegAddr addr)
Definition TLV320AIC3110.h:61
constexpr uint8_t regAddrReg(RegAddr addr)
Definition TLV320AIC3110.h:62
uint16_t RegAddr
Definition TLV320AIC3110.h:57
constexpr RegAddr regAddr(uint8_t page, uint8_t reg)
Definition TLV320AIC3110.h:58
Namespace for audio driver components.
Definition AudioBoard.h:5
input_device_t
Definition DriverCommon.h:170
codec_mode_t
Definition DriverCommon.h:290
output_device_t
Definition DriverCommon.h:186
@ DAC_OUTPUT_LINE1
Definition DriverCommon.h:188
@ DAC_OUTPUT_ALL
Definition DriverCommon.h:190
@ DAC_OUTPUT_LINE2
Definition DriverCommon.h:189
AIC3110CmVoltage
Headphone/Speaker common mode output voltage.
Definition TLV320AIC3110.h:42
@ AIC3110_CM_VOLTAGE_1P5
Definition TLV320AIC3110.h:44
@ AIC3110_CM_VOLTAGE_1P8
Definition TLV320AIC3110.h:46
@ AIC3110_CM_VOLTAGE_1P65
Definition TLV320AIC3110.h:45
@ AIC3110_CM_VOLTAGE_1P35
Definition TLV320AIC3110.h:43
AIC3110DacProcBlock
DAC decimation filter / processing block selection.
Definition TLV320AIC3110.h:28
@ AIC3110_PRB_P17_DECIMATION_C
Definition TLV320AIC3110.h:31
@ AIC3110_PRB_P1_DECIMATION_A
Definition TLV320AIC3110.h:29
@ AIC3110_PRB_P7_DECIMATION_B
Definition TLV320AIC3110.h:30
i2s_format_t
Definition DriverCommon.h:250
AIC3110AdcProcBlock
ADC decimation filter / processing block selection.
Definition TLV320AIC3110.h:35
@ AIC3110_PRB_R16_DECIMATION_C
Definition TLV320AIC3110.h:38
@ AIC3110_PRB_R4_DECIMATION_A
Definition TLV320AIC3110.h:36
@ AIC3110_PRB_R10_DECIMATION_B
Definition TLV320AIC3110.h:37
AIC3110Channel
Logical audio channels.
Definition TLV320AIC3110.h:19
@ FrontRight
Speaker right.
PLL/clock divider settings for a given MCLK/sample-rate combination.
Definition TLV320AIC3110.h:263
uint8_t pll_j
Definition TLV320AIC3110.h:267
uint8_t dosr
Definition TLV320AIC3110.h:269
uint32_t mclk
Definition TLV320AIC3110.h:264
uint8_t madc
Definition TLV320AIC3110.h:274
uint8_t mdac
Definition TLV320AIC3110.h:271
uint16_t pll_d
Definition TLV320AIC3110.h:268
uint8_t ndac
Definition TLV320AIC3110.h:270
uint8_t aosr
Definition TLV320AIC3110.h:272
uint8_t nadc
Definition TLV320AIC3110.h:273
uint32_t rate
Definition TLV320AIC3110.h:265
uint8_t pll_p
Definition TLV320AIC3110.h:266