From: Wolfgang Denk Date: Mon, 14 Aug 2006 20:05:26 +0000 (+0200) Subject: Fix fatload command on FAT32 formatted partitions. X-Git-Tag: U-Boot-1_1_5~57^2~3 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=80f0c0f58f6a39f893101d14a79169504e3c93fd;p=oweals%2Fu-boot.git Fix fatload command on FAT32 formatted partitions. Patch by Joachim Jaeger, 18 Nov 2005 --- diff --git a/CHANGELOG b/CHANGELOG index 2247a24af4..6c8043ff7c 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -2,6 +2,9 @@ Changes since U-Boot 1.1.4: ====================================================================== +* Fix fatload command on FAT32 formatted partitions. + Patch by Joachim Jaeger, 18 Nov 2005 + * Fix drivers/dm9000.c when configured in 32 bit mode. Patch by Eric Benard, 17 Nov 2005 diff --git a/include/fat.h b/include/fat.h index 0645458f17..92638d535e 100644 --- a/include/fat.h +++ b/include/fat.h @@ -175,15 +175,19 @@ typedef struct dir_slot { __u8 name11_12[4]; /* Last 2 characters in name */ } dir_slot; -/* Private filesystem parameters */ +/* Private filesystem parameters + * + * Note: FAT buffer has to be 32 bit aligned + * (see FAT32 accesses) + */ typedef struct { + __u8 fatbuf[FATBUFSIZE]; /* Current FAT buffer */ int fatsize; /* Size of FAT in bits */ __u16 fatlength; /* Length of FAT in sectors */ __u16 fat_sect; /* Starting sector of the FAT */ __u16 rootdir_sect; /* Start sector of root directory */ __u16 clust_size; /* Size of clusters in sectors */ short data_begin; /* The sector of the first cluster, can be negative */ - __u8 fatbuf[FATBUFSIZE]; /* Current FAT buffer */ int fatbufnum; /* Used by get_fatent, init to -1 */ } fsdata;