LibDriver WM8978
Loading...
Searching...
No Matches
wm8978 base driver function

wm8978 base driver modules More...

Collaboration diagram for wm8978 base driver function:

Data Structures

struct  wm8978_handle_s
 wm8978 handle structure definition More...
struct  wm8978_info_s
 wm8978 information structure definition More...

Typedefs

typedef struct wm8978_handle_s wm8978_handle_t
 wm8978 handle structure definition
typedef struct wm8978_info_s wm8978_info_t
 wm8978 information structure definition

Enumerations

enum  wm8978_bool_t { WM8978_BOOL_FALSE = 0x00 , WM8978_BOOL_TRUE = 0x01 }
 wm8978 bool enumeration definition More...
enum  wm8978_impedance_t { WM8978_IMPEDANCE_OFF = 0x00 , WM8978_IMPEDANCE_75K = 0x01 , WM8978_IMPEDANCE_300K = 0x02 , WM8978_IMPEDANCE_5K = 0x03 }
 wm8978 impedance enumeration definition More...
enum  wm8978_polarity_t { WM8978_POLARITY_NORMAL = 0x00 , WM8978_POLARITY_INVERTED = 0x01 }
 wm8978 polarity enumeration definition More...
enum  wm8978_word_length_t { WM8978_WORD_LENGTH_16_BITS = 0x00 , WM8978_WORD_LENGTH_20_BITS = 0x01 , WM8978_WORD_LENGTH_24_BITS = 0x02 , WM8978_WORD_LENGTH_32_BITS = 0x03 }
 wm8978 word length enumeration definition More...
enum  wm8978_data_format_t { WM8978_DATA_FORMAT_RIGHT_JUSTIFIED = 0x00 , WM8978_DATA_FORMAT_LEFT_JUSTIFIED = 0x01 , WM8978_DATA_FORMAT_IIS = 0x02 , WM8978_DATA_FORMAT_PCM = 0x03 }
 wm8978 data format enumeration definition More...
enum  wm8978_appear_t { WM8978_APPEAR_LEFT = 0x00 , WM8978_APPEAR_RIGHT = 0x01 }
 wm8978 appear enumeration definition More...
enum  wm8978_channel_t { WM8978_CHANNEL_STEREO = 0x00 , WM8978_CHANNEL_MONO = 0x01 }
 wm8978 channel enumeration definition More...
enum  wm8978_companding_t { WM8978_COMPANDING_LINEAR = 0x00 , WM8978_COMPANDING_U_LAW = 0x02 , WM8978_COMPANDING_A_LAW = 0x03 }
 wm8978 companding enumeration definition More...
enum  wm8978_clksel_t { WM8978_CLKSEL_MCLK = 0x00 , WM8978_CLKSEL_PLL_OUTPUT = 0x01 }
 wm8978 clksel enumeration definition More...
enum  wm8978_mclk_div_t {
  WM8978_MCLK_DIV_BY_1 = 0x00 , WM8978_MCLK_DIV_BY_1P5 = 0x01 , WM8978_MCLK_DIV_BY_2 = 0x02 , WM8978_MCLK_DIV_BY_3 = 0x03 ,
  WM8978_MCLK_DIV_BY_4 = 0x04 , WM8978_MCLK_DIV_BY_6 = 0x05 , WM8978_MCLK_DIV_BY_8 = 0x06 , WM8978_MCLK_DIV_BY_12 = 0x07
}
 wm8978 mclk div enumeration definition More...
enum  wm8978_bclk_div_t {
  WM8978_BCLK_DIV_BY_1 = 0x00 , WM8978_BCLK_DIV_BY_2 = 0x01 , WM8978_BCLK_DIV_BY_4 = 0x02 , WM8978_BCLK_DIV_BY_8 = 0x03 ,
  WM8978_BCLK_DIV_BY_16 = 0x04 , WM8978_BCLK_DIV_BY_32 = 0x05
}
 wm8978 bclk div enumeration definition More...
enum  wm8978_clock_mode_t { WM8978_CLOCK_MODE_INPUT = 0x00 , WM8978_CLOCK_MODE_OUTPUT = 0x01 }
 wm8978 clock mode enumeration definition More...
enum  wm8978_approximate_sample_t {
  WM8978_APPROXIMATE_SAMPLE_48_KHZ = 0x00 , WM8978_APPROXIMATE_SAMPLE_32_KHZ = 0x01 , WM8978_APPROXIMATE_SAMPLE_24_KHZ = 0x02 , WM8978_APPROXIMATE_SAMPLE_16_KHZ = 0x03 ,
  WM8978_APPROXIMATE_SAMPLE_12_KHZ = 0x04 , WM8978_APPROXIMATE_SAMPLE_8_KHZ = 0x05
}
 wm8978 approximate sample enumeration definition More...
enum  wm8978_pll_div_t { WM8978_PLL_DIV_BY_1 = 0x00 , WM8978_PLL_DIV_BY_2 = 0x01 , WM8978_PLL_DIV_BY_3 = 0x02 , WM8978_PLL_DIV_BY_4 = 0x03 }
 wm8978 pll div enumeration definition More...
enum  wm8978_gpio1_sel_t {
  WM8978_GPIO1_SEL_INPUT = 0x00 , WM8978_GPIO1_SEL_TEMP_OK = 0x02 , WM8978_GPIO1_SEL_AMUTE_ACTIVE = 0x03 , WM8978_GPIO1_SEL_PLL_CLK = 0x04 ,
  WM8978_GPIO1_SEL_PLL_LOCK = 0x05 , WM8978_GPIO1_SEL_LOGIC_1 = 0x06 , WM8978_GPIO1_SEL_LOGIC_0 = 0x07
}
 wm8978 gpio1 sel enumeration definition More...
enum  wm8978_jack_sel_t { WM8978_JACK_SEL_GPIO1 = 0x00 , WM8978_JACK_SEL_GPIO2 = 0x01 , WM8978_JACK_SEL_GPIO3 = 0x02 }
 wm8978 jack sel enumeration definition More...
enum  wm8978_dac_oversample_rate_t { WM8978_DAC_OVERSAMPLE_RATE_64X = 0x00 , WM8978_DAC_OVERSAMPLE_RATE_128X = 0x01 }
 wm8978 dac oversample rate enumeration definition More...
enum  wm8978_jack_t { WM8978_JACK_OUT1 = 0x01 , WM8978_JACK_OUT2 = 0x02 , WM8978_JACK_OUT3 = 0x04 , WM8978_JACK_OUT4 = 0x08 }
 wm8978 jack enumeration definition More...
enum  wm8978_mode_t { WM8978_MODE_AUDIO = 0x00 , WM8978_MODE_APPLICATION = 0x01 }
 wm8978 mode enumeration definition More...
enum  wm8978_high_pass_filter_cut_off_t {
  WM8978_HIGH_PASS_FILTER_CUT_OFF_0 = 0x00 , WM8978_HIGH_PASS_FILTER_CUT_OFF_1 = 0x01 , WM8978_HIGH_PASS_FILTER_CUT_OFF_2 = 0x02 , WM8978_HIGH_PASS_FILTER_CUT_OFF_3 = 0x03 ,
  WM8978_HIGH_PASS_FILTER_CUT_OFF_4 = 0x04 , WM8978_HIGH_PASS_FILTER_CUT_OFF_5 = 0x05 , WM8978_HIGH_PASS_FILTER_CUT_OFF_6 = 0x06 , WM8978_HIGH_PASS_FILTER_CUT_OFF_7 = 0x07
}
 wm8978 high pass filter cut off enumeration definition More...
enum  wm8978_adc_oversample_rate_t { WM8978_ADC_OVERSAMPLE_RATE_64X = 0x00 , WM8978_ADC_OVERSAMPLE_RATE_128X = 0x01 }
 wm8978 adc oversample rate enumeration definition More...
enum  wm8978_equaliser_t { WM8978_EQUALISER_APPLIED_TO_ADC = 0x00 , WM8978_EQUALISER_APPLIED_TO_DAC = 0x01 }
 wm8978 equaliser enumeration definition More...
enum  wm8978_eq1_band_cut_off_t { WM8978_EQ1_BAND_CUT_OFF_80HZ = 0x00 , WM8978_EQ1_BAND_CUT_OFF_105HZ = 0x01 , WM8978_EQ1_BAND_CUT_OFF_135HZ = 0x02 , WM8978_EQ1_BAND_CUT_OFF_175HZ = 0x03 }
 wm8978 eq1 band cut off enumeration definition More...
enum  wm8978_eq_bandwidth_t { WM8978_EQ_BANDWIDTH_NARROW = 0x00 , WM8978_EQ_BANDWIDTH_WIDE = 0x01 }
 wm8978 eq bandwidth enumeration definition More...
enum  wm8978_eq2_band_centre_freq_t { WM8978_EQ2_BAND_CENTRE_FREQ_230HZ = 0x00 , WM8978_EQ2_BAND_CENTRE_FREQ_300HZ = 0x01 , WM8978_EQ2_BAND_CENTRE_FREQ_385HZ = 0x02 , WM8978_EQ2_BAND_CENTRE_FREQ_500HZ = 0x03 }
 wm8978 eq2 band centre freq enumeration definition More...
enum  wm8978_eq3_band_centre_freq_t { WM8978_EQ3_BAND_CENTRE_FREQ_650HZ = 0x00 , WM8978_EQ3_BAND_CENTRE_FREQ_850HZ = 0x01 , WM8978_EQ3_BAND_CENTRE_FREQ_1100HZ = 0x02 , WM8978_EQ3_BAND_CENTRE_FREQ_1400HZ = 0x03 }
 wm8978 eq3 band centre freq enumeration definition More...
enum  wm8978_eq4_band_centre_freq_t { WM8978_EQ4_BAND_CENTRE_FREQ_1800HZ = 0x00 , WM8978_EQ4_BAND_CENTRE_FREQ_2400HZ = 0x01 , WM8978_EQ4_BAND_CENTRE_FREQ_3200HZ = 0x02 , WM8978_EQ4_BAND_CENTRE_FREQ_4100HZ = 0x03 }
 wm8978 eq4 band centre freq enumeration definition More...
enum  wm8978_eq5_band_cut_off_t { WM8978_EQ5_BAND_CUT_OFF_5300HZ = 0x00 , WM8978_EQ5_BAND_CUT_OFF_6900HZ = 0x01 , WM8978_EQ5_BAND_CUT_OFF_9000HZ = 0x02 , WM8978_EQ5_BAND_CUT_OFF_11700HZ = 0x03 }
 wm8978 eq5 band cut off enumeration definition More...
enum  wm8978_dac_limiter_decay_t {
  WM8978_DAC_LIMITER_DECAY_750US = 0x00 , WM8978_DAC_LIMITER_DECAY_1P5MS = 0x01 , WM8978_DAC_LIMITER_DECAY_3MS = 0x02 , WM8978_DAC_LIMITER_DECAY_6MS = 0x03 ,
  WM8978_DAC_LIMITER_DECAY_12MS = 0x04 , WM8978_DAC_LIMITER_DECAY_24MS = 0x05 , WM8978_DAC_LIMITER_DECAY_48MS = 0x06 , WM8978_DAC_LIMITER_DECAY_96MS = 0x07 ,
  WM8978_DAC_LIMITER_DECAY_192MS = 0x08 , WM8978_DAC_LIMITER_DECAY_384MS = 0x09 , WM8978_DAC_LIMITER_DECAY_768MS = 0x0A
}
 wm8978 dac limiter decay enumeration definition More...
enum  wm8978_dac_limiter_attack_t {
  WM8978_DAC_LIMITER_ATTACK_94US = 0x00 , WM8978_DAC_LIMITER_ATTACK_188US = 0x01 , WM8978_DAC_LIMITER_ATTACK_375US = 0x02 , WM8978_DAC_LIMITER_ATTACK_750US = 0x03 ,
  WM8978_DAC_LIMITER_ATTACK_1P5MS = 0x04 , WM8978_DAC_LIMITER_ATTACK_3MS = 0x05 , WM8978_DAC_LIMITER_ATTACK_6MS = 0x06 , WM8978_DAC_LIMITER_ATTACK_12MS = 0x07 ,
  WM8978_DAC_LIMITER_ATTACK_24MS = 0x08 , WM8978_DAC_LIMITER_ATTACK_48MS = 0x09 , WM8978_DAC_LIMITER_ATTACK_96MS = 0x0A
}
 wm8978 dac limiter attack enumeration definition More...
enum  wm8978_dac_limiter_level_t {
  WM8978_DAC_LIMITER_LEVEL_NEGATIVE_1DB = 0x00 , WM8978_DAC_LIMITER_LEVEL_NEGATIVE_2DB = 0x01 , WM8978_DAC_LIMITER_LEVEL_NEGATIVE_3DB = 0x02 , WM8978_DAC_LIMITER_LEVEL_NEGATIVE_4DB = 0x03 ,
  WM8978_DAC_LIMITER_LEVEL_NEGATIVE_5DB = 0x04 , WM8978_DAC_LIMITER_LEVEL_NEGATIVE_6DB = 0x05
}
 wm8978 dac limiter level enumeration definition More...
enum  wm8978_alc_t { WM8978_ALC_OFF = 0x00 , WM8978_ALC_RIGHT = 0x01 , WM8978_ALC_LEFT = 0x02 , WM8978_ALC_BOTH = 0x03 }
 wm8978 alc enumeration definition More...
enum  wm8978_max_gain_t {
  WM8978_MAX_GAIN_35P25_DB = 0x07 , WM8978_MAX_GAIN_29P25_DB = 0x06 , WM8978_MAX_GAIN_23P25_DB = 0x05 , WM8978_MAX_GAIN_17P25_DB = 0x04 ,
  WM8978_MAX_GAIN_11P25_DB = 0x03 , WM8978_MAX_GAIN_5P25_DB = 0x02 , WM8978_MAX_GAIN_NEGATIVE_0P75_DB = 0x01 , WM8978_MAX_GAIN_NEGATIVE_6P75_DB = 0x00
}
 wm8978 max gain enumeration definition More...
enum  wm8978_min_gain_t {
  WM8978_MIN_GAIN_30_DB = 0x07 , WM8978_MIN_GAIN_24_DB = 0x06 , WM8978_MIN_GAIN_18_DB = 0x05 , WM8978_MIN_GAIN_12_DB = 0x04 ,
  WM8978_MIN_GAIN_6_DB = 0x03 , WM8978_MIN_GAIN_0_DB = 0x02 , WM8978_MIN_GAIN_NEGATIVE_6_DB = 0x01 , WM8978_MIN_GAIN_NEGATIVE_12_DB = 0x00
}
 wm8978 min gain enumeration definition More...
enum  wm8978_alc_mode_t { WM8978_ALC_MODE_ALC = 0x00 , WM8978_ALC_MODE_LIMITER = 0x01 }
 wm8978 alc mode enumeration definition More...
enum  wm8978_avdd_t { WM8978_AVDD_0P9 = 0x00 , WM8978_AVDD_0P65 = 0x01 }
 wm8978 avdd enumeration definition More...
enum  wm8978_vref_t { WM8978_VREF_1K = 0x00 , WM8978_VREF_30K = 0x01 }
 wm8978 vref enumeration definition More...
enum  wm8978_alc_level_t {
  WM8978_ALC_LEVEL_NEGATIVE_1P5 = 0x0F , WM8978_ALC_LEVEL_NEGATIVE_3 = 0x0D , WM8978_ALC_LEVEL_NEGATIVE_4P5 = 0x0C , WM8978_ALC_LEVEL_NEGATIVE_21 = 0x01 ,
  WM8978_ALC_LEVEL_NEGATIVE_22P5 = 0x00
}
 wm8978 alc level enumeration definition More...

Functions

uint8_t wm8978_info (wm8978_info_t *info)
 get chip's information
uint8_t wm8978_init (wm8978_handle_t *handle)
 initialize the chip
uint8_t wm8978_deinit (wm8978_handle_t *handle)
 close the chip
uint8_t wm8978_soft_reset (wm8978_handle_t *handle)
 soft reset
