Skip to content

Commit

Permalink
Merge branch 'linus' of master.kernel.org:/pub/scm/linux/kernel/git/p…
Browse files Browse the repository at this point in the history
…erex/alsa

* 'linus' of master.kernel.org:/pub/scm/linux/kernel/git/perex/alsa:
  [ALSA] usbaudio - Coping with short replies in usbmixer
  [ALSA] Include quirks from Ubuntu Dapper/Edgy/Feisty
  [ALSA] Fix probe of non-PnP ISA devices
  [ALSA] version 1.0.14rc4
  [ALSA] hda-codec - Fix ALC882/861VD codec support on some laptops
  [ALSA] ASoC AC97 device reg bugfix
  [ALSA] ASoC AC97 static GPL symbol fix
  [ALSA] hda-codec - Make the mixer capability check more robust
  [ALSA] usb-audio: another Logitech QuickCam ID
  • Loading branch information
Linus Torvalds committed May 17, 2007
2 parents 36dbe4d + a04395e commit b17bfca
Show file tree
Hide file tree
Showing 20 changed files with 669 additions and 73 deletions.
4 changes: 3 additions & 1 deletion include/sound/soc.h
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
#include <sound/control.h>
#include <sound/ac97_codec.h>

#define SND_SOC_VERSION "0.13.0"
#define SND_SOC_VERSION "0.13.1"

/*
* Convenience kcontrol builders
Expand Down Expand Up @@ -83,6 +83,7 @@
#define SND_SOC_DAI_AC97 0x1
#define SND_SOC_DAI_I2S 0x2
#define SND_SOC_DAI_PCM 0x4
#define SND_SOC_DAI_AC97_BUS 0x8 /* for custom i.e. non ac97_codec.c */

/*
* DAI hardware audio formats
Expand Down Expand Up @@ -278,6 +279,7 @@ struct snd_soc_cpu_ops {
struct snd_soc_codec_dai {
char *name;
int id;
unsigned char type;

/* DAI capabilities */
struct snd_soc_pcm_stream playback;
Expand Down
2 changes: 1 addition & 1 deletion include/sound/version.h
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
/* include/version.h. Generated by alsa/ksync script. */
#define CONFIG_SND_VERSION "1.0.14rc4"
#define CONFIG_SND_DATE " (Wed May 09 09:51:39 2007 UTC)"
#define CONFIG_SND_DATE " (Wed May 16 09:45:46 2007 UTC)"
15 changes: 11 additions & 4 deletions sound/isa/cmi8330.c
Original file line number Diff line number Diff line change
Expand Up @@ -109,6 +109,7 @@ module_param_array(wssdma, int, NULL, 0444);
MODULE_PARM_DESC(wssdma, "DMA for CMI8330 WSS driver.");

#ifdef CONFIG_PNP
static int isa_registered;
static int pnp_registered;
#endif

Expand Down Expand Up @@ -686,23 +687,29 @@ static int __init alsa_card_cmi8330_init(void)
int err;

err = isa_register_driver(&snd_cmi8330_driver, SNDRV_CARDS);
if (err < 0)
return err;
#ifdef CONFIG_PNP
if (!err)
isa_registered = 1;

err = pnp_register_card_driver(&cmi8330_pnpc_driver);
if (!err)
pnp_registered = 1;

if (isa_registered)
err = 0;
#endif
return 0;
return err;
}

static void __exit alsa_card_cmi8330_exit(void)
{
#ifdef CONFIG_PNP
if (pnp_registered)
pnp_unregister_card_driver(&cmi8330_pnpc_driver);

if (isa_registered)
#endif
isa_unregister_driver(&snd_cmi8330_driver);
isa_unregister_driver(&snd_cmi8330_driver);
}

module_init(alsa_card_cmi8330_init)
Expand Down
20 changes: 14 additions & 6 deletions sound/isa/cs423x/cs4236.c
Original file line number Diff line number Diff line change
Expand Up @@ -127,6 +127,7 @@ module_param_array(dma2, int, NULL, 0444);
MODULE_PARM_DESC(dma2, "DMA2 # for " IDENT " driver.");

#ifdef CONFIG_PNP
static int isa_registered;
static int pnpc_registered;
#ifdef CS4232
static int pnp_registered;
Expand Down Expand Up @@ -770,9 +771,9 @@ static int __init alsa_card_cs423x_init(void)
int err;

err = isa_register_driver(&cs423x_isa_driver, SNDRV_CARDS);
if (err < 0)
return err;
#ifdef CONFIG_PNP
if (!err)
isa_registered = 1;
#ifdef CS4232
err = pnp_register_driver(&cs4232_pnp_driver);
if (!err)
Expand All @@ -781,8 +782,14 @@ static int __init alsa_card_cs423x_init(void)
err = pnp_register_card_driver(&cs423x_pnpc_driver);
if (!err)
pnpc_registered = 1;
#endif /* CONFIG_PNP */
return 0;
#ifdef CS4232
if (pnp_registered)
err = 0;
#endif
if (isa_registered)
err = 0;
#endif
return err;
}

