X-Git-Url: http://www.aleph1.co.uk/gitweb/?p=yaffs2.git;a=blobdiff_plain;f=direct%2Fyportenv.h;h=ee27f73cee0c7011057c456102985d4f0ec92088;hp=b47a4d601e9317311be91729a64efe8986d0f134;hb=HEAD;hpb=83d99930038ef56463b6551aff5aa4d8348ce240 diff --git a/direct/yportenv.h b/direct/yportenv.h index b47a4d6..5a79f93 100644 --- a/direct/yportenv.h +++ b/direct/yportenv.h @@ -1,8 +1,7 @@ /* * YAFFS: Yet another Flash File System . A NAND-flash specific file system. * - * Copyright (C) 2002-2011 Aleph One Ltd. - * for Toby Churchill Ltd and Brightstar Engineering + * Copyright (C) 2002-2018 Aleph One Ltd. * * Created by Charles Manning * @@ -18,14 +17,34 @@ #define __YPORTENV_H__ +#ifdef __rtems__ + +#include +#include +#include +#include + +#define CONFIG_YAFFS_DIRECT 1 +#define CONFIG_YAFFS_SHORT_NAMES_IN_RAM 1 +#define CONFIG_YAFFS_YAFFS2 1 +#define CONFIG_YAFFS_PROVIDE_DEFS 1 +#define CONFIG_YAFFSFS_PROVIDE_VALUES 1 +#define CONFIG_YAFFS_DEFINES_TYPES 1 +#define CONFIG_YAFFS_USE_32_BIT_TIME_T 1 +#define NO_Y_INLINE 1 +#define loff_t off_t + +#endif /* __rtems__ */ + /* Definition of types */ #ifdef CONFIG_YAFFS_DEFINES_TYPES typedef unsigned char u8; typedef unsigned short u16; -typedef unsigned u32; +typedef unsigned int u32; +typedef unsigned long long u64; +typedef signed int s32; #endif - #ifdef CONFIG_YAFFS_PROVIDE_DEFS /* File types */ @@ -248,14 +267,40 @@ struct iattr { #define S_IFREG 0100000 #endif +#ifndef S_ISSOCK #define S_ISSOCK(m) (((m) & S_IFMT) == S_IFSOCK) +#endif +#ifndef S_ISLNK #define S_ISLNK(m) (((m) & S_IFMT) == S_IFLNK) +#endif +#ifndef S_ISDIR #define S_ISDIR(m) (((m) & S_IFMT) == S_IFDIR) +#endif +#ifndef S_ISREG #define S_ISREG(m) (((m) & S_IFMT) == S_IFREG) +#endif +#ifndef S_ISBLK #define S_ISBLK(m) (((m) & S_IFMT) == S_IFBLK) +#endif +#ifndef S_ISCHR #define S_ISCHR(m) (((m) & S_IFMT) == S_IFCHR) +#endif +#ifndef S_ISFIFO #define S_ISFIFO(m) (((m) & S_IFMT) == S_IFIFO) +#endif + + +#ifndef S_IRUSR +#define S_IRUSR 0000400 +#endif + +#ifndef S_IWUSR +#define S_IWUSR 0000200 +#endif +#ifndef S_IXUSR +#define S_IXUSR 0000100 +#endif #ifndef S_IREAD #define S_IREAD 0000400 @@ -269,6 +314,16 @@ struct iattr { #define S_IEXEC 0000100 #endif + +#else +#include +#include +#include +#endif + +#endif + +/* Create some less common define values if they don't exist */ #ifndef XATTR_CREATE #define XATTR_CREATE 1 #endif @@ -284,12 +339,8 @@ struct iattr { #define F_OK 0 #endif -#else -#include -#include -#include -#endif - +#ifndef S_ISSOCK +#define S_ISSOCK(m) (((m) & S_IFMT) == S_IFSOCK) #endif #ifndef Y_DUMP_STACK