Akiko: Fix Yaffs Linux compilation for 4.9 to 4.19
[yaffs2.git] / yportenv_multi.h
index 10e284e8ec7b4e0271f5837f18ef04ef9973f862..68c239c0743513a6076bfec3df48a77edb886eec 100644 (file)
@@ -1,8 +1,7 @@
 /*
  * YAFFS: Yet another Flash File System . A NAND-flash specific file system.
  *
- * Copyright (C) 2002-2010 Aleph One Ltd.
- *   for Toby Churchill Ltd and Brightstar Engineering
+ * Copyright (C) 2002-2018 Aleph One Ltd.
  *
  * Created by Charles Manning <charles@aleph1.co.uk>
  *
@@ -49,6 +48,7 @@
 #include <linux/sort.h>
 #include <linux/bitops.h>
 
+/*  These type wrappings are used to support Unicode names in WinCE. */
 #define YCHAR char
 #define YUCHAR unsigned char
 #define _Y(x)     x
 #define YAFFS_LOSTNFOUND_MODE          0700
 
 #if (LINUX_VERSION_CODE > KERNEL_VERSION(2, 5, 0))
+#if (LINUX_VERSION_CODE < KERNEL_VERSION(4,12,0))
 #define Y_CURRENT_TIME CURRENT_TIME.tv_sec
+#else
+#define Y_CURRENT_TIME current_kernel_time().tv_sec
+#endif
 #define Y_TIME_CONVERT(x) (x).tv_sec
 #else
+#if (LINUX_VERSION_CODE < KERNEL_VERSION(4,12,0))
 #define Y_CURRENT_TIME CURRENT_TIME
+#else
+#define Y_CURRENT_TIME current_kernel_time()
+#endif
 #define Y_TIME_CONVERT(x) (x)
 #endif
 
        ({ int x = __builtin_choose_expr(assertion, 0, (void)0); (void) x; })
 
 
-#ifndef Y_DUMP_STACK
-#define Y_DUMP_STACK() dump_stack()
-#endif
+#define yaffs_printf(msk, fmt, ...) \
+       printk(KERN_DEBUG "yaffs: " fmt "\n", ##__VA_ARGS__)
 
 #define yaffs_trace(msk, fmt, ...) do { \
-       if(yaffs_trace_mask & (msk)) \
+       if (yaffs_trace_mask & (msk)) \
                printk(KERN_DEBUG "yaffs: " fmt "\n", ##__VA_ARGS__); \
-} while(0)
-
-#ifndef YBUG
-#define YBUG() do {\
-       yaffs_trace(YAFFS_TRACE_BUG,\
-               "bug " __FILE__ " %d",\
-               __LINE__);\
-       Y_DUMP_STACK();\
 } while (0)
-#endif
+
 
 #endif