18 #define AUDAC_SAMPLING_RATE_8K 0 19 #define AUDAC_SAMPLING_RATE_16K 1 20 #define AUDAC_SAMPLING_RATE_22P05K 5 21 #define AUDAC_SAMPLING_RATE_24K 3 22 #define AUDAC_SAMPLING_RATE_32K 2 23 #define AUDAC_SAMPLING_RATE_44P1K 6 24 #define AUDAC_SAMPLING_RATE_48K 4 33 #define AUDAC_OUTPUT_MODE_PWM 0 34 #define AUDAC_OUTPUT_MODE_GPDAC_CH_A 1 35 #define AUDAC_OUTPUT_MODE_GPDAC_CH_B 2 36 #define AUDAC_OUTPUT_MODE_GPDAC_CH_A_B 3 45 #define AUDAC_SOURCE_CHANNEL_SINGLE 0x01 46 #define AUDAC_SOURCE_CHANNEL_DUAL 0x03 56 #define AUDAC_MIXER_MODE_ONLY_L 0 57 #define AUDAC_MIXER_MODE_ONLY_R 1 58 #define AUDAC_MIXER_MODE_SUM 2 59 #define AUDAC_MIXER_MODE_AVERAGE 3 68 #define AUDAC_DATA_FORMAT_16BIT 3 69 #define AUDAC_DATA_FORMAT_20BIT 2 70 #define AUDAC_DATA_FORMAT_24BIT 1 71 #define AUDAC_DATA_FORMAT_32BIT 0 80 #define AUDAC_RAMP_RATE_FS_2 0 81 #define AUDAC_RAMP_RATE_FS_4 1 82 #define AUDAC_RAMP_RATE_FS_8 2 83 #define AUDAC_RAMP_RATE_FS_16 3 84 #define AUDAC_RAMP_RATE_FS_32 4 85 #define AUDAC_RAMP_RATE_FS_64 5 86 #define AUDAC_RAMP_RATE_FS_128 6 87 #define AUDAC_RAMP_RATE_FS_256 7 88 #define AUDAC_RAMP_RATE_FS_512 8 89 #define AUDAC_RAMP_RATE_FS_1024 9 90 #define AUDAC_RAMP_RATE_FS_2048 10 99 #define AUDAC_VOLUME_UPDATE_MODE_FORCE 0 100 #define AUDAC_VOLUME_UPDATE_MODE_RAMP 1 101 #define AUDAC_VOLUME_UPDATE_MODE_RAMP_ZERO_CROSSING 2 110 #define AUDAC_INTSTS_VOLUME_RAMP (1 << 0) 111 #define AUDAC_INTSTS_FIFO_OVER (1 << 1) 112 #define AUDAC_INTSTS_FIFO_UNDER (1 << 2) 113 #define AUDAC_INTSTS_FIFO_AVAILABLE (1 << 3) 118 #define AUDAC_CMD_PLAY_START (0x01) 119 #define AUDAC_CMD_PLAY_STOP (0x02) 120 #define AUDAC_CMD_SET_MUTE (0x03) 121 #define AUDAC_CMD_SET_VOLUME_VAL (0x04) 122 #define AUDAC_CMD_CLEAR_TX_FIFO (0x05) 123 #define AUDAC_CMD_GET_TX_FIFO_CNT (0x06)
AUDAC initialization configuration structure.
int bflb_audac_link_rxdma(struct bflb_device_s *dev, bool enable)
int bflb_audac_init(struct bflb_device_s *dev, const struct bflb_audac_init_config_s *config)
uint8_t mute_up_ramp_rate
uint8_t mute_down_ramp_rate
AUDAC volume configuration structure.
int bflb_audac_volume_init(struct bflb_device_s *dev, const struct bflb_audac_volume_config_s *vol_cfg)
uint8_t volume_zero_cross_timeout
uint8_t volume_update_mode
int bflb_audac_get_intstatus(struct bflb_device_s *dev)
uint8_t source_channels_num
int bflb_audac_int_clear(struct bflb_device_s *dev, uint32_t int_clear)
int bflb_audac_feature_control(struct bflb_device_s *dev, int cmd, size_t arg)
int bflb_audac_int_mask(struct bflb_device_s *dev, uint32_t mask)