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

Commit c9294e4b authored by Takashi Iwai's avatar Takashi Iwai
Browse files

Merge branch 'topic/echoaudio' into for-linus

parents ae02cde7 a2328d02
Loading
Loading
Loading
Loading
+20 −0
Original line number Diff line number Diff line
@@ -400,6 +400,26 @@ config SND_INDIGODJ
	  To compile this driver as a module, choose M here: the module
	  will be called snd-indigodj

config SND_INDIGOIOX
	tristate "(Echoaudio) Indigo IOx"
	select FW_LOADER
	select SND_PCM
	help
	  Say 'Y' or 'M' to include support for Echoaudio Indigo IOx.

	  To compile this driver as a module, choose M here: the module
	  will be called snd-indigoiox

config SND_INDIGODJX
	tristate "(Echoaudio) Indigo DJx"
	select FW_LOADER
	select SND_PCM
	help
	  Say 'Y' or 'M' to include support for Echoaudio Indigo DJx.

	  To compile this driver as a module, choose M here: the module
	  will be called snd-indigodjx

config SND_EMU10K1
	tristate "Emu10k1 (SB Live!, Audigy, E-mu APS)"
	select FW_LOADER
+4 −0
Original line number Diff line number Diff line
@@ -15,6 +15,8 @@ snd-echo3g-objs := echo3g.o
snd-indigo-objs := indigo.o
snd-indigoio-objs := indigoio.o
snd-indigodj-objs := indigodj.o
snd-indigoiox-objs := indigoiox.o
snd-indigodjx-objs := indigodjx.o

obj-$(CONFIG_SND_DARLA20) += snd-darla20.o
obj-$(CONFIG_SND_GINA20) += snd-gina20.o
@@ -28,3 +30,5 @@ obj-$(CONFIG_SND_ECHO3G) += snd-echo3g.o
obj-$(CONFIG_SND_INDIGO) += snd-indigo.o
obj-$(CONFIG_SND_INDIGOIO) += snd-indigoio.o
obj-$(CONFIG_SND_INDIGODJ) += snd-indigodj.o
obj-$(CONFIG_SND_INDIGOIOX) += snd-indigoiox.o
obj-$(CONFIG_SND_INDIGODJX) += snd-indigodjx.o
+3 −14
Original line number Diff line number Diff line
@@ -950,6 +950,8 @@ static int __devinit snd_echo_new_pcm(struct echoaudio *chip)
	Control interface
******************************************************************************/

#ifndef ECHOCARD_HAS_VMIXER

/******************* PCM output volume *******************/
static int snd_echo_output_gain_info(struct snd_kcontrol *kcontrol,
				     struct snd_ctl_elem_info *uinfo)
@@ -1001,18 +1003,6 @@ static int snd_echo_output_gain_put(struct snd_kcontrol *kcontrol,
	return changed;
}

#ifdef ECHOCARD_HAS_VMIXER
/* On Vmixer cards this one controls the line-out volume */
static struct snd_kcontrol_new snd_echo_line_output_gain __devinitdata = {
	.name = "Line Playback Volume",
	.iface = SNDRV_CTL_ELEM_IFACE_MIXER,
	.access = SNDRV_CTL_ELEM_ACCESS_READWRITE | SNDRV_CTL_ELEM_ACCESS_TLV_READ,
	.info = snd_echo_output_gain_info,
	.get = snd_echo_output_gain_get,
	.put = snd_echo_output_gain_put,
	.tlv = {.p = db_scale_output_gain},
};
#else
static struct snd_kcontrol_new snd_echo_pcm_output_gain __devinitdata = {
	.name = "PCM Playback Volume",
	.iface = SNDRV_CTL_ELEM_IFACE_MIXER,
@@ -1022,6 +1012,7 @@ static struct snd_kcontrol_new snd_echo_pcm_output_gain __devinitdata = {
	.put = snd_echo_output_gain_put,
	.tlv = {.p = db_scale_output_gain},
};

#endif


@@ -2037,8 +2028,6 @@ static int __devinit snd_echo_probe(struct pci_dev *pci,

#ifdef ECHOCARD_HAS_VMIXER
	snd_echo_vmixer.count = num_pipes_out(chip) * num_busses_out(chip);
	if ((err = snd_ctl_add(chip->card, snd_ctl_new1(&snd_echo_line_output_gain, chip))) < 0)
		goto ctl_error;
	if ((err = snd_ctl_add(chip->card, snd_ctl_new1(&snd_echo_vmixer, chip))) < 0)
		goto ctl_error;
#else
+3 −0
Original line number Diff line number Diff line
@@ -189,6 +189,9 @@
#define INDIGO			0x0090
#define INDIGO_IO		0x00a0
#define INDIGO_DJ		0x00b0
#define DC8			0x00c0
#define INDIGO_IOX		0x00d0
#define INDIGO_DJX		0x00e0
#define ECHO3G			0x0100


+7 −2
Original line number Diff line number Diff line
@@ -576,8 +576,13 @@ SET_LAYLA24_FREQUENCY_REG command.
#define E3G_ASIC_NOT_LOADED		0xffff
#define E3G_BOX_TYPE_MASK		0xf0

#define EXT_3GBOX_NC			0x01
#define EXT_3GBOX_NOT_SET		0x02
/* Indigo express control register values */
#define INDIGO_EXPRESS_32000		0x02
#define INDIGO_EXPRESS_44100		0x01
#define INDIGO_EXPRESS_48000		0x00
#define INDIGO_EXPRESS_DOUBLE_SPEED	0x10
#define INDIGO_EXPRESS_QUAD_SPEED	0x04
#define INDIGO_EXPRESS_CLOCK_MASK	0x17


/*
Loading