uint8_t wm8978_set_dc_buffer (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable dc buffer
uint8_t wm8978_set_out4_mixer (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable out4 mixer
uint8_t wm8978_set_out3_mixer (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable out3 mixer
uint8_t wm8978_set_pll (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable pll
uint8_t wm8978_set_microphone_bias (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable microphone bias
uint8_t wm8978_set_analogue_amplifier_bias (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable analogue amplifier bias
uint8_t wm8978_set_unused_input_output_tie_off_buffer (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable unused input output tie off buffer
uint8_t wm8978_set_reference_impedance (wm8978_handle_t *handle, wm8978_impedance_t impedance)
 set reference impedance
uint8_t wm8978_set_right_out1 (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable right out1
uint8_t wm8978_set_left_out1 (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable left out1
uint8_t wm8978_set_sleep (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable sleep
uint8_t wm8978_set_right_channel_input_boost (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable right channel input boost
uint8_t wm8978_set_left_channel_input_boost (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable left channel input boost
uint8_t wm8978_set_right_channel_input_pga (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable right channel input pga
uint8_t wm8978_set_left_channel_input_pga (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable left channel input pga
uint8_t wm8978_set_right_channel_adc (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable right channel adc
uint8_t wm8978_set_left_channel_adc (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable left channel adc
uint8_t wm8978_set_out4 (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable out4
uint8_t wm8978_set_out3 (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable out3
uint8_t wm8978_set_left_out2 (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable left out2
uint8_t wm8978_set_right_out2 (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable right out2
uint8_t wm8978_set_right_output_channel_mixer (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable right output channel mixer
uint8_t wm8978_set_left_output_channel_mixer (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable left output channel mixer
uint8_t wm8978_set_right_channel_dac (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable right channel dac
uint8_t wm8978_set_left_channel_dac (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable left channel dac
uint8_t wm8978_set_bclk_polarity (wm8978_handle_t *handle, wm8978_polarity_t polarity)
 set bclk polarity
uint8_t wm8978_set_lrclk_polarity (wm8978_handle_t *handle, wm8978_polarity_t polarity)
 set lrclk polarity
uint8_t wm8978_set_word_length (wm8978_handle_t *handle, wm8978_word_length_t word_length)
 set word length
uint8_t wm8978_set_data_format (wm8978_handle_t *handle, wm8978_data_format_t format)
 set data format
uint8_t wm8978_set_dac_appear (wm8978_handle_t *handle, wm8978_appear_t appear)
 set dac appear
uint8_t wm8978_set_adc_appear (wm8978_handle_t *handle, wm8978_appear_t appear)
 set adc appear
uint8_t wm8978_set_channel (wm8978_handle_t *handle, wm8978_channel_t channel)
 set channel
uint8_t wm8978_set_companding_8bit_mode (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable companding 8bit mode
uint8_t wm8978_set_dac_companding (wm8978_handle_t *handle, wm8978_companding_t companding)
 set dac companding
uint8_t wm8978_set_adc_companding (wm8978_handle_t *handle, wm8978_companding_t companding)
 set adc companding
uint8_t wm8978_set_loopback (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable loopback
uint8_t wm8978_set_clksel (wm8978_handle_t *handle, wm8978_clksel_t clksel)
 set clksel
uint8_t wm8978_set_mclk_div (wm8978_handle_t *handle, wm8978_mclk_div_t d)
 set mclk div
uint8_t wm8978_set_bclk_div (wm8978_handle_t *handle, wm8978_bclk_div_t d)
 set bclk div
uint8_t wm8978_set_clock_mode (wm8978_handle_t *handle, wm8978_clock_mode_t mode)
 set clock mode
uint8_t wm8978_set_approximate_sample_rate (wm8978_handle_t *handle, wm8978_approximate_sample_t sample)
 set approximate sample rate
uint8_t wm8978_set_slow_clock (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable slow clock
uint8_t wm8978_set_pll_div (wm8978_handle_t *handle, wm8978_pll_div_t d)
 set pll div
uint8_t wm8978_set_gpio1_polarity (wm8978_handle_t *handle, wm8978_polarity_t polarity)
 set gpio1 polarity
uint8_t wm8978_set_gpio1_select (wm8978_handle_t *handle, wm8978_gpio1_sel_t sel)
 set gpio1 select
uint8_t wm8978_set_vmid_1 (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable vmid 1
uint8_t wm8978_set_vmid_0 (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable vmid 0
uint8_t wm8978_set_jack_detection (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable jack detection
uint8_t wm8978_set_jack_gpio (wm8978_handle_t *handle, wm8978_jack_sel_t sel)
 set jack gpio
uint8_t wm8978_set_soft_mute (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable soft mute
uint8_t wm8978_set_dac_oversample_rate (wm8978_handle_t *handle, wm8978_dac_oversample_rate_t rate)
 set dac oversample rate
uint8_t wm8978_set_amute (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable amute
uint8_t wm8978_set_right_dac_output_polarity (wm8978_handle_t *handle, wm8978_polarity_t polarity)
 set right dac output polarity
uint8_t wm8978_set_left_dac_output_polarity (wm8978_handle_t *handle, wm8978_polarity_t polarity)
 set left dac output polarity
uint8_t wm8978_set_dac_left_volume (wm8978_handle_t *handle, wm8978_bool_t enable, uint8_t volume)
 set dac left volume
uint8_t wm8978_set_dac_right_volume (wm8978_handle_t *handle, wm8978_bool_t enable, uint8_t volume)
 set dac right volume
uint8_t wm8978_set_jack_logic_1 (wm8978_handle_t *handle, wm8978_jack_t jack, wm8978_bool_t enable)
 set jack logic 1
uint8_t wm8978_set_jack_logic_0 (wm8978_handle_t *handle, wm8978_jack_t jack, wm8978_bool_t enable)
 set jack logic 0
uint8_t wm8978_set_high_pass_filter (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable high pass filter
uint8_t wm8978_set_mode (wm8978_handle_t *handle, wm8978_mode_t mode)
 set chip mode
uint8_t wm8978_set_high_pass_filter_cut_off (wm8978_handle_t *handle, wm8978_high_pass_filter_cut_off_t cut)
 set high pass filter cut off
uint8_t wm8978_set_adc_oversample_rate (wm8978_handle_t *handle, wm8978_adc_oversample_rate_t rate)
 set adc oversample rate
uint8_t wm8978_set_adc_right_channel_polarity (wm8978_handle_t *handle, wm8978_polarity_t polarity)
 set adc right channel polarity
uint8_t wm8978_set_adc_left_channel_polarity (wm8978_handle_t *handle, wm8978_polarity_t polarity)
 set adc left channel polarity
uint8_t wm8978_set_adc_left_volume (wm8978_handle_t *handle, wm8978_bool_t enable, uint8_t volume)
 set adc left volume
uint8_t wm8978_set_adc_right_volume (wm8978_handle_t *handle, wm8978_bool_t enable, uint8_t volume)
 set adc right volume
uint8_t wm8978_volume_convert_to_register (wm8978_handle_t *handle, float db, uint8_t *reg)
 convert the volume data to the register raw data
uint8_t wm8978_volume_convert_to_data (wm8978_handle_t *handle, uint8_t reg, float *db)
 convert the volume register raw data to the real data
uint8_t wm8978_set_equaliser_apply (wm8978_handle_t *handle, wm8978_equaliser_t equaliser)
 set equaliser apply
uint8_t wm8978_set_eq1_cut_off (wm8978_handle_t *handle, wm8978_eq1_band_cut_off_t cut_off)
 set eq1 cut off
uint8_t wm8978_set_eq1_gain (wm8978_handle_t *handle, uint8_t gain)
 set eq1 gain
uint8_t wm8978_set_eq2_bandwidth (wm8978_handle_t *handle, wm8978_eq_bandwidth_t width)
 set eq2 bandwidth
uint8_t wm8978_set_eq2_centre_freq (wm8978_handle_t *handle, wm8978_eq2_band_centre_freq_t freq)
 set eq2 centre freq
uint8_t wm8978_set_eq2_gain (wm8978_handle_t *handle, uint8_t gain)
 set eq2 gain
uint8_t wm8978_set_eq3_bandwidth (wm8978_handle_t *handle, wm8978_eq_bandwidth_t width)
 set eq3 bandwidth
uint8_t wm8978_set_eq3_centre_freq (wm8978_handle_t *handle, wm8978_eq3_band_centre_freq_t freq)
 set eq3 centre freq
uint8_t wm8978_set_eq3_gain (wm8978_handle_t *handle, uint8_t gain)
 set eq3 gain
uint8_t wm8978_set_eq4_bandwidth (wm8978_handle_t *handle, wm8978_eq_bandwidth_t width)
 set eq4 bandwidth
uint8_t wm8978_set_eq4_centre_freq (wm8978_handle_t *handle, wm8978_eq4_band_centre_freq_t freq)
 set eq4 centre freq
uint8_t wm8978_set_eq4_gain (wm8978_handle_t *handle, uint8_t gain)
 set eq4 gain
uint8_t wm8978_set_eq5_cut_off (wm8978_handle_t *handle, wm8978_eq5_band_cut_off_t cut_off)
 set eq5 cut off
uint8_t wm8978_set_eq5_gain (wm8978_handle_t *handle, uint8_t gain)
 set eq5 gain
uint8_t wm8978_eq_gain_convert_to_register (wm8978_handle_t *handle, int8_t db, uint8_t *reg)
 convert the eq gain to the register raw data
uint8_t wm8978_eq_gain_convert_to_data (wm8978_handle_t *handle, uint8_t reg, int8_t *db)
 convert the eq gain register raw data to the real data
uint8_t wm8978_set_dac_digital_limiter (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable dac digital limiter
uint8_t wm8978_set_dac_limiter_decay (wm8978_handle_t *handle, wm8978_dac_limiter_decay_t decay)
 set dac limiter decay
uint8_t wm8978_set_dac_limiter_attack (wm8978_handle_t *handle, wm8978_dac_limiter_attack_t attack)
 set dac limiter attack
uint8_t wm8978_set_dac_limiter_level (wm8978_handle_t *handle, wm8978_dac_limiter_level_t level)
 set dac limiter level
uint8_t wm8978_set_dac_limiter_volume_boost (wm8978_handle_t *handle, uint8_t db)
 set dac limiter volume boost
uint8_t wm8978_set_notch_filter (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable notch filter
uint8_t wm8978_set_notch_filter_a0_coefficient_bit_13_7 (wm8978_handle_t *handle, wm8978_bool_t update_once, uint8_t coefficient)
 set notch filter a0 coefficient bit13 - bit7
uint8_t wm8978_set_notch_filter_a0_coefficient_bit_6_0 (wm8978_handle_t *handle, wm8978_bool_t update_once, uint8_t coefficient)
 set notch filter a0 coefficient bit6 - bit0
uint8_t wm8978_set_notch_filter_a1_coefficient_bit_13_7 (wm8978_handle_t *handle, wm8978_bool_t update_once, uint8_t coefficient)
 set notch filter a1 coefficient bit13 - bit7
uint8_t wm8978_set_notch_filter_a1_coefficient_bit_6_0 (wm8978_handle_t *handle, wm8978_bool_t update_once, uint8_t coefficient)
 set notch filter a1 coefficient bit6 - bit0
uint8_t wm8978_set_alc (wm8978_handle_t *handle, wm8978_alc_t alc)
 set alc
uint8_t wm8978_set_alc_max_gain (wm8978_handle_t *handle, wm8978_max_gain_t gain)
 set alc max gain
uint8_t wm8978_set_alc_min_gain (wm8978_handle_t *handle, wm8978_min_gain_t gain)
 set alc min gain
uint8_t wm8978_set_alc_hold_time (wm8978_handle_t *handle, uint8_t t)
 set alc hold time
uint8_t wm8978_alc_hold_time_convert_to_register (wm8978_handle_t *handle, float ms, uint8_t *reg)
 convert the alc hold time to the register raw data
uint8_t wm8978_alc_hold_time_convert_to_data (wm8978_handle_t *handle, uint8_t reg, float *ms)
 convert the alc hold time register raw data to the real data
uint8_t wm8978_set_alc_level (wm8978_handle_t *handle, wm8978_alc_level_t level)
 set alc level
uint8_t wm8978_set_alc_mode (wm8978_handle_t *handle, wm8978_alc_mode_t mode)
 set alc mode
uint8_t wm8978_set_alc_decay (wm8978_handle_t *handle, uint8_t decay)
 set alc decay
uint8_t wm8978_set_alc_attack (wm8978_handle_t *handle, uint8_t attack)
 set alc attack
uint8_t wm8978_set_alc_noise_gate (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable alc noise gate
uint8_t wm8978_set_alc_noise_gate_threshold (wm8978_handle_t *handle, uint8_t threshold)
 set alc noise gate threshold
uint8_t wm8978_alc_noise_gate_threshold_convert_to_register (wm8978_handle_t *handle, int8_t db, uint8_t *reg)
 convert the alc noise gate threshold to the register raw data
uint8_t wm8978_alc_noise_gate_threshold_convert_to_data (wm8978_handle_t *handle, uint8_t reg, int8_t *db)
 convert the alc noise gate threshold register raw data to the real data
uint8_t wm8978_set_mclk_divide_by_2 (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable mclk divide by 2
uint8_t wm8978_set_plln (wm8978_handle_t *handle, uint8_t n)
 set plln
uint8_t wm8978_set_pll_freq (wm8978_handle_t *handle, uint32_t freq)
 set pll freq
uint8_t wm8978_set_depth_3d (wm8978_handle_t *handle, uint8_t depth)
 set depth 3d
uint8_t wm8978_depth_3d_convert_to_register (wm8978_handle_t *handle, float percent, uint8_t *reg)
 convert the depth 3d to the register raw data
uint8_t wm8978_depth_3d_convert_to_data (wm8978_handle_t *handle, uint8_t reg, float *percent)
 convert the depth 3d register raw data to the real data
uint8_t wm8978_set_mute_input_to_inv_rout2_mixer (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable mute input to inv rout2 mixer
uint8_t wm8978_set_inv_rout2_mixer (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable inv rout2 mixer
uint8_t wm8978_set_beep_volume (wm8978_handle_t *handle, uint8_t vol)
 set beep volume
uint8_t wm8978_beep_volume_convert_to_register (wm8978_handle_t *handle, int8_t db, uint8_t *reg)
 convert the beep volume to the register raw data
uint8_t wm8978_beep_volume_convert_to_data (wm8978_handle_t *handle, uint8_t reg, int8_t *db)
 convert the beep volume register raw data to the real data
uint8_t wm8978_set_beep (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable beep
uint8_t wm8978_set_microphone_bias_voltage (wm8978_handle_t *handle, wm8978_avdd_t avdd)
 set microphone bias voltage
uint8_t wm8978_set_right_channel_input_pga_positive (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable right channel input pga positive
uint8_t wm8978_set_right_channel_input_pga_negative (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable right channel input pga negative
uint8_t wm8978_set_right_channel_input_pga_amplifier_positive (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable right channel input pga amplifier positive
uint8_t wm8978_set_left_channel_input_pga_positive (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable left channel input pga positive
uint8_t wm8978_set_left_channel_input_pga_negative (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable left channel input pga negative
uint8_t wm8978_set_left_channel_input_pga_amplifier_positive (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable left channel input pga amplifier positive
uint8_t wm8978_set_left_input_pga_update (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable left input pga update
uint8_t wm8978_set_left_channel_input_pga_zero_cross (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable left channel input pga zero cross
uint8_t wm8978_set_left_channel_input_pga_mute (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable left channel input pga mute
uint8_t wm8978_set_left_channel_input_pga_volume (wm8978_handle_t *handle, uint8_t volume)
 set left channel input pga volume
uint8_t wm8978_left_channel_input_pga_volume_convert_to_register (wm8978_handle_t *handle, float db, uint8_t *reg)
 convert the left channel input pga volume to the register raw data
uint8_t wm8978_left_channel_input_pga_volume_convert_to_data (wm8978_handle_t *handle, uint8_t reg, float *db)
 convert the left channel input pga volume register raw data to the real data
uint8_t wm8978_set_right_input_pga_update (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable right input pga update
uint8_t wm8978_set_right_channel_input_pga_zero_cross (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable right channel input pga zero cross
uint8_t wm8978_set_right_channel_input_pga_mute (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable right channel input pga mute
uint8_t wm8978_set_right_channel_input_pga_volume (wm8978_handle_t *handle, uint8_t volume)
 set right channel input pga volume
uint8_t wm8978_right_channel_input_pga_volume_convert_to_register (wm8978_handle_t *handle, float db, uint8_t *reg)
 convert the right channel input pga volume to the register raw data
uint8_t wm8978_right_channel_input_pga_volume_convert_to_data (wm8978_handle_t *handle, uint8_t reg, float *db)
 convert the right channel input pga volume register raw data to the real data
uint8_t wm8978_set_left_channel_input_pga_boost (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable left channel input pga boost
uint8_t wm8978_set_left_channel_input_boost_stage (wm8978_handle_t *handle, uint8_t stage)
 set left channel input boost stage
uint8_t wm8978_left_channel_input_boost_stage_convert_to_register (wm8978_handle_t *handle, int8_t db, uint8_t *reg)
 convert the left channel input boost stage to the register raw data
uint8_t wm8978_left_channel_input_boost_stage_convert_to_data (wm8978_handle_t *handle, uint8_t reg, int8_t *db)
 convert the left channel input boost stage register raw data to the real data
uint8_t wm8978_set_auxiliary_amplifier_left_channel_input_boost_stage (wm8978_handle_t *handle, uint8_t stage)
 set auxiliary amplifier left channel input boost stage
uint8_t wm8978_auxiliary_amplifier_left_channel_input_boost_stage_convert_to_register (wm8978_handle_t *handle, int8_t db, uint8_t *reg)
 convert the auxiliary amplifier left channel input boost stage to the register raw data
uint8_t wm8978_auxiliary_amplifier_left_channel_input_boost_stage_convert_to_data (wm8978_handle_t *handle, uint8_t reg, int8_t *db)
 convert the auxiliary amplifier left channel input boost stage register raw data to the real data
uint8_t wm8978_set_right_channel_input_pga_boost (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable right channel input pga boost
uint8_t wm8978_set_right_channel_input_boost_stage (wm8978_handle_t *handle, uint8_t stage)
 set right channel input boost stage
uint8_t wm8978_right_channel_input_boost_stage_convert_to_register (wm8978_handle_t *handle, int8_t db, uint8_t *reg)
 convert the right channel input boost stage to the register raw data
uint8_t wm8978_right_channel_input_boost_stage_convert_to_data (wm8978_handle_t *handle, uint8_t reg, int8_t *db)
 convert the right channel input boost stage register raw data to the real data
uint8_t wm8978_set_auxiliary_amplifier_right_channel_input_boost_stage (wm8978_handle_t *handle, uint8_t stage)
 set auxiliary amplifier right channel input boost stage
uint8_t wm8978_auxiliary_amplifier_right_channel_input_boost_stage_convert_to_register (wm8978_handle_t *handle, int8_t db, uint8_t *reg)
 convert the auxiliary amplifier right channel input boost stage to the register raw data
uint8_t wm8978_auxiliary_amplifier_right_channel_input_boost_stage_convert_to_data (wm8978_handle_t *handle, uint8_t reg, int8_t *db)
 convert the auxiliary amplifier right channel input boost stage register raw data to the real data
uint8_t wm8978_set_left_dac_output_to_right_output_mixer (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable left dac output to right output mixer
uint8_t wm8978_set_right_dac_output_to_left_output_mixer (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable right dac output to left output mixer
uint8_t wm8978_set_out4_boost (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable out4 boost
uint8_t wm8978_set_out3_boost (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable out3 boost
uint8_t wm8978_set_speaker_boost (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable speaker boost
uint8_t wm8978_set_thermal_shutdown (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable thermal shutdown
uint8_t wm8978_set_vref_to_analogue_output_resistance (wm8978_handle_t *handle, wm8978_vref_t vref)
 set vref to analogue output resistance
uint8_t wm8978_set_aux_left_channel_input_to_left_mixer_volume (wm8978_handle_t *handle, uint8_t vol)
 set aux left channel input to left mixer volume
uint8_t wm8978_aux_left_channel_input_to_left_mixer_volume_convert_to_register (wm8978_handle_t *handle, int8_t db, uint8_t *reg)
 convert the aux left channel input to left mixer volume to the register raw data
uint8_t wm8978_aux_left_channel_input_to_left_mixer_volume_convert_to_data (wm8978_handle_t *handle, uint8_t reg, int8_t *db)
 convert the aux left channel input to left mixer volume register raw data to the real data
uint8_t wm8978_set_left_auxiliary_input_to_left_channel_output_mixer (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable left auxiliary input to left channel output mixer
uint8_t wm8978_set_left_bypass_volume_control_to_output_channel_mixer (wm8978_handle_t *handle, uint8_t vol)
 set left bypass volume control to output channel mixer
uint8_t wm8978_left_bypass_volume_control_to_output_channel_mixer_convert_to_register (wm8978_handle_t *handle, int8_t db, uint8_t *reg)
 convert the left bypass volume control to output channel mixer to the register raw data
uint8_t wm8978_left_bypass_volume_control_to_output_channel_mixer_convert_to_data (wm8978_handle_t *handle, uint8_t reg, int8_t *db)
 convert the left bypass volume control to output channel mixer register raw data to the real data
uint8_t wm8978_set_left_bypass_path_to_left_output_mixer (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable left bypass path to left output mixer
uint8_t wm8978_set_left_dac_output_to_left_output_mixer (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable left dac output to left output mixer
uint8_t wm8978_set_aux_right_channel_input_to_right_mixer_volume (wm8978_handle_t *handle, uint8_t vol)
 set aux right channel input to right mixer volume
uint8_t wm8978_aux_right_channel_input_to_right_mixer_volume_convert_to_register (wm8978_handle_t *handle, int8_t db, uint8_t *reg)
 convert the aux right channel input to right mixer volume to the register raw data
uint8_t wm8978_aux_right_channel_input_to_right_mixer_volume_convert_to_data (wm8978_handle_t *handle, uint8_t reg, int8_t *db)
 convert the aux right channel input to right mixer volume raw data to the real data
uint8_t wm8978_set_right_auxiliary_input_to_right_channel_output_mixer (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable right auxiliary input to right channel output mixer
uint8_t wm8978_set_right_bypass_volume_control_to_output_channel_mixer (wm8978_handle_t *handle, uint8_t vol)
 set right bypass volume control to output channel mixer
uint8_t wm8978_right_bypass_volume_control_to_output_channel_mixer_convert_to_register (wm8978_handle_t *handle, int8_t db, uint8_t *reg)
 convert the right bypass volume control to output channel mixer to the register raw data
uint8_t wm8978_right_bypass_volume_control_to_output_channel_mixer_convert_to_data (wm8978_handle_t *handle, uint8_t reg, int8_t *db)
 convert the right bypass volume control to output channel mixer raw data to the real data
uint8_t wm8978_set_right_bypass_path_to_right_output_mixer (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable right bypass path to right output mixer
uint8_t wm8978_set_right_dac_output_to_right_output_mixer (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable right dac output to right output mixer
uint8_t wm8978_set_lout1_update (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable lout1 update
uint8_t wm8978_set_lout1_headphone_volume_zero_cross (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable lout1 headphone volume zero cross
uint8_t wm8978_set_lout1_left_headphone_output_mute (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable lout1 left headphone output mute
uint8_t wm8978_set_lout1_left_headphone_output_volume (wm8978_handle_t *handle, uint8_t vol)
 set lout1 left headphone output volume
uint8_t wm8978_lout1_left_headphone_output_volume_convert_to_register (wm8978_handle_t *handle, int8_t db, uint8_t *reg)
 convert the lout1 left headphone output volume to the register raw data
uint8_t wm8978_lout1_left_headphone_output_volume_convert_to_data (wm8978_handle_t *handle, uint8_t reg, int8_t *db)
 convert the lout1 left headphone output volume raw data to the real data
uint8_t wm8978_set_rout1_update (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable rout1 update
uint8_t wm8978_set_rout1_headphone_volume_zero_cross (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable rout1 headphone volume zero cross
uint8_t wm8978_set_rout1_right_headphone_output_mute (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable rout1 right headphone output mute
uint8_t wm8978_set_rout1_right_headphone_output_volume (wm8978_handle_t *handle, uint8_t vol)
 set rout1 right headphone output volume
uint8_t wm8978_rout1_right_headphone_output_volume_convert_to_register (wm8978_handle_t *handle, int8_t db, uint8_t *reg)
 convert the rout1 right headphone output volume to the register raw data
uint8_t wm8978_rout1_right_headphone_output_volume_convert_to_data (wm8978_handle_t *handle, uint8_t reg, int8_t *db)
 convert the rout1 right headphone output volume raw data to the real data
uint8_t wm8978_set_lout2_update (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable lout2 update
uint8_t wm8978_set_lout2_speaker_volume_zero_cross (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable lout2 speaker volume zero cross
uint8_t wm8978_set_lout2_left_speaker_output_mute (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable lout2 left speaker output mute
uint8_t wm8978_set_lout2_left_speaker_output_volume (wm8978_handle_t *handle, uint8_t vol)
 set lout2 left speaker output volume
uint8_t wm8978_lout2_left_speaker_output_volume_convert_to_register (wm8978_handle_t *handle, int8_t db, uint8_t *reg)
 convert the lout2 left speaker output volume to the register raw data
uint8_t wm8978_lout2_left_speaker_output_volume_convert_to_data (wm8978_handle_t *handle, uint8_t reg, int8_t *db)
 convert the lout2 left speaker output volume raw data to the real data
uint8_t wm8978_set_rout2_update (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable rout2 update
uint8_t wm8978_set_rout2_speaker_volume_zero_cross (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable rout2 speaker volume zero cross
uint8_t wm8978_set_rout2_right_speaker_output_mute (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable rout2 right speaker output mute
uint8_t wm8978_set_rout2_right_speaker_output_volume (wm8978_handle_t *handle, uint8_t vol)
 set rout2 right speaker output volume
uint8_t wm8978_rout2_right_speaker_output_volume_convert_to_register (wm8978_handle_t *handle, int8_t db, uint8_t *reg)
 convert the rout2 right speaker output volume to the register raw data
uint8_t wm8978_rout2_right_speaker_output_volume_convert_to_data (wm8978_handle_t *handle, uint8_t reg, int8_t *db)
 convert the rout2 right speaker output volume raw data to the real data
uint8_t wm8978_set_out3_mute (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable out3 mute
uint8_t wm8978_set_out4_mixer_output_to_out3 (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable out4 mixer output to out3
uint8_t wm8978_set_left_adc_input_to_out3 (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable left adc input to out3
uint8_t wm8978_set_left_dac_mixer_to_out3 (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable left dac mixer to out3
uint8_t wm8978_set_left_dac_output_to_out3 (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable left dac output to out3
uint8_t wm8978_set_out4_mute (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable out4 mute
uint8_t wm8978_set_out4_attenuated_by_6db (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable out4 attenuated by 6db
uint8_t wm8978_set_left_dac_mixer_to_out4 (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable left dac mixer to out4
uint8_t wm8978_set_left_dac_to_out4 (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable left dac to out4
uint8_t wm8978_set_right_adc_input_to_out4 (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable right adc input to out4
uint8_t wm8978_set_right_dac_mixer_to_out4 (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable right dac mixer to out4
uint8_t wm8978_set_right_dac_output_to_out4 (wm8978_handle_t *handle, wm8978_bool_t enable)
 enable or disable right dac output to out4

Detailed Description

wm8978 base driver modules

Typedef Documentation

◆ wm8978_handle_t

wm8978 handle structure definition

◆ wm8978_info_t

typedef struct wm8978_info_s wm8978_info_t

wm8978 information structure definition

Enumeration Type Documentation

◆ wm8978_adc_oversample_rate_t

wm8978 adc oversample rate enumeration definition

Enumerator
WM8978_ADC_OVERSAMPLE_RATE_64X 

64x, lowest power

WM8978_ADC_OVERSAMPLE_RATE_128X 

128x, lowest power

Definition at line 290 of file driver_wm8978.h.

◆ wm8978_alc_level_t

wm8978 alc level enumeration definition

Enumerator
WM8978_ALC_LEVEL_NEGATIVE_1P5 

-1.5dB

WM8978_ALC_LEVEL_NEGATIVE_3 

-3dB

WM8978_ALC_LEVEL_NEGATIVE_4P5 

-4.5dB

WM8978_ALC_LEVEL_NEGATIVE_21 

-21dB

WM8978_ALC_LEVEL_NEGATIVE_22P5 

-22.5dB

Definition at line 489 of file driver_wm8978.h.

◆ wm8978_alc_mode_t

wm8978 alc mode enumeration definition

Enumerator
WM8978_ALC_MODE_ALC 

alc mode

WM8978_ALC_MODE_LIMITER 

limiter mode

Definition at line 462 of file driver_wm8978.h.

◆ wm8978_alc_t

wm8978 alc enumeration definition

Enumerator
WM8978_ALC_OFF 

alc off

WM8978_ALC_RIGHT 

alc right only

WM8978_ALC_LEFT 

alc left only

WM8978_ALC_BOTH 

alc both on

Definition at line 421 of file driver_wm8978.h.

◆ wm8978_appear_t

wm8978 appear enumeration definition

Enumerator
WM8978_APPEAR_LEFT 

appear in left

WM8978_APPEAR_RIGHT 

appear in right

Definition at line 113 of file driver_wm8978.h.

◆ wm8978_approximate_sample_t

wm8978 approximate sample enumeration definition

Enumerator
WM8978_APPROXIMATE_SAMPLE_48_KHZ 

48khz

WM8978_APPROXIMATE_SAMPLE_32_KHZ 

32khz

WM8978_APPROXIMATE_SAMPLE_24_KHZ 

24khz

WM8978_APPROXIMATE_SAMPLE_16_KHZ 

16khz

WM8978_APPROXIMATE_SAMPLE_12_KHZ 

12khz

WM8978_APPROXIMATE_SAMPLE_8_KHZ 

8khz

Definition at line 187 of file driver_wm8978.h.

◆ wm8978_avdd_t

wm8978 avdd enumeration definition

Enumerator
WM8978_AVDD_0P9 

0.9 avdd

WM8978_AVDD_0P65 

0.65 avdd

Definition at line 471 of file driver_wm8978.h.

◆ wm8978_bclk_div_t

wm8978 bclk div enumeration definition

Enumerator
WM8978_BCLK_DIV_BY_1 

divide by 1

WM8978_BCLK_DIV_BY_2 

divide by 2

WM8978_BCLK_DIV_BY_4 

divide by 4

WM8978_BCLK_DIV_BY_8 

divide by 8

WM8978_BCLK_DIV_BY_16 

divide by 16

WM8978_BCLK_DIV_BY_32 

divide by 32

Definition at line 165 of file driver_wm8978.h.

◆ wm8978_bool_t

wm8978 bool enumeration definition

Enumerator
WM8978_BOOL_FALSE 

disable

WM8978_BOOL_TRUE 

enable

Definition at line 62 of file driver_wm8978.h.

◆ wm8978_channel_t

wm8978 channel enumeration definition

Enumerator
WM8978_CHANNEL_STEREO 

stereo device operation

WM8978_CHANNEL_MONO 

mono device operation

Definition at line 122 of file driver_wm8978.h.

◆ wm8978_clksel_t

wm8978 clksel enumeration definition

Enumerator
WM8978_CLKSEL_MCLK 

mclk

WM8978_CLKSEL_PLL_OUTPUT 

pll output

Definition at line 141 of file driver_wm8978.h.

◆ wm8978_clock_mode_t

wm8978 clock mode enumeration definition

Enumerator
WM8978_CLOCK_MODE_INPUT 

bclk and lrc clock are inputs

WM8978_CLOCK_MODE_OUTPUT 

bclk and lrc clock are output generated by the wm8978

Definition at line 178 of file driver_wm8978.h.

◆ wm8978_companding_t

wm8978 companding enumeration definition

Enumerator
WM8978_COMPANDING_LINEAR 

linear mode

WM8978_COMPANDING_U_LAW 

u-law

WM8978_COMPANDING_A_LAW 

a-law

Definition at line 131 of file driver_wm8978.h.

◆ wm8978_dac_limiter_attack_t

wm8978 dac limiter attack enumeration definition

Enumerator
WM8978_DAC_LIMITER_ATTACK_94US 

94us

WM8978_DAC_LIMITER_ATTACK_188US 

188us

WM8978_DAC_LIMITER_ATTACK_375US 

375us

WM8978_DAC_LIMITER_ATTACK_750US 

750us

WM8978_DAC_LIMITER_ATTACK_1P5MS 

1.5ms

WM8978_DAC_LIMITER_ATTACK_3MS 

3ms

WM8978_DAC_LIMITER_ATTACK_6MS 

6ms

WM8978_DAC_LIMITER_ATTACK_12MS 

12ms

WM8978_DAC_LIMITER_ATTACK_24MS 

24ms

WM8978_DAC_LIMITER_ATTACK_48MS 

48ms

WM8978_DAC_LIMITER_ATTACK_96MS 

96ms

Definition at line 390 of file driver_wm8978.h.

◆ wm8978_dac_limiter_decay_t

wm8978 dac limiter decay enumeration definition

Enumerator
WM8978_DAC_LIMITER_DECAY_750US 

750us

WM8978_DAC_LIMITER_DECAY_1P5MS 

1.5ms

WM8978_DAC_LIMITER_DECAY_3MS 

3ms

WM8978_DAC_LIMITER_DECAY_6MS 

6ms

WM8978_DAC_LIMITER_DECAY_12MS 

12ms

WM8978_DAC_LIMITER_DECAY_24MS 

24ms

WM8978_DAC_LIMITER_DECAY_48MS 

48ms

WM8978_DAC_LIMITER_DECAY_96MS 

96ms

WM8978_DAC_LIMITER_DECAY_192MS 

192ms

WM8978_DAC_LIMITER_DECAY_384MS 

384ms

WM8978_DAC_LIMITER_DECAY_768MS 

768ms

Definition at line 372 of file driver_wm8978.h.

◆ wm8978_dac_limiter_level_t

wm8978 dac limiter level enumeration definition

Enumerator
WM8978_DAC_LIMITER_LEVEL_NEGATIVE_1DB 

-1db

WM8978_DAC_LIMITER_LEVEL_NEGATIVE_2DB 

-2db

WM8978_DAC_LIMITER_LEVEL_NEGATIVE_3DB 

-3db

WM8978_DAC_LIMITER_LEVEL_NEGATIVE_4DB 

-4db

WM8978_DAC_LIMITER_LEVEL_NEGATIVE_5DB 

-5db

WM8978_DAC_LIMITER_LEVEL_NEGATIVE_6DB 

-6db

Definition at line 408 of file driver_wm8978.h.

◆ wm8978_dac_oversample_rate_t

wm8978 dac oversample rate enumeration definition

Enumerator
WM8978_DAC_OVERSAMPLE_RATE_64X 

64x, lowest power

WM8978_DAC_OVERSAMPLE_RATE_128X 

128x, lowest power

Definition at line 235 of file driver_wm8978.h.

◆ wm8978_data_format_t

wm8978 data format enumeration definition

Enumerator
WM8978_DATA_FORMAT_RIGHT_JUSTIFIED 

right justified

WM8978_DATA_FORMAT_LEFT_JUSTIFIED 

left justified

WM8978_DATA_FORMAT_IIS 

iis format

WM8978_DATA_FORMAT_PCM 

dsp/pcm mode

Definition at line 102 of file driver_wm8978.h.

◆ wm8978_eq1_band_cut_off_t

wm8978 eq1 band cut off enumeration definition

Enumerator
WM8978_EQ1_BAND_CUT_OFF_80HZ 

80hz

WM8978_EQ1_BAND_CUT_OFF_105HZ 

105hz

WM8978_EQ1_BAND_CUT_OFF_135HZ 

135hz

WM8978_EQ1_BAND_CUT_OFF_175HZ 

175hz

Definition at line 308 of file driver_wm8978.h.

◆ wm8978_eq2_band_centre_freq_t

wm8978 eq2 band centre freq enumeration definition

Enumerator
WM8978_EQ2_BAND_CENTRE_FREQ_230HZ 

230hz

WM8978_EQ2_BAND_CENTRE_FREQ_300HZ 

300hz

WM8978_EQ2_BAND_CENTRE_FREQ_385HZ 

385hz

WM8978_EQ2_BAND_CENTRE_FREQ_500HZ 

500hz

Definition at line 328 of file driver_wm8978.h.

◆ wm8978_eq3_band_centre_freq_t

wm8978 eq3 band centre freq enumeration definition

Enumerator
WM8978_EQ3_BAND_CENTRE_FREQ_650HZ 

650hz

WM8978_EQ3_BAND_CENTRE_FREQ_850HZ 

850hz

WM8978_EQ3_BAND_CENTRE_FREQ_1100HZ 

1100hz

WM8978_EQ3_BAND_CENTRE_FREQ_1400HZ 

1400hz

Definition at line 339 of file driver_wm8978.h.

◆ wm8978_eq4_band_centre_freq_t

wm8978 eq4 band centre freq enumeration definition

Enumerator
WM8978_EQ4_BAND_CENTRE_FREQ_1800HZ 

1800hz

WM8978_EQ4_BAND_CENTRE_FREQ_2400HZ 

2400hz

WM8978_EQ4_BAND_CENTRE_FREQ_3200HZ 

3200hz

WM8978_EQ4_BAND_CENTRE_FREQ_4100HZ 

4100hz

Definition at line 350 of file driver_wm8978.h.

◆ wm8978_eq5_band_cut_off_t

wm8978 eq5 band cut off enumeration definition

Enumerator
WM8978_EQ5_BAND_CUT_OFF_5300HZ 

5300hz

WM8978_EQ5_BAND_CUT_OFF_6900HZ 

6900hz

WM8978_EQ5_BAND_CUT_OFF_9000HZ 

9000hz

WM8978_EQ5_BAND_CUT_OFF_11700HZ 

11700hz

Definition at line 361 of file driver_wm8978.h.

◆ wm8978_eq_bandwidth_t

wm8978 eq bandwidth enumeration definition

Enumerator
WM8978_EQ_BANDWIDTH_NARROW 

narrow bandwidth

WM8978_EQ_BANDWIDTH_WIDE 

wide bandwidth

Definition at line 319 of file driver_wm8978.h.

◆ wm8978_equaliser_t

wm8978 equaliser enumeration definition

Enumerator
WM8978_EQUALISER_APPLIED_TO_ADC 

equaliser and 3d enhancement applied to adc path

WM8978_EQUALISER_APPLIED_TO_DAC 

equaliser and 3d enhancement applied to dac path

Definition at line 299 of file driver_wm8978.h.

◆ wm8978_gpio1_sel_t

wm8978 gpio1 sel enumeration definition

Enumerator
WM8978_GPIO1_SEL_INPUT 

input

WM8978_GPIO1_SEL_TEMP_OK 

temp ok

WM8978_GPIO1_SEL_AMUTE_ACTIVE 

amute active

WM8978_GPIO1_SEL_PLL_CLK 

pll clk

WM8978_GPIO1_SEL_PLL_LOCK 

pll lock

WM8978_GPIO1_SEL_LOGIC_1 

logic 1

WM8978_GPIO1_SEL_LOGIC_0 

logic 0

Definition at line 211 of file driver_wm8978.h.

◆ wm8978_high_pass_filter_cut_off_t

wm8978 high pass filter cut off enumeration definition

                           fs(kH)                             
 8kHz  11.025Hz  12Hz  16Hz  22.05Hz  24Hz  32Hz  44.1Hz  48Hz

0x0 82 113 122 82 113 122 82 113 122 0x1 102 141 153 102 141 153 102 141 153 0x2 131 180 196 131 180 196 131 180 196 0x3 163 225 245 163 225 245 163 225 245 0x4 204 281 306 204 281 306 204 281 306 0x5 261 360 392 261 360 392 261 360 392 0x6 327 450 490 327 450 490 327 450 490 0x7 408 563 612 408 563 612 408 563 612

Enumerator
WM8978_HIGH_PASS_FILTER_CUT_OFF_0 

frequency 0

WM8978_HIGH_PASS_FILTER_CUT_OFF_1 

frequency 1

WM8978_HIGH_PASS_FILTER_CUT_OFF_2 

frequency 2

WM8978_HIGH_PASS_FILTER_CUT_OFF_3 

frequency 3

WM8978_HIGH_PASS_FILTER_CUT_OFF_4 

frequency 4

WM8978_HIGH_PASS_FILTER_CUT_OFF_5 

frequency 5

WM8978_HIGH_PASS_FILTER_CUT_OFF_6 

frequency 6

WM8978_HIGH_PASS_FILTER_CUT_OFF_7 

frequency 7

Definition at line 275 of file driver_wm8978.h.

◆ wm8978_impedance_t

wm8978 impedance enumeration definition

Enumerator
WM8978_IMPEDANCE_OFF 

open circuit

WM8978_IMPEDANCE_75K 

75k ohm

WM8978_IMPEDANCE_300K 

300k ohm

WM8978_IMPEDANCE_5K 

5k ohm

Definition at line 71 of file driver_wm8978.h.

◆ wm8978_jack_sel_t

wm8978 jack sel enumeration definition

Enumerator
WM8978_JACK_SEL_GPIO1 

gpio1

WM8978_JACK_SEL_GPIO2 

gpio2

WM8978_JACK_SEL_GPIO3 

gpio3

Definition at line 225 of file driver_wm8978.h.

◆ wm8978_jack_t

wm8978 jack enumeration definition

Enumerator
WM8978_JACK_OUT1 

out1

WM8978_JACK_OUT2 

out2

WM8978_JACK_OUT3 

out3

WM8978_JACK_OUT4 

out4

Definition at line 244 of file driver_wm8978.h.

◆ wm8978_max_gain_t

wm8978 max gain enumeration definition

Enumerator
WM8978_MAX_GAIN_35P25_DB 

35.25db

WM8978_MAX_GAIN_29P25_DB 

29.25db

WM8978_MAX_GAIN_23P25_DB 

23.25db

WM8978_MAX_GAIN_17P25_DB 

17.25db

WM8978_MAX_GAIN_11P25_DB 

11.25db

WM8978_MAX_GAIN_5P25_DB 

5.25db

WM8978_MAX_GAIN_NEGATIVE_0P75_DB 

-0.75db

WM8978_MAX_GAIN_NEGATIVE_6P75_DB 

-6.75db

Definition at line 432 of file driver_wm8978.h.

◆ wm8978_mclk_div_t

wm8978 mclk div enumeration definition

Enumerator
WM8978_MCLK_DIV_BY_1 

divide by 1

WM8978_MCLK_DIV_BY_1P5 

divide by 1.5

WM8978_MCLK_DIV_BY_2 

divide by 2

WM8978_MCLK_DIV_BY_3 

divide by 3

WM8978_MCLK_DIV_BY_4 

divide by 4

WM8978_MCLK_DIV_BY_6 

divide by 6

WM8978_MCLK_DIV_BY_8 

divide by 8

WM8978_MCLK_DIV_BY_12 

divide by 12

Definition at line 150 of file driver_wm8978.h.

◆ wm8978_min_gain_t

wm8978 min gain enumeration definition

Enumerator
WM8978_MIN_GAIN_30_DB 

30db

WM8978_MIN_GAIN_24_DB 

24db

WM8978_MIN_GAIN_18_DB 

18db

WM8978_MIN_GAIN_12_DB 

12db

WM8978_MIN_GAIN_6_DB 

6db

WM8978_MIN_GAIN_0_DB 

0db

WM8978_MIN_GAIN_NEGATIVE_6_DB 

-6db

WM8978_MIN_GAIN_NEGATIVE_12_DB 

-12db

Definition at line 447 of file driver_wm8978.h.

◆ wm8978_mode_t

wm8978 mode enumeration definition

Enumerator
WM8978_MODE_AUDIO 

audio mode

WM8978_MODE_APPLICATION 

application mode

Definition at line 255 of file driver_wm8978.h.

◆ wm8978_pll_div_t

wm8978 pll div enumeration definition

Enumerator
WM8978_PLL_DIV_BY_1 

divide by 1

WM8978_PLL_DIV_BY_2 

divide by 2

WM8978_PLL_DIV_BY_3 

divide by 3

WM8978_PLL_DIV_BY_4 

divide by 4

Definition at line 200 of file driver_wm8978.h.

◆ wm8978_polarity_t

wm8978 polarity enumeration definition

Enumerator
WM8978_POLARITY_NORMAL 

normal mode

WM8978_POLARITY_INVERTED 

inverted mode

Definition at line 82 of file driver_wm8978.h.

◆ wm8978_vref_t

wm8978 vref enumeration definition

Enumerator
WM8978_VREF_1K 

1k

WM8978_VREF_30K 

30k

Definition at line 480 of file driver_wm8978.h.

◆ wm8978_word_length_t

wm8978 word length enumeration definition

Enumerator
WM8978_WORD_LENGTH_16_BITS 

16 bits

WM8978_WORD_LENGTH_20_BITS 

20 bits

WM8978_WORD_LENGTH_24_BITS 

24 bits

WM8978_WORD_LENGTH_32_BITS 

32 bits

Definition at line 91 of file driver_wm8978.h.

Function Documentation

◆ wm8978_alc_hold_time_convert_to_data()

uint8_t wm8978_alc_hold_time_convert_to_data ( wm8978_handle_t * handle,
uint8_t reg,
float * ms )

convert the alc hold time register raw data to the real data

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]regraw data
[out]*mspointer to an alc hold time real data buffer
Returns
status code
  • 0 success
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 4666 of file driver_wm8978.c.

◆ wm8978_alc_hold_time_convert_to_register()

uint8_t wm8978_alc_hold_time_convert_to_register ( wm8978_handle_t * handle,
float ms,
uint8_t * reg )

convert the alc hold time to the register raw data

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]msalc hold time in ms
[out]*regpointer to an alc hold time raw data buffer
Returns
status code
  • 0 success
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 4639 of file driver_wm8978.c.

◆ wm8978_alc_noise_gate_threshold_convert_to_data()

uint8_t wm8978_alc_noise_gate_threshold_convert_to_data ( wm8978_handle_t * handle,
uint8_t reg,
int8_t * db )

convert the alc noise gate threshold register raw data to the real data

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]regraw data
[out]*dbpointer to an alc noise gate threshold real data buffer
Returns
status code
  • 0 success
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 5011 of file driver_wm8978.c.

◆ wm8978_alc_noise_gate_threshold_convert_to_register()

uint8_t wm8978_alc_noise_gate_threshold_convert_to_register ( wm8978_handle_t * handle,
int8_t db,
uint8_t * reg )

convert the alc noise gate threshold to the register raw data

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]dbalc noise gate threshold in db
[out]*regpointer to an alc noise gate threshold raw data buffer
Returns
status code
  • 0 success
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 4984 of file driver_wm8978.c.

◆ wm8978_aux_left_channel_input_to_left_mixer_volume_convert_to_data()

uint8_t wm8978_aux_left_channel_input_to_left_mixer_volume_convert_to_data ( wm8978_handle_t * handle,
uint8_t reg,
int8_t * db )

convert the aux left channel input to left mixer volume register raw data to the real data

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]regraw data
[out]*dbpointer to a db real data buffer
Returns
status code
  • 0 success
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 7240 of file driver_wm8978.c.

◆ wm8978_aux_left_channel_input_to_left_mixer_volume_convert_to_register()

uint8_t wm8978_aux_left_channel_input_to_left_mixer_volume_convert_to_register ( wm8978_handle_t * handle,
int8_t db,
uint8_t * reg )

convert the aux left channel input to left mixer volume to the register raw data

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]dbset db
[out]*regpointer to a db raw data buffer
Returns
status code
  • 0 success
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 7213 of file driver_wm8978.c.

◆ wm8978_aux_right_channel_input_to_right_mixer_volume_convert_to_data()

uint8_t wm8978_aux_right_channel_input_to_right_mixer_volume_convert_to_data ( wm8978_handle_t * handle,
uint8_t reg,
int8_t * db )

convert the aux right channel input to right mixer volume raw data to the real data

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]regraw data
[out]*dbpointer to a db real data buffer
Returns
status code
  • 0 success
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 7587 of file driver_wm8978.c.

◆ wm8978_aux_right_channel_input_to_right_mixer_volume_convert_to_register()

uint8_t wm8978_aux_right_channel_input_to_right_mixer_volume_convert_to_register ( wm8978_handle_t * handle,
int8_t db,
uint8_t * reg )

convert the aux right channel input to right mixer volume to the register raw data

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]dbset db
[out]*regpointer to a db raw data buffer
Returns
status code
  • 0 success
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 7560 of file driver_wm8978.c.

◆ wm8978_auxiliary_amplifier_left_channel_input_boost_stage_convert_to_data()

uint8_t wm8978_auxiliary_amplifier_left_channel_input_boost_stage_convert_to_data ( wm8978_handle_t * handle,
uint8_t reg,
int8_t * db )

convert the auxiliary amplifier left channel input boost stage register raw data to the real data

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]regraw data
[out]*dbpointer to a db real data buffer
Returns
status code
  • 0 success
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 6562 of file driver_wm8978.c.

◆ wm8978_auxiliary_amplifier_left_channel_input_boost_stage_convert_to_register()

uint8_t wm8978_auxiliary_amplifier_left_channel_input_boost_stage_convert_to_register ( wm8978_handle_t * handle,
int8_t db,
uint8_t * reg )

convert the auxiliary amplifier left channel input boost stage to the register raw data

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]dbset db
[out]*regpointer to a volume raw data buffer
Returns
status code
  • 0 success
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 6535 of file driver_wm8978.c.

◆ wm8978_auxiliary_amplifier_right_channel_input_boost_stage_convert_to_data()

uint8_t wm8978_auxiliary_amplifier_right_channel_input_boost_stage_convert_to_data ( wm8978_handle_t * handle,
uint8_t reg,
int8_t * db )

convert the auxiliary amplifier right channel input boost stage register raw data to the real data

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]regraw data
[out]*dbpointer to a db real data buffer
Returns
status code
  • 0 success
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 6819 of file driver_wm8978.c.

◆ wm8978_auxiliary_amplifier_right_channel_input_boost_stage_convert_to_register()

uint8_t wm8978_auxiliary_amplifier_right_channel_input_boost_stage_convert_to_register ( wm8978_handle_t * handle,
int8_t db,
uint8_t * reg )

convert the auxiliary amplifier right channel input boost stage to the register raw data

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]dbset db
[out]*regpointer to a db raw data buffer
Returns
status code
  • 0 success
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 6792 of file driver_wm8978.c.

◆ wm8978_beep_volume_convert_to_data()

uint8_t wm8978_beep_volume_convert_to_data ( wm8978_handle_t * handle,
uint8_t reg,
int8_t * db )

convert the beep volume register raw data to the real data

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]regraw data
[out]*dbpointer to a db real data buffer
Returns
status code
  • 0 success
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 5463 of file driver_wm8978.c.

◆ wm8978_beep_volume_convert_to_register()

uint8_t wm8978_beep_volume_convert_to_register ( wm8978_handle_t * handle,
int8_t db,
uint8_t * reg )

convert the beep volume to the register raw data

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]dbset db
[out]*regpointer to a beep volume raw data buffer
Returns
status code
  • 0 success
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 5436 of file driver_wm8978.c.

◆ wm8978_deinit()

uint8_t wm8978_deinit ( wm8978_handle_t * handle)

close the chip

Parameters
[in]*handlepointer to a wm8978 handle structure
Returns
status code
  • 0 success
  • 1 iic deinit failed
  • 2 handle is NULL
  • 3 handle is not initialized
  • 4 power down failed
Note
none

Definition at line 9434 of file driver_wm8978.c.

◆ wm8978_depth_3d_convert_to_data()

uint8_t wm8978_depth_3d_convert_to_data ( wm8978_handle_t * handle,
uint8_t reg,
float * percent )

convert the depth 3d register raw data to the real data

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]regraw data
[out]*percentpointer to a depth 3d real data buffer
Returns
status code
  • 0 success
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 5267 of file driver_wm8978.c.

◆ wm8978_depth_3d_convert_to_register()

uint8_t wm8978_depth_3d_convert_to_register ( wm8978_handle_t * handle,
float percent,
uint8_t * reg )

convert the depth 3d to the register raw data

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]percentset percent
[out]*regpointer to a depth 3d raw data buffer
Returns
status code
  • 0 success
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 5240 of file driver_wm8978.c.

◆ wm8978_eq_gain_convert_to_data()

uint8_t wm8978_eq_gain_convert_to_data ( wm8978_handle_t * handle,
uint8_t reg,
int8_t * db )

convert the eq gain register raw data to the real data

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]regvolume raw data
[out]*dbpointer to an eq gain real data buffer
Returns
status code
  • 0 success
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 3928 of file driver_wm8978.c.

◆ wm8978_eq_gain_convert_to_register()

uint8_t wm8978_eq_gain_convert_to_register ( wm8978_handle_t * handle,
int8_t db,
uint8_t * reg )

convert the eq gain to the register raw data

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]dbeq gain in db
[out]*regpointer to an eq gain raw data buffer
Returns
status code
  • 0 success
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 3901 of file driver_wm8978.c.

◆ wm8978_info()

uint8_t wm8978_info ( wm8978_info_t * info)

get chip's information

Parameters
[out]*infopointer to a wm8978 info structure
Returns
status code
  • 0 success
  • 2 handle is NULL
Note
none

Definition at line 9510 of file driver_wm8978.c.

◆ wm8978_init()

uint8_t wm8978_init ( wm8978_handle_t * handle)

initialize the chip

Parameters
[in]*handlepointer to a wm8978 handle structure
Returns
status code
  • 0 success
  • 1 iic initialization failed
  • 2 handle is NULL
  • 3 linked functions is NULL
  • 4 reset failed
Note
none

Definition at line 9359 of file driver_wm8978.c.

◆ wm8978_left_bypass_volume_control_to_output_channel_mixer_convert_to_data()

uint8_t wm8978_left_bypass_volume_control_to_output_channel_mixer_convert_to_data ( wm8978_handle_t * handle,
uint8_t reg,
int8_t * db )

convert the left bypass volume control to output channel mixer register raw data to the real data

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]regraw data
[out]*dbpointer to a db real data buffer
Returns
status code
  • 0 success
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 7391 of file driver_wm8978.c.

◆ wm8978_left_bypass_volume_control_to_output_channel_mixer_convert_to_register()

uint8_t wm8978_left_bypass_volume_control_to_output_channel_mixer_convert_to_register ( wm8978_handle_t * handle,
int8_t db,
uint8_t * reg )

convert the left bypass volume control to output channel mixer to the register raw data

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]dbset db
[out]*regpointer to a db raw data buffer
Returns
status code
  • 0 success
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 7364 of file driver_wm8978.c.

◆ wm8978_left_channel_input_boost_stage_convert_to_data()

uint8_t wm8978_left_channel_input_boost_stage_convert_to_data ( wm8978_handle_t * handle,
uint8_t reg,
int8_t * db )

convert the left channel input boost stage register raw data to the real data

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]regraw data
[out]*dbpointer to a db real data buffer
Returns
status code
  • 0 success
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 6456 of file driver_wm8978.c.

◆ wm8978_left_channel_input_boost_stage_convert_to_register()

uint8_t wm8978_left_channel_input_boost_stage_convert_to_register ( wm8978_handle_t * handle,
int8_t db,
uint8_t * reg )

convert the left channel input boost stage to the register raw data

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]dbset db
[out]*regpointer to a volume raw data buffer
Returns
status code
  • 0 success
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 6429 of file driver_wm8978.c.

◆ wm8978_left_channel_input_pga_volume_convert_to_data()

uint8_t wm8978_left_channel_input_pga_volume_convert_to_data ( wm8978_handle_t * handle,
uint8_t reg,
float * db )

convert the left channel input pga volume register raw data to the real data

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]regraw data
[out]*dbpointer to a volume real data buffer
Returns
status code
  • 0 success
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 6064 of file driver_wm8978.c.

◆ wm8978_left_channel_input_pga_volume_convert_to_register()

uint8_t wm8978_left_channel_input_pga_volume_convert_to_register ( wm8978_handle_t * handle,
float db,
uint8_t * reg )

convert the left channel input pga volume to the register raw data

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]dbset db
[out]*regpointer to a volume raw data buffer
Returns
status code
  • 0 success
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 6037 of file driver_wm8978.c.

◆ wm8978_lout1_left_headphone_output_volume_convert_to_data()

uint8_t wm8978_lout1_left_headphone_output_volume_convert_to_data ( wm8978_handle_t * handle,
uint8_t reg,
int8_t * db )

convert the lout1 left headphone output volume raw data to the real data

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]regraw data
[out]*dbpointer to a db real data buffer
Returns
status code
  • 0 success
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 8069 of file driver_wm8978.c.

◆ wm8978_lout1_left_headphone_output_volume_convert_to_register()

uint8_t wm8978_lout1_left_headphone_output_volume_convert_to_register ( wm8978_handle_t * handle,
int8_t db,
uint8_t * reg )

convert the lout1 left headphone output volume to the register raw data

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]dbset db
[out]*regpointer to a db raw data buffer
Returns
status code
  • 0 success
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 8042 of file driver_wm8978.c.

◆ wm8978_lout2_left_speaker_output_volume_convert_to_data()

uint8_t wm8978_lout2_left_speaker_output_volume_convert_to_data ( wm8978_handle_t * handle,
uint8_t reg,
int8_t * db )

convert the lout2 left speaker output volume raw data to the real data

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]regraw data
[out]*dbpointer to a db real data buffer
Returns
status code
  • 0 success
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 8551 of file driver_wm8978.c.

◆ wm8978_lout2_left_speaker_output_volume_convert_to_register()

uint8_t wm8978_lout2_left_speaker_output_volume_convert_to_register ( wm8978_handle_t * handle,
int8_t db,
uint8_t * reg )

convert the lout2 left speaker output volume to the register raw data

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]dbset db
[out]*regpointer to a db raw data buffer
Returns
status code
  • 0 success
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 8524 of file driver_wm8978.c.

◆ wm8978_right_bypass_volume_control_to_output_channel_mixer_convert_to_data()

uint8_t wm8978_right_bypass_volume_control_to_output_channel_mixer_convert_to_data ( wm8978_handle_t * handle,
uint8_t reg,
int8_t * db )

convert the right bypass volume control to output channel mixer raw data to the real data

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]regraw data
[out]*dbpointer to a db real data buffer
Returns
status code
  • 0 success
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 7738 of file driver_wm8978.c.

◆ wm8978_right_bypass_volume_control_to_output_channel_mixer_convert_to_register()

uint8_t wm8978_right_bypass_volume_control_to_output_channel_mixer_convert_to_register ( wm8978_handle_t * handle,
int8_t db,
uint8_t * reg )

convert the right bypass volume control to output channel mixer to the register raw data

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]dbset db
[out]*regpointer to a db raw data buffer
Returns
status code
  • 0 success
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 7711 of file driver_wm8978.c.

◆ wm8978_right_channel_input_boost_stage_convert_to_data()

uint8_t wm8978_right_channel_input_boost_stage_convert_to_data ( wm8978_handle_t * handle,
uint8_t reg,
int8_t * db )

convert the right channel input boost stage register raw data to the real data

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]regraw data
[out]*dbpointer to a db real data buffer
Returns
status code
  • 0 success
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 6713 of file driver_wm8978.c.

◆ wm8978_right_channel_input_boost_stage_convert_to_register()

uint8_t wm8978_right_channel_input_boost_stage_convert_to_register ( wm8978_handle_t * handle,
int8_t db,
uint8_t * reg )

convert the right channel input boost stage to the register raw data

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]dbset db
[out]*regpointer to a volume raw data buffer
Returns
status code
  • 0 success
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 6686 of file driver_wm8978.c.

◆ wm8978_right_channel_input_pga_volume_convert_to_data()

uint8_t wm8978_right_channel_input_pga_volume_convert_to_data ( wm8978_handle_t * handle,
uint8_t reg,
float * db )

convert the right channel input pga volume register raw data to the real data

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]regraw data
[out]*dbpointer to a volume real data buffer
Returns
status code
  • 0 success
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 6305 of file driver_wm8978.c.

◆ wm8978_right_channel_input_pga_volume_convert_to_register()

uint8_t wm8978_right_channel_input_pga_volume_convert_to_register ( wm8978_handle_t * handle,
float db,
uint8_t * reg )

convert the right channel input pga volume to the register raw data

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]dbset db
[out]*regpointer to a volume raw data buffer
Returns
status code
  • 0 success
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 6278 of file driver_wm8978.c.

◆ wm8978_rout1_right_headphone_output_volume_convert_to_data()

uint8_t wm8978_rout1_right_headphone_output_volume_convert_to_data ( wm8978_handle_t * handle,
uint8_t reg,
int8_t * db )

convert the rout1 right headphone output volume raw data to the real data

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]regraw data
[out]*dbpointer to a db real data buffer
Returns
status code
  • 0 success
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 8310 of file driver_wm8978.c.

◆ wm8978_rout1_right_headphone_output_volume_convert_to_register()

uint8_t wm8978_rout1_right_headphone_output_volume_convert_to_register ( wm8978_handle_t * handle,
int8_t db,
uint8_t * reg )

convert the rout1 right headphone output volume to the register raw data

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]dbset db
[out]*regpointer to a db raw data buffer
Returns
status code
  • 0 success
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 8283 of file driver_wm8978.c.

◆ wm8978_rout2_right_speaker_output_volume_convert_to_data()

uint8_t wm8978_rout2_right_speaker_output_volume_convert_to_data ( wm8978_handle_t * handle,
uint8_t reg,
int8_t * db )

convert the rout2 right speaker output volume raw data to the real data

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]regraw data
[out]*dbpointer to a db real data buffer
Returns
status code
  • 0 success
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 8792 of file driver_wm8978.c.

◆ wm8978_rout2_right_speaker_output_volume_convert_to_register()

uint8_t wm8978_rout2_right_speaker_output_volume_convert_to_register ( wm8978_handle_t * handle,
int8_t db,
uint8_t * reg )

convert the rout2 right speaker output volume to the register raw data

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]dbset db
[out]*regpointer to a db raw data buffer
Returns
status code
  • 0 success
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 8765 of file driver_wm8978.c.

◆ wm8978_set_adc_appear()

uint8_t wm8978_set_adc_appear ( wm8978_handle_t * handle,
wm8978_appear_t appear )

set adc appear

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]appearadc appear side
Returns
status code
  • 0 success
  • 1 set adc appear failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 1576 of file driver_wm8978.c.

◆ wm8978_set_adc_companding()

uint8_t wm8978_set_adc_companding ( wm8978_handle_t * handle,
wm8978_companding_t companding )

set adc companding

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]compandingadc companding
Returns
status code
  • 0 success
  • 1 set adc companding failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 1756 of file driver_wm8978.c.

◆ wm8978_set_adc_left_channel_polarity()

uint8_t wm8978_set_adc_left_channel_polarity ( wm8978_handle_t * handle,
wm8978_polarity_t polarity )

set adc left channel polarity

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]polarityadc polarity
Returns
status code
  • 0 success
  • 1 set adc left channel polarity failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 3061 of file driver_wm8978.c.

◆ wm8978_set_adc_left_volume()

uint8_t wm8978_set_adc_left_volume ( wm8978_handle_t * handle,
wm8978_bool_t enable,
uint8_t volume )

set adc left volume

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value, update once flag
[in]volumeset volume
Returns
status code
  • 0 success
  • 1 set adc left volume failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 3107 of file driver_wm8978.c.

◆ wm8978_set_adc_oversample_rate()

uint8_t wm8978_set_adc_oversample_rate ( wm8978_handle_t * handle,
wm8978_adc_oversample_rate_t rate )

set adc oversample rate

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]rateadc oversample rate
Returns
status code
  • 0 success
  • 1 set adc oversample rate failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 2971 of file driver_wm8978.c.

◆ wm8978_set_adc_right_channel_polarity()

uint8_t wm8978_set_adc_right_channel_polarity ( wm8978_handle_t * handle,
wm8978_polarity_t polarity )

set adc right channel polarity

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]polarityadc polarity
Returns
status code
  • 0 success
  • 1 set adc right channel polarity failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 3016 of file driver_wm8978.c.

◆ wm8978_set_adc_right_volume()

uint8_t wm8978_set_adc_right_volume ( wm8978_handle_t * handle,
wm8978_bool_t enable,
uint8_t volume )

set adc right volume

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value, update once flag
[in]volumeset volume
Returns
status code
  • 0 success
  • 1 set adc right volume failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 3145 of file driver_wm8978.c.

◆ wm8978_set_alc()

uint8_t wm8978_set_alc ( wm8978_handle_t * handle,
wm8978_alc_t alc )

set alc

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]alcset alc
Returns
status code
  • 0 success
  • 1 set alc failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 4452 of file driver_wm8978.c.

◆ wm8978_set_alc_attack()

uint8_t wm8978_set_alc_attack ( wm8978_handle_t * handle,
uint8_t attack )

set alc attack

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]attackset attack
Returns
status code
  • 0 success
  • 1 set alc attack failed
  • 2 handle is NULL
  • 3 handle is not initialized
  • 4 decay > 0xF
Note
none

Definition at line 4836 of file driver_wm8978.c.

◆ wm8978_set_alc_decay()

uint8_t wm8978_set_alc_decay ( wm8978_handle_t * handle,
uint8_t decay )

set alc decay

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]decayset decay
Returns
status code
  • 0 success
  • 1 set alc decay failed
  • 2 handle is NULL
  • 3 handle is not initialized
  • 4 decay > 0xF
Note
none

Definition at line 4784 of file driver_wm8978.c.

◆ wm8978_set_alc_hold_time()

uint8_t wm8978_set_alc_hold_time ( wm8978_handle_t * handle,
uint8_t t )

set alc hold time

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]talc hold time
Returns
status code
  • 0 success
  • 1 set alc hold time failed
  • 2 handle is NULL
  • 3 handle is not initialized
  • 4 t > 0xF
Note
none

Definition at line 4588 of file driver_wm8978.c.

◆ wm8978_set_alc_level()

uint8_t wm8978_set_alc_level ( wm8978_handle_t * handle,
wm8978_alc_level_t level )

set alc level

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]levelset level
Returns
status code
  • 0 success
  • 1 set alc level failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 4693 of file driver_wm8978.c.

◆ wm8978_set_alc_max_gain()

uint8_t wm8978_set_alc_max_gain ( wm8978_handle_t * handle,
wm8978_max_gain_t gain )

set alc max gain

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]gainalc max gain
Returns
status code
  • 0 success
  • 1 set alc max gain failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 4497 of file driver_wm8978.c.

◆ wm8978_set_alc_min_gain()

uint8_t wm8978_set_alc_min_gain ( wm8978_handle_t * handle,
wm8978_min_gain_t gain )

set alc min gain

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]gainalc min gain
Returns
status code
  • 0 success
  • 1 set alc min gain failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 4542 of file driver_wm8978.c.

◆ wm8978_set_alc_mode()

uint8_t wm8978_set_alc_mode ( wm8978_handle_t * handle,
wm8978_alc_mode_t mode )

set alc mode

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]modealc mode
Returns
status code
  • 0 success
  • 1 set alc mode failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 4738 of file driver_wm8978.c.

◆ wm8978_set_alc_noise_gate()

uint8_t wm8978_set_alc_noise_gate ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable alc noise gate

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set alc noise gate failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 4887 of file driver_wm8978.c.

◆ wm8978_set_alc_noise_gate_threshold()

uint8_t wm8978_set_alc_noise_gate_threshold ( wm8978_handle_t * handle,
uint8_t threshold )

set alc noise gate threshold

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]thresholdalc noise gate threshold
Returns
status code
  • 0 success
  • 1 set alc noise gate threshold failed
  • 2 handle is NULL
  • 3 handle is not initialized
  • 4 threshold > 0x7
Note
none

Definition at line 4933 of file driver_wm8978.c.

◆ wm8978_set_amute()

uint8_t wm8978_set_amute ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable amute

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set amute failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 2521 of file driver_wm8978.c.

◆ wm8978_set_analogue_amplifier_bias()

uint8_t wm8978_set_analogue_amplifier_bias ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable analogue amplifier bias

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set analogue amplifier bias failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 451 of file driver_wm8978.c.

◆ wm8978_set_approximate_sample_rate()

uint8_t wm8978_set_approximate_sample_rate ( wm8978_handle_t * handle,
wm8978_approximate_sample_t sample )

set approximate sample rate

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]sampleapproximate sample rate
Returns
status code
  • 0 success
  • 1 set approximate sample rate failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 2026 of file driver_wm8978.c.

◆ wm8978_set_aux_left_channel_input_to_left_mixer_volume()

uint8_t wm8978_set_aux_left_channel_input_to_left_mixer_volume ( wm8978_handle_t * handle,
uint8_t vol )

set aux left channel input to left mixer volume

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]volset vol
Returns
status code
  • 0 success
  • 1 set aux left channel input to left mixer volume failed
  • 2 handle is NULL
  • 3 handle is not initialized
  • 4 vol > 0x7
Note
none

Definition at line 7162 of file driver_wm8978.c.

◆ wm8978_set_aux_right_channel_input_to_right_mixer_volume()

uint8_t wm8978_set_aux_right_channel_input_to_right_mixer_volume ( wm8978_handle_t * handle,
uint8_t vol )

set aux right channel input to right mixer volume

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]volset vol
Returns
status code
  • 0 success
  • 1 set aux right channel input to right mixer volume failed
  • 2 handle is NULL
  • 3 handle is not initialized
  • 4 vol > 0x7
Note
none

Definition at line 7509 of file driver_wm8978.c.

◆ wm8978_set_auxiliary_amplifier_left_channel_input_boost_stage()

uint8_t wm8978_set_auxiliary_amplifier_left_channel_input_boost_stage ( wm8978_handle_t * handle,
uint8_t stage )

set auxiliary amplifier left channel input boost stage

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]stageset stage
Returns
status code
  • 0 success
  • 1 set auxiliary amplifier left channel input boost stage failed
  • 2 handle is NULL
  • 3 handle is not initialized
  • 4 stage > 0x7
Note
none

Definition at line 6484 of file driver_wm8978.c.

◆ wm8978_set_auxiliary_amplifier_right_channel_input_boost_stage()

uint8_t wm8978_set_auxiliary_amplifier_right_channel_input_boost_stage ( wm8978_handle_t * handle,
uint8_t stage )

set auxiliary amplifier right channel input boost stage

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]stageset stage
Returns
status code
  • 0 success
  • 1 set auxiliary amplifier right channel input boost stage failed
  • 2 handle is NULL
  • 3 handle is not initialized
  • 4 stage > 0x7
Note
none

Definition at line 6741 of file driver_wm8978.c.

◆ wm8978_set_bclk_div()

uint8_t wm8978_set_bclk_div ( wm8978_handle_t * handle,
wm8978_bclk_div_t d )

set bclk div

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]dbclk div
Returns
status code
  • 0 success
  • 1 set bclk div failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 1936 of file driver_wm8978.c.

◆ wm8978_set_bclk_polarity()

uint8_t wm8978_set_bclk_polarity ( wm8978_handle_t * handle,
wm8978_polarity_t polarity )

set bclk polarity

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]polaritybclk polarity
Returns
status code
  • 0 success
  • 1 set bclk polarity failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 1351 of file driver_wm8978.c.

◆ wm8978_set_beep()

uint8_t wm8978_set_beep ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable beep

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set beep failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 5490 of file driver_wm8978.c.

◆ wm8978_set_beep_volume()

uint8_t wm8978_set_beep_volume ( wm8978_handle_t * handle,
uint8_t vol )

set beep volume

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]volset volume
Returns
status code
  • 0 success
  • 1 set beep volume failed
  • 2 handle is NULL
  • 3 handle is not initialized
  • 4 vol > 0x7
Note
none

Definition at line 5385 of file driver_wm8978.c.

◆ wm8978_set_channel()

uint8_t wm8978_set_channel ( wm8978_handle_t * handle,
wm8978_channel_t channel )

set channel

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]channelaudio channel
Returns
status code
  • 0 success
  • 1 set channel failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 1621 of file driver_wm8978.c.

◆ wm8978_set_clksel()

uint8_t wm8978_set_clksel ( wm8978_handle_t * handle,
wm8978_clksel_t clksel )

set clksel

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]clkselset clksel
Returns
status code
  • 0 success
  • 1 set clksel failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 1846 of file driver_wm8978.c.

◆ wm8978_set_clock_mode()

uint8_t wm8978_set_clock_mode ( wm8978_handle_t * handle,
wm8978_clock_mode_t mode )

set clock mode

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]modeclock mode
Returns
status code
  • 0 success
  • 1 set clock mode failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 1981 of file driver_wm8978.c.

◆ wm8978_set_companding_8bit_mode()

uint8_t wm8978_set_companding_8bit_mode ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable companding 8bit mode

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set companding 8bit mode failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 1666 of file driver_wm8978.c.

◆ wm8978_set_dac_appear()

uint8_t wm8978_set_dac_appear ( wm8978_handle_t * handle,
wm8978_appear_t appear )

set dac appear

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]appeardac appear side
Returns
status code
  • 0 success
  • 1 set dac appear failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 1531 of file driver_wm8978.c.

◆ wm8978_set_dac_companding()

uint8_t wm8978_set_dac_companding ( wm8978_handle_t * handle,
wm8978_companding_t companding )

set dac companding

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]compandingdac companding
Returns
status code
  • 0 success
  • 1 set dac companding failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 1711 of file driver_wm8978.c.

◆ wm8978_set_dac_digital_limiter()

uint8_t wm8978_set_dac_digital_limiter ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable dac digital limiter

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set dac digital limiter failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 3955 of file driver_wm8978.c.

◆ wm8978_set_dac_left_volume()

uint8_t wm8978_set_dac_left_volume ( wm8978_handle_t * handle,
wm8978_bool_t enable,
uint8_t volume )

set dac left volume

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value, update once flag
[in]volumeset volume
Returns
status code
  • 0 success
  • 1 set dac left volume failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 2657 of file driver_wm8978.c.

◆ wm8978_set_dac_limiter_attack()

uint8_t wm8978_set_dac_limiter_attack ( wm8978_handle_t * handle,
wm8978_dac_limiter_attack_t attack )

set dac limiter attack

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]attackdac limiter attack
Returns
status code
  • 0 success
  • 1 set dac limiter attack failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 4045 of file driver_wm8978.c.

◆ wm8978_set_dac_limiter_decay()

uint8_t wm8978_set_dac_limiter_decay ( wm8978_handle_t * handle,
wm8978_dac_limiter_decay_t decay )

set dac limiter decay

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]decaydac limiter decay
Returns
status code
  • 0 success
  • 1 set dac limiter decay failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 4000 of file driver_wm8978.c.

◆ wm8978_set_dac_limiter_level()

uint8_t wm8978_set_dac_limiter_level ( wm8978_handle_t * handle,
wm8978_dac_limiter_level_t level )

set dac limiter level

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]leveldac limiter level
Returns
status code
  • 0 success
  • 1 set dac limiter level failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 4090 of file driver_wm8978.c.

◆ wm8978_set_dac_limiter_volume_boost()

uint8_t wm8978_set_dac_limiter_volume_boost ( wm8978_handle_t * handle,
uint8_t db )

set dac limiter volume boost

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]dbset db
Returns
status code
  • 0 success
  • 1 set dac limiter volume boost failed
  • 2 handle is NULL
  • 3 handle is not initialized
  • 4 db > 12
Note
none

Definition at line 4136 of file driver_wm8978.c.

◆ wm8978_set_dac_oversample_rate()

uint8_t wm8978_set_dac_oversample_rate ( wm8978_handle_t * handle,
wm8978_dac_oversample_rate_t rate )

set dac oversample rate

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]ratedac oversample rate
Returns
status code
  • 0 success
  • 1 set dac oversample rate failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 2476 of file driver_wm8978.c.

◆ wm8978_set_dac_right_volume()

uint8_t wm8978_set_dac_right_volume ( wm8978_handle_t * handle,
wm8978_bool_t enable,
uint8_t volume )

set dac right volume

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value, update once flag
[in]volumeset volume
Returns
status code
  • 0 success
  • 1 set dac right volume failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 2695 of file driver_wm8978.c.

◆ wm8978_set_data_format()

uint8_t wm8978_set_data_format ( wm8978_handle_t * handle,
wm8978_data_format_t format )

set data format

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]formatdata format
Returns
status code
  • 0 success
  • 1 set data format failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 1486 of file driver_wm8978.c.

◆ wm8978_set_dc_buffer()

uint8_t wm8978_set_dc_buffer ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable dc buffer

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set dc buffer failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 226 of file driver_wm8978.c.

◆ wm8978_set_depth_3d()

uint8_t wm8978_set_depth_3d ( wm8978_handle_t * handle,
uint8_t depth )

set depth 3d

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]depth3d depth
Returns
status code
  • 0 success
  • 1 set depth 3d failed
  • 2 handle is NULL
  • 3 handle is not initialized
  • 4 depth > 0xF
Note
none

Definition at line 5189 of file driver_wm8978.c.

◆ wm8978_set_eq1_cut_off()

uint8_t wm8978_set_eq1_cut_off ( wm8978_handle_t * handle,
wm8978_eq1_band_cut_off_t cut_off )

set eq1 cut off

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]cut_offcut off freq
Returns
status code
  • 0 success
  • 1 set eq1 cut off failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 3281 of file driver_wm8978.c.

◆ wm8978_set_eq1_gain()

uint8_t wm8978_set_eq1_gain ( wm8978_handle_t * handle,
uint8_t gain )

set eq1 gain

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]gaineq1 gain
Returns
status code
  • 0 success
  • 1 set eq1 gain failed
  • 2 handle is NULL
  • 3 handle is not initialized
  • 4 gain > 0x1F
Note
none

Definition at line 3327 of file driver_wm8978.c.

◆ wm8978_set_eq2_bandwidth()

uint8_t wm8978_set_eq2_bandwidth ( wm8978_handle_t * handle,
wm8978_eq_bandwidth_t width )

set eq2 bandwidth

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]widthset bandwidth
Returns
status code
  • 0 success
  • 1 set eq2 bandwidth failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 3378 of file driver_wm8978.c.

◆ wm8978_set_eq2_centre_freq()

uint8_t wm8978_set_eq2_centre_freq ( wm8978_handle_t * handle,
wm8978_eq2_band_centre_freq_t freq )

set eq2 centre freq

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]freqcentre freq
Returns
status code
  • 0 success
  • 1 set eq2 centre freq failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 3423 of file driver_wm8978.c.

◆ wm8978_set_eq2_gain()

uint8_t wm8978_set_eq2_gain ( wm8978_handle_t * handle,
uint8_t gain )

set eq2 gain

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]gaineq2 gain
Returns
status code
  • 0 success
  • 1 set eq2 gain failed
  • 2 handle is NULL
  • 3 handle is not initialized
  • 4 gain > 0x1F
Note
none

Definition at line 3469 of file driver_wm8978.c.

◆ wm8978_set_eq3_bandwidth()

uint8_t wm8978_set_eq3_bandwidth ( wm8978_handle_t * handle,
wm8978_eq_bandwidth_t width )

set eq3 bandwidth

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]widthset bandwidth
Returns
status code
  • 0 success
  • 1 set eq3 bandwidth failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 3520 of file driver_wm8978.c.

◆ wm8978_set_eq3_centre_freq()

uint8_t wm8978_set_eq3_centre_freq ( wm8978_handle_t * handle,
wm8978_eq3_band_centre_freq_t freq )

set eq3 centre freq

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]freqcentre freq
Returns
status code
  • 0 success
  • 1 set eq3 centre freq failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 3565 of file driver_wm8978.c.

◆ wm8978_set_eq3_gain()

uint8_t wm8978_set_eq3_gain ( wm8978_handle_t * handle,
uint8_t gain )

set eq3 gain

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]gaineq3 gain
Returns
status code
  • 0 success
  • 1 set eq3 gain failed
  • 2 handle is NULL
  • 3 handle is not initialized
  • 4 gain > 0x1F
Note
none

Definition at line 3611 of file driver_wm8978.c.

◆ wm8978_set_eq4_bandwidth()

uint8_t wm8978_set_eq4_bandwidth ( wm8978_handle_t * handle,
wm8978_eq_bandwidth_t width )

set eq4 bandwidth

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]widthset bandwidth
Returns
status code
  • 0 success
  • 1 set eq4 bandwidth failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 3662 of file driver_wm8978.c.

◆ wm8978_set_eq4_centre_freq()

uint8_t wm8978_set_eq4_centre_freq ( wm8978_handle_t * handle,
wm8978_eq4_band_centre_freq_t freq )

set eq4 centre freq

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]freqcentre freq
Returns
status code
  • 0 success
  • 1 set eq4 centre freq failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 3707 of file driver_wm8978.c.

◆ wm8978_set_eq4_gain()

uint8_t wm8978_set_eq4_gain ( wm8978_handle_t * handle,
uint8_t gain )

set eq4 gain

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]gaineq4 gain
Returns
status code
  • 0 success
  • 1 set eq4 gain failed
  • 2 handle is NULL
  • 3 handle is not initialized
  • 4 gain > 0x1F
Note
none

Definition at line 3753 of file driver_wm8978.c.

◆ wm8978_set_eq5_cut_off()

uint8_t wm8978_set_eq5_cut_off ( wm8978_handle_t * handle,
wm8978_eq5_band_cut_off_t cut_off )

set eq5 cut off

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]cut_offcut off freq
Returns
status code
  • 0 success
  • 1 set eq5 cut off failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 3804 of file driver_wm8978.c.

◆ wm8978_set_eq5_gain()

uint8_t wm8978_set_eq5_gain ( wm8978_handle_t * handle,
uint8_t gain )

set eq5 gain

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]gaineq5 gain
Returns
status code
  • 0 success
  • 1 set eq5 gain failed
  • 2 handle is NULL
  • 3 handle is not initialized
  • 4 gain > 0x1F
Note
none

Definition at line 3850 of file driver_wm8978.c.

◆ wm8978_set_equaliser_apply()

uint8_t wm8978_set_equaliser_apply ( wm8978_handle_t * handle,
wm8978_equaliser_t equaliser )

set equaliser apply

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]equaliserset equaliser
Returns
status code
  • 0 success
  • 1 set equaliser apply failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 3236 of file driver_wm8978.c.

◆ wm8978_set_gpio1_polarity()

uint8_t wm8978_set_gpio1_polarity ( wm8978_handle_t * handle,
wm8978_polarity_t polarity )

set gpio1 polarity

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]polaritygpio1 polarity
Returns
status code
  • 0 success
  • 1 set gpio1 polarity failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 2161 of file driver_wm8978.c.

◆ wm8978_set_gpio1_select()

uint8_t wm8978_set_gpio1_select ( wm8978_handle_t * handle,
wm8978_gpio1_sel_t sel )

set gpio1 select

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]selgpio1 select
Returns
status code
  • 0 success
  • 1 set gpio1 select failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 2206 of file driver_wm8978.c.

◆ wm8978_set_high_pass_filter()

uint8_t wm8978_set_high_pass_filter ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable high pass filter

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set high pass filter failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 2836 of file driver_wm8978.c.

◆ wm8978_set_high_pass_filter_cut_off()

uint8_t wm8978_set_high_pass_filter_cut_off ( wm8978_handle_t * handle,
wm8978_high_pass_filter_cut_off_t cut )

set high pass filter cut off

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]cuthigh pass filter cut off
Returns
status code
  • 0 success
  • 1 set high pass filter cut off failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 2926 of file driver_wm8978.c.

