summaryrefslogtreecommitdiff
path: root/sound/pci/oxygen/hifier.c
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2009-03-24 00:36:17 +0100
committerTakashi Iwai <tiwai@suse.de>2009-03-24 00:36:17 +0100
commitb54fc8dd2c43888f2754505cca2b6e88604a8ffa (patch)
tree7613f3734b0b91c316438c2fd3814a5565e8593a /sound/pci/oxygen/hifier.c
parent9fb5430c3d6e96a74fd4406dbe7608f36abb9987 (diff)
parent873591db59e66434fd0a484c92f69fc21100b33d (diff)
downloadlwn-b54fc8dd2c43888f2754505cca2b6e88604a8ffa.tar.gz
lwn-b54fc8dd2c43888f2754505cca2b6e88604a8ffa.zip
Merge branch 'topic/oxygen' into for-linus
Diffstat (limited to 'sound/pci/oxygen/hifier.c')
-rw-r--r--sound/pci/oxygen/hifier.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/sound/pci/oxygen/hifier.c b/sound/pci/oxygen/hifier.c
index 1ab833f843eb..84ef13183419 100644
--- a/sound/pci/oxygen/hifier.c
+++ b/sound/pci/oxygen/hifier.c
@@ -45,6 +45,7 @@ MODULE_PARM_DESC(enable, "enable card");
static struct pci_device_id hifier_ids[] __devinitdata = {
{ OXYGEN_PCI_SUBID(0x14c3, 0x1710) },
{ OXYGEN_PCI_SUBID(0x14c3, 0x1711) },
+ { OXYGEN_PCI_SUBID_BROKEN_EEPROM },
{ }
};
MODULE_DEVICE_TABLE(pci, hifier_ids);
@@ -151,7 +152,6 @@ static const struct oxygen_model model_hifier = {
.shortname = "C-Media CMI8787",
.longname = "C-Media Oxygen HD Audio",
.chip = "CMI8788",
- .owner = THIS_MODULE,
.init = hifier_init,
.control_filter = hifier_control_filter,
.cleanup = hifier_cleanup,
@@ -173,6 +173,13 @@ static const struct oxygen_model model_hifier = {
.adc_i2s_format = OXYGEN_I2S_FORMAT_LJUST,
};
+static int __devinit get_hifier_model(struct oxygen *chip,
+ const struct pci_device_id *id)
+{
+ chip->model = model_hifier;
+ return 0;
+}
+
static int __devinit hifier_probe(struct pci_dev *pci,
const struct pci_device_id *pci_id)
{
@@ -185,7 +192,8 @@ static int __devinit hifier_probe(struct pci_dev *pci,
++dev;
return -ENOENT;
}
- err = oxygen_pci_probe(pci, index[dev], id[dev], &model_hifier, 0);
+ err = oxygen_pci_probe(pci, index[dev], id[dev], THIS_MODULE,
+ hifier_ids, get_hifier_model);
if (err >= 0)
++dev;
return err;