gr55xx_ll_pdm.h File Reference

Header file containing functions prototypes of PDM LL library. More...

#include "gr55xx.h"

Go to the source code of this file.

Classes

struct  _ll_pdm_init
 LL PDM init Structure definition. More...
 

Macros

#define LL_PDM_SAMPLE_RATE_15_625K   PDM_CLK_SAMPLE_RATE_15_625K
 PDM sample rate. More...
 
#define LL_PDM_SAMPLE_RATE_16K   PDM_CLK_SAMPLE_RATE_16K
 
#define LL_PDM_SAMPLE_RATE_8K   PDM_CLK_SAMPLE_RATE_8K
 
#define LL_PDM_MODE_LEFT   ((uint32_t)0x00000000U)
 PDM operation mode. More...
 
#define LL_PDM_MODE_RIGHT   ((uint32_t)0x00000001U)
 
#define LL_PDM_MODE_STEREO   ((uint32_t)0x00000002U)
 
#define LL_PDM_CLK_ENABLE   PDM_CLK_EN_ENABLE
 
#define LL_PDM_CLK_DISABLE   PDM_CLK_EN_DISABLE
 
#define LL_PDM_LEFT_RX_ENABLE   PDM_EN_L_EN_RX_ENABLE
 
#define LL_PDM_LEFT_RX_DISABLE   PDM_EN_L_EN_RX_DISABLE
 
#define LL_PDM_RIGHT_RX_ENABLE   PDM_EN_R_EN_RX_ENABLE
 
#define LL_PDM_RIGHT_RX_DISABLE   PDM_EN_R_EN_RX_DISABLE
 
#define LL_PDM_LEFT_SAMPLE_DMIC_ENABLE   PDM_EN_L_SMP_DMIC_ENABLE
 
#define LL_PDM_LEFT_SAMPLE_DMIC_DISABLE   PDM_EN_L_SMP_DMIC_DISABLE
 
#define LL_PDM_RIGHT_SAMPLE_DMIC_ENABLE   PDM_EN_R_SMP_DMIC_ENABLE
 
#define LL_PDM_RIGHT_SAMPLE_DMIC_DISABLE   PDM_EN_R_SMP_DMIC_DISABLE
 
#define LL_PDM_LEFT_STAGE0_ENABLE   PDM_EN_L_EN_STAGE0_ENABLE
 
#define LL_PDM_LEFT_STAGE0_DISABLE   PDM_EN_L_EN_STAGE0_DISABLE
 
#define LL_PDM_LEFT_STAGE1_ENABLE   PDM_EN_L_EN_STAGE1_ENABLE
 
#define LL_PDM_LEFT_STAGE1_DISABLE   PDM_EN_L_EN_STAGE1_DISABLE
 
#define LL_PDM_LEFT_STAGE2_ENABLE   PDM_EN_L_EN_STAGE2_ENABLE
 
#define LL_PDM_LEFT_STAGE2_DISABLE   PDM_EN_L_EN_STAGE2_DISABLE
 
#define LL_PDM_LEFT_STAGE3_ENABLE   PDM_EN_L_EN_STAGE3_ENABLE
 
#define LL_PDM_LEFT_STAGE3_DISABLE   PDM_EN_L_EN_STAGE3_DISABLE
 
#define LL_PDM_LEFT_STAGE4_ENABLE   PDM_EN_L_EN_STAGE4_ENABLE
 
#define LL_PDM_LEFT_STAGE4_DISABLE   PDM_EN_L_EN_STAGE4_DISABLE
 
#define LL_PDM_LEFT_STAGE5_ENABLE   PDM_EN_L_EN_STAGE5_ENABLE
 
#define LL_PDM_LEFT_STAGE5_DISABLE   PDM_EN_L_EN_STAGE5_DISABLE
 
#define LL_PDM_LEFT_STAGE6_ENABLE   PDM_EN_L_EN_STAGE6_ENABLE
 
#define LL_PDM_LEFT_STAGE6_DISABLE   PDM_EN_L_EN_STAGE6_DISABLE
 
