Committer: Michael Beasley <mike@snafu.setup>
[mikesnafu-overlay.git] / include / linux / firmware.h
blob4d10c7328d2dabafcee9cf285bf263ba6988b3cd
1 #ifndef _LINUX_FIRMWARE_H
2 #define _LINUX_FIRMWARE_H
3 #include <linux/module.h>
4 #include <linux/types.h>
5 #define FIRMWARE_NAME_MAX 30
6 #define FW_ACTION_NOHOTPLUG 0
7 #define FW_ACTION_HOTPLUG 1
9 struct firmware {
10 size_t size;
11 u8 *data;
14 struct device;
16 #if defined(CONFIG_FW_LOADER) || defined(CONFIG_FW_LOADER_MODULE)
17 int request_firmware(const struct firmware **fw, const char *name,
18 struct device *device);
19 int request_firmware_nowait(
20 struct module *module, int uevent,
21 const char *name, struct device *device, void *context,
22 void (*cont)(const struct firmware *fw, void *context));
24 void release_firmware(const struct firmware *fw);
25 #else
26 static inline int request_firmware(const struct firmware **fw,
27 const char *name,
28 struct device *device)
30 return -EINVAL;
32 static inline int request_firmware_nowait(
33 struct module *module, int uevent,
34 const char *name, struct device *device, void *context,
35 void (*cont)(const struct firmware *fw, void *context))
37 return -EINVAL;
40 static inline void release_firmware(const struct firmware *fw)
43 #endif
45 #endif