diff options
Diffstat (limited to 'firmware/target')
-rw-r--r-- | firmware/target/arm/pp/ata-pp5020.c | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/firmware/target/arm/pp/ata-pp5020.c b/firmware/target/arm/pp/ata-pp5020.c index f247a44171..396e684019 100644 --- a/firmware/target/arm/pp/ata-pp5020.c +++ b/firmware/target/arm/pp/ata-pp5020.c | |||
@@ -48,8 +48,8 @@ bool ata_is_coldstart() | |||
48 | rest are the same. They go in IDE0_PRI_TIMING0. | 48 | rest are the same. They go in IDE0_PRI_TIMING0. |
49 | 49 | ||
50 | Rockbox used to use 0x10, and test_disk shows that leads to faster PIO. | 50 | Rockbox used to use 0x10, and test_disk shows that leads to faster PIO. |
51 | However on some disks connected with mSATA adapters this causes corrupt data | 51 | However when used with mSATA and some SD adapters this causes corrupt data |
52 | so we now just use these timings from the OF. | 52 | so we now unconditionally use these timings from the OF. |
53 | */ | 53 | */ |
54 | static const unsigned long pio80mhz[] = { | 54 | static const unsigned long pio80mhz[] = { |
55 | 0xC293, 0x43A2, 0x11A1, 0x7232, 0x3131 | 55 | 0xC293, 0x43A2, 0x11A1, 0x7232, 0x3131 |
@@ -83,10 +83,7 @@ void ata_device_init() | |||
83 | /* Setup the timing for PIO mode */ | 83 | /* Setup the timing for PIO mode */ |
84 | void ata_set_pio_timings(int mode) | 84 | void ata_set_pio_timings(int mode) |
85 | { | 85 | { |
86 | if (ata_disk_isssd()) | 86 | IDE0_PRI_TIMING0 = pio80mhz[mode]; |
87 | IDE0_PRI_TIMING0 = pio80mhz[mode]; | ||
88 | else | ||
89 | IDE0_PRI_TIMING0 = 0x10; | ||
90 | } | 87 | } |
91 | 88 | ||
92 | #ifdef HAVE_ATA_DMA | 89 | #ifdef HAVE_ATA_DMA |