I'm porting the MQX 4.2 ESDHC driver on the i.MX6Solox and I'm having problems with the ADMA2.
The SDHC card is inserted and correctly initialized.
When a try to read a block of 512 bytes, I initialize the ADMA descriptor with the following:
Low 32-bits: 0x0200 0023 (transfer 512 bytes, transfer data, End bit and Valid bit set)
High 32-bits: 0x1FFF AA08 (destination address in system memory (TCML))
I get an ADMA2 error:
ADMA error status register = 0x00000009, according to the Reference Manual, it means the valid bit in the ADMA descriptor is cleared (which is not!).
The DMA is enabled (DMAEN bit set in register MIX_CTRL).
ADMA2 operation is selected (DMASEL=0x2 in register PROT_CTRL).
Does anyone can help me to solve this problem?