Messages in this thread | | | Date | Mon, 12 Sep 2011 12:47:29 +0200 | From | Takashi Iwai <> | Subject | Re: [RFC] [PATCH 02/62] mpu401:snd_mpu401_uart_new(): split semantic of irq_flags |
| |
At Sun, 11 Sep 2011 17:10:36 +0200, Clemens Ladisch wrote: > > diff --git a/sound/isa/als100.c b/sound/isa/als100.c > index 20becc8..3355609 100644 > --- a/sound/isa/als100.c > +++ b/sound/isa/als100.c > @@ -245,18 +245,22 @@ static int __devinit snd_card_als100_probe(int dev, > > if (mpu_port[dev] > 0 && mpu_port[dev] != SNDRV_AUTO_PORT) { > int mpu_type = MPU401_HW_ALS100; > + int mpu_flags = 0; > > - if (mpu_irq[dev] == SNDRV_AUTO_IRQ) > + if (mpu_irq[dev] == SNDRV_AUTO_IRQ) { > mpu_irq[dev] = -1; > + mpu_flags = MPU401_INFO_RX_POLL; > + }
When mpu_irq[dev] is set to -1, it won't work. Instead of setting mpu_flag in this if block, you'd need another check of mpu_irq[], i.e.
if (mpu_irq[dev] == SNDRV_AUTO_IRQ) mpu_irq[dev] = -1; if (mpu_irq[dev] < 0) mpu_flags = MPU401_INFO_RX_POLL;
The similar problems are found in other places, too.
thanks,
Takashi
| |