Register Normal_interrupt_status_Error_interrupt_status Details - Register Normal_interrupt_status_Error_interrupt_status Details - 1.15 English - UG585

Zynq 7000 SoC Technical Reference Manual (UG585)

Document_ID
UG585
Release_Date
2026-02-06
Version
1.15 English
Field Name Bits Type Reset Value Description
Ceata_Error_Status 29 wtc 0x0

Occurs when ATA command termination has occurred due to an error condition the device has encountered.

0 - no error

1 - error

Target_Response_error 28 wtc 0x0

Occurs when detecting ERROR in m_hresp(dma transaction)

0 - no error

1 - error

reserved 27:26 ro 0x0 Reserved
ADMA_Error 25 wtc 0x0

This bit is set when the Host Controller detects errors during ADMA based data transfer. The state of the ADMA at an error occurrence is saved in the ADMA Error Status Register.

1- Error

0 -No error

Auto_CMD12_Error 24 wtc 0x0

Occurs when detecting that one of the bits in Auto CMD12 Error Status register has changed from 0 to 1. This bit is set to 1 also when Auto CMD12 is not executed due to the previous command error.

0 - No Error

1 - Error

Current_Limit_Error 23 wtc 0x0

By setting the SD Bus Power bit in the Power Control Register, the HC is requested to supply power for the SD Bus. If the HC supports the Current Limit Function, it can be protected from an Illegal card by stopping power supply to the card in which case this bit indicates a failure status. Reading 1 means the HC is not supplying power to SD card due to some failure. Reading 0 means that the HC is supplying power and no error has occurred. This bit shall always set to be 0, if the HC does not support this function.

0 - No Error

1 - Power Fail

Data_End_Bit_Error 22 wtc 0x0

Occurs when detecting 0 at the end bit position of read data which uses the DAT line or the end bit position of the CRC status.

0 - No Error

1 - Error

Data_CRC_Error 21 wtc 0x0

Occurs when detecting CRC error when transferring read data which uses the DAT line or when detecting the Write CRC Status having a value of other than '010'.

0 - No Error

1 - Error

Data_Timeout_Error 20 wtc 0x0

Occurs when detecting one of following timeout conditions.

1. Busy Timeout for R1b, R5b type.

2. Busy Timeout after Write CRC status

3. Write CRC status Timeout

4. Read Data Timeout

0 - No Error

1 - Timeout

Command_Index_Error 19 wtc 0x0

Occurs if a Command Index error occurs in the Command Response.

0 - No Error

1 - Error

Command_End_Bit_Error 18 wtc 0x0

Occurs when detecting that the end bit of a command response is 0.

0 - No Error

1 - End Bit Error Generated

Command_CRC_Error 17 wtc 0x0

Command CRC Error is generated in two cases.

1. If a response is returned and the Command Timeout Error is set to 0, this bit is set to 1 when detecting a CRT error in the command response

2. The HC detects a CMD line conflict by monitoring the CMD line when a command is issued. If the HC drives the CMD line to 1 level, but detects 0 level on the CMD line at the next SDCLK edge, then the HC shall abort the command (Stop driving CMD line) and set this bit to 1. The Command Timeout Error shall also be set to 1 to distinguish CMD line conflict.

0 - No Error

1 - CRC Error Generated

Command_Timeout_Error 16 wtc 0x0

Occurs only if the no response is returned within 64 SDCLK cycles from the end bit of the command. If the HC detects a CMD line conflict, in which case Command CRC Error shall also be set. This bit shall be set without waiting for 64 SDCLK cycles because the command will be aborted by the HC.

0 - No Error

1 - Timeout

Error_Interrupt 15 ro 0x0

If any of the bits in the Error Interrupt Status Register are set, then this bit is set. Therefore the HD can test for an error by checking this bit first.

0 - No Error.

1 - Error.

reserved 14:11 ro 0x0 Reserved
Boot_terminate_Interrupt 10 wtc 0x0

This status is set if the boot operation get terminated

0 - Boot operation is not terminated.

1 - Boot operation is terminated

Boot_ack_rcv 9 wtc 0x0

