HPM SDK
HPMicro Software Development Kit
hpm_sdmmc_host.c File Reference
#include "hpm_sdmmc_common.h"
#include "hpm_sdmmc_host.h"
#include "board.h"

Functions

static void sdmmchost_vsel_pin_control (sdmmc_host_t *host, hpm_sdmmc_io_volt_t io_volt)
 
static void sdmmchost_power_control (sdmmc_host_t *host, hpm_sdmmc_power_option_t option)
 
static void sdmmchost_switch_to_3v3_as_needed (sdmmc_host_t *host)
 
static hpm_stat_t sdmmchost_check_host_availablity (sdmmc_host_t *host)
 
void sdmmchost_delay_ms (sdmmc_host_t *host, uint32_t ms)
 
hpm_stat_t sdmmchost_init (sdmmc_host_t *host)
 
hpm_stat_t sdmmchost_switch_to_1v8 (sdmmc_host_t *host)
 
void sdmmchost_deinit (sdmmc_host_t *host)
 
void sdmmchost_reset (sdmmc_host_t *host)
 
void sdmmchost_enable_emmc_support (sdmmc_host_t *host, bool enable)
 
bool sdmmchost_is_card_detected (sdmmc_host_t *host)
 
void sdmmchost_set_card_bus_width (sdmmc_host_t *host, sdmmc_buswidth_t bus_width)
 
uint32_t sdmmchost_set_card_clock (sdmmc_host_t *host, uint32_t freq, bool clock_inverse)
 
void sdmmchost_wait_card_active (sdmmc_host_t *host)
 
hpm_stat_t sdmmchost_send_command (sdmmc_host_t *host, sdmmchost_cmd_t *cmd)
 
hpm_stat_t sdmmchost_transfer (sdmmc_host_t *host, sdmmchost_xfer_t *content)
 
hpm_stat_t sdmmchost_set_speed_mode (sdmmc_host_t *host, sdmmc_speed_mode_t speed_mode)
 
hpm_stat_t sdmmchost_error_recovery (sdmmc_host_t *host, sdmmchost_cmd_t *abort_cmd)
 
void sdmmchost_set_cardclk_delay_chain (sdmmc_host_t *host)
 
bool sdmmchost_is_8bit_supported (sdmmc_host_t *host)
 
bool sdmmchost_is_voltage_switch_supported (sdmmc_host_t *host)
 
void sdmmchost_init_io (sdmmc_host_t *host, hpm_sdmmc_operation_mode_t operation_mode)
 
void sdmmchost_enable_enhanced_data_strobe (sdmmc_host_t *host, bool enable)
 
void sdmmchost_set_data_strobe_delay (sdmmc_host_t *host)
 
void sdmmchost_select_voltage (sdmmc_host_t *host, hpm_sdmmc_io_volt_t io_volt)
 

Function Documentation

◆ sdmmchost_check_host_availablity()

static hpm_stat_t sdmmchost_check_host_availablity ( sdmmc_host_t host)
static

◆ sdmmchost_deinit()

void sdmmchost_deinit ( sdmmc_host_t host)

◆ sdmmchost_delay_ms()

void sdmmchost_delay_ms ( sdmmc_host_t host,
uint32_t  ms 
)

◆ sdmmchost_enable_emmc_support()

void sdmmchost_enable_emmc_support ( sdmmc_host_t host,
bool  enable 
)

◆ sdmmchost_enable_enhanced_data_strobe()

void sdmmchost_enable_enhanced_data_strobe ( sdmmc_host_t host,
bool  enable 
)

◆ sdmmchost_error_recovery()

hpm_stat_t sdmmchost_error_recovery ( sdmmc_host_t host,
sdmmchost_cmd_t abort_cmd 
)

◆ sdmmchost_init()

hpm_stat_t sdmmchost_init ( sdmmc_host_t host)

◆ sdmmchost_init_io()

void sdmmchost_init_io ( sdmmc_host_t host,
hpm_sdmmc_operation_mode_t  operation_mode 
)

◆ sdmmchost_is_8bit_supported()

bool sdmmchost_is_8bit_supported ( sdmmc_host_t host)

◆ sdmmchost_is_card_detected()

bool sdmmchost_is_card_detected ( sdmmc_host_t host)

◆ sdmmchost_is_voltage_switch_supported()

bool sdmmchost_is_voltage_switch_supported ( sdmmc_host_t host)

◆ sdmmchost_power_control()

void sdmmchost_power_control ( sdmmc_host_t host,
hpm_sdmmc_power_option_t  option 
)
static

◆ sdmmchost_reset()

void sdmmchost_reset ( sdmmc_host_t host)

◆ sdmmchost_select_voltage()

void sdmmchost_select_voltage ( sdmmc_host_t host,
hpm_sdmmc_io_volt_t  io_volt 
)

◆ sdmmchost_send_command()

hpm_stat_t sdmmchost_send_command ( sdmmc_host_t host,
sdmmchost_cmd_t cmd 
)

◆ sdmmchost_set_card_bus_width()

void sdmmchost_set_card_bus_width ( sdmmc_host_t host,
sdmmc_buswidth_t  bus_width 
)

◆ sdmmchost_set_card_clock()

uint32_t sdmmchost_set_card_clock ( sdmmc_host_t host,
uint32_t  freq,
bool  clock_inverse 
)

◆ sdmmchost_set_cardclk_delay_chain()

void sdmmchost_set_cardclk_delay_chain ( sdmmc_host_t host)

◆ sdmmchost_set_data_strobe_delay()

void sdmmchost_set_data_strobe_delay ( sdmmc_host_t host)

◆ sdmmchost_set_speed_mode()

hpm_stat_t sdmmchost_set_speed_mode ( sdmmc_host_t host,
sdmmc_speed_mode_t  speed_mode 
)

◆ sdmmchost_switch_to_1v8()

hpm_stat_t sdmmchost_switch_to_1v8 ( sdmmc_host_t host)

◆ sdmmchost_switch_to_3v3_as_needed()

static void sdmmchost_switch_to_3v3_as_needed ( sdmmc_host_t host)
static

◆ sdmmchost_transfer()

hpm_stat_t sdmmchost_transfer ( sdmmc_host_t host,
sdmmchost_xfer_t content 
)

◆ sdmmchost_vsel_pin_control()

static void sdmmchost_vsel_pin_control ( sdmmc_host_t host,
hpm_sdmmc_io_volt_t  io_volt 
)
static

◆ sdmmchost_wait_card_active()

void sdmmchost_wait_card_active ( sdmmc_host_t host)