#define LL_PDM_LEFT_STAGE7_ENABLE   PDM_EN_L_EN_STAGE7_ENABLE
 
#define LL_PDM_LEFT_STAGE7_DISABLE   PDM_EN_L_EN_STAGE7_DISABLE
 
#define LL_PDM_RIGHT_STAGE0_ENABLE   PDM_EN_R_EN_STAGE0_ENABLE
 
#define LL_PDM_RIGHT_STAGE0_DISABLE   PDM_EN_R_EN_STAGE0_DISABLE
 
#define LL_PDM_RIGHT_STAGE1_ENABLE   PDM_EN_R_EN_STAGE1_ENABLE
 
#define LL_PDM_RIGHT_STAGE1_DISABLE   PDM_EN_R_EN_STAGE1_DISABLE
 
#define LL_PDM_RIGHT_STAGE2_ENABLE   PDM_EN_R_EN_STAGE2_ENABLE
 
#define LL_PDM_RIGHT_STAGE2_DISABLE   PDM_EN_R_EN_STAGE2_DISABLE
 
#define LL_PDM_RIGHT_STAGE3_ENABLE   PDM_EN_R_EN_STAGE3_ENABLE
 
#define LL_PDM_RIGHT_STAGE3_DISABLE   PDM_EN_R_EN_STAGE3_DISABLE
 
#define LL_PDM_RIGHT_STAGE4_ENABLE   PDM_EN_R_EN_STAGE4_ENABLE
 
#define LL_PDM_RIGHT_STAGE4_DISABLE   PDM_EN_R_EN_STAGE4_DISABLE
 
#define LL_PDM_RIGHT_STAGE5_ENABLE   PDM_EN_R_EN_STAGE5_ENABLE
 
#define LL_PDM_RIGHT_STAGE5_DISABLE   PDM_EN_R_EN_STAGE5_DISABLE
 
#define LL_PDM_RIGHT_STAGE6_ENABLE   PDM_EN_R_EN_STAGE6_ENABLE
 
#define LL_PDM_RIGHT_STAGE6_DISABLE   PDM_EN_R_EN_STAGE6_DISABLE
 
#define LL_PDM_RIGHT_STAGE7_ENABLE   PDM_EN_R_EN_STAGE7_ENABLE
 
#define LL_PDM_RIGHT_STAGE7_DISABLE   PDM_EN_R_EN_STAGE7_DISABLE
 
#define LL_PDM_LEFT_HPF_ENABLE   PDM_EN_L_EN_HPF_ENABLE
 
#define LL_PDM_LEFT_HPF_DISABLE   PDM_EN_L_EN_HPF_DISABLE
 
#define LL_PDM_RIGHT_HPF_ENABLE   PDM_EN_R_EN_HPF_ENABLE
 
#define LL_PDM_RIGHT_HPF_DISABLE   PDM_EN_R_EN_HPF_DISABLE
 
#define LL_PDM_LEFT_HPF_BYPASS_ENABLE   PDM_HPF_CFG_L_BYPASS_ENABLE
 
#define LL_PDM_LEFT_HPF_BYPASS_DISABLE   PDM_HPF_CFG_L_BYPASS_DISABLE
 
#define LL_PDM_RIGHT_HPF_BYPASS_ENABLE   PDM_HPF_CFG_R_BYPASS_ENABLE
 
#define LL_PDM_RIGHT_HPF_BYPASS_DISABLE   PDM_HPF_CFG_R_BYPASS_DISABLE
 
#define LL_PDM_LEFT_HPF_CORNER_0_25   PDM_HPF_CFG_L_CORNER_0_25
 
#define LL_PDM_LEFT_HPF_CORNER_1   PDM_HPF_CFG_L_CORNER_1
 
#define LL_PDM_LEFT_HPF_CORNER_4   PDM_HPF_CFG_L_CORNER_4
 
#define LL_PDM_LEFT_HPF_CORNER_16   PDM_HPF_CFG_L_CORNER_16
 
#define LL_PDM_RIGHT_HPF_CORNER_0_25   PDM_HPF_CFG_R_CORNER_0_25
 
