1) add JFFS2_NAME_MAX to jffs2_config.h 2)fix micro conflict in include/port/fcntl.h

git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2492 bbd45198-f89e-11dd-88c7-29a3b14d5316
This commit is contained in:
goprife@gmail.com 2012-12-18 06:42:27 +00:00
parent b82d5744b6
commit b45f14c038
5 changed files with 60 additions and 38 deletions

View File

@ -1,5 +1,55 @@
#ifndef CYGONCE_ISO_FCNTL_H #ifndef CYGONCE_ISO_FCNTL_H
#define CYGONCE_ISO_FCNTL_H #define CYGONCE_ISO_FCNTL_H
#if defined(__CC_ARM) || defined(MSVC)
/* File access modes used for open() and fnctl() */
#define O_RDONLY (1<<0) /* Open for reading only */
#define O_WRONLY (1<<1) /* Open for writing only */
#define O_RDWR (O_RDONLY|O_WRONLY) /* Open for reading and writing */
/* File access mode mask */
#define O_ACCMODE (O_RDONLY|O_RDWR|O_WRONLY)
/* open() mode flags */
#define O_CREAT (1<<3) /* Create file it it does not exist */
#define O_EXCL (1<<4) /* Exclusive use */
#define O_NOCTTY (1<<5) /* Do not assign a controlling terminal */
#define O_TRUNC (1<<6) /* Truncate */
/* File status flags used for open() and fcntl() */
#define O_APPEND (1<<7) /* Set append mode */
#define O_DSYNC (1<<8) /* Synchronized I/O data integrity writes */
#define O_NONBLOCK (1<<9) /* No delay */
#define O_RSYNC (1<<10) /* Synchronized read I/O */
#define O_SYNC (1<<11) /* Synchronized I/O file integrity writes */
/*------------------------------------------------------------------------*/
/* for dfs_jffs2.c */
/*------------------------------------------------------------------------*/
/* File access modes used for open() and fnctl() */
#define JFFS2_O_RDONLY (1<<0) /* Open for reading only */
#define JFFS2_O_WRONLY (1<<1) /* Open for writing only */
#define JFFS2_O_RDWR (O_RDONLY|O_WRONLY) /* Open for reading and writing */
/* File access mode mask */
#define JFFS2_O_ACCMODE (O_RDONLY|O_RDWR|O_WRONLY)
/* open() mode flags */
#define JFFS2_O_CREAT (1<<3) /* Create file it it does not exist */
#define JFFS2_O_EXCL (1<<4) /* Exclusive use */
#define JFFS2_O_NOCTTY (1<<5) /* Do not assign a controlling terminal */
#define JFFS2_O_TRUNC (1<<6) /* Truncate */
/* File status flags used for open() and fcntl() */
#define JFFS2_O_APPEND (1<<7) /* Set append mode */
#define JFFS2_O_DSYNC (1<<8) /* Synchronized I/O data integrity writes */
#define JFFS2_O_NONBLOCK (1<<9) /* No delay */
#define JFFS2_O_RSYNC (1<<10) /* Synchronized read I/O */
#define JFFS2_O_SYNC (1<<11) /* Synchronized I/O file integrity writes */
#elif defined(__GNUC__)
/*------------------------------------------------------------------------*/ /*------------------------------------------------------------------------*/
/* for dfs_jffs2.c */ /* for dfs_jffs2.c */
/*------------------------------------------------------------------------*/ /*------------------------------------------------------------------------*/
@ -25,34 +75,6 @@
#define JFFS2_O_RSYNC (DFS_O_RSYNC) /* Synchronized read I/O */ #define JFFS2_O_RSYNC (DFS_O_RSYNC) /* Synchronized read I/O */
#define JFFS2_O_SYNC (DFS_O_SYNC) /* Synchronized I/O file integrity writes */ #define JFFS2_O_SYNC (DFS_O_SYNC) /* Synchronized I/O file integrity writes */
/*------------------------------------------------------------------------*/
/* for dfs_jffs2.c */
/*------------------------------------------------------------------------*/
#if defined(__CC_ARM) || defined(MSVC)
/* File access modes used for open() and fnctl() */
#define O_RDONLY (1<<0) /* Open for reading only */
#define O_WRONLY (1<<1) /* Open for writing only */
#define O_RDWR (O_RDONLY|O_WRONLY) /* Open for reading and writing */
/* File access mode mask */
#define O_ACCMODE (O_RDONLY|O_RDWR|O_WRONLY)
/* open() mode flags */
#define O_CREAT (1<<3) /* Create file it it does not exist */
#define O_EXCL (1<<4) /* Exclusive use */
#define O_NOCTTY (1<<5) /* Do not assign a controlling terminal */
#define O_TRUNC (1<<6) /* Truncate */
/* File status flags used for open() and fcntl() */
#define O_APPEND (1<<7) /* Set append mode */
#define O_DSYNC (1<<8) /* Synchronized I/O data integrity writes */
#define O_NONBLOCK (1<<9) /* No delay */
#define O_RSYNC (1<<10) /* Synchronized read I/O */
#define O_SYNC (1<<11) /* Synchronized I/O file integrity writes */
#endif /* CYGONCE_ISO_FCNTL_H multiple inclusion protection */
#endif #endif
#endif
/* EOF fcntl.h */ /* EOF fcntl.h */

