lkml.org 
[lkml]   [2020]   [Sep]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH v2 1/4] Input: ep93xx_keypad - Fix handling of platform_get_irq() error
On Tue, Sep 15, 2020 at 06:05:22PM +0200, Krzysztof Kozlowski wrote:
> On Mon, 14 Sep 2020 at 08:51, Dmitry Torokhov <dmitry.torokhov@gmail.com> wrote:
> >
> > Hi Krzysztof,
> >
> > On Fri, Aug 28, 2020 at 04:57:41PM +0200, Krzysztof Kozlowski wrote:
> > > platform_get_irq() returns -ERRNO on error. In such case comparison
> > > to 0 would pass the check.
> >
> > platform_get_irq() is a bit of a mess. Historically we allowed defining
> > interrupt resource with r->start == 0 and for such cases non-OF non-ACPI
> > code will return 0 from platform_get_irq() to indicate that IRQ is not
> > assigned.
> >
> > We either need to stop doing this in platform_get_irq(), or the
> > conditions in this patch and followups should be "irq <= 0" and we need
> > to make sure we do not accidentally return 0 from probe ...
>
> Hi,
>
> It's then contradictory to platform_get_irq documentation which
> explicitly says - zero will not be returned on error. This was also
> clarified in commit e330b9a6bb35 ("platform: don't return 0 from
> platform_get_irq[_byname]() on error").

It was for OF/ACPI, but not for resources described via DEFINE_RES_IRQ
or other means. However I see we added a big fat WARN_ON() in case if we
end up returning 0 still, so I will be applying your patches.

Thanks.

--
Dmitry

\
 
 \ /
  Last update: 2020-09-16 02:56    [W:0.056 / U:1.220 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site