Astra SRSDK Peripheral Driver Library
 
Loading...
Searching...
No Matches
Enumerated Types

Enumerated Types for SDIO Driver. More...

Enumerations

enum  sdio_cmd_type_en {
  SDIO_CMD_NORMAL = 0U ,
  SDIO_CMD_SUSPEND = 1U ,
  SDIO_CMD_RESUME = 2U ,
  SDIO_CMD_ABORT = 3U
}
 SD command types. More...
 
enum  sdio_auto_cmd_en {
  SDIO_AUTO_CMD_NONE = 0U ,
  SDIO_AUTO_CMD_12 = 1U ,
  SDIO_AUTO_CMD_23 = 2U ,
  SDIO_AUTO_CMD_AUTO = 3U
}
 SD Host auto command enable selection.. More...
 
enum  sdio_reset_en {
  SDIO_RESET_DATALINE = 0U ,
  SDIO_RESET_CMD_LINE = 1U ,
  SDIO_RESET_ALL = 2U
}
 SD Host reset types. More...
 
enum  sdio_adma_error_en {
  SDIO_ADMA_ST_STOP = 0U ,
  SDIO_ADMA_ST_FDS = 1U ,
  SDIO_ADMA_ST_TFR = 3U ,
  SDIO_ADMA_LEN_ERR = 4U
}
 SD Host error interrupt types.. More...
 
enum  sdio_auto_cmd_status_en {
  SDIO_AUTO_CMD12_NOT_EXEC = 0U ,
  SDIO_AUTO_CMD_TOUT_ERR = 1U ,
  SDIO_AUTO_CMD_CRC_ERR = 2U ,
  SDIO_AUTO_CMD_EBIT_ERR = 3U ,
  SDIO_AUTO_CMD_IDX_ERR = 4U ,
  SDIO_AUTO_CMD_RESP_ERR = 5U ,
  SDIO_CMD_NOT_ISSUED_AUTO_CMD12 = 7U
}
 Auto CMD Status error codes. More...
 
enum  sdio_status_en {
  SDIO_OK = 0U ,
  SDIO_ERROR = 1U ,
  SDIO_ERROR_INVALID_PARAMETER = 2U ,
  SDIO_ERROR_OPERATION_IN_PROGRESS = 3U ,
  SDIO_ERROR_UNINITIALIZED = 4U ,
  SDIO_ERROR_TIMEOUT = 5U ,
  SDIO_ERROR_UNUSABLE_CARD = 6U ,
  SDIO_ERROR_DISCONNECTED = 7U ,
  SDIO_ERROR_CRC = 8U ,
  SDIO_ERROR_DATA_END_BIT = 9U ,
  SDIO_ERROR_GENERAL = 10U ,
  SDIO_ERROR_NOT_SUPPORTED = 11U ,
  SDIO_ERROR_DATA_INTEGRITY = 12U
}
 SD host error codes. More...
 
enum  sdio_bus_width_en {
  SDIO_BUS_WIDTH_1_BIT = 0U ,
  SDIO_BUS_WIDTH_4_BIT = 1U
}
 The widths of the data bus. More...
 
enum  sdio_bus_speed_mode_en {
  SDIO_BUS_SPEED_DEFAULT = 0U ,
  SDIO_BUS_SPEED_HIGHSPEED = 1U ,
  SDIO_BUS_SPEED_SDR12_5 = 2U ,
  SDIO_BUS_SPEED_SDR25 = 3U ,
  SDIO_BUS_SPEED_SDR50 = 4U
}
 The bus speed modes. More...
 
enum  sdio_erase_type_en {
  SDIO_ERASE_ERASE = 0U ,
  SDIO_ERASE_DISCARD = 1U ,
  SDIO_ERASE_FULE = 2U ,
  SDIO_ERASE_SECURE = 3U ,
  SDIO_ERASE_SECURE_TRIM_STEP_2 = 4U ,
  SDIO_ERASE_SECURE_TRIM_STEP_1 = 5U ,
  SDIO_ERASE_TRIM = 6U
}
 Erase type. More...
 
enum  sdio_card_type_en {
  SDIO_SD = 0U ,
  SDIO_SDIO = 1U ,
  SDIO_COMBO = 3U ,
  SDIO_UNUSABLE = 4U
}
 Card type. More...
 
enum  sdio_card_capacity_en {
  SDIO_SDSC = 0U ,
  SDIO_SDHC = 1U ,
  SDIO_SDXC = 2U ,
  SDIO_UNSUPPORTED = 4U
}
 The card capacity type. More...
 
