Add remount and forced unmount to yaffs direct
[yaffs2.git] / direct / yaffsfs.h
index fe4eff5304fe84ce9fe2642116f1a1f110897ed0..b53c9aece76dc251c5c9d6e95abe52f187dd27d9 100644 (file)
@@ -39,7 +39,7 @@
 #ifdef CONFIG_YAFFSFS_PROVIDE_VALUES
 
 #ifndef O_RDONLY
-#define O_RDONLY       00
+#define O_RDONLY        00
 #endif
 
 #ifndef O_WRONLY
 #define ENOTEMPTY 39
 #endif
 
+#ifndef ENAMETOOLONG
+#define ENAMETOOLONG 36
+#endif
+
 #ifndef ENOMEM
 #define ENOMEM 12
 #endif
@@ -216,7 +220,9 @@ struct yaffs_stat{
 
 int yaffs_open(const YCHAR *path, int oflag, int mode) ;
 int yaffs_close(int fd) ;
-int yaffs_flush(int fd) ;
+int yaffs_fsync(int fd) ;
+int yaffs_fdatasync(int fd) ;
+int yaffs_flush(int fd) ; /* same as yaffs_fsync() */
 
 int yaffs_access(const YCHAR *path, int amode);
 
@@ -240,6 +246,13 @@ int yaffs_stat(const YCHAR *path, struct yaffs_stat *buf) ;
 int yaffs_lstat(const YCHAR *path, struct yaffs_stat *buf) ;
 int yaffs_fstat(int fd, struct yaffs_stat *buf) ;
 
+#ifdef CONFIG_YAFFS_WINCE
+
+int yaffs_set_wince_times(int fd, const unsigned *wctime, const unsigned *watime, const unsigned *wmtime);
+int yaffs_get_wince_times(int fd, unsigned *wctime, unsigned *watime, unsigned *wmtime);
+
+#endif
+
 int yaffs_chmod(const YCHAR *path, mode_t mode); 
 int yaffs_fchmod(int fd, mode_t mode); 
 
@@ -252,7 +265,11 @@ void yaffs_rewinddir(yaffs_DIR *dirp) ;
 int yaffs_closedir(yaffs_DIR *dirp) ;
 
 int yaffs_mount(const YCHAR *path) ;
+int yaffs_mount2(const YCHAR *path, int readOnly);
 int yaffs_unmount(const YCHAR *path) ;
+int yaffs_unmount2(const YCHAR *path, int force);
+int yaffs_remount(const YCHAR *path, int force, int readOnly);
+
 
 int yaffs_sync(const YCHAR *path) ;
 
@@ -265,6 +282,9 @@ int yaffs_mknod(const YCHAR *pathname, mode_t mode, dev_t dev);
 loff_t yaffs_freespace(const YCHAR *path);
 loff_t yaffs_totalspace(const YCHAR *path);
 
+int yaffs_inodecount(const YCHAR *path);
+
+
 void yaffs_initialise(yaffsfs_DeviceConfiguration *configList);
 
 int yaffs_StartUp(void);