summaryrefslogtreecommitdiffstats
path: root/firmware/target/coldfire/ata-target.h
diff options
context:
space:
mode:
authorMichael Sparmann <theseven@rockbox.org>2011-01-02 22:51:47 +0000
committerMichael Sparmann <theseven@rockbox.org>2011-01-02 22:51:47 +0000
commit9339be1279eb2b64a268e3a7a039ef8031dae4b3 (patch)
tree651a91b8fa884630fd1cb5684fbc5787136ac98e /firmware/target/coldfire/ata-target.h
parent0ce42df073468ab3b9f714350f8a745ea178f020 (diff)
downloadrockbox-9339be1279eb2b64a268e3a7a039ef8031dae4b3.tar.gz
rockbox-9339be1279eb2b64a268e3a7a039ef8031dae4b3.zip
Rework ATA driver to get rid of lots of target-specific constants and allow for non-memory-mapped task file registers.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28950 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/target/coldfire/ata-target.h')
-rw-r--r--firmware/target/coldfire/ata-target.h30
1 files changed, 4 insertions, 26 deletions
diff --git a/firmware/target/coldfire/ata-target.h b/firmware/target/coldfire/ata-target.h
index 3f462b9471..1a223e1eae 100644
--- a/firmware/target/coldfire/ata-target.h
+++ b/firmware/target/coldfire/ata-target.h
@@ -37,32 +37,10 @@
#define ATA_SELECT (*((volatile unsigned short*)(ATA_IOBASE + 0x2c)))
#define ATA_COMMAND (*((volatile unsigned short*)(ATA_IOBASE + 0x2e)))
-#define STATUS_BSY 0x8000
-#define STATUS_RDY 0x4000
-#define STATUS_DF 0x2000
-#define STATUS_DRQ 0x0800
-#define STATUS_ERR 0x0100
-
-#define ERROR_ABRT 0x0400
-#define ERROR_IDNF 0x1000
-
-#define WRITE_PATTERN1 0xa5
-#define WRITE_PATTERN2 0x5a
-#define WRITE_PATTERN3 0xaa
-#define WRITE_PATTERN4 0x55
-
-#define READ_PATTERN1 0xa500
-#define READ_PATTERN2 0x5a00
-#define READ_PATTERN3 0xaa00
-#define READ_PATTERN4 0x5500
-
-#define READ_PATTERN1_MASK 0xff00
-#define READ_PATTERN2_MASK 0xff00
-#define READ_PATTERN3_MASK 0xff00
-#define READ_PATTERN4_MASK 0xff00
-
-#define SET_REG(reg,val) reg = ((val) << 8)
-#define SET_16BITREG(reg,val) reg = (val)
+#define ATA_OUT8(reg,val) reg = ((val) << 8)
+#define ATA_OUT16(reg,val) reg = swap16(val)
+#define ATA_IN8(reg) ((reg) >> 8)
+#define ATA_IN16(reg) (swap16(reg))
void ata_reset(void);
void ata_enable(bool on);