Index: packages/fs/fat/current/ChangeLog
===================================================================
RCS file: /cvs/ecos/ecos/packages/fs/fat/current/ChangeLog,v
retrieving revision 1.12
diff -u -r1.12 ChangeLog
--- packages/fs/fat/current/ChangeLog	3 Aug 2005 20:40:48 -0000	1.12
+++ packages/fs/fat/current/ChangeLog	18 May 2006 13:32:54 -0000
@@ -1,3 +1,9 @@
+2006-05-18  Paul Fine  <pfine@dtccom.com>
+
+	* src/fats.c: Added functionality to the fatfs_getinfo() function
+	to return disk usage information about the filesystem, making this
+	information accessible through the cyg_fs_getinfo() interface.
+
 2005-07-30  Andrew Lunn  <andrew.lunn@ascom.ch>
 
 	* src/fatfs_supp.c: Correct types to remove compiler warnings.
Index: packages/fs/fat/current/src/fatfs.c
===================================================================
RCS file: /cvs/ecos/ecos/packages/fs/fat/current/src/fatfs.c,v
retrieving revision 1.4
diff -u -r1.4 fatfs.c
--- packages/fs/fat/current/src/fatfs.c	11 Nov 2004 19:33:30 -0000	1.4
+++ packages/fs/fat/current/src/fatfs.c	18 May 2006 13:32:54 -0000
@@ -1109,6 +1109,21 @@
             err = fatfs_get_attrib(mte, dir, name, (cyg_fs_attrib_t*)buf);
             break;
 #endif // CYGCFG_FS_FAT_USE_ATTRIBUTES
+        case FS_INFO_DISK_USAGE:
+          {
+            fatfs_disk_t  *disk   = (fatfs_disk_t *) mte->data;
+
+            struct cyg_fs_disk_usage *du = (struct cyg_fs_disk_usage *) buf;
+            
+            err = fatfs_get_disk_usage(disk, 
+                                       &(du->total_clusters), 
+                                       &(du->free_clusters));
+            du->cluster_size = disk->cluster_size;
+            if(err)
+              return err;
+
+            break;
+          }
         default:
             err = EINVAL;
             break;
Index: packages/io/fileio/current/ChangeLog
===================================================================
RCS file: /cvs/ecos/ecos/packages/io/fileio/current/ChangeLog,v
retrieving revision 1.63
diff -u -r1.63 ChangeLog
--- packages/io/fileio/current/ChangeLog	17 May 2006 16:11:43 -0000	1.63
+++ packages/io/fileio/current/ChangeLog	18 May 2006 13:18:10 -0000
@@ -1,3 +1,9 @@
+2006-05-18  Paul Fine  <pfine@dtccom.com>
+
+	* include/fileio.h : Added a key and a structure to extract the
+	disk size and the available free space for a filesystem using
+	the cyg_fs_getinfo() interface.
+
 2006-05-17  Andy Jackson <andy@grapevinetech.co.uk>
 	
 	* tests/fileio1.c: Compiler warning fixes.
Index: packages/io/fileio/current/include/fileio.h
===================================================================
RCS file: /cvs/ecos/ecos/packages/io/fileio/current/include/fileio.h,v
retrieving revision 1.14
diff -u -r1.14 fileio.h
--- packages/io/fileio/current/include/fileio.h	25 Feb 2005 20:36:52 -0000	1.14
+++ packages/io/fileio/current/include/fileio.h	18 May 2006 13:18:12 -0000
@@ -159,6 +159,7 @@
 #define FS_INFO_GETCWD          3       /* getcwd() */
 #define FS_INFO_SYNC            4       /* cyg_fs_fssync() */
 #define FS_INFO_ATTRIB          5       /* cyg_fs_(get|set)_attrib() */
+#define FS_INFO_DISK_USAGE      6       /* fatfs_get_disk_usage()    */
 
 //-----------------------------------------------------------------------------
 // Types for link()
@@ -175,6 +176,12 @@
     size_t      size;           /* size of buffer */
 };
 
+struct cyg_fs_disk_usage{
+  cyg_uint32 total_clusters;
+  cyg_uint32 free_clusters;
+  cyg_uint32 cluster_size;
+};
+
 typedef cyg_uint32 cyg_fs_attrib_t;
 
 //-----------------------------------------------------------------------------