#define LL_PDM_RIGHT_HPF_CORNER_1   PDM_HPF_CFG_R_CORNER_1
 
#define LL_PDM_RIGHT_HPF_CORNER_4   PDM_HPF_CFG_R_CORNER_4
 
#define LL_PDM_RIGHT_HPF_CORNER_16   PDM_HPF_CFG_R_CORNER_16
 
#define LL_PDM_LEFT_HPF_FREEZE_ENABLE   PDM_HPF_CFG_L_FREEZE_ENABLE
 
#define LL_PDM_LEFT_HPF_FREEZE_DISABLE   PDM_HPF_CFG_L_FREEZE_DISABLE
 
#define LL_PDM_RIGHT_HPF_FREEZE_ENABLE   PDM_HPF_CFG_R_FREEZE_ENABLE
 
#define LL_PDM_RIGHT_HPF_FREEZE_DISABLE   PDM_HPF_CFG_R_FREEZE_DISABLE
 
#define LL_PDM_WriteReg(__instance__, __REG__, __VALUE__)   WRITE_REG(__instance__->__REG__, (__VALUE__))
 Write a value in PDM register. More...
 
#define LL_PDM_ReadReg(__instance__, __REG__)   READ_REG(__instance__->__REG__)
 Read a value in PDM register. More...
 

Typedefs

typedef struct _ll_pdm_init ll_pdm_init_t
 LL PDM init Structure definition. More...
 

Functions

__STATIC_INLINE void ll_pdm_enable_clk (pdm_regs_t *PDMx)
 Enable PDM Module CLK. More...
 
__STATIC_INLINE void ll_pdm_disable_clk (pdm_regs_t *PDMx)
 Disable PDM Module CLK. More...
 
__STATIC_INLINE uint32_t ll_pdm_is_enable_clk (pdm_regs_t *PDMx)
 Disable PDM Module CLK. More...
 
__STATIC_INLINE void ll_pdm_set_sample_rate (pdm_regs_t *PDMx, uint32_t sample_rate)
 Set PDM sample rate. More...
 
__STATIC_INLINE uint32_t ll_pdm_get_sample_rate (pdm_regs_t *PDMx)
 Get PDM sample rate. More...
 
__STATIC_INLINE void ll_pdm_set_posedge_en_pulse_cfg (pdm_regs_t *PDMx, uint32_t target)
 Set PDM posedge en pulse cfg. More...
 
__STATIC_INLINE uint32_t ll_pdm_get_posedge_en_pulse_cfg (pdm_regs_t *PDMx)
 Get PDM posedge en pulse cfg. More...
 
__STATIC_INLINE void ll_pdm_set_negedge_en_pulse_cfg (pdm_regs_t *PDMx, uint32_t target)
 Set PDM negedge en pulse cfg. More...
 
__STATIC_INLINE uint32_t ll_pdm_get_negedge_en_pulse_cfg (pdm_regs_t *PDMx)
 Get PDM posedge en pulse cfg. More...
 
__STATIC_INLINE void ll_pdm_enable_left_channel (pdm_regs_t *PDMx)
 PDM Module enable left channel sample dmic. More...
 
__STATIC_INLINE void ll_pdm_disable_left_channel (pdm_regs_t *PDMx)
 PDM Module disable left channel sample dmic. More...
 
__STATIC_INLINE void ll_pdm_enable_right_channel (pdm_regs_t *PDMx)
 PDM Module enable right channel sample dmic.. More...
 
__STATIC_INLINE void ll_pdm_disable_right_channel (pdm_regs_t *PDMx)
 PDM Module disable right channel sample dmic.. More...
 
__STATIC_INLINE void ll_pdm_enable_left_rx (pdm_regs_t *PDMx)
 Enable PDM Module Left RX. More...
 
__STATIC_INLINE void ll_pdm_disable_left_rx (pdm_regs_t *PDMx)
 Disable PDM Module Left RX. More...
 
__STATIC_INLINE uint32_t ll_pdm_is_enable_left_rx (pdm_regs_t *PDMx)
 is PDM enables left rx More...
 
