net: wireless: bcmdhd: Fix compilation warnings
[linux-3.10.git] / drivers / net / wireless / bcmdhd / include / dhd_custom_sysfs_tegra.h
1 /*
2  * drivers/net/wireless/bcmdhd/include/dhd_custom_sysfs_tegra.h
3  *
4  * NVIDIA Tegra Sysfs for BCMDHD driver
5  *
6  * Copyright (C) 2014-2015 NVIDIA Corporation. All rights reserved.
7  *
8  * This software is licensed under the terms of the GNU General Public
9  * License version 2, as published by the Free Software Foundation, and
10  * may be copied, distributed, and modified under those terms.
11  *
12  * This program is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15  * GNU General Public License for more details.
16  *
17  */
18
19 #ifndef _dhd_custom_sysfs_tegra_h_
20 #define _dhd_custom_sysfs_tegra_h_
21
22 #include <linux/kernel.h>
23 #include <linux/device.h>
24 #include <linux/netdevice.h>
25 #include <linux/skbuff.h>
26 #include <linux/stat.h>
27 #include <linux/debugfs.h>
28 #include <linux/fs.h>
29
30 #ifndef UNUSED_PARAMETER
31 #define UNUSED_PARAMETER(x)     (void)(x)
32 #endif
33
34 /* initialization */
35
36 int
37 tegra_sysfs_register(struct device *dev);
38
39 void
40 tegra_sysfs_unregister(struct device *dev);
41
42 void
43 tegra_sysfs_on(void);
44
45 void
46 tegra_sysfs_off(void);
47
48 void
49 tegra_sysfs_suspend(void);
50
51 void
52 tegra_sysfs_resume(void);
53
54 /* ping histogram */
55
56 void
57 tegra_sysfs_histogram_ping_request(struct sk_buff *skb);
58
59 void
60 tegra_sysfs_histogram_ping_reply(struct sk_buff *skb);
61
62 void
63 tegra_sysfs_histogram_ping_work_start(void);
64
65 void
66 tegra_sysfs_histogram_ping_work_stop(void);
67
68 ssize_t
69 tegra_sysfs_histogram_ping_show(struct device *dev,
70         struct device_attribute *attr,
71         char *buf);
72
73 ssize_t
74 tegra_sysfs_histogram_ping_store(struct device *dev,
75         struct device_attribute *attr,
76         const char *buf, size_t count);
77
78 /* rssi histogram */
79
80 void
81 tegra_sysfs_histogram_rssi_work_start(void);
82
83 void
84 tegra_sysfs_histogram_rssi_work_stop(void);
85
86 ssize_t
87 tegra_sysfs_histogram_rssi_show(struct device *dev,
88         struct device_attribute *attr,
89         char *buf);
90
91 ssize_t
92 tegra_sysfs_histogram_rssi_store(struct device *dev,
93         struct device_attribute *attr,
94         const char *buf, size_t count);
95
96 /* scan histogram */
97
98 #define TEGRA_SYSFS_HISTOGRAM_SCAN_REQUEST(netdev, request, request_size)\
99         {\
100                 char *netif = netdev ? netdev->name : "";\
101                 tcpdump_pkt_save('X', netif, __func__, __LINE__,\
102                         (const unsigned char *) request, request_size, 0);\
103         }\
104
105 #define TEGRA_SYSFS_HISTOGRAM_SCAN_RESULTS(netdev, results, results_size)\
106         {\
107                 char *netif = netdev ? netdev->name : "";\
108                 tcpdump_pkt_save('x', netif, __func__, __LINE__,\
109                         (const unsigned char *) results, results_size, 0);\
110         }\
111
112 void
113 tegra_sysfs_histogram_scan_work_start(void);
114
115 void
116 tegra_sysfs_histogram_scan_work_stop(void);
117
118 ssize_t
119 tegra_sysfs_histogram_scan_show(struct device *dev,
120         struct device_attribute *attr,
121         char *buf);
122
123 ssize_t
124 tegra_sysfs_histogram_scan_store(struct device *dev,
125         struct device_attribute *attr,
126         const char *buf, size_t count);
127
128 ssize_t
129 tegra_debugfs_histogram_scan_read(struct file *filp,
130         char __user *buff, size_t count, loff_t *offp);
131
132 ssize_t
133 tegra_debugfs_histogram_scan_write(struct file *filp,
134         const char __user *buff, size_t count, loff_t *offp);
135
136 /* stat histogram */
137
138 void
139 tegra_sysfs_histogram_stat_work_run(unsigned int ms);
140
141 void
142 tegra_sysfs_histogram_stat_work_start(void);
143
144 void
145 tegra_sysfs_histogram_stat_work_stop(void);
146
147 ssize_t
148 tegra_sysfs_histogram_stat_show(struct device *dev,
149         struct device_attribute *attr,
150         char *buf);
151
152 ssize_t
153 tegra_sysfs_histogram_stat_store(struct device *dev,
154         struct device_attribute *attr,
155         const char *buf, size_t count);
156
157 /* tcpdump histogram */
158
159 void
160 tcpdump_pkt_save(char tag, const char *netif, const char *func, int line,
161         const unsigned char *data,
162         unsigned int data_nonpaged_len,
163         unsigned int data_paged_len);
164
165 void
166 tegra_sysfs_histogram_tcpdump_rx(struct sk_buff *skb,
167         const char *func, int line);
168
169 void
170 tegra_sysfs_histogram_tcpdump_tx(struct sk_buff *skb,
171         const char *func, int line);
172
173 void
174 tegra_sysfs_histogram_tcpdump_work_start(void);
175
176 void
177 tegra_sysfs_histogram_tcpdump_work_stop(void);
178
179 ssize_t
180 tegra_sysfs_histogram_tcpdump_show(struct device *dev,
181         struct device_attribute *attr,
182         char *buf);
183
184 ssize_t
185 tegra_sysfs_histogram_tcpdump_store(struct device *dev,
186         struct device_attribute *attr,
187         const char *buf, size_t count);
188
189 ssize_t
190 tegra_debugfs_histogram_tcpdump_read(struct file *filp,
191         char __user *buff, size_t count, loff_t *offp);
192
193 ssize_t
194 tegra_debugfs_histogram_tcpdump_write(struct file *filp,
195         const char __user *buff, size_t count, loff_t *offp);
196
197 void
198 tegra_sysfs_resume_capture(void);
199
200 void
201 tegra_sysfs_suspend_capture(void);
202
203 void
204 tegra_sysfs_control_pkt(int number);
205
206 void
207 tegra_sysfs_dpc_pkt(void);
208 #endif  /* _dhd_custom_sysfs_tegra_h_ */