◆ wm8978_set_inv_rout2_mixer()

uint8_t wm8978_set_inv_rout2_mixer ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable inv rout2 mixer

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set inv rout2 mixer failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 5339 of file driver_wm8978.c.

◆ wm8978_set_jack_detection()

uint8_t wm8978_set_jack_detection ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable jack detection

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set jack detection failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 2341 of file driver_wm8978.c.

◆ wm8978_set_jack_gpio()

uint8_t wm8978_set_jack_gpio ( wm8978_handle_t * handle,
wm8978_jack_sel_t sel )

set jack gpio

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]seljack gpio select
Returns
status code
  • 0 success
  • 1 set jack gpio failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 2386 of file driver_wm8978.c.

◆ wm8978_set_jack_logic_0()

uint8_t wm8978_set_jack_logic_0 ( wm8978_handle_t * handle,
wm8978_jack_t jack,
wm8978_bool_t enable )

set jack logic 0

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]jackjack operation
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set jack logic 0 failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 2785 of file driver_wm8978.c.

◆ wm8978_set_jack_logic_1()

uint8_t wm8978_set_jack_logic_1 ( wm8978_handle_t * handle,
wm8978_jack_t jack,
wm8978_bool_t enable )

set jack logic 1

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]jackjack operation
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set jack logic 1 failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 2733 of file driver_wm8978.c.