__STATIC_INLINE void ll_pdm_enable_right_rx (pdm_regs_t *PDMx)
 Enable PDM Module right RX. More...
 
__STATIC_INLINE void ll_pdm_disable_right_rx (pdm_regs_t *PDMx)
 Disable PDM Module right RX. More...
 
__STATIC_INLINE uint32_t ll_pdm_is_enable_right_rx (pdm_regs_t *PDMx)
 is PDM enables right rx More...
 
__STATIC_INLINE void ll_pdm_enable_left_sample_dmic (pdm_regs_t *PDMx)
 Enable PDM Module Left sample dmic. More...
 
__STATIC_INLINE void ll_pdm_disable_left_sample_dmic (pdm_regs_t *PDMx)
 Disable PDM Module Left sample dmic. More...
 
__STATIC_INLINE uint32_t ll_pdm_is_enable_left_sample_dmic (pdm_regs_t *PDMx)
 is PDM enables left rx More...
 
__STATIC_INLINE void ll_pdm_enable_right_sample_dmic (pdm_regs_t *PDMx)
 Enable PDM Module right sample dmic. More...
 
__STATIC_INLINE void ll_pdm_disable_right_sample_dmic (pdm_regs_t *PDMx)
 Disable PDM Module right sample dmic. More...
 
__STATIC_INLINE uint32_t ll_pdm_is_enable_right_sample_dmic (pdm_regs_t *PDMx)
 is PDM enables right rx More...
 
__STATIC_INLINE void ll_pdm_enable_left_stage0 (pdm_regs_t *PDMx)
 Enable PDM Module Left stage0. More...
 
__STATIC_INLINE void ll_pdm_disable_left_stage0 (pdm_regs_t *PDMx)
 Disable PDM Module Left stage0. More...
 
__STATIC_INLINE uint32_t ll_pdm_is_enable_left_stage0 (pdm_regs_t *PDMx)
 is PDM enables left stage0 More...
 
__STATIC_INLINE void ll_pdm_enable_right_stage0 (pdm_regs_t *PDMx)
 Enable PDM Module right stage0. More...
 
__STATIC_INLINE void ll_pdm_disable_right_stage0 (pdm_regs_t *PDMx)
 Disable PDM Module right stage0. More...
 
__STATIC_INLINE uint32_t ll_pdm_is_enable_right_stage0 (pdm_regs_t *PDMx)
 is PDM enables right stage0 More...
 
__STATIC_INLINE void ll_pdm_enable_left_stage1 (pdm_regs_t *PDMx)
 Enable PDM Module Left stage1. More...
 
__STATIC_INLINE void ll_pdm_disable_left_stage1 (pdm_regs_t *PDMx)
 Disable PDM Module Left stage1. More...
 
__STATIC_INLINE uint32_t ll_pdm_is_enable_left_stage1 (pdm_regs_t *PDMx)
 is PDM enables left stage1 More...
 
__STATIC_INLINE void ll_pdm_enable_right_stage1 (pdm_regs_t *PDMx)
 Enable PDM Module right stage1. More...
 
__STATIC_INLINE void ll_pdm_disable_right_stage1 (pdm_regs_t *PDMx)
 Disable PDM Module right stage1. More...
 
__STATIC_INLINE uint32_t ll_pdm_is_enable_right_stage1 (pdm_regs_t *PDMx)
 is PDM enables right stage1 More...
 
__STATIC_INLINE void ll_pdm_enable_left_stage2 (pdm_regs_t *PDMx)
 Enable PDM Module Left stage2. More...
 
__STATIC_INLINE void ll_pdm_disable_left_stage2 (pdm_regs_t *PDMx)
 Disable PDM Module Left stage2. More...
 
__STATIC_INLINE uint32_t ll_pdm_is_enable_left_stage2 (pdm_regs_t *PDMx)
 is PDM enables left stage2 More...
 
__STATIC_INLINE void ll_pdm_enable_right_stage2 (pdm_regs_t *PDMx)
 Enable PDM Module right stage2. More...
 
__STATIC_INLINE void ll_pdm_disable_right_stage2 (pdm_regs_t *PDMx)
 Disable PDM Module right stage2. More...
 
