[coreboot] r79 - trunk/filo/fs

svn at coreboot.org svn at coreboot.org
Sun Oct 5 20:00:55 CEST 2008


Author: oxygene
Date: 2008-10-05 20:00:55 +0200 (Sun, 05 Oct 2008)
New Revision: 79

Modified:
   trunk/filo/fs/fat.h
   trunk/filo/fs/fsys_fat.c
Log:
FAT32 didn't work because of a minor bug in the data structure (it was
misaligned, to the type string field couldn't be found)
Also document a sanity check that confused me all the time.

Modified: trunk/filo/fs/fat.h
===================================================================
--- trunk/filo/fs/fat.h	2008-10-05 18:00:00 UTC (rev 78)
+++ trunk/filo/fs/fat.h	2008-10-05 18:00:55 UTC (rev 79)
@@ -49,7 +49,7 @@
 	__u32	root_cluster;	/* first cluster in root directory */
 	__u16	info_sector;	/* filesystem info sector */
 	__u16	backup_boot;	/* backup boot sector */
-	__u16	reserved2[12];	/* Reserved */
+	__u8	reserved2[12];	/* Reserved */
 	/* from here on it looks like the fat12/fat16 code */
 	__u8    drive_number;	/* Physical Drive Number */
 	__u8    reserved;	/* "current head" */

Modified: trunk/filo/fs/fsys_fat.c
===================================================================
--- trunk/filo/fs/fsys_fat.c	2008-10-05 18:00:00 UTC (rev 78)
+++ trunk/filo/fs/fsys_fat.c	2008-10-05 18:00:55 UTC (rev 79)
@@ -110,6 +110,8 @@
   if (!bpb.fat_length)
     {
       /* This is a FAT32 */
+
+      /* FAT32 should have 0 in this field, as its root directory can grow dynamically now */
       if (FAT_CVT_U16(bpb.dir_entries))
  	return 0;
       





More information about the coreboot mailing list