yaffs direct: Move yaffs error string function to diferent directory
[yaffs2.git] / yaffs_trace.h
1 /*
2  * YAFFS: Yet another Flash File System . A NAND-flash specific file system.
3  *
4  * Copyright (C) 2002-2010 Aleph One Ltd.
5  *   for Toby Churchill Ltd and Brightstar Engineering
6  *
7  * Created by Charles Manning <charles@aleph1.co.uk>
8  *
9  * This program is free software; you can redistribute it and/or modify
10  * it under the terms of the GNU Lesser General Public License version 2.1 as
11  * published by the Free Software Foundation.
12  *
13  * Note: Only YAFFS headers are LGPL, YAFFS C code is covered by GPL.
14  */
15
16 #ifndef __YTRACE_H__
17 #define __YTRACE_H__
18
19 extern unsigned int yaffs_trace_mask;
20 extern unsigned int yaffs_wr_attempts;
21
22 /*
23  * Tracing flags.
24  * The flags masked in YAFFS_TRACE_ALWAYS are always traced.
25  */
26
27 #define YAFFS_TRACE_OS                  0x00000002
28 #define YAFFS_TRACE_ALLOCATE            0x00000004
29 #define YAFFS_TRACE_SCAN                0x00000008
30 #define YAFFS_TRACE_BAD_BLOCKS          0x00000010
31 #define YAFFS_TRACE_ERASE               0x00000020
32 #define YAFFS_TRACE_GC                  0x00000040
33 #define YAFFS_TRACE_WRITE               0x00000080
34 #define YAFFS_TRACE_TRACING             0x00000100
35 #define YAFFS_TRACE_DELETION            0x00000200
36 #define YAFFS_TRACE_BUFFERS             0x00000400
37 #define YAFFS_TRACE_NANDACCESS          0x00000800
38 #define YAFFS_TRACE_GC_DETAIL           0x00001000
39 #define YAFFS_TRACE_SCAN_DEBUG          0x00002000
40 #define YAFFS_TRACE_MTD                 0x00004000
41 #define YAFFS_TRACE_CHECKPOINT          0x00008000
42
43 #define YAFFS_TRACE_VERIFY              0x00010000
44 #define YAFFS_TRACE_VERIFY_NAND         0x00020000
45 #define YAFFS_TRACE_VERIFY_FULL         0x00040000
46 #define YAFFS_TRACE_VERIFY_ALL          0x000F0000
47
48 #define YAFFS_TRACE_SYNC                0x00100000
49 #define YAFFS_TRACE_BACKGROUND          0x00200000
50 #define YAFFS_TRACE_LOCK                0x00400000
51 #define YAFFS_TRACE_MOUNT               0x00800000
52
53 #define YAFFS_TRACE_ERROR               0x40000000
54 #define YAFFS_TRACE_BUG                 0x80000000
55 #define YAFFS_TRACE_ALWAYS              0xF0000000
56
57 #define T(mask, p) do { if ((mask) & (yaffs_trace_mask | YAFFS_TRACE_ALWAYS)) TOUT(p); } while (0)
58
59 #endif