◆ wm8978_set_left_adc_input_to_out3()

uint8_t wm8978_set_left_adc_input_to_out3 ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable left adc input to out3

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set left adc input to out3 failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 8909 of file driver_wm8978.c.

◆ wm8978_set_left_auxiliary_input_to_left_channel_output_mixer()

uint8_t wm8978_set_left_auxiliary_input_to_left_channel_output_mixer ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable left auxiliary input to left channel output mixer

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set left auxiliary input to left channel output mixer failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 7267 of file driver_wm8978.c.

◆ wm8978_set_left_bypass_path_to_left_output_mixer()

uint8_t wm8978_set_left_bypass_path_to_left_output_mixer ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable left bypass path to left output mixer

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set left bypass path to left output mixer failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 7418 of file driver_wm8978.c.

◆ wm8978_set_left_bypass_volume_control_to_output_channel_mixer()

uint8_t wm8978_set_left_bypass_volume_control_to_output_channel_mixer ( wm8978_handle_t * handle,
uint8_t vol )

set left bypass volume control to output channel mixer

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]volset vol
Returns
status code
  • 0 success
  • 1 set left bypass volume control to output channel mixer failed
  • 2 handle is NULL
  • 3 handle is not initialized
  • 4 vol > 0x7
Note
none

Definition at line 7313 of file driver_wm8978.c.

