92 AD_LOGW(
"The es8156 DAC has been already initialized");
131 if (ctrl_state_active) {
134 AD_LOGW(
"The codec going to stop");
191 AD_LOGD(
"Get volume:%.2d reg_value:0x%.2x", *volume, regv);
194 static constexpr int bitVal(
int nr) {
return 1 << nr; }
198 sizeof(reg_addr), &data,
sizeof(data));
204 &data,
sizeof(data));
#define RESULT_OK
Definition DriverCommon.h:74
#define RESULT_FAIL
Definition DriverCommon.h:75
#define AD_LOGD(...)
Definition Logger.h:12
#define AD_LOGW(...)
Definition Logger.h:14
Header-only driver class for the ES8156 DAC chip.
Definition ES8156.h:43
static constexpr uint8_t ES8156_EQ_CONTROL2_REG1A
Definition ES8156.h:70
static constexpr uint8_t ES8156_ANALOG_SYS3_REG22
Definition ES8156.h:73
static constexpr uint8_t ES8156_CLOCK_ON_OFF_REG08
Definition ES8156.h:54
codec_dac_volume_config_t * dac_vol_handle
Definition ES8156.h:241
error_t ctrlStateActive(codec_mode_t mode, bool ctrl_state_active)
Control ES8156 codec chip.
Definition ES8156.h:129
static constexpr uint8_t ES8156_CHIP_STATUS_REG0C
Definition ES8156.h:58
static constexpr uint8_t ES8156_AUTOMUTE_SET_REG12
Definition ES8156.h:62
error_t resume(void)
Definition ES8156.h:223
static constexpr uint8_t ES8156_ALC_CONFIG1_REG15
Definition ES8156.h:65
static constexpr uint8_t ES8156_ANALOG_SYS2_REG21
Definition ES8156.h:72
static constexpr uint8_t ES8156_TIME_CONTROL1_REG0A
Definition ES8156.h:56
void setAddress(int addr)
Defines the I2C device address.
Definition ES8156.h:87
error_t init(codec_config_t *cfg)
Initialize ES8156 codec chip.
Definition ES8156.h:90
static constexpr uint8_t ES8156_SCLK_DIV_REG05
Definition ES8156.h:51
error_t deinit(void)
Deinitialize ES8156 codec chip.
Definition ES8156.h:122
static constexpr uint8_t ES8156_DAC_MUTE_REG13
Definition ES8156.h:63
static constexpr uint8_t ES8156_MAINCLOCK_CTL_REG01
Definition ES8156.h:47
static constexpr uint8_t ES8156_ANALOG_SYS4_REG23
Definition ES8156.h:74
error_t setVoiceMute(bool enable)
Configure ES8156 DAC mute or not.
Definition ES8156.h:146
static constexpr uint8_t ES8156_ANALOG_SYS5_REG25
Definition ES8156.h:76
static constexpr uint8_t ES8156_ALC_CONFIG2_REG16
Definition ES8156.h:66
static constexpr uint8_t ES8156_NFS_CONFIG_REG06
Definition ES8156.h:52
int readReg(uint8_t reg_addr)
Definition ES8156.h:201
int i2c_addr
Definition ES8156.h:239
static constexpr uint8_t ES8156_DAC_SDP_REG11
Definition ES8156.h:61
static constexpr int bitVal(int nr)
Definition ES8156.h:194
error_t configI2S(codec_mode_t mode, I2SDefinition *iface)
Configure ES8156 codec mode and I2S interface.
Definition ES8156.h:141
static constexpr uint8_t ES8156_LRCLK_DIV_L_REG04
Definition ES8156.h:50
static constexpr uint8_t ES8156_ALC_CONFIG3_REG17
Definition ES8156.h:67
static constexpr uint8_t ES8156_EQ_CONTROL1_REG19
Definition ES8156.h:69
static constexpr uint8_t ES8156_I2C_PAGESEL_REGFC
Definition ES8156.h:77
void setWire(i2c_bus_handle_t handle)
Defines the I2C bus instance to be used.
Definition ES8156.h:84
static constexpr uint8_t ES8156_TIME_CONTROL2_REG0B
Definition ES8156.h:57
static constexpr uint8_t ES8156_SCLK_MODE_REG02
Definition ES8156.h:48
static constexpr uint8_t ES8156_CHIPID1_REGFD
Definition ES8156.h:78
static constexpr uint8_t ES8156_ANALOG_LP_REG24
Definition ES8156.h:75
error_t writeReg(uint8_t reg_addr, uint8_t data)
Definition ES8156.h:196
i2c_bus_handle_t i2c_handle
Definition ES8156.h:238
static constexpr uint8_t ES8156_CHIP_VERSION_REGFF
Definition ES8156.h:80
static constexpr uint8_t ES8156_LRCLK_DIV_H_REG03
Definition ES8156.h:49
static constexpr int ES8156_ADDR
Definition ES8156.h:45
static constexpr uint8_t ES8156_DAC_OSR_COUNTER_REG10
Definition ES8156.h:60
static constexpr uint8_t ES8156_P2S_CONTROL_REG0D
Definition ES8156.h:59
error_t setVoiceVolume(int volume)
Set voice volume.
Definition ES8156.h:163
static constexpr uint8_t ES8156_MISC_CONTROL1_REG07
Definition ES8156.h:53
error_t standby(void)
Definition ES8156.h:208
static constexpr uint8_t ES8156_ANALOG_SYS1_REG20
Definition ES8156.h:71
static constexpr uint8_t ES8156_VOLUME_CONTROL_REG14
Definition ES8156.h:64
static constexpr uint8_t ES8156_RESET_REG00
Definition ES8156.h:46
error_t getVoiceVolume(int *volume)
Get voice volume (0~100)
Definition ES8156.h:176
static constexpr uint8_t ES8156_MISC_CONTROL3_REG18
Definition ES8156.h:68
static constexpr uint8_t ES8156_CHIPID0_REGFE
Definition ES8156.h:79
bool initialized
Definition ES8156.h:240
static constexpr uint8_t ES8156_MISC_CONTROL2_REG09
Definition ES8156.h:55
Namespace for audio driver components.
Definition AudioBoard.h:5
codec_mode_t
Definition DriverCommon.h:290
int error_t
Definition DriverCommon.h:150
void * i2c_bus_handle_t
Definition DriverCommon.h:155
I2S interface parameters for the audio codec.
Definition DriverCommon.h:384
Top-level codec configuration passed to the audio driver at init.
Definition DriverCommon.h:397
Codec dac volume configurations.
Definition CodecConstants.h:88
uint8_t reg_value
Definition CodecConstants.h:95
int user_volume
Definition CodecConstants.h:96