enum  sdio_response_type_en {
  SDIO_RESPONSE_NONE = 0U ,
  SDIO_RESPONSE_LEN_136 = 1U ,
  SDIO_RESPONSE_LEN_48 = 2U ,
  SDIO_RESPONSE_LEN_48B = 3U
}
 SDHC response types. More...
 
enum  sdio_dma_type_en {
  SDIO_DMA_SDMA = 0U ,
  SDIO_DMA_ADMA2 = 2U
}
 The DMA type enum. More...
 
enum  sdio_write_protect_en {
  SDIO_PERMANENT = 0U ,
  SDIO_ENABLE_TEMPORARY = 1U ,
  SDIO_DISABLE_TEMPORARY = 2U
}
 Write Protect type enum. More...
 
enum  sdio_r1_response_en {
  SDIO_AKE_SEQ_ERROR_R1_RESP = 3U ,
  SDIO_APP_CMD_R1_RESP = 5U ,
  SDIO_FX_EVENT_R1_RESP = 6U ,
  SDIO_READY_FOR_DATA_R1_RESP = 8U ,
  SDIO_CURRENT_STATE_0_R1_RESP = 9U ,
  SDIO_CURRENT_STATE_1_R1_RESP = 10U ,
  SDIO_CURRENT_STATE_2_R1_RESP = 11U ,
  SDIO_CURRENT_STATE_3_R1_RESP = 12U ,
  SDIO_ERASE_RESET_R1_RESP = 13U ,
  SDIO_CARD_ECC_DISABLED_R1_RESP = 14U ,
  SDIO_WP_ERASE_SKIP_R1_RESP = 15U ,
  SDIO_CSD_OVERWRITE_R1_RESP = 16U ,
  SDIO_ERROR_R1_RESP = 19U ,
  SDIO_CC_ERROR_R1_RESP = 20U ,
  SDIO_CARD_ECC_FAILED_R1_RESP = 21U ,
  SDIO_ILLEGAL_COMMAND_R1_RESP = 22U ,
  SDIO_COM_CRC_ERROR_R1_RESP = 23U ,
  SDIO_LOCK_UNLOCK_FAILED_R1_RESP = 24U ,
  SDIO_CARD_IS_LOCKED_R1_RESP = 25U ,
  SDIO_WP_VIOLATION_R1_RESP = 26U ,
  SDIO_ERASE_PARAM_R1_RESP = 27U ,
  SDIO_ERASE_SEQ_ERROR_R1_RESP = 28U ,
  SDIO_BLOCK_LEN_ERROR_R1_RESP = 29U ,
  SDIO_ADDRESS_ERROR_R1_RESP = 30U ,
  SDIO_OUT_OF_RANGE_R1_RESP = 31U
}
 Card status in R1 response type enum. More...
 

Detailed Description

Enumerated Types for SDIO Driver.

Enumeration Type Documentation

◆ sdio_cmd_type_en

SD command types.

Enumerator
SDIO_CMD_NORMAL 

Other commands

SDIO_CMD_SUSPEND 

CMD52 for writing "Bus Suspend" in CCCR

SDIO_CMD_RESUME 

CMD52 for writing "Function Select" in CCCR

SDIO_CMD_ABORT 

CMD12, CMD52 for writing "I/O Abort" in CCCR

◆ sdio_auto_cmd_en

SD Host auto command enable selection..

Enumerator
SDIO_AUTO_CMD_NONE 

Auto command disable.

SDIO_AUTO_CMD_12 

Auto command 12 enable.

SDIO_AUTO_CMD_23 

Auto command 23 enable.

SDIO_AUTO_CMD_AUTO 

Auto command Auto enable.

◆ sdio_reset_en

SD Host reset types.

Enumerator
SDIO_RESET_DATALINE 

Reset the data circuit only.

SDIO_RESET_CMD_LINE 

Reset the command circuit only.

SDIO_RESET_ALL 

Reset the whole SD Host controller.

◆ sdio_adma_error_en

SD Host error interrupt types..

Enumerator
SDIO_ADMA_ST_STOP 

Stop DMA - The SYS_ADR register points to a location next to the error descriptor.

SDIO_ADMA_ST_FDS 

Fetch Descriptor - The SYS_ADR register points to the error descriptor.

SDIO_ADMA_ST_TFR 

Transfer Data - SYS_ADR register points to a location next to the error descriptor.

SDIO_ADMA_LEN_ERR 

The ADMA Length Mismatch error.

◆ sdio_auto_cmd_status_en

Auto CMD Status error codes.

Enumerator
SDIO_AUTO_CMD12_NOT_EXEC 

Auto CMD12 Not Executed.

SDIO_AUTO_CMD_TOUT_ERR 