◆ wm8978_set_left_channel_adc()

uint8_t wm8978_set_left_channel_adc ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable left channel adc

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set left channel adc failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 946 of file driver_wm8978.c.

◆ wm8978_set_left_channel_dac()

uint8_t wm8978_set_left_channel_dac ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable left channel dac

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set left channel dac failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 1306 of file driver_wm8978.c.

◆ wm8978_set_left_channel_input_boost()

uint8_t wm8978_set_left_channel_input_boost ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable left channel input boost

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set left channel input boost failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 766 of file driver_wm8978.c.

◆ wm8978_set_left_channel_input_boost_stage()

uint8_t wm8978_set_left_channel_input_boost_stage ( wm8978_handle_t * handle,
uint8_t stage )

set left channel input boost stage

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]stageset stage
Returns
status code
  • 0 success
  • 1 set left channel input boost stage failed
  • 2 handle is NULL
  • 3 handle is not initialized
  • 4 stage > 0x7
Note
none

Definition at line 6378 of file driver_wm8978.c.

◆ wm8978_set_left_channel_input_pga()

uint8_t wm8978_set_left_channel_input_pga ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable left channel input pga

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set left channel input pga failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 856 of file driver_wm8978.c.

◆ wm8978_set_left_channel_input_pga_amplifier_positive()

