lkml.org 
[lkml]   [2015]   [Sep]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
SubjectRe: [PATCH] genirq: Fix bad IRQ_ONSHOT in forced IRQ setting
From
From: Kohji Okuno <okuno.kohji@jp.panasonic.com>
Date: Thu, 17 Sep 2015 17:21:08 +0900
>> On Thu, 17 Sep 2015, Kohji Okuno wrote:
>>> If handler and thread_fn have valid function pointers for each
>>> in request_thread_irq(), IRQF_ONESHOT is set unnecessarily in
>>> irq_setup_forces_threading() in case of threadirqs.
>>> As this result, the IRQ handler will not be called.
>>
>> That explanation does not make sense. Which handler is not called?
>>
>> Thanks,
>>
>> tglx
>
> Hi tglx,
>
> Please refer to drivers/mmc/host/sdhci.c. sdhci uses sdhci_irq and
> sdhci_thread_irq as the followings.
>
> 3366 sdhci_init(host, 0);
> 3367
> 3368 ret = request_threaded_irq(host->irq, sdhci_irq, sdhci_thread_irq,
> 3369 IRQF_SHARED, mmc_hostname(mmc), host);
>
> When I tested SDIO card, sdhci_irq() was not called after 1st SDIO interrupt.
> After I applied my patch, this worked good.
>
> Best regards,
> Kohji Okuno

Hi tglx,

When 1st sdio IRQ is happend, sdhci_irq() returns IRQ_WAKE_THREAD.
After this, sdhci_irq() is not called in case of threadirqs.

Best regards,
Kohji Okuno


\
 
 \ /
  Last update: 2015-09-17 12:01    [W:0.113 / U:0.924 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site