X-Git-Url: http://www.aleph1.co.uk/gitweb/?p=yaffs2.git;a=blobdiff_plain;f=yaffs_linux.h;h=68e33f10c3f0de9efbdf2750a97b3dbfb936fca6;hp=272186aeb0d7f26f8283116aab2b850bb2115eea;hb=be9d4bef4a2cdd8abfed4c36fbaa1cc6584e2edd;hpb=30baeed47b026db1d7c3a31c0bac7413887e38f5 diff --git a/yaffs_linux.h b/yaffs_linux.h index 272186a..68e33f1 100644 --- a/yaffs_linux.h +++ b/yaffs_linux.h @@ -1,8 +1,7 @@ /* * YAFFS: Yet another Flash File System . A NAND-flash specific file system. * - * Copyright (C) 2002-2007 Aleph One Ltd. - * for Toby Churchill Ltd and Brightstar Engineering + * Copyright (C) 2002-2018 Aleph One Ltd. * * Created by Charles Manning * @@ -16,23 +15,33 @@ #ifndef __YAFFS_LINUX_H__ #define __YAFFS_LINUX_H__ -#include "devextras.h" #include "yportenv.h" -struct yaffs_LinuxContext { - struct ylist_head contextList; /* List of these we have mounted */ - struct yaffs_DeviceStruct *dev; - struct super_block * superBlock; - struct semaphore grossLock; /* Gross locking semaphore */ - __u8 *spareBuffer; /* For mtdif2 use. Don't know the size of the buffer +struct yaffs_linux_context { + struct list_head context_list; /* List of these we have mounted */ + struct yaffs_dev *dev; + struct super_block *super; + struct task_struct *bg_thread; /* Background thread for this device */ + int bg_running; + struct mutex gross_lock; /* Gross locking mutex*/ + u8 *spare_buffer; /* For mtdif2 use. Don't know the buffer size * at compile time so we have to allocate it. */ - struct mtd_info *mtd; - struct ylist_head searchContexts; - void (*putSuperFunc)(struct super_block *sb); + struct list_head search_contexts; + struct task_struct *readdir_process; + unsigned mount_id; + int dirty; }; -#define yaffs_DeviceToContext(dev) ((struct yaffs_LinuxContext *)((dev)->context)) +#define yaffs_dev_to_lc(dev) ((struct yaffs_linux_context *)((dev)->os_context)) +#define yaffs_dev_to_mtd(dev) ((struct mtd_info *)((dev)->driver_context)) +#if (LINUX_VERSION_CODE > KERNEL_VERSION(2, 6, 17)) +#define WRITE_SIZE_STR "writesize" +#define WRITE_SIZE(mtd) ((mtd)->writesize) +#else +#define WRITE_SIZE_STR "oobblock" +#define WRITE_SIZE(mtd) ((mtd)->oobblock) #endif +#endif