* [TRIDENT] teach trident_interrupt() about irqreturn_t
@ 2003-04-21 10:07 Muli Ben-Yehuda
2003-04-21 10:58 ` Andrew Morton
0 siblings, 1 reply; 2+ messages in thread
From: Muli Ben-Yehuda @ 2003-04-21 10:07 UTC (permalink / raw)
To: Linus Torvalds; +Cc: Linux-Kernel
[-- Attachment #1: Type: text/plain, Size: 1577 bytes --]
Hi Linus,
This patch updates trident_interrupt() to return
IRQ_HANDLED and cleans it up a little while I'm at it. Compiles, boots
and plays mp3s fine. Patch is against 2.5.68-cvs, please apply.
Index: sound/oss/trident.c
===================================================================
RCS file: /home/cvs/linux-2.5/sound/oss/trident.c,v
retrieving revision 1.20
diff -u -r1.20 trident.c
--- sound/oss/trident.c 8 Apr 2003 16:46:36 -0000 1.20
+++ sound/oss/trident.c 21 Apr 2003 09:02:01 -0000
@@ -1728,7 +1728,7 @@
}
}
-static void trident_interrupt(int irq, void *dev_id, struct pt_regs *regs)
+static irqreturn_t trident_interrupt(int irq, void *dev_id, struct pt_regs *regs)
{
struct trident_card *card = (struct trident_card *)dev_id;
u32 event;
@@ -1753,15 +1753,18 @@
ali_queue_task(card, gpio&0x07);
}
event = inl(TRID_REG(card, T4D_MISCINT));
- outl(event | (ST_TARGET_REACHED | MIXER_OVERFLOW | MIXER_UNDERFLOW), TRID_REG(card, T4D_MISCINT));
- spin_unlock(&card->lock);
- return;
+ event |= (ST_TARGET_REACHED | MIXER_OVERFLOW | MIXER_UNDERFLOW);
+ outl(event, TRID_REG(card, T4D_MISCINT));
+ goto done;
}
/* manually clear interrupt status, bad hardware design, blame T^2 */
outl((ST_TARGET_REACHED | MIXER_OVERFLOW | MIXER_UNDERFLOW),
TRID_REG(card, T4D_MISCINT));
+
+done:
spin_unlock(&card->lock);
+ return IRQ_HANDLED;
}
/* in this loop, dmabuf.count signifies the amount of data that is waiting to be copied to
--
Muli Ben-Yehuda
http://www.mulix.org
[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [TRIDENT] teach trident_interrupt() about irqreturn_t
2003-04-21 10:07 [TRIDENT] teach trident_interrupt() about irqreturn_t Muli Ben-Yehuda
@ 2003-04-21 10:58 ` Andrew Morton
0 siblings, 0 replies; 2+ messages in thread
From: Andrew Morton @ 2003-04-21 10:58 UTC (permalink / raw)
To: Muli Ben-Yehuda; +Cc: torvalds, linux-kernel
Muli Ben-Yehuda <mulix@mulix.org> wrote:
>
> Hi Linus,
>
> This patch updates trident_interrupt() to return
> IRQ_HANDLED
I've just done the whole kernel apart from a few scsi drivers (I think).
Sit tight for a day...
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2003-04-21 10:45 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-04-21 10:07 [TRIDENT] teach trident_interrupt() about irqreturn_t Muli Ben-Yehuda
2003-04-21 10:58 ` Andrew Morton
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).