summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarcin Bukat <marcin.bukat@gmail.com>2010-05-10 13:24:44 +0000
committerMarcin Bukat <marcin.bukat@gmail.com>2010-05-10 13:24:44 +0000
commitfc330110c9ddacf54014788d9ab6373faf465333 (patch)
tree971ce3b99bf741700b171ed4f6a3854f20f4dd04
parenta62db97b38595235c0016e87f23c7a9b421eb5c0 (diff)
downloadrockbox-fc330110c9ddacf54014788d9ab6373faf465333.zip
rockbox-fc330110c9ddacf54014788d9ab6373faf465333.tar.gz
rockbox-fc330110c9ddacf54014788d9ab6373faf465333.tar.bz2
rockbox-fc330110c9ddacf54014788d9ab6373faf465333.tar.xz
HD200 - Disable asm optimised reads as it showed to be broken. Enable asm optimised writes. test_disk was failing because of broken read routine.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25931 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--firmware/target/coldfire/mpio/ata-as-mpio.S4
-rw-r--r--firmware/target/coldfire/mpio/ata-target.h9
2 files changed, 6 insertions, 7 deletions
diff --git a/firmware/target/coldfire/mpio/ata-as-mpio.S b/firmware/target/coldfire/mpio/ata-as-mpio.S
index 4a6bd3e..2a76072 100644
--- a/firmware/target/coldfire/mpio/ata-as-mpio.S
+++ b/firmware/target/coldfire/mpio/ata-as-mpio.S
@@ -23,6 +23,7 @@
.equ .ata_port, 0x20000020
.equ .swapmask, 0x00FF00FF
+#if 0
.align 2
.global copy_read_sectors
.type copy_read_sectors,@function
@@ -374,12 +375,12 @@ copy_read_sectors:
.r_end:
.size copy_read_sectors,.r_end-copy_read_sectors
+#endif
.align 2
.global copy_write_sectors
.type copy_write_sectors,@function
-#if 0
/* Write a number of words to the ATA data port
*
* Utilises line bursts, assumes there is at least one full line to copy.
@@ -754,4 +755,3 @@ copy_write_sectors:
.w_end:
.size copy_write_sectors,.w_end-copy_write_sectors
-#endif
diff --git a/firmware/target/coldfire/mpio/ata-target.h b/firmware/target/coldfire/mpio/ata-target.h
index 1fa4c5a..32e97ff 100644
--- a/firmware/target/coldfire/mpio/ata-target.h
+++ b/firmware/target/coldfire/mpio/ata-target.h
@@ -21,9 +21,8 @@
#ifndef ATA_TARGET_H
#define ATA_TARGET_H
-/* asm optimised read & write loops - we skip this for now*/
-#define ATA_OPTIMIZED_READING
-//#define ATA_OPTIMIZED_WRITING
+/* #define ATA_OPTIMIZED_READING */
+#define ATA_OPTIMIZED_WRITING
#define SWAP_WORDS
@@ -72,6 +71,6 @@ void ata_enable(bool on);
void ata_device_init(void);
bool ata_is_coldstart(void);
-void copy_read_sectors(unsigned char* buf, int wordcount);
-//void copy_write_sectors(const unsigned char* buf, int wordcount);
+/* void copy_read_sectors(unsigned char* buf, int wordcount); */
+void copy_write_sectors(const unsigned char* buf, int wordcount);
#endif