Go to the source code of this file.
Macros | |
| #define | SDMMC_CLOCK_400KHZ (400000UL) |
| #define | SD_CLOCK_25MHZ (25000000UL) |
| #define | SD_CLOCK_50MHZ (50000000UL) |
| #define | SD_CLOCK_100MHZ (100000000UL) |
| #define | SD_CLOCK_208MHZ (208000000UL) |
| #define | MMC_CLOCK_26MHz (26000000UL) |
| #define | MMC_CLOCK_52MHz (52000000UL) |
| #define | MMC_CLOCK_DDR52 (52000000UL) |
| #define | MMC_CLOCK_HS200 (200000000UL) |
| #define | MMC_CLOCK_HS400 (200000000UL) |
| #define | HPM_SDMMC_MALLOC malloc |
| #define | HPM_SDMMC_FREE free |
Enumerations | |
| enum | { sdmmc_state_idle = 0 , sdmmc_state_ready = 1 , sdmmc_state_identify = 2 , sdmmc_state_standby = 3 , sdmmc_state_transfer = 4 , sdmmc_state_send_data = 5 , sdmmc_state_receive_data = 6 , sdmmc_state_program = 7 , sdmmc_state_disconnect = 8 } |
| enum | sdmmc_operation_voltage_t { sdmmc_operation_voltage_1v8 = 5 , sdmmc_operation_voltage_3v0 = 6 , sdmmc_operation_voltage_3v3 = 7 } |
| enum | sdmmc_resp_type_t { sdmmc_resp_none = 0 , sdmmc_resp_r1 , sdmmc_resp_r1b , sdmmc_resp_r2 , sdmmc_resp_r3 , sdmmc_resp_r4 , sdmmc_resp_r5 , sdmmc_resp_r5b , sdmmc_resp_r6 , sdmmc_resp_r7 } |
| enum | { status_sdmmc_card_not_support = MAKE_STATUS(status_group_sdmmc, 0) , status_sdmmc_wait_card_insert_timeout = MAKE_STATUS(status_group_sdmmc, 1) , status_sdmmc_no_sd_card_inserted = MAKE_STATUS(status_group_sdmmc, 2) , status_sdmmc_device_init_required = MAKE_STATUS(status_group_sdmmc, 3) , status_sdmmc_wait_busy_timeout = MAKE_STATUS(status_group_sdmmc, 4) } |
Functions | |
| hpm_stat_t | sdmmc_go_idle_state (sdmmc_host_t *host, uint32_t argument) |
| Switch device to Idle state. More... | |
| hpm_stat_t | sdmmc_go_inactive_state (sdmmc_host_t *host, uint16_t relative_addr) |
| Switch device to Inactive state. More... | |
| hpm_stat_t | sdmmc_select_card (sdmmc_host_t *host, uint16_t relative_addr, bool is_selected) |
| Select/De-select the device. More... | |
| hpm_stat_t | sdmmc_send_application_command (sdmmc_host_t *host, uint16_t relative_addr) |
| Send Application Command. More... | |
| hpm_stat_t | sdmmc_set_block_count (sdmmc_host_t *host, uint32_t block_count) |
| Set block count. More... | |
| hpm_stat_t | sdmmc_set_block_size (sdmmc_host_t *host, uint32_t block_size) |
| Set Block size. More... | |
| hpm_stat_t | sdmmc_enable_auto_tuning (const sdmmc_host_t *host) |
| Enable Auto Tuning mode. More... | |
| uint32_t | extract_csd_field (const uint32_t *raw_csd, uint8_t end_offset, uint8_t start_offset) |
| Extract Fields from raw CSD data. More... | |
| uint32_t | sdmmc_get_sys_addr (const sdmmc_host_t *host, uint32_t addr) |
| Get System address. More... | |