Auto CMD Timeout Error.

SDIO_AUTO_CMD_CRC_ERR 

Auto CMD CRC Error.

SDIO_AUTO_CMD_EBIT_ERR 

Auto CMD End Bit Error.

SDIO_AUTO_CMD_IDX_ERR 

Auto CMD Index Error.

SDIO_AUTO_CMD_RESP_ERR 

Auto CMD Response Error.

SDIO_CMD_NOT_ISSUED_AUTO_CMD12 

Command Not Issued By Auto CMD12 Error.

◆ sdio_status_en

SD host error codes.

Enumerator
SDIO_OK 

Successful.

SDIO_ERROR 

Non-specific error code.

SDIO_ERROR_INVALID_PARAMETER 

The provided parameter is not valid.

SDIO_ERROR_OPERATION_IN_PROGRESS 

A conflicting or requested operation is still in progress.

SDIO_ERROR_UNINITIALIZED 

The module (or part of it) was not initialized properly.

SDIO_ERROR_TIMEOUT 

A Time Out error occurred

SDIO_ERROR_UNUSABLE_CARD 

The card is unusable.

SDIO_ERROR_DISCONNECTED 

The card is disconnected.

SDIO_ERROR_CRC 

CRC failed

SDIO_ERROR_DATA_END_BIT 

Data enf bit error

SDIO_ERROR_GENERAL 

resource initialization fails

SDIO_ERROR_NOT_SUPPORTED 

No hardware support

SDIO_ERROR_DATA_INTEGRITY 

Data integrity error

◆ sdio_bus_width_en

The widths of the data bus.

Enumerator
SDIO_BUS_WIDTH_1_BIT 

The 1-bit mode data transfer width.

SDIO_BUS_WIDTH_4_BIT 

The 4-bit mode data transfer width.

◆ sdio_bus_speed_mode_en

The bus speed modes.

Enumerator
SDIO_BUS_SPEED_DEFAULT 

Default Speed mode: 3.3V signaling at 25 MHz SDClk.

SDIO_BUS_SPEED_HIGHSPEED 

High Speed mode: 3.3V signaling at 50 MHz SDClk.

SDIO_BUS_SPEED_SDR12_5 

SDR12: UHS-I (1.8V signaling) at 25 MHz SDClk (12.5 MB/sec).

SDIO_BUS_SPEED_SDR25 

SDR25: UHS-I (1.8V signaling) at 50 MHz SDClk (25 MB/sec).

SDIO_BUS_SPEED_SDR50 

SDR50: UHS-I (1.8V signaling) at 100 MHz SDClk (50 MB/sec).

◆ sdio_erase_type_en

Erase type.

Enumerator
SDIO_ERASE_ERASE 

The ERASE operation.

SDIO_ERASE_DISCARD 

The DISCARD operation.

SDIO_ERASE_FULE 

The Full User Area Logical Erase (FULE) operation.

SDIO_ERASE_SECURE 

The secure purge according to Secure Removal Type in EXT_CSD on the erase groups identified by the startAddr&endAddr parameters and any copies of those erase groups.

SDIO_ERASE_SECURE_TRIM_STEP_2 

The secure purge operation on the write blocks according to Secure Removal Type in EXT_CSD and copies of those write blocks that were previously identified using sdio_sd_card_erase with SDIO_ERASE_SECURE_TRIM_STEP_1

SDIO_ERASE_SECURE_TRIM_STEP_1 

Mark the write blocks, indicated by the startAddr&endAddr parameters, for secure erase.

SDIO_ERASE_TRIM 

Trim the write blocks identified by the startAddr&endAddr parameters. The controller can perform the actual erase at convenient time.

◆ sdio_card_type_en

Card type.

Enumerator
SDIO_SD 

The Secure Digital card (SD).

SDIO_SDIO 

The CD Input Output card (SDIO).

SDIO_COMBO 

The Combo card (SD + SDIO).

SDIO_UNUSABLE 

The unusable or not supported.

◆ sdio_card_capacity_en

The card capacity type.

Enumerator
SDIO_SDSC 

SDSC - Secure Digital Standard Capacity (up to 2 GB).

SDIO_SDHC 

SDHC - Secure Digital High Capacity (up to 32 GB).

SDIO_SDXC 

SDXC - Secure Digital Extended Capacity (up to 2 TB).

SDIO_UNSUPPORTED 

Not supported.

◆ sdio_response_type_en

SDHC response types.

Enumerator
SDIO_RESPONSE_NONE 

No Response

  • Length: 0 bytes
  • Example: CMD0 (GO_IDLE_STATE), CMD15 (GO_INACTIVE_STATE)