__STATIC_INLINE uint32_t ll_pdm_is_enable_right_stage2 (pdm_regs_t *PDMx)
 is PDM enables right stage2 More...
 
__STATIC_INLINE void ll_pdm_enable_left_stage3 (pdm_regs_t *PDMx)
 Enable PDM Module Left stage3. More...
 
__STATIC_INLINE void ll_pdm_disable_left_stage3 (pdm_regs_t *PDMx)
 Disable PDM Module Left stage3. More...
 
__STATIC_INLINE uint32_t ll_pdm_is_enable_left_stage3 (pdm_regs_t *PDMx)
 is PDM enables left stage3 More...
 
__STATIC_INLINE void ll_pdm_enable_right_stage3 (pdm_regs_t *PDMx)
 Enable PDM Module right stage3. More...
 
__STATIC_INLINE void ll_pdm_disable_right_stage3 (pdm_regs_t *PDMx)
 Disable PDM Module right stage3. More...
 
__STATIC_INLINE uint32_t ll_pdm_is_enable_right_stage3 (pdm_regs_t *PDMx)
 is PDM enables right stage3 More...
 
__STATIC_INLINE void ll_pdm_enable_left_stage4 (pdm_regs_t *PDMx)
 Enable PDM Module Left stage4. More...
 
__STATIC_INLINE void ll_pdm_disable_left_stage4 (pdm_regs_t *PDMx)
 Disable PDM Module Left stage4. More...
 
__STATIC_INLINE uint32_t ll_pdm_is_enable_left_stage4 (pdm_regs_t *PDMx)
 is PDM enables left stage4 More...
 
__STATIC_INLINE void ll_pdm_enable_right_stage4 (pdm_regs_t *PDMx)
 Enable PDM Module right stage4. More...
 
__STATIC_INLINE void ll_pdm_disable_right_stage4 (pdm_regs_t *PDMx)
 Disable PDM Module right stage4. More...
 
__STATIC_INLINE uint32_t ll_pdm_is_enable_right_stage4 (pdm_regs_t *PDMx)
 is PDM enables right stage4 More...
 
__STATIC_INLINE void ll_pdm_enable_left_stage5 (pdm_regs_t *PDMx)
 Enable PDM Module Left stage5. More...
 
__STATIC_INLINE void ll_pdm_disable_left_stage5 (pdm_regs_t *PDMx)
 Disable PDM Module Left stage5. More...
 
__STATIC_INLINE uint32_t ll_pdm_is_enable_left_stage5 (pdm_regs_t *PDMx)
 is PDM enables left stage5 More...
 
__STATIC_INLINE void ll_pdm_enable_right_stage5 (pdm_regs_t *PDMx)
 Enable PDM Module right stage5. More...
 
__STATIC_INLINE void ll_pdm_disable_right_stage5 (pdm_regs_t *PDMx)
 Disable PDM Module right stage5. More...
 
__STATIC_INLINE uint32_t ll_pdm_is_enable_right_stage5 (pdm_regs_t *PDMx)
 is PDM enables right stage5 More...
 
__STATIC_INLINE void ll_pdm_enable_left_stage6 (pdm_regs_t *PDMx)
 Enable PDM Module Left stage6. More...
 
__STATIC_INLINE void ll_pdm_disable_left_stage6 (pdm_regs_t *PDMx)
 Disable PDM Module Left stage6. More...
 
__STATIC_INLINE uint32_t ll_pdm_is_enable_left_stage6 (pdm_regs_t *PDMx)
 is PDM enables left stage6 More...
 
__STATIC_INLINE void ll_pdm_enable_right_stage6 (pdm_regs_t *PDMx)
 Enable PDM Module right stage6. More...
 
__STATIC_INLINE void ll_pdm_disable_right_stage6 (pdm_regs_t *PDMx)
 Disable PDM Module right stage6. More...
 
__STATIC_INLINE uint32_t ll_pdm_is_enable_right_stage6 (pdm_regs_t *PDMx)
 is PDM enables right stage6 More...
 
