8 #ifndef HPM_SDXC_SOC_DRV_H
9 #define HPM_SDXC_SOC_DRV_H
14 #if defined(__cplusplus)
33 for (
volatile uint32_t i = 0; i < 50000U; i++) {
51 return ((*reg) & (1UL << 28)) != 0U;
57 (void) delay_from_pad;
96 uint32_t num_delaycells = 1;
97 if (clock_freq <= 52000000) {
100 return num_delaycells;
109 #if defined(__cplusplus)
#define HPM_SDXC0
Definition: hpm_soc.h:431
static bool sdxc_is_ddr50_supported(SDXC_Type *base)
Definition: hpm_sdxc_soc_drv.h:103
static void sdxc_set_cardclk_delay_chain(SDXC_Type *base, uint32_t delay_chain)
Definition: hpm_sdxc_soc_drv.h:60
static void sdxc_enable_inverse_clock(SDXC_Type *base, bool enable)
Definition: hpm_sdxc_soc_drv.h:38
static void sdxc_set_data_strobe_delay(SDXC_Type *base, uint32_t num_delaycells)
Definition: hpm_sdxc_soc_drv.h:68
static uint32_t sdxc_get_default_strobe_delay(SDXC_Type *base)
Definition: hpm_sdxc_soc_drv.h:78
static uint32_t sdxc_get_default_cardclk_delay_chain(SDXC_Type *base, uint32_t clock_freq)
Definition: hpm_sdxc_soc_drv.h:93
static bool sdxc_is_inverse_clock_enabled(SDXC_Type *base)
Definition: hpm_sdxc_soc_drv.h:48
static void sdxc_set_rxclk_delay_chain(SDXC_Type *base, uint32_t num_delaycells)
Definition: hpm_sdxc_soc_drv.h:84
static void sdxc_wait_card_active(SDXC_Type *base)
Wait at least 74 clocks until card is ready to receive the first command.
Definition: hpm_sdxc_soc_drv.h:22
static void sdxc_select_cardclk_delay_source(SDXC_Type *base, bool delay_from_pad)
Definition: hpm_sdxc_soc_drv.h:54
#define HPM_CONCTL
Definition: hpm_soc.h:651
#define IS_HPM_BITMASK_SET(val, mask)
Definition: hpm_common.h:61
#define CONCTL_CTRL4_SDXC0_GPR_CCLK_RX_DLY_SW_SEL_MASK
Definition: hpm_conctl_regs.h:226
#define CONCTL_CTRL4_SDXC0_GPR_TUNING_CARD_CLK_SEL_SET(x)
Definition: hpm_conctl_regs.h:199
#define CONCTL_CTRL4_SDXC0_GPR_TUNING_CARD_CLK_SEL_MASK
Definition: hpm_conctl_regs.h:197
#define CONCTL_CTRL4_SDXC0_GPR_CCLK_RX_DLY_SW_FORCE_MASK
Definition: hpm_conctl_regs.h:236
#define CONCTL_CTRL4_SDXC0_GPR_TUNING_STROBE_SEL_MASK
Definition: hpm_conctl_regs.h:207
#define CONCTL_CTRL4_SDXC0_GPR_STROBE_IN_ENABLE_MASK
Definition: hpm_conctl_regs.h:217
#define CONCTL_CTRL4_SDXC0_GPR_CCLK_RX_DLY_SW_SEL_SET(x)
Definition: hpm_conctl_regs.h:228
#define CONCTL_CTRL4_SDXC0_GPR_TUNING_STROBE_SEL_SET(x)
Definition: hpm_conctl_regs.h:209
#define SDXC_SYS_CTRL_SD_CLK_EN_MASK
Definition: hpm_sdxc_regs.h:1087
Definition: hpm_sdxc_regs.h:12
__R uint32_t CAPABILITIES1
Definition: hpm_sdxc_regs.h:26
__RW uint32_t SYS_CTRL
Definition: hpm_sdxc_regs.h:21