Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
[linux/fpc-iii.git] / sound / oss / sound_firmware.h
blobda4c67e005ed1302a49ad80e3c8e1bcad73995c4
1 #include <linux/fs.h>
3 /**
4 * mod_firmware_load - load sound driver firmware
5 * @fn: filename
6 * @fp: return for the buffer.
8 * Load the firmware for a sound module (up to 128K) into a buffer.
9 * The buffer is returned in *fp. It is allocated with vmalloc so is
10 * virtually linear and not DMAable. The caller should free it with
11 * vfree when finished.
13 * The length of the buffer is returned on a successful load, the
14 * value zero on a failure.
16 * Caution: This API is not recommended. Firmware should be loaded via
17 * request_firmware.
19 static inline int mod_firmware_load(const char *fn, char **fp)
21 loff_t size;
22 int err;
24 err = kernel_read_file_from_path((char *)fn, (void **)fp, &size,
25 131072, READING_FIRMWARE);
26 if (err < 0)
27 return 0;
28 return size;