static void __exit alsa_card_cs423x_exit(void)
Expand All @@ -794,8 +801,9 @@ static void __exit alsa_card_cs423x_exit(void)
if (pnp_registered)
pnp_unregister_driver(&cs4232_pnp_driver);
#endif
#endif /* CONFIG_PNP */
isa_unregister_driver(&cs423x_isa_driver);
if (isa_registered)
#endif
isa_unregister_driver(&cs423x_isa_driver);
}

module_init(alsa_card_cs423x_init)
Expand Down
19 changes: 13 additions & 6 deletions sound/isa/es18xx.c
Original file line number Diff line number Diff line change
Expand Up @@ -2036,7 +2036,9 @@ module_param_array(dma2, int, NULL, 0444);
MODULE_PARM_DESC(dma2, "DMA 2 # for ES18xx driver.");

#ifdef CONFIG_PNP
static int pnp_registered, pnpc_registered;
static int isa_registered;
static int pnp_registered;
static int pnpc_registered;

static struct pnp_device_id snd_audiodrive_pnpbiosids[] = {
{ .id = "ESS1869" },
Expand Down Expand Up @@ -2466,18 +2468,22 @@ static int __init alsa_card_es18xx_init(void)
int err;

err = isa_register_driver(&snd_es18xx_isa_driver, SNDRV_CARDS);
if (err < 0)
return err;

#ifdef CONFIG_PNP
if (!err)
isa_registered = 1;

err = pnp_register_driver(&es18xx_pnp_driver);
if (!err)
pnp_registered = 1;

err = pnp_register_card_driver(&es18xx_pnpc_driver);
if (!err)
pnpc_registered = 1;

if (isa_registered || pnp_registered)
err = 0;
#endif
return 0;
return err;
}

static void __exit alsa_card_es18xx_exit(void)
Expand All @@ -2487,8 +2493,9 @@ static void __exit alsa_card_es18xx_exit(void)
pnp_unregister_card_driver(&es18xx_pnpc_driver);
if (pnp_registered)
pnp_unregister_driver(&es18xx_pnp_driver);
if (isa_registered)
#endif
isa_unregister_driver(&snd_es18xx_isa_driver);
isa_unregister_driver(&snd_es18xx_isa_driver);
}

module_init(alsa_card_es18xx_init)
Expand Down
15 changes: 10 additions & 5 deletions sound/isa/gus/interwave.c
Original file line number Diff line number Diff line change
Expand Up @@ -135,6 +135,7 @@ struct snd_interwave {


#ifdef CONFIG_PNP
static int isa_registered;
static int pnp_registered;

static struct pnp_card_device_id snd_interwave_pnpids[] = {
Expand Down Expand Up @@ -934,24 +935,28 @@ static int __init alsa_card_interwave_init(void)
int err;

err = isa_register_driver(&snd_interwave_driver, SNDRV_CARDS);
if (err < 0)
return err;
#ifdef CONFIG_PNP
/* ISA PnP cards */
if (!err)
isa_registered = 1;

err = pnp_register_card_driver(&interwave_pnpc_driver);
if (!err)
pnp_registered = 1;

if (isa_registered)
err = 0;
#endif
return 0;
return err;
}

static void __exit alsa_card_interwave_exit(void)
{
#ifdef CONFIG_PNP
if (pnp_registered)
pnp_unregister_card_driver(&interwave_pnpc_driver);
if (isa_registered)
#endif
isa_unregister_driver(&snd_interwave_driver);
isa_unregister_driver(&snd_interwave_driver);
}

module_init(alsa_card_interwave_init)
Expand Down
15 changes: 11 additions & 4 deletions sound/isa/opl3sa2.c
Original file line number Diff line number Diff line change
Expand Up @@ -92,6 +92,7 @@ module_param_array(opl3sa3_ymode, int, NULL, 0444);
MODULE_PARM_DESC(opl3sa3_ymode, "Speaker size selection for 3D Enhancement mode: Desktop/Large Notebook/Small Notebook/HiFi.");

#ifdef CONFIG_PNP
static int isa_registered;
static int pnp_registered;
static int pnpc_registered;
#endif
Expand Down Expand Up @@ -967,17 +968,22 @@ static int __init alsa_card_opl3sa2_init(void)
int err;

err = isa_register_driver(&snd_opl3sa2_isa_driver, SNDRV_CARDS);
if (err < 0)
return err;
#ifdef CONFIG_PNP
if (!err)
isa_registered = 1;

err = pnp_register_driver(&opl3sa2_pnp_driver);
if (!err)
pnp_registered = 1;

err = pnp_register_card_driver(&opl3sa2_pnpc_driver);
if (!err)
pnpc_registered = 1;

if (isa_registered || pnp_registered)
err = 0;
#endif
return 0;
return err;
}

