[PATCH v2 20/22] usb: host: xhci-mtk: deny IRQ0
Sergey Shtylyov
s.shtylyov at omp.ru
Wed Oct 27 02:25:44 PDT 2021
On 27.10.2021 12:18, Chunfeng Yun wrote:
>> If platform_get_irq() returns IRQ0 (considered invalid according to
>> Linus)
>> the driver blithely passes it to usb_add_hcd() that treats IRQ0 as no
>> IRQ
>> at all. Deny IRQ0 right away, returning -EINVAL from the probe()
>> method...
>>
>> Fixes: 0cbd4b34cda9 ("xhci: mediatek: support MTK xHCI host
>> controller")
>> Signed-off-by: Sergey Shtylyov <s.shtylyov at omp.ru>
>> ---
>> drivers/usb/host/xhci-mtk.c | 4 +++-
>> 1 file changed, 3 insertions(+), 1 deletion(-)
>>
>> diff --git a/drivers/usb/host/xhci-mtk.c b/drivers/usb/host/xhci-
>> mtk.c
>> index c53f6f276d5c..d2dc8d9863ee 100644
>> --- a/drivers/usb/host/xhci-mtk.c
>> +++ b/drivers/usb/host/xhci-mtk.c
>> @@ -495,7 +495,7 @@ static int xhci_mtk_probe(struct platform_device
>> *pdev)
>> return ret;
>>
>> irq = platform_get_irq_byname_optional(pdev, "host");
>> - if (irq < 0) {
>> + if (irq <= 0) {
>> if (irq == -EPROBE_DEFER)
>> return irq;
>>
>> @@ -503,6 +503,8 @@ static int xhci_mtk_probe(struct platform_device
>> *pdev)
>> irq = platform_get_irq(pdev, 0);
>> if (irq < 0)
>> return irq;
>> + if (!irq)
> it's "if (irq <= 0)"?
No, if (irq == 0).
>> + return -EINVAL;
>> }
>>
>> wakeup_irq = platform_get_irq_byname_optional(pdev, "wakeup");
MBR, Sergey
More information about the Linux-mediatek
mailing list