SDIO_RESPONSE_LEN_136 

Response Length 136 (R2 type)

  • Length: 136 bits = 17 bytes
  • Example: CMD2 (ALL_SEND_CID), CMD9 (SEND_CSD)
SDIO_RESPONSE_LEN_48 

Response Length 48 (R1, R3, R6, R7 types)

  • Length: 48 bits = 6 bytes
  • Example: R1: CMD13 (SEND_STATUS) R3: CMD58 (READ_OCR) R6: CMD3 (SEND_RELATIVE_ADDR) R7: CMD8 (SEND_IF_COND)
SDIO_RESPONSE_LEN_48B 

Response Length 48 with Busy (R1b type)

  • Length: 48 bits + Busy signal on DAT0
  • Example: CMD7 (SELECT/DESELECT_CARD), CMD12 (STOP_TRANSMISSION)

◆ sdio_dma_type_en

The DMA type enum.

Enumerator
SDIO_DMA_SDMA 

SDMA mode.

SDIO_DMA_ADMA2 

ADMA2 mode.

◆ sdio_write_protect_en

Write Protect type enum.

Enumerator
SDIO_PERMANENT 

The permanent write protect.

SDIO_ENABLE_TEMPORARY 

The temporary write protect.

SDIO_DISABLE_TEMPORARY 

Clear the temporary write protect.

◆ sdio_r1_response_en

Card status in R1 response type enum.

Enumerator
SDIO_AKE_SEQ_ERROR_R1_RESP 

Error in the sequence of the authentication process.

SDIO_APP_CMD_R1_RESP 

The card will expect ACMD, or an indication that the command has been interpreted as ACMD.

SDIO_FX_EVENT_R1_RESP 

Extension Functions may set this bit to get host to deal with events.

SDIO_READY_FOR_DATA_R1_RESP 

Corresponds to buffer empty signaling on the bus.

SDIO_CURRENT_STATE_0_R1_RESP 

The state of the card when receiving the command. The four bits are interpreted as a binary coded number between 0 and 15. It is 0th bit.

SDIO_CURRENT_STATE_1_R1_RESP 

The state of the card when receiving the command. The four bits are interpreted as a binary coded number between 0 and 15. It is 1st bit.

SDIO_CURRENT_STATE_2_R1_RESP 

The state of the card when receiving the command. The four bits are interpreted as a binary coded number between 0 and 15. It is 2nd bit.

SDIO_CURRENT_STATE_3_R1_RESP 

The state of the card when receiving the command. The four bits are interpreted as a binary coded number between 0 and 15. It is 3rd bit.

SDIO_ERASE_RESET_R1_RESP 

It indicates if an erase sequence was cleared before executing because an out of erase sequence command was received.

SDIO_CARD_ECC_DISABLED_R1_RESP 

It indicates if the command has been executed without using the internal ECC.

SDIO_WP_ERASE_SKIP_R1_RESP 

It is set when only partial address space was erased due to existing write protected blocks or the temporary or permanent write protected card was erased.

SDIO_CSD_OVERWRITE_R1_RESP 

It indicates read only section of the CSD does not match the card content or there was an attempt to reverse the copy or permanent WP bits was made.

SDIO_ERROR_R1_RESP 

A general or an unknown error occurred during the operation.

SDIO_CC_ERROR_R1_RESP 

Internal card controller error.

SDIO_CARD_ECC_FAILED_R1_RESP 

Card internal ECC was applied but failed to correct the data.

SDIO_ILLEGAL_COMMAND_R1_RESP 

Command not legal for the card.

SDIO_COM_CRC_ERROR_R1_RESP 

The CRC check of the previous command failed.

SDIO_LOCK_UNLOCK_FAILED_R1_RESP 

Set when a sequence or password error has been detected in lock/unlock card command.

SDIO_CARD_IS_LOCKED_R1_RESP 

When set, signals that the card is locked by the host.

SDIO_WP_VIOLATION_R1_RESP 

Set when the host attempts to write to a protected block or to the temporary or permanent write protected card.

SDIO_ERASE_PARAM_R1_RESP 

An invalid selection of write-blocks for erase occurred.

SDIO_ERASE_SEQ_ERROR_R1_RESP 

An error in the sequence of erase commands occurred.

SDIO_BLOCK_LEN_ERROR_R1_RESP 

The transferred block length is not allowed for this card,or the number of transferred bytes does not match the block length.

SDIO_ADDRESS_ERROR_R1_RESP 

A misaligned address which did not match the block length was used in the command.

SDIO_OUT_OF_RANGE_R1_RESP 

The command's argument was out of the allowed range for this card.