1 /***************************************************************************
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
10 * Copyright (C) 2002 by Björn Stenberg
12 * This program is free software; you can redistribute it and/or
13 * modify it under the terms of the GNU General Public License
14 * as published by the Free Software Foundation; either version 2
15 * of the License, or (at your option) any later version.
17 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
18 * KIND, either express or implied.
20 ****************************************************************************/
25 #include "mv.h" /* for volume definitions */
28 unsigned long start
; /* first sector (LBA) */
29 unsigned long size
; /* number of sectors */
33 #define PARTITION_TYPE_FAT32 0x0b
34 #define PARTITION_TYPE_FAT32_LBA 0x0c
35 #define PARTITION_TYPE_FAT16 0x06
36 #define PARTITION_TYPE_OS2_HIDDEN_C_DRIVE 0x84
38 /* returns a pointer to an array of 8 partinfo structs */
39 struct partinfo
* disk_init(IF_MD_NONVOID(int drive
));
40 struct partinfo
* disk_partinfo(int partition
);
42 void disk_init_subsystem(void) INIT_ATTR
; /* Initialises mutexes */
43 int disk_mount_all(void); /* returns the # of successful mounts */
44 int disk_mount(int drive
);
45 int disk_unmount_all(void);
46 int disk_unmount(int drive
);
48 /* The number of 512-byte sectors in a "logical" sector. Needed for ipod 5.5G */
49 #ifdef MAX_LOG_SECTOR_SIZE
50 int disk_get_sector_multiplier(IF_MD_NONVOID(int drive
));