aboutsummaryrefslogtreecommitdiffstats
path: root/sound/pci/oxygen/oxygen_lib.c
diff options
context:
space:
mode:
authorClemens Ladisch <clemens@ladisch.de>2008-09-22 09:03:42 +0200
committerClemens Ladisch <clemens@ladisch.de>2008-09-22 09:03:42 +0200
commitdbbbd6744439d95d2b0dc23c5cdca2c477377f76 (patch)
tree6a149c7dbc7d0889cf8c348be2618210661bea84 /sound/pci/oxygen/oxygen_lib.c
parentd76596b1ee7f5cdbd0b73d374ba72372a2c8b725 (diff)
downloadmrst-s0i3-test-dbbbd6744439d95d2b0dc23c5cdca2c477377f76.tar.gz
mrst-s0i3-test-dbbbd6744439d95d2b0dc23c5cdca2c477377f76.tar.xz
mrst-s0i3-test-dbbbd6744439d95d2b0dc23c5cdca2c477377f76.zip
ALSA: oxygen: configure MIDI via device_config
To enable the MIDI port, model drivers must now set flags in device_config, not only in misc_flags. This allows model drivers to enable the UART without creating an ALSA MIDI device. Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
Diffstat (limited to 'sound/pci/oxygen/oxygen_lib.c')
-rw-r--r--sound/pci/oxygen/oxygen_lib.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/sound/pci/oxygen/oxygen_lib.c b/sound/pci/oxygen/oxygen_lib.c
index 02191c6a4e7..b1997216b4a 100644
--- a/sound/pci/oxygen/oxygen_lib.c
+++ b/sound/pci/oxygen/oxygen_lib.c
@@ -502,10 +502,15 @@ int oxygen_pci_probe(struct pci_dev *pci, int index, char *id,
if (err < 0)
goto err_card;
- if (chip->model.misc_flags & OXYGEN_MISC_MIDI) {
+ if (chip->model.device_config & (MIDI_OUTPUT | MIDI_INPUT)) {
+ unsigned int info_flags = MPU401_INFO_INTEGRATED;
+ if (chip->model.device_config & MIDI_OUTPUT)
+ info_flags |= MPU401_INFO_OUTPUT;
+ if (chip->model.device_config & MIDI_INPUT)
+ info_flags |= MPU401_INFO_INPUT;
err = snd_mpu401_uart_new(card, 0, MPU401_HW_CMIPCI,
chip->addr + OXYGEN_MPU401,
- MPU401_INFO_INTEGRATED, 0, 0,
+ info_flags, 0, 0,
&chip->midi);
if (err < 0)
goto err_card;