X-Git-Url: http://www.aleph1.co.uk/gitweb/?p=yaffs2.git;a=blobdiff_plain;f=yportenv.h;h=b46b9a9367d3202f129018ac401ae90db81685da;hp=1fc2272f8fb1c8a6aacc47e20f35d5e28f58c232;hb=4e2762fe2c79da366785c4fc9cf49d7353197a39;hpb=84699e12e914cb78ae3a1da48c99ed679b934153 diff --git a/yportenv.h b/yportenv.h index 1fc2272..b46b9a9 100644 --- a/yportenv.h +++ b/yportenv.h @@ -1,9 +1,7 @@ /* - * YAFFS: Yet another FFS. A NAND-flash specific file system. - * yportenv.h: Portable services used by yaffs. This is done to allow - * simple migration from kernel space into app space for testing. + * YAFFS: Yet another Flash File System . A NAND-flash specific file system. * - * Copyright (C) 2002 Aleph One Ltd. + * Copyright (C) 2002-2007 Aleph One Ltd. * for Toby Churchill Ltd and Brightstar Engineering * * Created by Charles Manning @@ -12,13 +10,10 @@ * it under the terms of the GNU Lesser General Public License version 2.1 as * published by the Free Software Foundation. * - * * Note: Only YAFFS headers are LGPL, YAFFS C code is covered by GPL. - * - * $Id: yportenv.h,v 1.7 2005-08-11 02:33:03 marty Exp $ - * */ + #ifndef __YPORTENV_H__ #define __YPORTENV_H__ @@ -28,13 +23,18 @@ #elif defined __KERNEL__ +#include "moduleconfig.h" + /* Linux kernel */ +#include +#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,19)) #include +#endif #include -#include #include #include #include +#include #define YCHAR char #define YUCHAR unsigned char @@ -53,6 +53,12 @@ /* #define YPRINTF(x) printk x */ #define YMALLOC(x) kmalloc(x,GFP_KERNEL) #define YFREE(x) kfree(x) +#define YMALLOC_ALT(x) vmalloc(x) +#define YFREE_ALT(x) vfree(x) +#define YMALLOC_DMA(x) YMALLOC(x) + +// KR - added for use in scan so processes aren't blocked indefinitely. +#define YYIELD() schedule() #define YAFFS_ROOT_MODE 0666 #define YAFFS_LOSTNFOUND_MODE 0666 @@ -89,6 +95,8 @@ #define YMALLOC(x) malloc(x) #define YFREE(x) free(x) +#define YMALLOC_ALT(x) malloc(x) +#define YFREE_ALT(x) free(x) #define YCHAR char #define YUCHAR unsigned char @@ -141,6 +149,7 @@ extern unsigned yaffs_traceMask; #define YAFFS_TRACE_GC_DETAIL 0x00001000 #define YAFFS_TRACE_SCAN_DEBUG 0x00002000 #define YAFFS_TRACE_MTD 0x00004000 +#define YAFFS_TRACE_CHECKPOINT 0x00008000 #define YAFFS_TRACE_ALWAYS 0x40000000 #define YAFFS_TRACE_BUG 0x80000000