uint8_t wm8978_set_left_channel_input_pga_amplifier_positive ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable left channel input pga amplifier positive

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set left channel input pga amplifier positive failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 5805 of file driver_wm8978.c.

◆ wm8978_set_left_channel_input_pga_boost()

uint8_t wm8978_set_left_channel_input_pga_boost ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable left channel input pga boost

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set left channel input pga boost failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 6332 of file driver_wm8978.c.

◆ wm8978_set_left_channel_input_pga_mute()

uint8_t wm8978_set_left_channel_input_pga_mute ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable left channel input pga mute

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set left channel input pga mute failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 5940 of file driver_wm8978.c.

◆ wm8978_set_left_channel_input_pga_negative()

uint8_t wm8978_set_left_channel_input_pga_negative ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable left channel input pga negative

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set left channel input pga negative failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 5760 of file driver_wm8978.c.

◆ wm8978_set_left_channel_input_pga_positive()

uint8_t wm8978_set_left_channel_input_pga_positive ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable left channel input pga positive

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set left channel input pga positive failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 5715 of file driver_wm8978.c.

◆ wm8978_set_left_channel_input_pga_volume()

uint8_t wm8978_set_left_channel_input_pga_volume ( wm8978_handle_t * handle,
uint8_t volume )

