summaryrefslogtreecommitdiff
path: root/firmware/target/arm/as3525/ata_sd_as3525.c
diff options
context:
space:
mode:
Diffstat (limited to 'firmware/target/arm/as3525/ata_sd_as3525.c')
-rw-r--r--firmware/target/arm/as3525/ata_sd_as3525.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/firmware/target/arm/as3525/ata_sd_as3525.c b/firmware/target/arm/as3525/ata_sd_as3525.c
index cb1666c029..b2d8e3c1f3 100644
--- a/firmware/target/arm/as3525/ata_sd_as3525.c
+++ b/firmware/target/arm/as3525/ata_sd_as3525.c
@@ -35,6 +35,7 @@
35#include "pl180.h" /* SD controller */ 35#include "pl180.h" /* SD controller */
36#include "pl081.h" /* DMA controller */ 36#include "pl081.h" /* DMA controller */
37#include "dma-target.h" /* DMA request lines */ 37#include "dma-target.h" /* DMA request lines */
38#include "clock-target.h"
38#include "panic.h" 39#include "panic.h"
39#include "stdbool.h" 40#include "stdbool.h"
40#include "ata_idle_notify.h" 41#include "ata_idle_notify.h"
@@ -375,7 +376,9 @@ static void init_pl180_controller(const int drive)
375 MCI_CLOCK(drive) &= ~MCI_CLOCK_POWERSAVE; 376 MCI_CLOCK(drive) &= ~MCI_CLOCK_POWERSAVE;
376 377
377 /* set MCLK divider */ 378 /* set MCLK divider */
378 mci_set_clock_divider(drive, 200); 379 mci_set_clock_divider(drive,
380 CLK_DIV(AS3525_PCLK_FREQ, AS3525_SD_IDENT_FREQ));
381
379} 382}
380 383
381int sd_init(void) 384int sd_init(void)
@@ -384,7 +387,7 @@ int sd_init(void)
384 387
385 CGU_IDE = (1<<7) /* AHB interface enable */ | 388 CGU_IDE = (1<<7) /* AHB interface enable */ |
386 (1<<6) /* interface enable */ | 389 (1<<6) /* interface enable */ |
387 (2<<2) /* clock didiver = 2+1 */ | 390 ((CLK_DIV(AS3525_PLLA_FREQ, AS3525_IDE_FREQ) - 1) << 2) |
388 1 /* clock source = PLLA */; 391 1 /* clock source = PLLA */;
389 392
390 CGU_PERI |= CGU_NAF_CLOCK_ENABLE; 393 CGU_PERI |= CGU_NAF_CLOCK_ENABLE;