wifi->esp8089:
[firefly-linux-kernel-4.4.55.git] / drivers / net / wireless / rockchip_wlan / esp8089 / esp_driver / esp_file.h
1 /*
2  * Copyright (c) 2010 -2014 Espressif System.
3  *
4  *   file operation in kernel space
5  *
6  */
7
8 #ifndef _ESP_FILE_H_
9 #define _ESP_FILE_H_
10
11 #include <linux/version.h>
12 #include <linux/firmware.h>
13
14
15 #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,20)
16 #define GET_INODE_FROM_FILEP(filp) \
17     (filp)->f_path.dentry->d_inode
18 #else
19 #define GET_INODE_FROM_FILEP(filp) \
20     (filp)->f_dentry->d_inode
21 #endif
22
23 #define E_ROUND_UP(x, y)  ((((x) + ((y) - 1)) / (y)) * (y))
24
25 int esp_readwrite_file(const char *filename, char *rbuf, const char *wbuf, size_t length);
26
27 int esp_request_firmware(const struct firmware **firmware_p, const char *name, struct device *device);
28
29 void esp_release_firmware(const struct firmware *firmware);
30
31 #ifdef INIT_DATA_CONF
32 #define INIT_CONF_FILE "init_data.conf"
33 #endif /* def INIT_DATA_CONF */
34
35 #define CONF_ATTR_LEN 24
36 #define CONF_VAL_LEN 3
37 #define MAX_ATTR_NUM 24
38 #define MAX_FIX_ATTR_NUM 16
39 #define MAX_BUF_LEN ((CONF_ATTR_LEN + CONF_VAL_LEN + 2) * MAX_ATTR_NUM + 2)
40
41 struct esp_init_table_elem {
42         char attr[CONF_ATTR_LEN];
43         int offset;
44         short value;
45 };
46
47 int request_init_conf(void);
48 void fix_init_data(u8 *init_data_buf, int buf_size);
49
50
51 #ifdef ESP_ANDROID_LOGGER
52 extern int logger_write( const unsigned char prio,
53                          const char __kernel * const tag,
54                          const char __kernel * const fmt,
55                          ...);
56
57 #endif
58
59 #endif /* _ESP_FILE_H_ */