diff options
Diffstat (limited to 'avr/mmc.c')
-rw-r--r-- | avr/mmc.c | 31 |
1 files changed, 15 insertions, 16 deletions
@@ -29,9 +29,9 @@ #define SD_CS_0_IN SBIT(PINB,0) #define SD_CS_0_DDR SBIT(DDRB,0) -#define SD_CD_1 SBIT(PORTG,3) /* Card detect switch */ -#define SD_CD_1_IN SBIT(PING,3) -#define SD_CD_1_DDR SBIT(DDRG,3) +//#define SD_CD_1 SBIT(PORTG,3) /* Card detect switch */ +//#define SD_CD_1_IN SBIT(PING,3) +//#define SD_CD_1_DDR SBIT(DDRG,3) //#define SD_WP_1 SBIT(PORTG,5) /* Write protect switch */ #define SD_WP_1_IN SBIT(PING,5) @@ -112,7 +112,7 @@ int wait_ready (void) /* 1:OK, 0:Timeout */ static void deselect(BYTE drv) { - debug("*** enter deselect()\n"); + //debug("*** enter deselect()\n"); if (drv == 0) SD_CS_0 = 1; else { @@ -137,7 +137,7 @@ void deselect(BYTE drv) SD_CS_1 = 0; #endif } - debug("*** exit deselect()\n"); + //debug("*** exit deselect()\n"); } /*-----------------------------------------------------------------------*/ @@ -147,7 +147,7 @@ void deselect(BYTE drv) static int select(BYTE drv) /* 1:Successful, 0:Timeout */ { - debug("*** enter select()\n"); + //debug("*** enter select()\n"); if (drv == 0) SD_CS_0 = 0; else { @@ -167,11 +167,11 @@ int select(BYTE drv) /* 1:Successful, 0:Timeout */ spi_rcvr(); if (wait_ready()) { - debug("*** exit select() == 1\n"); + //debug("*** exit select() == 1\n"); return 1; /* OK */ } deselect(drv); - debug("*** exit select() == 0\n"); + //debug("*** exit select() == 0\n"); return 0; /* Timeout */ } @@ -185,7 +185,7 @@ int select(BYTE drv) /* 1:Successful, 0:Timeout */ static void power_on(BYTE drv) { - debug("*** enter power_on()\n"); + //debug("*** enter power_on()\n"); if (drv == 0) { #ifdef SD_PWR_0 @@ -233,13 +233,13 @@ void power_on(BYTE drv) #endif } - debug("*** exit power_on()\n"); + //debug("*** exit power_on()\n"); } static void power_off(BYTE drv) { - debug("*** enter power_off()\n"); + //debug("*** enter power_off()\n"); select(drv); /* Wait for card ready */ deselect(drv); @@ -253,7 +253,7 @@ void power_off(BYTE drv) #endif } socket[drv].stat |= STA_NOINIT; - debug("*** exit power_off()\n"); + //debug("*** exit power_off()\n"); } #if 0 @@ -362,7 +362,7 @@ BYTE send_cmd ( /* Returns R1 resp (bit7==1:Send failed) */ } argtmp; BYTE n, res; - debug("*** send_cmd( %.2x )\n", cmd); + //debug("*** send_cmd( %.2x )\n", cmd); if (cmd & 0x80) { /* ACMD<n> is the command sequense of CMD55-CMD<n> */ cmd &= 0x7F; @@ -474,7 +474,8 @@ DSTATUS disk_initialize ( deselect(drv); if (ty) { /* Initialization succeded */ - socket[drv].stat &= ~STA_NOINIT; /* Clear STA_NOINIT */ + /* Clear STA_NOINIT */ + socket[drv].stat = (socket[drv].stat & ~STA_NOINIT) | STA_FAST; } else { /* Initialization failed */ power_off(drv); } @@ -516,7 +517,6 @@ DRESULT disk_read ( /* Convert to byte address if needed */ if (!(socket[drv].CardType & CT_BLOCK)) sector *= 512; - socket[drv].stat |= STA_FAST; /* READ_MULTIPLE_BLOCK : READ_SINGLE_BLOCK */ cmd = count > 1 ? CMD18 : CMD17; @@ -556,7 +556,6 @@ DRESULT disk_write ( /* Convert to byte address if needed */ if (!(socket[drv].CardType & CT_BLOCK)) sector *= 512; - socket[drv].stat |= STA_FAST; if (count == 1) { /* Single block write */ |