[RFC: 2.6 patch] build sound/sound_firmware.c only for OSS

From: Adrian Bunk
Date: Tue Aug 22 2006 - 10:43:37 EST


All sound/sound_firmware.c contains is mod_firmware_load() that is a
legacy API only used by some OSS drivers.

This patch builds it into an own sound_firmware module that is only
built depending on CONFIG_SOUND_PRIME making the kernel slightly smaller
for ALSA users.

Signed-off-by: Adrian Bunk <bunk@xxxxxxxxx>

---

sound/Makefile | 3 ++-
sound/sound_core.c | 4 ----
sound/sound_firmware.c | 3 +++
3 files changed, 5 insertions(+), 5 deletions(-)

--- linux-2.6.18-rc4-mm2/sound/Makefile.old 2006-08-22 00:07:41.000000000 +0200
+++ linux-2.6.18-rc4-mm2/sound/Makefile 2006-08-22 00:10:41.000000000 +0200
@@ -2,6 +2,7 @@
#

obj-$(CONFIG_SOUND) += soundcore.o
+obj-$(CONFIG_SOUND_PRIME) += sound_firmware.o
obj-$(CONFIG_SOUND_PRIME) += oss/
obj-$(CONFIG_DMASOUND) += oss/
obj-$(CONFIG_SND) += core/ i2c/ drivers/ isa/ pci/ ppc/ arm/ synth/ usb/ sparc/ parisc/ pcmcia/ mips/
@@ -11,4 +12,4 @@
obj-y += last.o
endif

-soundcore-objs := sound_core.o sound_firmware.o
+soundcore-objs := sound_core.o
--- linux-2.6.18-rc4-mm2/sound/sound_core.c.old 2006-08-22 00:09:13.000000000 +0200
+++ linux-2.6.18-rc4-mm2/sound/sound_core.c 2006-08-22 00:12:10.000000000 +0200
@@ -517,10 +517,6 @@
return -ENODEV;
}

-extern int mod_firmware_load(const char *, char **);
-EXPORT_SYMBOL(mod_firmware_load);
-
-
MODULE_DESCRIPTION("Core sound module");
MODULE_AUTHOR("Alan Cox");
MODULE_LICENSE("GPL");
--- linux-2.6.18-rc4-mm2/sound/sound_firmware.c.old 2006-08-22 00:10:53.000000000 +0200
+++ linux-2.6.18-rc4-mm2/sound/sound_firmware.c 2006-08-22 00:26:03.000000000 +0200
@@ -4,6 +4,7 @@
#include <linux/mm.h>
#include <linux/slab.h>
#include <asm/uaccess.h>
+#include "oss/sound_firmware.h"

static int do_mod_firmware_load(const char *fn, char **fp)
{
@@ -73,4 +74,6 @@
set_fs(fs);
return r;
}
+EXPORT_SYMBOL(mod_firmware_load);

+MODULE_LICENSE("GPL");

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/