GNU Linux-libre 4.14.294-gnu1
[releases.git] / drivers / staging / greybus / firmware.h
1 /*
2  * Greybus Firmware Management Header
3  *
4  * Copyright 2016 Google Inc.
5  * Copyright 2016 Linaro Ltd.
6  *
7  * Released under the GPLv2 only.
8  */
9
10 #ifndef __FIRMWARE_H
11 #define __FIRMWARE_H
12
13 #include "greybus.h"
14
15 #define FW_NAME_PREFIX  /*(DEBLOBBED)*/
16
17 /*
18  * Length of the string in format: /*(DEBLOBBED)*/
19 #define FW_NAME_SIZE            56
20
21 /* Firmware Management Protocol specific functions */
22 int fw_mgmt_init(void);
23 void fw_mgmt_exit(void);
24 struct gb_connection *to_fw_mgmt_connection(struct device *dev);
25 int gb_fw_mgmt_request_handler(struct gb_operation *op);
26 int gb_fw_mgmt_connection_init(struct gb_connection *connection);
27 void gb_fw_mgmt_connection_exit(struct gb_connection *connection);
28
29 /* Firmware Download Protocol specific functions */
30 int gb_fw_download_request_handler(struct gb_operation *op);
31 int gb_fw_download_connection_init(struct gb_connection *connection);
32 void gb_fw_download_connection_exit(struct gb_connection *connection);
33
34 /* CAP Protocol specific functions */
35 int cap_init(void);
36 void cap_exit(void);
37 int gb_cap_connection_init(struct gb_connection *connection);
38 void gb_cap_connection_exit(struct gb_connection *connection);
39
40 #endif /* __FIRMWARE_H */