summaryrefslogtreecommitdiff
path: root/firmware/export/ata.h
diff options
context:
space:
mode:
authorJörg Hohensohn <hohensoh@rockbox.org>2004-12-28 22:16:07 +0000
committerJörg Hohensohn <hohensoh@rockbox.org>2004-12-28 22:16:07 +0000
commitda848576312800dc229624e928d132d0702c1854 (patch)
tree38cd01b8a9c1069a1de734e0f7eb478436715573 /firmware/export/ata.h
parentae45d970d874217b779071b414dcd5edbf5647da (diff)
downloadrockbox-da848576312800dc229624e928d132d0702c1854.tar.gz
rockbox-da848576312800dc229624e928d132d0702c1854.zip
prepared to mount multiple partitions into one logical file system (most useful for Ondio, internal memory + external MMC)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5514 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/export/ata.h')
-rw-r--r--firmware/export/ata.h19
1 files changed, 17 insertions, 2 deletions
diff --git a/firmware/export/ata.h b/firmware/export/ata.h
index 06de33a8f2..fb604a120d 100644
--- a/firmware/export/ata.h
+++ b/firmware/export/ata.h
@@ -20,6 +20,21 @@
20#define __ATA_H__ 20#define __ATA_H__
21 21
22#include <stdbool.h> 22#include <stdbool.h>
23#include "config.h" /* for HAVE_MULTIVOLUME or not */
24
25/* FixMe: These macros are a bit nasty and perhaps misplaced here.
26 We'll get rid of them once decided on how to proceed with multivolume. */
27#ifdef HAVE_MULTIVOLUME
28#define IF_MV(x) x /* optional volume/drive parameter */
29#define IF_MV2(x,y) x,y /* same, for a list of arguments */
30#define IF_MV_NONVOID(x) x /* for prototype with sole volume parameter */
31#define NUM_VOLUMES 2
32#else /* empty definitions if no multi-volume */
33#define IF_MV(x)
34#define IF_MV2(x,y)
35#define IF_MV_NONVOID(x) void
36#define NUM_VOLUMES 1
37#endif
23 38
24/* 39/*
25 ata_spindown() time values: 40 ata_spindown() time values:
@@ -41,8 +56,8 @@ extern bool ata_disk_is_active(void);
41extern int ata_hard_reset(void); 56extern int ata_hard_reset(void);
42extern int ata_soft_reset(void); 57extern int ata_soft_reset(void);
43extern int ata_init(void); 58extern int ata_init(void);
44extern int ata_read_sectors(unsigned long start, int count, void* buf); 59extern int ata_read_sectors(IF_MV2(int drive,) unsigned long start, int count, void* buf);
45extern int ata_write_sectors(unsigned long start, int count, const void* buf); 60extern int ata_write_sectors(IF_MV2(int drive,) unsigned long start, int count, const void* buf);
46extern void ata_delayed_write(unsigned long sector, const void* buf); 61extern void ata_delayed_write(unsigned long sector, const void* buf);
47extern void ata_flush(void); 62extern void ata_flush(void);
48extern void ata_spin(void); 63extern void ata_spin(void);