[ALSA] Prevent ALSA trident driver from grabbing pcnet32 hardware
Modules: Trident driver Some pcnet32 hardware erroneously has the Vendor ID for Trident. The pcnet32 driver looks for the PCI ethernet class before grabbing the hardware, but the current trident driver does not check against the PCI audio class. This allows the trident driver to claim the pcnet32 hardware. This patch prevents that. Per Jiri Slaby's request, I changed the trident driver to use PCI_DEVICE macro and PCI ID #defines. This patch is untested on Trident 4DWAVE_DX hardware, but has been tested on pcnet32 hardware. Signed-off-by: Jon Mason <jdmason@us.ibm.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
parent
3315937825
commit
e3183ec9cd
1 changed files with 5 additions and 3 deletions
|
@ -64,9 +64,11 @@ module_param_array(wavetable_size, int, NULL, 0444);
|
|||
MODULE_PARM_DESC(wavetable_size, "Maximum memory size in kB for wavetable synth.");
|
||||
|
||||
static struct pci_device_id snd_trident_ids[] = {
|
||||
{ 0x1023, 0x2000, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0, }, /* Trident 4DWave DX PCI Audio */
|
||||
{ 0x1023, 0x2001, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0, }, /* Trident 4DWave NX PCI Audio */
|
||||
{ 0x1039, 0x7018, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0, }, /* SiS SI7018 PCI Audio */
|
||||
{PCI_DEVICE(PCI_VENDOR_ID_TRIDENT, PCI_DEVICE_ID_TRIDENT_4DWAVE_DX),
|
||||
PCI_CLASS_MULTIMEDIA_AUDIO << 8, 0xffff00, 0},
|
||||
{PCI_DEVICE(PCI_VENDOR_ID_TRIDENT, PCI_DEVICE_ID_TRIDENT_4DWAVE_NX),
|
||||
0, 0, 0},
|
||||
{PCI_DEVICE(PCI_VENDOR_ID_SI, PCI_DEVICE_ID_SI_7018), 0, 0, 0},
|
||||
{ 0, }
|
||||
};
|
||||
|
||||
|
|
Loading…
Reference in a new issue