> > Once I got my head around that, there's only one small change necessary to > > make the IDE driver work: in ide-probe:init_irq(), we need to ignore the > > fact that request_irq() fails for the IDE interrupt (the interrupt has > > already been claimed by the stdma.c). > > Shared interrupts now always need an explicit SA_SHIRQ.
That would be one possible solution - although it doesn't quite do what we need just yet. It would register the IDE interrupt to be chained with the ST-DMA interrupt, while we currently use stdma_int() to call the interrupt handler for the module that actually 'locked' the DMA and the corresponding interrupt. From what I recall, there is no simple way to figure out which interrupt source triggered the interrupt. At least, there's no way to figure out which driver the DMA was programmed for if the interrupt is raised by DMA completion, so we still need the locking scheme there. I see stdma_int() always returns IRQ_HANDLED; will the other chained handlers still be called anyway? That might mess things up. Otherwise I just need to register stdma_int with SA_SHIRQ and the problem may go away. We'll see about that. Anyway, i've now got nfeth to register as well, maybe I get a ssh login next. I'll wait for your patches to show up in CVS and will start on the framebuffer driver now. Michael -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]