58 #if defined(__cplusplus)
uint32_t hpm_stat_t
Definition: hpm_common.h:135
hpm_stat_t wm8978_set_out_mute(wm8978_context_t *control, wm8978_out_channel_t channel, bool mute)
WM8979 set out mute.
Definition: hpm_wm8978.c:90
input_channel_flag
Definition: hpm_wm8978.h:34
@ mic_left_on
Definition: hpm_wm8978.h:36
@ input_off
Definition: hpm_wm8978.h:35
@ line_on
Definition: hpm_wm8978.h:38
@ dac_on
Definition: hpm_wm8978.h:40
@ aux_on
Definition: hpm_wm8978.h:39
@ mic_right_on
Definition: hpm_wm8978.h:37
@ adc_on
Definition: hpm_wm8978.h:41
enum output_channel_flag output_channel_flag_t
hpm_stat_t wm8978_cfg_audio_interface(wm8978_context_t *control, wm8978_audio_interface_t standard, wm8978_word_length_t word_len)
Configuring the audio interface of WM8978.
Definition: hpm_wm8978.c:158
hpm_stat_t wm8978_get_out_volume(wm8978_context_t *control, wm8978_out_channel_t channel, uint8_t *volume)
WM8979 read out volume function.
Definition: hpm_wm8978.c:73
output_channel_flag
Definition: hpm_wm8978.h:45
@ output_off
Definition: hpm_wm8978.h:46
@ out_3_4_on
Definition: hpm_wm8978.h:50
@ earphone_left_on
Definition: hpm_wm8978.h:47
@ spk_on
Definition: hpm_wm8978.h:49
@ earphone_right_on
Definition: hpm_wm8978.h:48
hpm_stat_t wm8978_reset(wm8978_context_t *control)
Write register to WM8978 using I2C.
Definition: hpm_wm8978.c:43
hpm_stat_t wm8978_invert_lrclk_polarity(wm8978_context_t *control, bool invert)
Invert LRCLK polarity.
Definition: hpm_wm8978.c:171
hpm_stat_t wm8978_modify_reg(wm8978_context_t *control, uint8_t reg, uint16_t mask, uint16_t val)
Modify some bits in the register using I2C.
Definition: hpm_wm8978.c:401
hpm_stat_t wm8978_write_reg(wm8978_context_t *control, uint8_t reg, uint16_t val)
Write register to WM8978 using I2C.
Definition: hpm_wm8978.c:381
hpm_stat_t wm8979_init(wm8978_context_t *control)
WM8979 initialize function.
Definition: hpm_wm8978.c:24
hpm_stat_t wm8978_power_down(wm8978_context_t *control)
WM8979 enter power down mode.
Definition: hpm_wm8978.c:153
enum wm8978_audio_interface wm8978_audio_interface_t
hpm_stat_t wm8978_ctrl_gpio1(wm8978_context_t *control, bool value)
Control the GPIO1 pin of WM8978 to output high or low.
Definition: hpm_wm8978.c:368
wm8978_word_length
Definition: hpm_wm8978.h:22
@ wm8978_24bits_length
Definition: hpm_wm8978.h:25
@ wm8978_32bits_length
Definition: hpm_wm8978.h:26
@ wm8978_20bits_length
Definition: hpm_wm8978.h:24
@ wm8978_16bits_length
Definition: hpm_wm8978.h:23
hpm_stat_t wm8978_set_line_gain(wm8978_context_t *control, uint8_t gain)
WM8979 set the gain of the Line input channel.
Definition: hpm_wm8978.c:134
hpm_stat_t wm8978_set_out_volume(wm8978_context_t *control, wm8978_out_channel_t channel, uint8_t volume)
WM8979 set out volume function.
Definition: hpm_wm8978.c:50
enum wm8978_word_length wm8978_word_length_t
wm8978_out_channel
Definition: hpm_wm8978.h:29
@ wm8978_out1_channel
Definition: hpm_wm8978.h:30
@ wm8978_out2_channel
Definition: hpm_wm8978.h:31
hpm_stat_t wm8978_notch_filter(wm8978_context_t *control, uint16_t nfa0, uint16_t nfa1)
setting the Notch Filter for WM8978
Definition: hpm_wm8978.c:350
enum wm8978_out_channel wm8978_out_channel_t
wm8978_audio_interface
Definition: hpm_wm8978.h:14
@ wm8978_philips_i2s
Definition: hpm_wm8978.h:17
@ wm8978_left_justified
Definition: hpm_wm8978.h:16
@ wm8978_pcm_b
Definition: hpm_wm8978.h:19
@ wm8978_pcm_a
Definition: hpm_wm8978.h:18
@ wm8978_right_justified
Definition: hpm_wm8978.h:15
enum input_channel_flag input_channel_flags_t
hpm_stat_t wm8978_set_mic_gain(wm8978_context_t *control, uint8_t gain)
WM8979 set gain of mic.
Definition: hpm_wm8978.c:123
hpm_stat_t wm8978_read_reg(wm8978_context_t *control, uint8_t reg, uint16_t *val)
Read register from WM8978 using I2C.
Definition: hpm_wm8978.c:394
hpm_stat_t wm8978_cfg_audio_channel(wm8978_context_t *control, uint8_t in_flags, uint8_t out_flags)
Configure wm8978 audio channel.
Definition: hpm_wm8978.c:180
Definition: hpm_i2c_regs.h:12
Definition: hpm_wm8978.h:53
I2C_Type * ptr
Definition: hpm_wm8978.h:54
uint8_t device_address
Definition: hpm_wm8978.h:55