This status is set if the boot acknowledge is received from device.

0 - Boot ack is not received.

1 - Boot ack is received.

Card_Interrupt 8 ro 0x0

Writing this bit to 1 does not clear this bit. It is cleared by resetting the SD card interrupt factor. In 1-bit mode, the HC shall detect the Card Interrupt without SD Clock to support wakeup. In 4-bit mode, the card interrupt signal is sampled during the interrupt cycle, so there are some sample delays between the interrupt signal from the card and the interrupt to the Host system. When this status has been set and the HD needs to start this interrupt service, Card Interrupt Status Enable in the Normal Interrupt Status register shall be set to 0 in order to clear the card interrupt statuses latched in the HC and stop driving the Host System. After completion of the card interrupt service (the reset factor in the SD card and the interrupt signal may not be asserted), set Card Interrupt Status Enable to 1 and start sampling the interrupt signal again.

0 - No Card Interrupt

1 - Generate Card Interrupt

Card_Removal 7 wtc 0x0

This status is set if the Card Inserted in the Present State register changes from 1 to 0. When the HD writes this bit to 1 to clear this status the status of the Card Inserted in the Present State register should be confirmed.

Because the card detect may possibly be changed when the HD clear this bit an Interrupt event may not be generated.

0 - Card State Stable or Debouncing

1 - Card Removed

Card_Insertion 6 wtc 0x0

This status is set if the Card Inserted in the Present State register changes from 0 to 1. When the HD writes this bit to 1 to clear this status the status of the Card Inserted in the Present State register should be confirmed.

Because the card detect may possibly be changed when the HD clear this bit an Interrupt event may not be generated.

0 - Card State Stable or Debouncing

1 - Card Inserted

Buffer_Read_Ready 5 wtc 0x0

This status is set if the Buffer Read Enable changes from 0 to 1.

0 - Not Ready to read Buffer.

1 - Ready to read Buffer.

Buffer_Write_Ready 4 wtc 0x0

This status is set if the Buffer Write Enable changes from 0 to 1.

0 - Not Ready to Write Buffer.

1 - Ready to Write Buffer.

DMA_Interrupt 3 wtc 0x0

This status is set if the HC detects the Host DMA Buffer Boundary in the Block Size register.

0 - No DMA Interrupt

1 - DMA Interrupt is Generated

Block_Gap_Event 2 wtc 0x0

If the Stop At Block Gap Request in the Block

Gap Control Register is set, this bit is set. Read Transaction:

This bit is set at the falling edge of the DAT Line Active Status (When the transaction is stopped at SD Bus timing. The Read Wait must be supported in order to use this function).

Write Transaction:

This bit is set at the falling edge of Write Transfer Active Status (After getting CRC status at SD Bus timing).

0 - No Block Gap Event

1 - Transaction stopped at Block Gap

Transfer_Complete 1 wtc 0x0

This bit is set when a read / write transaction is completed.

Read Transaction:

This bit is set at the falling edge of Read Transfer Active Status.

There are two cases in which the Interrupt is generated. The first is when a data transfer is completed as specified by data length (After the last data has been read to the Host System). The second is when data has stopped at the block gap and completed the data transfer by setting the Stop At Block Gap Request in the Block Gap Control Register (After valid data has been read to the Host System).

Write Transaction:

This bit is set at the falling edge of the DAT

Line Active Status.

There are two cases in which the Interrupt is generated. The first is when the last data is written to the card as specified by data length and Busy signal is released. The second is when data transfers are stopped at the block gap by setting Stop At Block Gap Request in the Block Gap Control Register and data transfers completed. (After valid data is written to the SD card and the busy signal is released).

  • Transfer Complete has higher priority than Data Timeout Error. If both bits are set to 1, the data transfer can be considered complete

0 - No Data Transfer Complete

1 - Data Transfer Complete

Command_Complete 0 wtc 0x0

This bit is set when get the end bit of the command response (Except Auto CMD12).

  • Command Timeout Error has higher priority than Command Complete. If both are set to 1, it can be considered that the response was not received correctly.

0 - No Command Complete

1 - Command Complete