Loading sound/pci/hda/hda_codec.c +10 −4 Original line number Diff line number Diff line Loading @@ -3467,10 +3467,16 @@ int snd_hda_multi_out_analog_open(struct hda_codec *codec, } mutex_lock(&codec->spdif_mutex); if (mout->share_spdif) { if ((runtime->hw.rates & mout->spdif_rates) && (runtime->hw.formats & mout->spdif_formats)) { runtime->hw.rates &= mout->spdif_rates; runtime->hw.formats &= mout->spdif_formats; if (mout->spdif_maxbps < hinfo->maxbps) hinfo->maxbps = mout->spdif_maxbps; } else { mout->share_spdif = 0; /* FIXME: need notify? */ } } mutex_unlock(&codec->spdif_mutex); } Loading sound/pci/hda/hda_intel.c +7 −0 Original line number Diff line number Diff line Loading @@ -1469,6 +1469,7 @@ static int azx_pcm_open(struct snd_pcm_substream *substream) mutex_unlock(&chip->open_mutex); return err; } snd_pcm_limit_hw_rates(runtime); spin_lock_irqsave(&chip->reg_lock, flags); azx_dev->substream = substream; azx_dev->running = 0; Loading @@ -1478,6 +1479,12 @@ static int azx_pcm_open(struct snd_pcm_substream *substream) snd_pcm_set_sync(substream); mutex_unlock(&chip->open_mutex); if (snd_BUG_ON(!runtime->hw.channels_min || !runtime->hw.channels_max)) return -EINVAL; if (snd_BUG_ON(!runtime->hw.formats)) return -EINVAL; if (snd_BUG_ON(!runtime->hw.rates)) return -EINVAL; return 0; } Loading sound/pci/hda/patch_sigmatel.c +2 −2 Original line number Diff line number Diff line Loading @@ -1590,8 +1590,6 @@ static struct snd_pci_quirk stac9200_cfg_tbl[] = { /* SigmaTel reference board */ SND_PCI_QUIRK(PCI_VENDOR_ID_INTEL, 0x2668, "DFI LanParty", STAC_REF), SND_PCI_QUIRK(PCI_VENDOR_ID_INTEL, 0xfb30, "SigmaTel",STAC_9205_REF), SND_PCI_QUIRK(PCI_VENDOR_ID_DFI, 0x3101, "DFI LanParty", STAC_REF), /* Dell laptops have BIOS problem */ Loading Loading @@ -2344,6 +2342,8 @@ static struct snd_pci_quirk stac9205_cfg_tbl[] = { /* SigmaTel reference board */ SND_PCI_QUIRK(PCI_VENDOR_ID_INTEL, 0x2668, "DFI LanParty", STAC_9205_REF), SND_PCI_QUIRK(PCI_VENDOR_ID_INTEL, 0xfb30, "SigmaTel", STAC_9205_REF), SND_PCI_QUIRK(PCI_VENDOR_ID_DFI, 0x3101, "DFI LanParty", STAC_9205_REF), /* Dell */ Loading Loading
sound/pci/hda/hda_codec.c +10 −4 Original line number Diff line number Diff line Loading @@ -3467,10 +3467,16 @@ int snd_hda_multi_out_analog_open(struct hda_codec *codec, } mutex_lock(&codec->spdif_mutex); if (mout->share_spdif) { if ((runtime->hw.rates & mout->spdif_rates) && (runtime->hw.formats & mout->spdif_formats)) { runtime->hw.rates &= mout->spdif_rates; runtime->hw.formats &= mout->spdif_formats; if (mout->spdif_maxbps < hinfo->maxbps) hinfo->maxbps = mout->spdif_maxbps; } else { mout->share_spdif = 0; /* FIXME: need notify? */ } } mutex_unlock(&codec->spdif_mutex); } Loading
sound/pci/hda/hda_intel.c +7 −0 Original line number Diff line number Diff line Loading @@ -1469,6 +1469,7 @@ static int azx_pcm_open(struct snd_pcm_substream *substream) mutex_unlock(&chip->open_mutex); return err; } snd_pcm_limit_hw_rates(runtime); spin_lock_irqsave(&chip->reg_lock, flags); azx_dev->substream = substream; azx_dev->running = 0; Loading @@ -1478,6 +1479,12 @@ static int azx_pcm_open(struct snd_pcm_substream *substream) snd_pcm_set_sync(substream); mutex_unlock(&chip->open_mutex); if (snd_BUG_ON(!runtime->hw.channels_min || !runtime->hw.channels_max)) return -EINVAL; if (snd_BUG_ON(!runtime->hw.formats)) return -EINVAL; if (snd_BUG_ON(!runtime->hw.rates)) return -EINVAL; return 0; } Loading
sound/pci/hda/patch_sigmatel.c +2 −2 Original line number Diff line number Diff line Loading @@ -1590,8 +1590,6 @@ static struct snd_pci_quirk stac9200_cfg_tbl[] = { /* SigmaTel reference board */ SND_PCI_QUIRK(PCI_VENDOR_ID_INTEL, 0x2668, "DFI LanParty", STAC_REF), SND_PCI_QUIRK(PCI_VENDOR_ID_INTEL, 0xfb30, "SigmaTel",STAC_9205_REF), SND_PCI_QUIRK(PCI_VENDOR_ID_DFI, 0x3101, "DFI LanParty", STAC_REF), /* Dell laptops have BIOS problem */ Loading Loading @@ -2344,6 +2342,8 @@ static struct snd_pci_quirk stac9205_cfg_tbl[] = { /* SigmaTel reference board */ SND_PCI_QUIRK(PCI_VENDOR_ID_INTEL, 0x2668, "DFI LanParty", STAC_9205_REF), SND_PCI_QUIRK(PCI_VENDOR_ID_INTEL, 0xfb30, "SigmaTel", STAC_9205_REF), SND_PCI_QUIRK(PCI_VENDOR_ID_DFI, 0x3101, "DFI LanParty", STAC_9205_REF), /* Dell */ Loading