__STATIC_INLINE void ll_pdm_enable_left_stage7 (pdm_regs_t *PDMx)
 Enable PDM Module Left stage7. More...
 
__STATIC_INLINE void ll_pdm_disable_left_stage7 (pdm_regs_t *PDMx)
 Disable PDM Module Left stage7. More...
 
__STATIC_INLINE uint32_t ll_pdm_is_enable_left_stage7 (pdm_regs_t *PDMx)
 is PDM enables left stage7 More...
 
__STATIC_INLINE void ll_pdm_enable_right_stage7 (pdm_regs_t *PDMx)
 Enable PDM Module right stage7. More...
 
__STATIC_INLINE void ll_pdm_disable_right_stage7 (pdm_regs_t *PDMx)
 Disable PDM Module right stage7. More...
 
__STATIC_INLINE uint32_t ll_pdm_is_enable_right_stage7 (pdm_regs_t *PDMx)
 is PDM enables right stage7 More...
 
__STATIC_INLINE void ll_pdm_enable_left_hpf (pdm_regs_t *PDMx)
 Enable PDM Module Left hpf. More...
 
__STATIC_INLINE void ll_pdm_disable_left_hpf (pdm_regs_t *PDMx)
 Disable PDM Module Left hpf. More...
 
__STATIC_INLINE uint32_t ll_pdm_is_enable_left_hpf (pdm_regs_t *PDMx)
 is PDM enables left hpf More...
 
__STATIC_INLINE void ll_pdm_enable_right_hpf (pdm_regs_t *PDMx)
 Enable PDM Module right hpf. More...
 
__STATIC_INLINE void ll_pdm_disable_right_hpf (pdm_regs_t *PDMx)
 Disable PDM Module right hpf. More...
 
__STATIC_INLINE uint32_t ll_pdm_is_enable_right_hpf (pdm_regs_t *PDMx)
 is PDM enables right hpf More...
 
__STATIC_INLINE void ll_pdm_set_left_rxd_upsample (pdm_regs_t *PDMx, uint32_t rxd_upsample)
 Set PDM left rxd upsample. More...
 
__STATIC_INLINE uint32_t ll_pdm_get_left_rxd_upsample (pdm_regs_t *PDMx)
 Get PDM left rxd upsample. More...
 
__STATIC_INLINE void ll_pdm_set_right_rxd_upsample (pdm_regs_t *PDMx, uint32_t rxd_upsample)
 Set PDM right rxd upsample. More...
 
__STATIC_INLINE uint32_t ll_pdm_get_right_rxd_upsample (pdm_regs_t *PDMx)
 Get PDM right rxd upsample. More...
 
__STATIC_INLINE void ll_pdm_set_left_stage_init (pdm_regs_t *PDMx, uint32_t stage_init)
 Set PDM left statge init. More...
 
__STATIC_INLINE uint32_t ll_pdm_get_left_stage_init (pdm_regs_t *PDMx)
 Get PDM left statge init. More...
 
__STATIC_INLINE void ll_pdm_set_right_stage_init (pdm_regs_t *PDMx, uint32_t stage_init)
 Set PDM right statge init. More...
 
__STATIC_INLINE uint32_t ll_pdm_get_right_stage_init (pdm_regs_t *PDMx)
 Get PDM right statge init. More...
 
__STATIC_INLINE void ll_pdm_set_left_upsample_factor (pdm_regs_t *PDMx, uint32_t upsample_factor)
 Set PDM left upsample factor. More...
 
__STATIC_INLINE uint32_t ll_pdm_get_left_upsample_factor (pdm_regs_t *PDMx)
 Get PDM left upsample factor. More...
 
__STATIC_INLINE void ll_pdm_set_right_upsample_factor (pdm_regs_t *PDMx, uint32_t upsample_factor)
 Set PDM right upsample factor. More...
 
__STATIC_INLINE uint32_t ll_pdm_get_right_upsample_factor (pdm_regs_t *PDMx)
 Get PDM right upsample factor. More...
 
__STATIC_INLINE void ll_pdm_enable_left_hpy_bypass (pdm_regs_t *PDMx)
 Enable PDM left hpf_bypass. More...
 
