1 /*
2  * YAFFS: Yet another Flash File System . A NAND-flash specific file system.
3  *
4  * Copyright (C) 2002-2011 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 #endif
58