View File

@ -3,7 +3,10 @@
#define __ECOS /* must be defined */ #define __ECOS /* must be defined */
#define FILE_PATH_MAX 128 /* the longest file path */ #define FILE_PATH_MAX 128 /* the longest file path */
#define CONFIG_JFFS2_ENTRY_NAME_MAX 8
#define JFFS2_NAME_MAX CONFIG_JFFS2_ENTRY_NAME_MAX
#define JFFS2_PATH_MAX FILE_PATH_MAX
#define DEVICE_PART_MAX 1 /* the max partions on a nand deivce*/ #define DEVICE_PART_MAX 1 /* the max partions on a nand deivce*/

View File

@ -26,9 +26,6 @@ struct jffs2_stat {
long st_mtime; /* Last data modification time */ long st_mtime; /* Last data modification time */
long st_ctime; /* Last file status change time */ long st_ctime; /* Last file status change time */
}; };
#ifndef NAME_MAX
#define NAME_MAX 14
#endif
struct jffs2_dirent struct jffs2_dirent
{ {
@ -39,7 +36,7 @@ struct jffs2_dirent
// d_type is not part of POSIX so // d_type is not part of POSIX so
// should be used with caution. // should be used with caution.
#endif #endif
char d_name[NAME_MAX+1]; char d_name[JFFS2_NAME_MAX+1];
}; };
extern cyg_fileops jffs2_fileops; extern cyg_fileops jffs2_fileops;

View File

@ -392,11 +392,11 @@ static int jffs2_pathconf(struct _inode *node, struct cyg_pathconf_info *info)
break; break;
case _PC_NAME_MAX: case _PC_NAME_MAX:
info->value = NAME_MAX; info->value = JFFS2_NAME_MAX;
break; break;
case _PC_PATH_MAX: case _PC_PATH_MAX:
info->value = PATH_MAX; info->value = JFFS2_PATH_MAX;
break; break;
case _PC_PIPE_BUF: case _PC_PIPE_BUF:

View File

@ -53,7 +53,7 @@ struct dirent
// d_type is not part of POSIX so // d_type is not part of POSIX so
// should be used with caution. // should be used with caution.
#endif #endif
char d_name[NAME_MAX+1]; char d_name[JFFS2_NAME_MAX+1];
}; };
@ -260,6 +260,6 @@ static inline void jffs2_erase_pending_trigger(struct jffs2_sb_info *c)
#define BUG_ON(x) do { if (unlikely(x)) BUG(); } while(0) #define BUG_ON(x) do { if (unlikely(x)) BUG(); } while(0)
#endif #endif
#define __init #define __init
#endif /* __JFFS2_OS_ECOS_H__ */ #endif /* __JFFS2_OS_ECOS_H__ */