X-Git-Url: http://www.aleph1.co.uk/gitweb/?p=yaffs2.git;a=blobdiff_plain;f=direct%2Fydirectenv.h;h=b2293a62fbdf4236092590d21e67ed5c451d93a7;hp=40d0d6d8eab33cdf866d29cec9cd04fc9025dea4;hb=d13e6146b4ccadd7aab2033b6cf9f4551d6abd71;hpb=170ea32c52fd2d9b7cbda9b169ad44038b1d15cf diff --git a/direct/ydirectenv.h b/direct/ydirectenv.h index 40d0d6d..b2293a6 100644 --- a/direct/ydirectenv.h +++ b/direct/ydirectenv.h @@ -1,7 +1,7 @@ /* - * YAFFS: Yet another Flash File System . A NAND-flash specific file system. + * YAFFS: Yet another Flash File System . A NAND-flash specific file system. * - * Copyright (C) 2002-2007 Aleph One Ltd. + * Copyright (C) 2002-2011 Aleph One Ltd. * for Toby Churchill Ltd and Brightstar Engineering * * Created by Charles Manning @@ -20,63 +20,80 @@ #ifndef __YDIRECTENV_H__ #define __YDIRECTENV_H__ -// Direct interface - -#include "devextras.h" - #include "stdlib.h" #include "stdio.h" #include "string.h" +#include "yaffs_osglue.h" +#include "yaffs_hweight.h" + +void yaffs_bug_fn(const char *file_name, int line_no); + +#define BUG() do { yaffs_bug_fn(__FILE__, __LINE__); } while (0) + #define YCHAR char #define YUCHAR unsigned char #define _Y(x) x -#define yaffs_strcpy(a,b) strcpy(a,b) -#define yaffs_strncpy(a,b,c) strncpy(a,b,c) -#define yaffs_strlen(s) strlen(s) -#define yaffs_sprintf sprintf -#define yaffs_toupper(a) toupper(a) - -#ifdef NO_Y_INLINE -#define Y_INLINE + +#ifndef Y_LOFF_T +#define Y_LOFF_T loff_t +#endif + +#define yaffs_strcat(a, b) strcat(a, b) +#define yaffs_strcpy(a, b) strcpy(a, b) +#define yaffs_strncpy(a, b, c) strncpy(a, b, c) +#define yaffs_strnlen(s, m) strnlen(s, m) +#ifdef CONFIG_YAFFS_CASE_INSENSITIVE +#define yaffs_strcmp(a, b) strcasecmp(a, b) +#define yaffs_strncmp(a, b, c) strncasecmp(a, b, c) #else -#define Y_INLINE inline +#define yaffs_strcmp(a, b) strcmp(a, b) +#define yaffs_strncmp(a, b, c) strncmp(a, b, c) #endif -#define YMALLOC(x) malloc(x) -#define YFREE(x) free(x) -#define YMALLOC_ALT(x) malloc(x) -#define YFREE_ALT(x) free(x) +#define hweight8(x) yaffs_hweight8(x) +#define hweight32(x) yaffs_hweight32(x) -#define YMALLOC_DMA(x) malloc(x) +void yaffs_qsort(void *aa, size_t n, size_t es, + int (*cmp)(const void *, const void *)); -#define YYIELD() do {} while(0) +#define sort(base, n, sz, cmp_fn, swp) yaffs_qsort(base, n, sz, cmp_fn) +#define YAFFS_PATH_DIVIDERS "/" +#ifdef NO_inline +#define inline +#else +#define inline __inline__ +#endif -//#define YINFO(s) YPRINTF(( __FILE__ " %d %s\n",__LINE__,s)) -//#define YALERT(s) YINFO(s) +#define kmalloc(x, flags) yaffsfs_malloc(x) +#define kfree(x) yaffsfs_free(x) +#define vmalloc(x) yaffsfs_malloc(x) +#define vfree(x) yaffsfs_free(x) +#define cond_resched() do {} while (0) -#define TENDSTR "\n" -#define TSTR(x) x -#define TOUT(p) printf p +#define yaffs_trace(msk, fmt, ...) do { \ + if (yaffs_trace_mask & (msk)) \ + printf("yaffs: " fmt "\n", ##__VA_ARGS__); \ +} while (0) #define YAFFS_LOSTNFOUND_NAME "lost+found" #define YAFFS_LOSTNFOUND_PREFIX "obj" -//#define YPRINTF(x) printf x #include "yaffscfg.h" #define Y_CURRENT_TIME yaffsfs_CurrentTime() #define Y_TIME_CONVERT(x) x -#define YAFFS_ROOT_MODE 0666 +#define YAFFS_ROOT_MODE 0666 #define YAFFS_LOSTNFOUND_MODE 0666 -#define yaffs_SumCompare(x,y) ((x) == (y)) -#define yaffs_strcmp(a,b) strcmp(a,b) +#include "yaffs_list.h" + +#include "yaffsfs.h" #endif