__STATIC_INLINE void ll_pdm_disable_left_hpy_bypass (pdm_regs_t *PDMx)
 Disable PDM left hpf_bypass. More...
 
__STATIC_INLINE uint32_t ll_pdm_is_enable_left_hpy_bypass (pdm_regs_t *PDMx)
 is PDM enables right stage7 More...
 
__STATIC_INLINE void ll_pdm_enable_right_hpy_bypass (pdm_regs_t *PDMx)
 Enable PDM right hpf_bypass. More...
 
__STATIC_INLINE void ll_pdm_disable_right_hpy_bypass (pdm_regs_t *PDMx)
 Disable PDM right hpf_bypass. More...
 
__STATIC_INLINE uint32_t ll_pdm_is_enable_right_hpy_bypass (pdm_regs_t *PDMx)
 is PDM enables right hpf_bypass More...
 
__STATIC_INLINE void ll_pdm_set_left_hpf_corner (pdm_regs_t *PDMx, uint32_t hpf_corner)
 Set PDM left hpf corner. More...
 
__STATIC_INLINE uint32_t ll_pdm_get_left_hpf_corner (pdm_regs_t *PDMx)
 Get PDM left hpf corner. More...
 
__STATIC_INLINE void ll_pdm_set_right_hpf_corner (pdm_regs_t *PDMx, uint32_t hpf_corner)
 Set PDM right hpf corner. More...
 
__STATIC_INLINE uint32_t ll_pdm_get_right_hpf_corner (pdm_regs_t *PDMx)
 Get PDM right hpf corner. More...
 
__STATIC_INLINE void ll_pdm_enable_left_hpf_freeze_en (pdm_regs_t *PDMx)
 Enable PDM left hpf_freeze_en. More...
 
__STATIC_INLINE void ll_pdm_disable_left_hpf_freeze_en (pdm_regs_t *PDMx)
 Disable PDM left hpf_freeze_en. More...
 
__STATIC_INLINE uint32_t ll_pdm_is_enable_left_hpf_freeze_en (pdm_regs_t *PDMx)
 is PDM enables left hpf_freeze_en More...
 
__STATIC_INLINE void ll_pdm_enable_right_hpf_freeze_en (pdm_regs_t *PDMx)
 Enable PDM right hpf_freeze_en. More...
 
__STATIC_INLINE void ll_pdm_disable_right_hpf_freeze_en (pdm_regs_t *PDMx)
 Disable PDM right hpf_freeze_en. More...
 
__STATIC_INLINE uint32_t ll_pdm_is_enable_right_hpf_freeze_en (pdm_regs_t *PDMx)
 is PDM enables right hpf_freeze_en More...
 
__STATIC_INLINE void ll_pdm_set_left_pga_val (pdm_regs_t *PDMx, uint32_t pga_val)
 Set PDM left pga_value. More...
 
__STATIC_INLINE uint32_t ll_pdm_get_left_pga_val (pdm_regs_t *PDMx)
 Get PDM left pga_value. More...
 
__STATIC_INLINE void ll_pdm_set_right_pga_val (pdm_regs_t *PDMx, uint32_t pga_val)
 Set PDM right pga_value. More...
 
__STATIC_INLINE uint32_t ll_pdm_get_right_pga_val (pdm_regs_t *PDMx)
 Get PDM right pga_value. More...
 
__STATIC_INLINE uint32_t ll_pdm_get_left_data (pdm_regs_t *PDMx)
 Get PDM left data. More...
 
__STATIC_INLINE uint32_t ll_pdm_get_right_data (pdm_regs_t *PDMx)
 Get PDM right data. More...
 
__STATIC_INLINE void ll_pdm_left_clear_flag_valid (pdm_regs_t *PDMx)
 Clean PDM left valid. More...
 
__STATIC_INLINE uint32_t ll_pdm_left_is_active_flag_valid (pdm_regs_t *PDMx)
 Get PDM left valid. More...
 
