diff options
author | Michael Sparmann <theseven@rockbox.org> | 2011-01-02 22:51:47 +0000 |
---|---|---|
committer | Michael Sparmann <theseven@rockbox.org> | 2011-01-02 22:51:47 +0000 |
commit | 9339be1279eb2b64a268e3a7a039ef8031dae4b3 (patch) | |
tree | 651a91b8fa884630fd1cb5684fbc5787136ac98e /firmware/target/coldfire | |
parent | 0ce42df073468ab3b9f714350f8a745ea178f020 (diff) | |
download | rockbox-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')
-rw-r--r-- | firmware/target/coldfire/ata-target.h | 30 | ||||
-rw-r--r-- | firmware/target/coldfire/mpio/ata-target.h | 28 |
2 files changed, 4 insertions, 54 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 @@ | |||
37 | #define ATA_SELECT (*((volatile unsigned short*)(ATA_IOBASE + 0x2c))) | 37 | #define ATA_SELECT (*((volatile unsigned short*)(ATA_IOBASE + 0x2c))) |
38 | #define ATA_COMMAND (*((volatile unsigned short*)(ATA_IOBASE + 0x2e))) | 38 | #define ATA_COMMAND (*((volatile unsigned short*)(ATA_IOBASE + 0x2e))) |
39 | 39 | ||
40 | #define STATUS_BSY 0x8000 | 40 | #define ATA_OUT8(reg,val) reg = ((val) << 8) |
41 | #define STATUS_RDY 0x4000 | 41 | #define ATA_OUT16(reg,val) reg = swap16(val) |
42 | #define STATUS_DF 0x2000 | 42 | #define ATA_IN8(reg) ((reg) >> 8) |
43 | #define STATUS_DRQ 0x0800 | 43 | #define ATA_IN16(reg) (swap16(reg)) |
44 | #define STATUS_ERR 0x0100 | ||
45 | |||
46 | #define ERROR_ABRT 0x0400 | ||
47 | #define ERROR_IDNF 0x1000 | ||
48 | |||
49 | #define WRITE_PATTERN1 0xa5 | ||
50 | #define WRITE_PATTERN2 0x5a | ||
51 | #define WRITE_PATTERN3 0xaa | ||
52 | #define WRITE_PATTERN4 0x55 | ||
53 | |||
54 | #define READ_PATTERN1 0xa500 | ||
55 | #define READ_PATTERN2 0x5a00 | ||
56 | #define READ_PATTERN3 0xaa00 | ||
57 | #define READ_PATTERN4 0x5500 | ||
58 | |||
59 | #define READ_PATTERN1_MASK 0xff00 | ||
60 | #define READ_PATTERN2_MASK 0xff00 | ||
61 | #define READ_PATTERN3_MASK 0xff00 | ||
62 | #define READ_PATTERN4_MASK 0xff00 | ||
63 | |||
64 | #define SET_REG(reg,val) reg = ((val) << 8) | ||
65 | #define SET_16BITREG(reg,val) reg = (val) | ||
66 | 44 | ||
67 | void ata_reset(void); | 45 | void ata_reset(void); |
68 | void ata_enable(bool on); | 46 | void ata_enable(bool on); |
diff --git a/firmware/target/coldfire/mpio/ata-target.h b/firmware/target/coldfire/mpio/ata-target.h index 1672d7ef86..b2c8f15417 100644 --- a/firmware/target/coldfire/mpio/ata-target.h +++ b/firmware/target/coldfire/mpio/ata-target.h | |||
@@ -36,34 +36,6 @@ | |||
36 | #define ATA_SELECT (*((volatile unsigned short*)(ATA_IOBASE + 0x2c))) | 36 | #define ATA_SELECT (*((volatile unsigned short*)(ATA_IOBASE + 0x2c))) |
37 | #define ATA_COMMAND (*((volatile unsigned short*)(ATA_IOBASE + 0x2e))) | 37 | #define ATA_COMMAND (*((volatile unsigned short*)(ATA_IOBASE + 0x2e))) |
38 | 38 | ||
39 | |||
40 | #define STATUS_BSY 0x80 | ||
41 | #define STATUS_RDY 0x40 | ||
42 | #define STATUS_DF 0x20 | ||
43 | #define STATUS_DRQ 0x08 | ||
44 | #define STATUS_ERR 0x01 | ||
45 | |||
46 | #define ERROR_ABRT 0x04 | ||
47 | #define ERROR_IDNF 0x10 | ||
48 | |||
49 | #define WRITE_PATTERN1 0xa5 | ||
50 | #define WRITE_PATTERN2 0x5a | ||
51 | #define WRITE_PATTERN3 0xaa | ||
52 | #define WRITE_PATTERN4 0x55 | ||
53 | |||
54 | #define READ_PATTERN1 0xa5 | ||
55 | #define READ_PATTERN2 0x5a | ||
56 | #define READ_PATTERN3 0xaa | ||
57 | #define READ_PATTERN4 0x55 | ||
58 | |||
59 | #define READ_PATTERN1_MASK 0xff | ||
60 | #define READ_PATTERN2_MASK 0xff | ||
61 | #define READ_PATTERN3_MASK 0xff | ||
62 | #define READ_PATTERN4_MASK 0xff | ||
63 | |||
64 | #define SET_REG(reg,val) reg = (val) | ||
65 | #define SET_16BITREG(reg,val) reg = (val) | ||
66 | |||
67 | void ata_reset(void); | 39 | void ata_reset(void); |
68 | void ata_enable(bool on); | 40 | void ata_enable(bool on); |
69 | void ata_device_init(void); | 41 | void ata_device_init(void); |