The driver set 'mmcp->block_addresses' to TRUE and never reset it. So if I insert regular SD card after SDHC it is not working properly!
Code: Select all
file: ..\mmc_spi.c
...
489 /* Check if CCS is set in response. Card operates in block mode if set.*/
490 if (r3[0] & 0x40)
491 mmcp->block_addresses = TRUE;
...
I propose to insert reset code in start of mmcConnect() like this:
Code: Select all
449 /* Connection procedure in progress.*/
450 mmcp->state = BLK_CONNECTING;
451 mmcp->block_addresses = FALSE;