Explorar el Código

Merge pull request #17 from tsandmann/bugfixes/dma_alignment

check alignment for DMA buffers
main
Paul Stoffregen hace 5 años
padre
commit
0fe064fab9
Ninguna cuenta vinculada a la dirección de correo electrónico del committer
Se han modificado 1 ficheros con 8 adiciones y 0 borrados
  1. +8
    -0
      utility/NXP_SDHC.cpp

+ 8
- 0
utility/NXP_SDHC.cpp Ver fichero

@@ -581,6 +581,10 @@ int SDHC_CardReadBlock(void * buff, uint32_t sector)
{
int result=0;
uint32_t* pData = (uint32_t*)buff;
/* check alignment for DMA */
if (reinterpret_cast<uintptr_t>(static_cast<const void*>(buff)) % 4) {
return -1;
}
// Serial.print("Sector: "); Serial.println(sector); Serial.flush();
// Check if this is ready
if (sdCardDesc.status != 0) return SDHC_RESULT_NOT_READY;
@@ -640,6 +644,10 @@ int SDHC_CardWriteBlock(const void * buff, uint32_t sector)
{
int result=0;
const uint32_t *pData = (const uint32_t *)buff;
/* check alignment for DMA */
if (reinterpret_cast<uintptr_t>(static_cast<const void*>(buff)) % 4) {
return -1;
}

// Check if this is ready
if (sdCardDesc.status != 0) return SDHC_RESULT_NOT_READY;

Cargando…
Cancelar
Guardar