set left channel input pga volume

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]volumeset volume
Returns
status code
  • 0 success
  • 1 set left channel input pga volume failed
  • 2 handle is NULL
  • 3 handle is not initialized
  • 4 volume > 0x3F
Note
none

Definition at line 5986 of file driver_wm8978.c.

◆ wm8978_set_left_channel_input_pga_zero_cross()

uint8_t wm8978_set_left_channel_input_pga_zero_cross ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable left channel input pga zero cross

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set left channel input pga zero cross failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 5895 of file driver_wm8978.c.

◆ wm8978_set_left_dac_mixer_to_out3()

uint8_t wm8978_set_left_dac_mixer_to_out3 ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable left dac mixer to out3

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set left dac mixer to out3 failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 8954 of file driver_wm8978.c.

◆ wm8978_set_left_dac_mixer_to_out4()

uint8_t wm8978_set_left_dac_mixer_to_out4 ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable left dac mixer to out4

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set left dac mixer to out4 failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 9134 of file driver_wm8978.c.

◆ wm8978_set_left_dac_output_polarity()

uint8_t wm8978_set_left_dac_output_polarity ( wm8978_handle_t * handle,
wm8978_polarity_t polarity )

set left dac output polarity

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]polarityleft dac output polarity
Returns
status code
  • 0 success
  • 1 set left dac output polarity failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 2611 of file driver_wm8978.c.

◆ wm8978_set_left_dac_output_to_left_output_mixer()

uint8_t wm8978_set_left_dac_output_to_left_output_mixer ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable left dac output to left output mixer

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set left dac output to left output mixer failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 7463 of file driver_wm8978.c.

◆ wm8978_set_left_dac_output_to_out3()

uint8_t wm8978_set_left_dac_output_to_out3 ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable left dac output to out3

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set left dac output to out3 failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 8999 of file driver_wm8978.c.

◆ wm8978_set_left_dac_output_to_right_output_mixer()

uint8_t wm8978_set_left_dac_output_to_right_output_mixer ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable left dac output to right output mixer

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set left dac output to right output mixer failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 6846 of file driver_wm8978.c.

◆ wm8978_set_left_dac_to_out4()

uint8_t wm8978_set_left_dac_to_out4 ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable left dac to out4

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set left dac to out4 failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 9179 of file driver_wm8978.c.

◆ wm8978_set_left_input_pga_update()

uint8_t wm8978_set_left_input_pga_update ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable left input pga update

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set left input pga update failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 5850 of file driver_wm8978.c.

◆ wm8978_set_left_out1()

uint8_t wm8978_set_left_out1 ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable left out1

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set left out1 failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 631 of file driver_wm8978.c.

◆ wm8978_set_left_out2()

uint8_t wm8978_set_left_out2 ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable left out2

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set left out2 failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 1081 of file driver_wm8978.c.

◆ wm8978_set_left_output_channel_mixer()

uint8_t wm8978_set_left_output_channel_mixer ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable left output channel mixer

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set left output channel mixer failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 1216 of file driver_wm8978.c.

◆ wm8978_set_loopback()

uint8_t wm8978_set_loopback ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable loopback

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set loopback failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 1801 of file driver_wm8978.c.

◆ wm8978_set_lout1_headphone_volume_zero_cross()

uint8_t wm8978_set_lout1_headphone_volume_zero_cross ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable lout1 headphone volume zero cross

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set lout1 headphone volume zero cross failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 7900 of file driver_wm8978.c.

◆ wm8978_set_lout1_left_headphone_output_mute()

uint8_t wm8978_set_lout1_left_headphone_output_mute ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable lout1 left headphone output mute

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set lout1 left headphone output mute failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 7945 of file driver_wm8978.c.

◆ wm8978_set_lout1_left_headphone_output_volume()

uint8_t wm8978_set_lout1_left_headphone_output_volume ( wm8978_handle_t * handle,
uint8_t vol )

set lout1 left headphone output volume

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]volset volume
Returns
status code
  • 0 success
  • 1 set lout1 left headphone output volume failed
  • 2 handle is NULL
  • 3 handle is not initialized
  • 4 vol > 0x3F
Note
none

Definition at line 7991 of file driver_wm8978.c.

◆ wm8978_set_lout1_update()

uint8_t wm8978_set_lout1_update ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable lout1 update

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set lout1 update failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 7855 of file driver_wm8978.c.

◆ wm8978_set_lout2_left_speaker_output_mute()

uint8_t wm8978_set_lout2_left_speaker_output_mute ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable lout2 left speaker output mute

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set lout2 left speaker output mute failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 8427 of file driver_wm8978.c.

◆ wm8978_set_lout2_left_speaker_output_volume()

uint8_t wm8978_set_lout2_left_speaker_output_volume ( wm8978_handle_t * handle,
uint8_t vol )

set lout2 left speaker output volume

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]volset volume
Returns
status code
  • 0 success
  • 1 set lout2 left speaker output volume failed
  • 2 handle is NULL
  • 3 handle is not initialized
  • 4 vol > 0x3F
Note
none

Definition at line 8473 of file driver_wm8978.c.

◆ wm8978_set_lout2_speaker_volume_zero_cross()

uint8_t wm8978_set_lout2_speaker_volume_zero_cross ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable lout2 speaker volume zero cross

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set lout2 speaker volume zero cross failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 8382 of file driver_wm8978.c.

◆ wm8978_set_lout2_update()

uint8_t wm8978_set_lout2_update ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable lout2 update

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set lout2 update failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 8337 of file driver_wm8978.c.

◆ wm8978_set_lrclk_polarity()

uint8_t wm8978_set_lrclk_polarity ( wm8978_handle_t * handle,
wm8978_polarity_t polarity )

set lrclk polarity

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]polaritylrclk polarity
Returns
status code
  • 0 success
  • 1 set lrclk polarity failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 1396 of file driver_wm8978.c.

◆ wm8978_set_mclk_div()

uint8_t wm8978_set_mclk_div ( wm8978_handle_t * handle,
wm8978_mclk_div_t d )

set mclk div

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]dmclk div
Returns
status code
  • 0 success
  • 1 set mclk div failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 1891 of file driver_wm8978.c.

◆ wm8978_set_mclk_divide_by_2()

uint8_t wm8978_set_mclk_divide_by_2 ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable mclk divide by 2

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set mclk divide by 2 failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 5038 of file driver_wm8978.c.

◆ wm8978_set_microphone_bias()

uint8_t wm8978_set_microphone_bias ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable microphone bias

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set microphone bias failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 406 of file driver_wm8978.c.

◆ wm8978_set_microphone_bias_voltage()

uint8_t wm8978_set_microphone_bias_voltage ( wm8978_handle_t * handle,
wm8978_avdd_t avdd )

set microphone bias voltage

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]avddset avdd
Returns
status code
  • 0 success
  • 1 set microphone bias voltage failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 5535 of file driver_wm8978.c.

◆ wm8978_set_mode()

uint8_t wm8978_set_mode ( wm8978_handle_t * handle,
wm8978_mode_t mode )

set chip mode

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]modeset mode
Returns
status code
  • 0 success
  • 1 set mode failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 2881 of file driver_wm8978.c.

◆ wm8978_set_mute_input_to_inv_rout2_mixer()

uint8_t wm8978_set_mute_input_to_inv_rout2_mixer ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable mute input to inv rout2 mixer

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set mute input to inv rout2 mixer failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 5294 of file driver_wm8978.c.

◆ wm8978_set_notch_filter()

uint8_t wm8978_set_notch_filter ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable notch filter

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set notch filter failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 4187 of file driver_wm8978.c.

◆ wm8978_set_notch_filter_a0_coefficient_bit_13_7()

uint8_t wm8978_set_notch_filter_a0_coefficient_bit_13_7 ( wm8978_handle_t * handle,
wm8978_bool_t update_once,
uint8_t coefficient )

set notch filter a0 coefficient bit13 - bit7

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]update_oncebool value
[in]coefficientset coefficient
Returns
status code
  • 0 success
  • 1 set notch filter a0 coefficient failed
  • 2 handle is NULL
  • 3 handle is not initialized
  • 4 coefficient > 0x7F
Note
none

Definition at line 4234 of file driver_wm8978.c.

◆ wm8978_set_notch_filter_a0_coefficient_bit_6_0()

uint8_t wm8978_set_notch_filter_a0_coefficient_bit_6_0 ( wm8978_handle_t * handle,
wm8978_bool_t update_once,
uint8_t coefficient )

set notch filter a0 coefficient bit6 - bit0

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]update_oncebool value
[in]coefficientset coefficient
Returns
status code
  • 0 success
  • 1 set notch filter a0 coefficient failed
  • 2 handle is NULL
  • 3 handle is not initialized
  • 4 coefficient > 0x7F
Note
none

Definition at line 4289 of file driver_wm8978.c.

