Permalink
Browse files

FAT: Find the start of the first partition in a non-hardcoded way

  • Loading branch information...
1 parent ee120c8 commit f24393836812798cac755eeaeae37112d709b09d @lwalkera lwalkera committed with sakoman Apr 13, 2010
Showing with 5 additions and 7 deletions.
  1. +5 −7 fs/fat/fat.c
View
@@ -145,13 +145,11 @@ fat_register_device(block_dev_desc_t *dev_desc, int part_no)
return -1;
}
#else
- /* FIXME we need to determine the start block of the
- * partition where the DOS FS resides. This can be done
- * by using the get_partition_info routine. For this
- * purpose the libpart must be included.
- */
- part_offset=63;
- //part_offset=0;
+ part_offset = buffer[DOS_PART_TBL_OFFSET+8] |
+ buffer[DOS_PART_TBL_OFFSET+9] <<8 |
+ buffer[DOS_PART_TBL_OFFSET+10]<<16 |
+ buffer[DOS_PART_TBL_OFFSET+11]<<24;
+
cur_part = 1;
#endif
}

0 comments on commit f243938

Please sign in to comment.