diff options
Diffstat (limited to 'firmware/target/arm/as3525/sd-as3525v2.c')
-rw-r--r-- | firmware/target/arm/as3525/sd-as3525v2.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/firmware/target/arm/as3525/sd-as3525v2.c b/firmware/target/arm/as3525/sd-as3525v2.c index 47cc690971..035dac7490 100644 --- a/firmware/target/arm/as3525/sd-as3525v2.c +++ b/firmware/target/arm/as3525/sd-as3525v2.c | |||
@@ -157,7 +157,10 @@ static void printf(const char *format, ...) | |||
157 | #define MCI_CLKSRC SD_REG(0x0C) /* clock source */ | 157 | #define MCI_CLKSRC SD_REG(0x0C) /* clock source */ |
158 | #define MCI_CLKENA SD_REG(0x10) /* clock enable */ | 158 | #define MCI_CLKENA SD_REG(0x10) /* clock enable */ |
159 | #define MCI_TMOUT SD_REG(0x14) /* timeout */ | 159 | #define MCI_TMOUT SD_REG(0x14) /* timeout */ |
160 | |||
160 | #define MCI_CTYPE SD_REG(0x18) /* card type */ | 161 | #define MCI_CTYPE SD_REG(0x18) /* card type */ |
162 | /* 1 bit per card, set = wide bus */ | ||
163 | |||
161 | #define MCI_BLKSIZ SD_REG(0x1C) /* block size */ | 164 | #define MCI_BLKSIZ SD_REG(0x1C) /* block size */ |
162 | #define MCI_BYTCNT SD_REG(0x20) /* byte count */ | 165 | #define MCI_BYTCNT SD_REG(0x20) /* byte count */ |
163 | #define MCI_MASK SD_REG(0x24) /* interrupt mask */ | 166 | #define MCI_MASK SD_REG(0x24) /* interrupt mask */ |
@@ -423,8 +426,7 @@ static int sd_init_card(void) | |||
423 | if(!send_cmd(SD_SET_BUS_WIDTH, card_info.rca | 2, MCI_NO_RESP, NULL)) | 426 | if(!send_cmd(SD_SET_BUS_WIDTH, card_info.rca | 2, MCI_NO_RESP, NULL)) |
424 | return -11; | 427 | return -11; |
425 | 428 | ||
426 | MCI_CTYPE &= ~(0x10001); | 429 | MCI_CTYPE = (1<<0); /* Bus width = 4 */ |
427 | MCI_CTYPE |= 0x1; | ||
428 | 430 | ||
429 | if(!send_cmd(SD_SELECT_CARD, card_info.rca, MCI_NO_RESP, NULL)) | 431 | if(!send_cmd(SD_SELECT_CARD, card_info.rca, MCI_NO_RESP, NULL)) |
430 | return -9; | 432 | return -9; |
@@ -503,6 +505,8 @@ static void init_controller(void) | |||
503 | MCI_CTRL |= INT_ENABLE; | 505 | MCI_CTRL |= INT_ENABLE; |
504 | MCI_TMOUT = 0xffffffff; | 506 | MCI_TMOUT = 0xffffffff; |
505 | 507 | ||
508 | MCI_CTYPE = 0; | ||
509 | |||
506 | MCI_CLKENA = (1<<shift) - 1; | 510 | MCI_CLKENA = (1<<shift) - 1; |
507 | 511 | ||
508 | MCI_ARGUMENT = 0; | 512 | MCI_ARGUMENT = 0; |