◆ wm8978_set_notch_filter_a1_coefficient_bit_13_7()

uint8_t wm8978_set_notch_filter_a1_coefficient_bit_13_7 ( wm8978_handle_t * handle,
wm8978_bool_t update_once,
uint8_t coefficient )

set notch filter a1 coefficient bit13 - bit7

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]update_oncebool value
[in]coefficientset coefficient
Returns
status code
  • 0 success
  • 1 set notch filter a1 coefficient failed
  • 2 handle is NULL
  • 3 handle is not initialized
  • 4 coefficient > 0x7F
Note
none

Definition at line 4344 of file driver_wm8978.c.

◆ wm8978_set_notch_filter_a1_coefficient_bit_6_0()

uint8_t wm8978_set_notch_filter_a1_coefficient_bit_6_0 ( wm8978_handle_t * handle,
wm8978_bool_t update_once,
uint8_t coefficient )

set notch filter a1 coefficient bit6 - bit0

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]update_oncebool value
[in]coefficientset coefficient
Returns
status code
  • 0 success
  • 1 set notch filter a1 coefficient failed
  • 2 handle is NULL
  • 3 handle is not initialized
  • 4 coefficient > 0x7F
Note
none

Definition at line 4399 of file driver_wm8978.c.

◆ wm8978_set_out3()

uint8_t wm8978_set_out3 ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable out3

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set out3 failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 1036 of file driver_wm8978.c.

◆ wm8978_set_out3_boost()

uint8_t wm8978_set_out3_boost ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable out3 boost

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set out3 boost failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 6981 of file driver_wm8978.c.

◆ wm8978_set_out3_mixer()

uint8_t wm8978_set_out3_mixer ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable out3 mixer

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set out3 mixer failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 316 of file driver_wm8978.c.

◆ wm8978_set_out3_mute()

uint8_t wm8978_set_out3_mute ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable out3 mute

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set out3 mute failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 8819 of file driver_wm8978.c.

◆ wm8978_set_out4()

uint8_t wm8978_set_out4 ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable out4

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set out4 failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 991 of file driver_wm8978.c.

◆ wm8978_set_out4_attenuated_by_6db()

uint8_t wm8978_set_out4_attenuated_by_6db ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable out4 attenuated by 6db

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set out4 attenuated by 6db failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 9089 of file driver_wm8978.c.

◆ wm8978_set_out4_boost()

uint8_t wm8978_set_out4_boost ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable out4 boost

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set out4 boost failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 6936 of file driver_wm8978.c.

◆ wm8978_set_out4_mixer()

uint8_t wm8978_set_out4_mixer ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable out4 mixer

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set out4 mixer failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 271 of file driver_wm8978.c.

◆ wm8978_set_out4_mixer_output_to_out3()

uint8_t wm8978_set_out4_mixer_output_to_out3 ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable out4 mixer output to out3

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set out4 mixer output to out3 failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 8864 of file driver_wm8978.c.

◆ wm8978_set_out4_mute()

uint8_t wm8978_set_out4_mute ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable out4 mute

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set out4 mute failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 9044 of file driver_wm8978.c.

◆ wm8978_set_pll()

uint8_t wm8978_set_pll ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable pll

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set pll failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 361 of file driver_wm8978.c.

◆ wm8978_set_pll_div()

uint8_t wm8978_set_pll_div ( wm8978_handle_t * handle,
wm8978_pll_div_t d )

set pll div

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]dpll div
Returns
status code
  • 0 success
  • 1 set pll div failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 2116 of file driver_wm8978.c.

◆ wm8978_set_pll_freq()

uint8_t wm8978_set_pll_freq ( wm8978_handle_t * handle,
uint32_t freq )

set pll freq

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]freqpll freq
Returns
status code
  • 0 success
  • 1 set pll freq failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 5135 of file driver_wm8978.c.

◆ wm8978_set_plln()

uint8_t wm8978_set_plln ( wm8978_handle_t * handle,
uint8_t n )

set plln

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]nset pll
Returns
status code
  • 0 success
  • 1 set plln failed
  • 2 handle is NULL
  • 3 handle is not initialized
  • 4 n > 0xF
Note
none

Definition at line 5084 of file driver_wm8978.c.

◆ wm8978_set_reference_impedance()

uint8_t wm8978_set_reference_impedance ( wm8978_handle_t * handle,
wm8978_impedance_t impedance )

set reference impedance

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]impedanceset reference impedance
Returns
status code
  • 0 success
  • 1 set reference impedance failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 541 of file driver_wm8978.c.

◆ wm8978_set_right_adc_input_to_out4()

uint8_t wm8978_set_right_adc_input_to_out4 ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable right adc input to out4

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set right adc input to out4 failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 9224 of file driver_wm8978.c.

◆ wm8978_set_right_auxiliary_input_to_right_channel_output_mixer()

uint8_t wm8978_set_right_auxiliary_input_to_right_channel_output_mixer ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable right auxiliary input to right channel output mixer

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set right auxiliary input to right channel output mixer failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 7614 of file driver_wm8978.c.

◆ wm8978_set_right_bypass_path_to_right_output_mixer()

uint8_t wm8978_set_right_bypass_path_to_right_output_mixer ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable right bypass path to right output mixer

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set right bypass path to right output mixer failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 7765 of file driver_wm8978.c.

◆ wm8978_set_right_bypass_volume_control_to_output_channel_mixer()

uint8_t wm8978_set_right_bypass_volume_control_to_output_channel_mixer ( wm8978_handle_t * handle,
uint8_t vol )

set right bypass volume control to output channel mixer

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]volset vol
Returns
status code
  • 0 success
  • 1 set right bypass volume control to output channel mixer failed
  • 2 handle is NULL
  • 3 handle is not initialized
  • 4 vol > 0x7
Note
none

Definition at line 7660 of file driver_wm8978.c.

◆ wm8978_set_right_channel_adc()

uint8_t wm8978_set_right_channel_adc ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable right channel adc

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set right channel adc failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 901 of file driver_wm8978.c.

◆ wm8978_set_right_channel_dac()

uint8_t wm8978_set_right_channel_dac ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable right channel dac

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set right channel dac failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 1261 of file driver_wm8978.c.

◆ wm8978_set_right_channel_input_boost()

uint8_t wm8978_set_right_channel_input_boost ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable right channel input boost

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set right channel input boost failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 721 of file driver_wm8978.c.

◆ wm8978_set_right_channel_input_boost_stage()

uint8_t wm8978_set_right_channel_input_boost_stage ( wm8978_handle_t * handle,
uint8_t stage )

set right channel input boost stage

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]stageset stage
Returns
status code
  • 0 success
  • 1 set right channel input boost stage failed
  • 2 handle is NULL
  • 3 handle is not initialized
  • 4 stage > 0x7
Note
none

Definition at line 6635 of file driver_wm8978.c.

◆ wm8978_set_right_channel_input_pga()

uint8_t wm8978_set_right_channel_input_pga ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable right channel input pga

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set right channel input pga failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 811 of file driver_wm8978.c.

◆ wm8978_set_right_channel_input_pga_amplifier_positive()

uint8_t wm8978_set_right_channel_input_pga_amplifier_positive ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable right channel input pga amplifier positive

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set right channel input pga amplifier positive failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 5670 of file driver_wm8978.c.

◆ wm8978_set_right_channel_input_pga_boost()

uint8_t wm8978_set_right_channel_input_pga_boost ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable right channel input pga boost

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set right channel input pga boost failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 6589 of file driver_wm8978.c.

◆ wm8978_set_right_channel_input_pga_mute()

uint8_t wm8978_set_right_channel_input_pga_mute ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable right channel input pga mute

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set right channel input pga mute failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 6181 of file driver_wm8978.c.

◆ wm8978_set_right_channel_input_pga_negative()

uint8_t wm8978_set_right_channel_input_pga_negative ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable right channel input pga negative

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set right channel input pga negative failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 5625 of file driver_wm8978.c.

◆ wm8978_set_right_channel_input_pga_positive()

uint8_t wm8978_set_right_channel_input_pga_positive ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable right channel input pga positive

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set right channel input pga positive failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 5580 of file driver_wm8978.c.

◆ wm8978_set_right_channel_input_pga_volume()

uint8_t wm8978_set_right_channel_input_pga_volume ( wm8978_handle_t * handle,
uint8_t volume )

set right channel input pga volume

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]volumeset volume
Returns
status code
  • 0 success
  • 1 set right channel input pga volume failed
  • 2 handle is NULL
  • 3 handle is not initialized
  • 4 volume > 0x3F
Note
none

Definition at line 6227 of file driver_wm8978.c.

◆ wm8978_set_right_channel_input_pga_zero_cross()

uint8_t wm8978_set_right_channel_input_pga_zero_cross ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable right channel input pga zero cross

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set right channel input pga zero cross failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 6136 of file driver_wm8978.c.

◆ wm8978_set_right_dac_mixer_to_out4()

uint8_t wm8978_set_right_dac_mixer_to_out4 ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable right dac mixer to out4

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set right dac mixer to out4 failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 9269 of file driver_wm8978.c.

◆ wm8978_set_right_dac_output_polarity()

uint8_t wm8978_set_right_dac_output_polarity ( wm8978_handle_t * handle,
wm8978_polarity_t polarity )

set right dac output polarity

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]polarityright dac output polarity
Returns
status code
  • 0 success
  • 1 set right dac output polarity failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 2566 of file driver_wm8978.c.

◆ wm8978_set_right_dac_output_to_left_output_mixer()

uint8_t wm8978_set_right_dac_output_to_left_output_mixer ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable right dac output to left output mixer

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set right dac output to left output mixer failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 6891 of file driver_wm8978.c.

◆ wm8978_set_right_dac_output_to_out4()

uint8_t wm8978_set_right_dac_output_to_out4 ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable right dac output to out4

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set right dac output to out4 failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 9314 of file driver_wm8978.c.

◆ wm8978_set_right_dac_output_to_right_output_mixer()

uint8_t wm8978_set_right_dac_output_to_right_output_mixer ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable right dac output to right output mixer

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set right dac output to right output mixer failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 7810 of file driver_wm8978.c.

◆ wm8978_set_right_input_pga_update()

uint8_t wm8978_set_right_input_pga_update ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable right input pga update

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set right input pga update failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 6091 of file driver_wm8978.c.

◆ wm8978_set_right_out1()

uint8_t wm8978_set_right_out1 ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable right out1

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set right out1 failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 586 of file driver_wm8978.c.

◆ wm8978_set_right_out2()

uint8_t wm8978_set_right_out2 ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable right out2

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set right out2 failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 1126 of file driver_wm8978.c.

◆ wm8978_set_right_output_channel_mixer()

uint8_t wm8978_set_right_output_channel_mixer ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable right output channel mixer

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set right output channel mixer failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 1171 of file driver_wm8978.c.

◆ wm8978_set_rout1_headphone_volume_zero_cross()

uint8_t wm8978_set_rout1_headphone_volume_zero_cross ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable rout1 headphone volume zero cross

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set rout1 headphone volume zero cross failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 8141 of file driver_wm8978.c.

◆ wm8978_set_rout1_right_headphone_output_mute()

uint8_t wm8978_set_rout1_right_headphone_output_mute ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable rout1 right headphone output mute

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set rout1 right headphone output mute failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 8186 of file driver_wm8978.c.

◆ wm8978_set_rout1_right_headphone_output_volume()

uint8_t wm8978_set_rout1_right_headphone_output_volume ( wm8978_handle_t * handle,
uint8_t vol )

set rout1 right headphone output volume

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]volset volume
Returns
status code
  • 0 success
  • 1 set rout1 right headphone output volume failed
  • 2 handle is NULL
  • 3 handle is not initialized
  • 4 vol > 0x3F
Note
none

Definition at line 8232 of file driver_wm8978.c.

◆ wm8978_set_rout1_update()

uint8_t wm8978_set_rout1_update ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable rout1 update

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set rout1 update failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 8096 of file driver_wm8978.c.

◆ wm8978_set_rout2_right_speaker_output_mute()

uint8_t wm8978_set_rout2_right_speaker_output_mute ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable rout2 right speaker output mute

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set rout2 right speaker output mute failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 8668 of file driver_wm8978.c.

◆ wm8978_set_rout2_right_speaker_output_volume()

uint8_t wm8978_set_rout2_right_speaker_output_volume ( wm8978_handle_t * handle,
uint8_t vol )

set rout2 right speaker output volume

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]volset volume
Returns
status code
  • 0 success
  • 1 set rout2 right speaker output volume failed
  • 2 handle is NULL
  • 3 handle is not initialized
  • 4 vol > 0x3F
Note
none

Definition at line 8714 of file driver_wm8978.c.

◆ wm8978_set_rout2_speaker_volume_zero_cross()

uint8_t wm8978_set_rout2_speaker_volume_zero_cross ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable rout2 speaker volume zero cross

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set rout2 speaker volume zero cross failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 8623 of file driver_wm8978.c.

◆ wm8978_set_rout2_update()

uint8_t wm8978_set_rout2_update ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable rout2 update

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set rout2 update failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 8578 of file driver_wm8978.c.

◆ wm8978_set_sleep()

uint8_t wm8978_set_sleep ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable sleep

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set sleep failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 676 of file driver_wm8978.c.

◆ wm8978_set_slow_clock()

uint8_t wm8978_set_slow_clock ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable slow clock

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set slow clock failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 2071 of file driver_wm8978.c.

◆ wm8978_set_soft_mute()

uint8_t wm8978_set_soft_mute ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable soft mute

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set soft mute failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 2431 of file driver_wm8978.c.

◆ wm8978_set_speaker_boost()

uint8_t wm8978_set_speaker_boost ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable speaker boost

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set speaker boost failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 7026 of file driver_wm8978.c.

◆ wm8978_set_thermal_shutdown()

uint8_t wm8978_set_thermal_shutdown ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable thermal shutdown

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set thermal shutdown failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 7071 of file driver_wm8978.c.

◆ wm8978_set_unused_input_output_tie_off_buffer()

uint8_t wm8978_set_unused_input_output_tie_off_buffer ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable unused input output tie off buffer

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set unused input output tie off buffer failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 496 of file driver_wm8978.c.

◆ wm8978_set_vmid_0()

uint8_t wm8978_set_vmid_0 ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable vmid 0

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set vmid 0 failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 2296 of file driver_wm8978.c.

◆ wm8978_set_vmid_1()

uint8_t wm8978_set_vmid_1 ( wm8978_handle_t * handle,
wm8978_bool_t enable )

enable or disable vmid 1

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set vmid 1 failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 2251 of file driver_wm8978.c.

◆ wm8978_set_vref_to_analogue_output_resistance()

uint8_t wm8978_set_vref_to_analogue_output_resistance ( wm8978_handle_t * handle,
wm8978_vref_t vref )

set vref to analogue output resistance

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]vrefset vref
Returns
status code
  • 0 success
  • 1 set vref to analogue output resistance failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 7116 of file driver_wm8978.c.

◆ wm8978_set_word_length()

uint8_t wm8978_set_word_length ( wm8978_handle_t * handle,
wm8978_word_length_t word_length )

set word length

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]word_lengthiis word length
Returns
status code
  • 0 success
  • 1 set word length failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 1441 of file driver_wm8978.c.

◆ wm8978_soft_reset()

uint8_t wm8978_soft_reset ( wm8978_handle_t * handle)

soft reset

Parameters
[in]*handlepointer to a wm8978 handle structure
Returns
status code
  • 0 success
  • 1 soft reset failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 188 of file driver_wm8978.c.

◆ wm8978_volume_convert_to_data()

uint8_t wm8978_volume_convert_to_data ( wm8978_handle_t * handle,
uint8_t reg,
float * db )

convert the volume register raw data to the real data

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]regvolume raw data
[out]*dbpointer to a volume real data buffer
Returns
status code
  • 0 success
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 3209 of file driver_wm8978.c.

◆ wm8978_volume_convert_to_register()

uint8_t wm8978_volume_convert_to_register ( wm8978_handle_t * handle,
float db,
uint8_t * reg )

convert the volume data to the register raw data

Parameters
[in]*handlepointer to a wm8978 handle structure
[in]dbvolume db
[out]*regpointer to a volume raw data buffer
Returns
status code
  • 0 success
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 3182 of file driver_wm8978.c.