diff options
| author | Björn Stenberg <bjorn@haxx.se> | 2002-07-15 15:06:45 +0000 |
|---|---|---|
| committer | Björn Stenberg <bjorn@haxx.se> | 2002-07-15 15:06:45 +0000 |
| commit | de943a5bd16746efb8feaa92cce266f80994747c (patch) | |
| tree | 5132dac62f8410b81e82e88f4cbf68c69510036b | |
| parent | f27cf011f78511a160ca3085929ea1c572198273 (diff) | |
| download | rockbox-de943a5bd16746efb8feaa92cce266f80994747c.zip rockbox-de943a5bd16746efb8feaa92cce266f80994747c.tar.gz rockbox-de943a5bd16746efb8feaa92cce266f80994747c.tar.bz2 rockbox-de943a5bd16746efb8feaa92cce266f80994747c.tar.xz | |
Added searching for FAT32 partition
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@1351 a1c6a512-1295-4272-9138-f99709370657
| -rw-r--r-- | apps/main.c | 17 | ||||
| -rw-r--r-- | firmware/common/disk.h | 2 |
2 files changed, 14 insertions, 5 deletions
diff --git a/apps/main.c b/apps/main.c index 2062efa..36a3f4e 100644 --- a/apps/main.c +++ b/apps/main.c @@ -76,7 +76,7 @@ extern int poolend[]; void init(void) { - int rc; + int rc, i; struct partinfo* pinfo; system_init(); @@ -124,10 +124,17 @@ void init(void) pinfo = disk_init(); if (!pinfo) panicf("disk: NULL"); - - rc = fat_mount(pinfo[0].start); - if(rc) - panicf("mount: %d",rc); + + for ( i=0; i<4; i++ ) { + if ( pinfo[i].type == PARTITION_TYPE_FAT32 ) { + rc = fat_mount(pinfo[i].start); + if(rc) + panicf("mount: %d",rc); + } + } + if ( i==4 ) { + panicf("No FAT32 partition!"); + } settings_load(); global_settings.total_boots++; diff --git a/firmware/common/disk.h b/firmware/common/disk.h index 8a78386..d8e1bc5 100644 --- a/firmware/common/disk.h +++ b/firmware/common/disk.h @@ -25,6 +25,8 @@ struct partinfo { unsigned char type; }; +#define PARTITION_TYPE_FAT32 0x0c + /* returns a pointer to an array of 8 partinfo structs */ struct partinfo* disk_init(void); |