__STATIC_INLINE void ll_pdm_right_clear_flag_valid (pdm_regs_t *PDMx)
 Clean PDM right valid. More...
 
__STATIC_INLINE uint32_t ll_pdm_right_is_active_flag_valid (pdm_regs_t *PDMx)
 Get PDM right valid. More...
 
__STATIC_INLINE void ll_pdm_left_clear_flag_overflow (pdm_regs_t *PDMx)
 Set PDM left overflow. More...
 
__STATIC_INLINE uint32_t ll_pdm_left_is_active_flag_overflow (pdm_regs_t *PDMx)
 Get PDM left overflow. More...
 
__STATIC_INLINE void ll_pdm_right_clear_flag_overflow (pdm_regs_t *PDMx)
 Set PDM right overflow. More...
 
__STATIC_INLINE uint32_t ll_pdm_right_is_active_flag_overflow (pdm_regs_t *PDMx)
 Get PDM right overflow. More...
 
__STATIC_INLINE void ll_pdm_left_enable_it_valid (pdm_regs_t *PDMx)
 enable .valid inter More...
 
__STATIC_INLINE void ll_pdm_left_disable_it_valid (pdm_regs_t *PDMx)
 disable .valid inter More...
 
__STATIC_INLINE uint32_t ll_pdm_left_is_enable_it_valid (pdm_regs_t *PDMx)
 Get .valid inter status. More...
 
__STATIC_INLINE void ll_pdm_right_enable_it_valid (pdm_regs_t *PDMx)
 enable .valid inter More...
 
__STATIC_INLINE void ll_pdm_right_disable_it_valid (pdm_regs_t *PDMx)
 Clean the status of .valid inter status. More...
 
__STATIC_INLINE uint32_t ll_pdm_right_is_enable_it_valid (pdm_regs_t *PDMx)
 Get .valid inter status. More...
 
__STATIC_INLINE void ll_pdm_left_enable_it_overflow (pdm_regs_t *PDMx)
 enable .overflow inter More...
 
__STATIC_INLINE void ll_pdm_left_disable_it_overflow (pdm_regs_t *PDMx)
 disable .overflow inter More...
 
__STATIC_INLINE uint32_t ll_pdm_left_is_enable_it_overflow (pdm_regs_t *PDMx)
 Get .overflow inter status. More...
 
__STATIC_INLINE void ll_pdm_right_enable_it_overflow (pdm_regs_t *PDMx)
 enable .overflow inter More...
 
__STATIC_INLINE void ll_pdm_right_disable_it_overflow (pdm_regs_t *PDMx)
 disable .overflow inter More...
 
__STATIC_INLINE uint32_t ll_pdm_right_is_enable_it_overflow (pdm_regs_t *PDMx)
 Get .overflow inter status. More...
 
__STATIC_INLINE void ll_pdm_left_enable_dma_mask (pdm_regs_t *PDMx)
 set valid dma mask enable More...
 
__STATIC_INLINE void ll_pdm_left_disable_dma_mask (pdm_regs_t *PDMx)
 set valid dma mask disable More...
 
__STATIC_INLINE void ll_pdm_right_enable_dma_mask (pdm_regs_t *PDMx)
 set valid dma mask enable More...
 
__STATIC_INLINE void ll_pdm_right_disable_dma_mask (pdm_regs_t *PDMx)
 set valid dma mask disable More...
 
error_status_t ll_pdm_deinit (pdm_regs_t *PDMx)
 De-initialize the PDM registers to their default reset values. More...
 
error_status_t ll_pdm_init (pdm_regs_t *PDMx, ll_pdm_init_t *p_pdm_init)
 Initialize the PDM registers according to the specified parameters in p_pdm_init. More...
 
void ll_pdm_struct_init (ll_pdm_init_t *p_pdm_init)
 Set each field of a ll_pdm_init_t type structure to default value. More...
 

Detailed Description

Header file containing functions prototypes of PDM LL library.

Author
BLE Driver Team
Attention
#####Copyright (c) 2019 GOODIX All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. Neither the name of GOODIX nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL COPYRIGHT HOLDERS AND CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Definition in file gr55xx_ll_pdm.h.