Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7c7cae17 authored by Takashi Iwai's avatar Takashi Iwai Committed by David Woodhouse
Browse files

ALSA: wavefront - Always use request_firmware()



Always use request_firmware() for loading yss225_registers image.

Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
Signed-off-by: default avatarDavid Woodhouse <David.Woodhouse@intel.com>
parent 4f8d1825
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -63,6 +63,7 @@ fw-shipped-$(CONFIG_SXG) += sxg/saharadownloadB.sys \
				sxg/saharadbgdownloadB.sys
fw-shipped-$(CONFIG_SND_YMFPCI) += yamaha/ds1_ctrl.fw yamaha/ds1_dsp.fw \
				   yamaha/ds1e_ctrl.fw
fw-shipped-$(CONFIG_SND_WAVEFRONT) += yamaha/yss225_registers.bin
fw-shipped-$(CONFIG_TEHUTI) += tehuti/bdx.bin
fw-shipped-$(CONFIG_TIGON3) += tigon/tg3.bin tigon/tg3_tso.bin \
			       tigon/tg3_tso5.bin
+12 −0
Original line number Diff line number Diff line
@@ -642,3 +642,15 @@ Licence: GPLv2 or later
ARM assembly source code available at http://www.linuxtv.org/downloads/firmware/Boot.S

--------------------------------------------------------------------------

Driver: wavefront - ISA WaveFront sound card

File: yamaha/yss225_registers.bin

Licence: Allegedly GPLv2+, but no source visible.

Found in hex form in kernel source, with the following comment:
   Copyright (c) 1998-2002 by Paul Davis <pbd@op.net>


--------------------------------------------------------------------------
+998 −0

File added.

Preview size limit exceeded, changes collapsed.

+0 −10
Original line number Diff line number Diff line
@@ -395,16 +395,6 @@ config SND_WAVEFRONT
	  To compile this driver as a module, choose M here: the module
	  will be called snd-wavefront.

config SND_WAVEFRONT_FIRMWARE_IN_KERNEL
	bool "In-kernel firmware for Wavefront"
	depends on SND_WAVEFRONT
	default y
	help
	  Say Y here to include the static firmware for FX DSP built in
	  the kernel for the Wavefront driver.  If you choose N here,
	  you need to install the firmware files from the
	  alsa-firmware package.

config SND_MSND_PINNACLE
	tristate "Turtle Beach MultiSound Pinnacle/Fiji driver"
	depends on X86 && EXPERIMENTAL
+0 −16
Original line number Diff line number Diff line
@@ -34,14 +34,6 @@

#define WAIT_IDLE	0xff

#ifdef CONFIG_SND_WAVEFRONT_FIRMWARE_IN_KERNEL
#include "yss225.c"
static const struct firmware yss225_registers_firmware = {
	.data = (u8 *)yss225_registers,
	.size = sizeof yss225_registers
};
#endif

static int
wavefront_fx_idle (snd_wavefront_t *dev)

@@ -260,16 +252,12 @@ snd_wavefront_fx_start (snd_wavefront_t *dev)
	if (dev->fx_initialized)
		return 0;

#ifdef CONFIG_SND_WAVEFRONT_FIRMWARE_IN_KERNEL
	firmware = &yss225_registers_firmware;
#else
	err = request_firmware(&firmware, "yamaha/yss225_registers.bin",
			       dev->card->dev);
	if (err < 0) {
		err = -1;
		goto out;
	}
#endif

	for (i = 0; i + 1 < firmware->size; i += 2) {
		if (firmware->data[i] >= 8 && firmware->data[i] < 16) {
@@ -292,12 +280,8 @@ snd_wavefront_fx_start (snd_wavefront_t *dev)
	err = 0;

out:
#ifndef CONFIG_SND_WAVEFRONT_FIRMWARE_IN_KERNEL
	release_firmware(firmware);
#endif
	return err;
}

#ifndef CONFIG_SND_WAVEFRONT_FIRMWARE_IN_KERNEL
MODULE_FIRMWARE("yamaha/yss225_registers.bin");
#endif
Loading