tizen 2.4 release
[profile/mobile/platform/kernel/linux-3.10-sc7730.git] / kernel / swap / wsp / wsp_res.h
1 #ifndef _WSP_TDATA_H
2 #define _WSP_TDATA_H
3
4 /*
5  * This program is free software; you can redistribute it and/or modify
6  * it under the terms of the GNU General Public License as published by
7  * the Free Software Foundation; either version 2 of the License, or
8  * (at your option) any later version.
9  *
10  * This program is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13  * GNU General Public License for more details.
14  *
15  * You should have received a copy of the GNU General Public License
16  * along with this program; if not, write to the Free Software
17  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18  *
19  * Copyright (C) Samsung Electronics, 2015
20  *
21  * 2015         Vyacheslav Cherkashin <v.cherkashin@samsung.com>
22  *
23  */
24
25
26 #include <linux/types.h>
27
28
29 enum tdata_stat {
30         TDS_ERR,
31         TDS_NEW,
32         TDS_FINISH_MAIN_LOAD,
33         TDS_DRAW
34 };
35
36 enum wsp_res_t {
37         WR_NONE,
38         WR_MAIN,
39         WR_ANY
40 };
41
42 enum wsp_res_stat {
43         WRS_NEW,
44         WRS_WILL_REQ,
45         WRS_SOUP_REQ,
46         WRS_ADD_DATA,
47         WRS_FINISH,
48         WRS_ERR
49 };
50
51 struct wsp_res {
52         struct list_head list;
53         void *ptr;
54         int id;
55         enum wsp_res_t type;
56         enum wsp_res_stat stat;
57 };
58
59
60 enum tdata_stat wsp_current_get_stat(void);
61 void wsp_current_set_stat(enum tdata_stat stat);
62
63 struct wsp_res *wsp_res_new(void *ptr, enum wsp_res_t type);
64 void wsp_res_del(struct wsp_res *res);
65
66 struct wsp_res *wsp_res_last(void);
67 struct wsp_res *wsp_res_find(void *ptr, enum wsp_res_t type);
68
69 int wsp_res_stat_set_next(struct wsp_res *res, enum wsp_res_stat stat);
70
71 int wsp_res_init(void);
72 void wsp_res_exit(void);
73
74
75 #endif /* _WSP_TDATA_H */