FSDev_SD_xxx_RdCSD()

void FSDev_SD_Card_RdCSD (CPU_CHAR *name_dev,
						  CPU_INT08U *p_info,
						  FS_ERR *p_err);
 
void FSDev_SD_SPI_RdCSD (CPU_CHAR *name_dev,
						 CPU_INT08U *p_info,
						 FS_ERR *p_err);

File

Called from

Code enabled by

fs_dev_sd_card.c, fs_dev_sd_spi.c

Application

N/A

Read SD/MMC Card-Specific Data (CSD) register.

Arguments

name_dev

Device name (see Note #1).

p_dest

Pointer to 16-byte buffer that will receive SD/MMC Card-Specific Data register.

p_err

Pointer to variable that will the receive return error code from this function:

FS_ERR_NONE

SD/MMC Card-Specific Data register read.

FS_ERR_NAME_NULL

Argument name_dev passed a NULL pointer.

FS_ERR_NULL_PTR

Argument p_dest passed a NULL pointer.

FS_ERR_DEV_INVALID

Argument name_dev specifies an invalid device

FS_ERR_DEV_NOT_OPEN

Device is not open.

FS_ERR_DEV_NOT_PRESENT

Device is not present.

FS_ERR_DEV_IO

Device I/O error.

FS_ERR_DEV_TIMEOUT

Device timeout.

Returned Value

None.

Notes/Warnings

  1. The device must be a SD/MMC device; (for FSDev_SD_Card_QuerySD(), e.g., “sdcard:0:”; for FSDev_SD_SPI_QuerySD(), e.g., “sd:0:”).
  2. For SD cards, the structure of the CSD is defined in the SD Card Association’s “Physical Layer Simplified Specification Version 2.00”, Section 5.3.2 (v1.x and v2.0 standard capacity) or Section 5.3.3. (v2.0 high capacity). For MMC cards, the structure of the CSD is defined in the JEDEC’s “MultiMediaCard (MMC) Electrical Standard, High Capacity”, Section 8.3.