diff options
Diffstat (limited to 'sound/pci/oxygen/oxygen_lib.c')
-rw-r--r-- | sound/pci/oxygen/oxygen_lib.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/sound/pci/oxygen/oxygen_lib.c b/sound/pci/oxygen/oxygen_lib.c index aceb1f9e0f35..0927e0423777 100644 --- a/sound/pci/oxygen/oxygen_lib.c +++ b/sound/pci/oxygen/oxygen_lib.c | |||
@@ -320,7 +320,8 @@ int __devinit oxygen_pci_probe(struct pci_dev *pci, int index, char *id, | |||
320 | struct oxygen *chip; | 320 | struct oxygen *chip; |
321 | int err; | 321 | int err; |
322 | 322 | ||
323 | card = snd_card_new(index, id, model->owner, sizeof *chip); | 323 | card = snd_card_new(index, id, model->owner, |
324 | sizeof *chip + model->model_data_size); | ||
324 | if (!card) | 325 | if (!card) |
325 | return -ENOMEM; | 326 | return -ENOMEM; |
326 | 327 | ||
@@ -329,6 +330,7 @@ int __devinit oxygen_pci_probe(struct pci_dev *pci, int index, char *id, | |||
329 | chip->pci = pci; | 330 | chip->pci = pci; |
330 | chip->irq = -1; | 331 | chip->irq = -1; |
331 | chip->model = model; | 332 | chip->model = model; |
333 | chip->model_data = chip + 1; | ||
332 | spin_lock_init(&chip->reg_lock); | 334 | spin_lock_init(&chip->reg_lock); |
333 | mutex_init(&chip->mutex); | 335 | mutex_init(&chip->mutex); |
334 | INIT_WORK(&chip->spdif_input_bits_work, | 336 | INIT_WORK(&chip->spdif_input_bits_work, |