SAM HSMCI driver. More...
#include <asf.h>
#include "conf_board.h"
#include "sd_mmc_protocol.h"
#include "sysclk.h"
#include "pmc.h"
#include "hsmci.h"
Go to the source code of this file.
Macros | |
#define | hsmci_debug(...) |
#define | SD_MMC_HSMCI_MEM_CNT 1 |
#define | SD_MMC_HSMCI_SLOT_0_SIZE 1 |
Functions | |
bool | hsmci_adtc_start (sdmmc_cmd_def_t cmd, uint32_t arg, uint16_t block_size, uint16_t nb_block, bool access_block) |
Send an ADTC command on the selected slot An ADTC (Addressed Data Transfer Commands) command is used for read/write access. More... | |
bool | hsmci_adtc_stop (sdmmc_cmd_def_t cmd, uint32_t arg) |
Send a command to stop an ADTC command on the selected slot. More... | |
void | hsmci_deselect_device (uint8_t slot) |
Deselect a slot. More... | |
uint8_t | hsmci_get_bus_width (uint8_t slot) |
Return the maximum bus width of a slot. More... | |
uint32_t | hsmci_get_response (void) |
Return the 32 bits response of the last command. More... | |
void | hsmci_get_response_128 (uint8_t *response) |
Return the 128 bits response of the last command. More... | |
void | hsmci_init (void) |
Initializes the low level driver. More... | |
bool | hsmci_is_high_speed_capable (void) |
Return the high speed capability of the driver. More... | |
bool | hsmci_read_word (uint32_t *value) |
Read a word on the line. More... | |
static void | hsmci_reset (void) |
Reset the HSMCI interface. More... | |
void | hsmci_select_device (uint8_t slot, uint32_t clock, uint8_t bus_width, bool high_speed) |
Select a slot and initialize it. More... | |
void | hsmci_send_clock (void) |
Send 74 clock cycles on the line of selected slot Note: It is required after card plug and before card install. More... | |
bool | hsmci_send_cmd (sdmmc_cmd_def_t cmd, uint32_t arg) |
Send a command on the selected slot. More... | |
static bool | hsmci_send_cmd_execute (uint32_t cmdr, sdmmc_cmd_def_t cmd, uint32_t arg) |
Send a command. More... | |
static void | hsmci_set_speed (uint32_t speed, uint32_t mck) |
Set speed of the HSMCI clock. More... | |
static bool | hsmci_wait_busy (void) |
Wait the end of busy signal on data line. More... | |
bool | hsmci_write_word (uint32_t value) |
Write a word on the line. More... | |
Variables | |
static uint16_t | hsmci_block_size |
Size block requested by last hsmci_adtc_start() More... | |
static uint16_t | hsmci_nb_block |
Total number of block requested by last hsmci_adtc_start() More... | |
static uint32_t | hsmci_transfert_pos |
Current position (byte) of the transfer started by hsmci_adtc_start() More... | |
SAM HSMCI driver.
Copyright (c) 2012-2018 Microchip Technology Inc. and its subsidiaries.
Definition in file hsmci.c.