Re: [Patch 0/1]drm_irq: Introducing the irq_thread support
From: Rob Clark
Date: Wed Sep 05 2012 - 11:47:25 EST
On Wed, Sep 5, 2012 at 8:27 AM, Daniel Vetter <daniel@xxxxxxxx> wrote:
> On Wed, Sep 05, 2012 at 01:53:44AM +0000, Liu, Chuansheng wrote:
>> This patch is for introducing the irq thread support in drm_irq.
>>
>> Why we need irq thread in drm_irq code?
>> In our GPU system, the gpu interrupt handler need some time even > 1ms to finish,
>> in that case, the whole system will stay in irq disable status. One case is:
>> when audio is playing, it sometimes effects the audio quality.
>>
>> So we have to introduce the irq thread in drm_irq, it can help us move some heavy work into irq thread
>> and other irq interrupts can be handled in time. Also the IRQF_ONESHOT is helpful for irq thread.
>>
>> Include one patch:
>> [PATCH 01/1] drm_irq-Introducing-the-irq_thread-support
>
> For a kms drm driver (and tbh, doing a non-kms driver today is not a great
> idea), there's no reason to use the drm_irq_install/_unistall helpers.
>
> So if you driver has special needs wrt irq handling that don't neatly fit
> what the drm_irq stuff provides, simply don't use it - all the generic
> code that's there is just to keep non-kms userspace going.
perhaps an easy thing would just be to allow the driver to provide
it's own request_irq? That might be an easier way for devices that
need to register multiple irq's, etc?
Or is it better to just bypass and dev->irq_enabled=1? That seemed a
bit like a hack to me, but the current irq code is more framework-ish,
and less helper-ish..
BR,
-R
> Yours, Daniel
> --
> Daniel Vetter
> Mail: daniel@xxxxxxxx
> Mobile: +41 (0)79 365 57 48
> _______________________________________________
> dri-devel mailing list
> dri-devel@xxxxxxxxxxxxxxxxxxxxx
> http://lists.freedesktop.org/mailman/listinfo/dri-devel
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/