static void __exit alsa_card_opl3sa2_exit(void)
Expand All @@ -987,8 +993,9 @@ static void __exit alsa_card_opl3sa2_exit(void)
pnp_unregister_card_driver(&opl3sa2_pnpc_driver);
if (pnp_registered)
pnp_unregister_driver(&opl3sa2_pnp_driver);
if (isa_registered)
#endif
isa_unregister_driver(&snd_opl3sa2_isa_driver);
isa_unregister_driver(&snd_opl3sa2_isa_driver);
}

module_init(alsa_card_opl3sa2_init)
Expand Down
15 changes: 10 additions & 5 deletions sound/isa/sb/sb16.c
Original file line number Diff line number Diff line change
Expand Up @@ -129,6 +129,7 @@ MODULE_PARM_DESC(seq_ports, "Number of sequencer ports for WaveTable synth.");
#endif

#ifdef CONFIG_PNP
static int isa_registered;
static int pnp_registered;
#endif

Expand Down Expand Up @@ -702,24 +703,28 @@ static int __init alsa_card_sb16_init(void)
int err;

err = isa_register_driver(&snd_sb16_isa_driver, SNDRV_CARDS);
if (err < 0)
return err;
#ifdef CONFIG_PNP
/* PnP cards at last */
if (!err)
isa_registered = 1;

err = pnp_register_card_driver(&sb16_pnpc_driver);
if (!err)
pnp_registered = 1;

if (isa_registered)
err = 0;
#endif
return 0;
return err;
}

static void __exit alsa_card_sb16_exit(void)
{
#ifdef CONFIG_PNP
if (pnp_registered)
pnp_unregister_card_driver(&sb16_pnpc_driver);
if (isa_registered)
#endif
isa_unregister_driver(&snd_sb16_isa_driver);
isa_unregister_driver(&snd_sb16_isa_driver);
}

module_init(alsa_card_sb16_init)
Expand Down
28 changes: 15 additions & 13 deletions sound/isa/sscape.c
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,9 @@ module_param_array(dma, int, NULL, 0444);
MODULE_PARM_DESC(dma, "DMA # for SoundScape driver.");

#ifdef CONFIG_PNP
static int isa_registered;
static int pnp_registered;

static struct pnp_card_device_id sscape_pnpids[] = {
{ .id = "ENS3081", .devs = { { "ENS0000" } } },
{ .id = "" } /* end */
Expand Down Expand Up @@ -1405,31 +1407,31 @@ static struct pnp_card_driver sscape_pnpc_driver = {

static int __init sscape_init(void)
{
int ret;
int err;

/*
* First check whether we were passed any parameters.
* These MUST take precedence over ANY automatic way
* of allocating cards, because the operator is
* S-P-E-L-L-I-N-G it out for us...
*/
ret = isa_register_driver(&snd_sscape_driver, SNDRV_CARDS);
if (ret < 0)
return ret;
err = isa_register_driver(&snd_sscape_driver, SNDRV_CARDS);
#ifdef CONFIG_PNP
if (pnp_register_card_driver(&sscape_pnpc_driver) == 0)
if (!err)
isa_registered = 1;

err = pnp_register_card_driver(&sscape_pnpc_driver);
if (!err)
pnp_registered = 1;

if (isa_registered)
err = 0;
#endif
return 0;
return err;
}

static void __exit sscape_exit(void)
{
#ifdef CONFIG_PNP
if (pnp_registered)
pnp_unregister_card_driver(&sscape_pnpc_driver);
if (isa_registered)
#endif
isa_unregister_driver(&snd_sscape_driver);
isa_unregister_driver(&snd_sscape_driver);
}

module_init(sscape_init);
Expand Down
14 changes: 10 additions & 4 deletions sound/isa/wavefront/wavefront.c
Original file line number Diff line number Diff line change
Expand Up @@ -86,6 +86,7 @@ module_param_array(use_cs4232_midi, bool, NULL, 0444);
MODULE_PARM_DESC(use_cs4232_midi, "Use CS4232 MPU-401 interface (inaccessibly located inside your computer)");

#ifdef CONFIG_PNP
static int isa_registered;
static int pnp_registered;

static struct pnp_card_device_id snd_wavefront_pnpids[] = {
Expand Down Expand Up @@ -706,23 +707,28 @@ static int __init alsa_card_wavefront_init(void)
int err;

err = isa_register_driver(&snd_wavefront_driver, SNDRV_CARDS);
if (err < 0)
return err;
#ifdef CONFIG_PNP
if (!err)
isa_registered = 1;

err = pnp_register_card_driver(&wavefront_pnpc_driver);
if (!err)
pnp_registered = 1;

if (isa_registered)
err = 0;
#endif
return 0;
return err;
}

static void __exit alsa_card_wavefront_exit(void)
{
#ifdef CONFIG_PNP
if (pnp_registered)
pnp_unregister_card_driver(&wavefront_pnpc_driver);
if (isa_registered)
#endif
isa_unregister_driver(&snd_wavefront_driver);
isa_unregister_driver(&snd_wavefront_driver);
}

module_init(alsa_card_wavefront_init)
Expand Down
Loading

0 comments on commit b17bfca

Please sign in to comment.