blob: 33d8f2087b6ea92557c6497a605e3f925e7700e4 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001#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
Abhay Salunke6e3eaab2005-09-06 15:17:13 -07006#define FW_ACTION_NOHOTPLUG 0
7#define FW_ACTION_HOTPLUG 1
8
Linus Torvalds1da177e2005-04-16 15:20:36 -07009struct firmware {
10 size_t size;
11 u8 *data;
12};
13struct device;
14int request_firmware(const struct firmware **fw, const char *name,
15 struct device *device);
16int request_firmware_nowait(
Kay Sievers312c0042005-11-16 09:00:00 +010017 struct module *module, int uevent,
Linus Torvalds1da177e2005-04-16 15:20:36 -070018 const char *name, struct device *device, void *context,
19 void (*cont)(const struct firmware *fw, void *context));
20
21void release_firmware(const struct firmware *fw);
Linus Torvalds1da177e2005-04-16 15:20:36 -070022#endif