All of lore.kernel.org
 help / color / mirror / Atom feed
From: Conor Dooley <conor@kernel.org>
To: Caleb James DeLisle <cjd@cjdns.fr>
Cc: sashiko-reviews@lists.linux.dev, devicetree@vger.kernel.org,
	conor+dt@kernel.org, krzk+dt@kernel.org, robh@kernel.org
Subject: Re: [PATCH v2 1/5] dt-bindings: timer: econet: Update EN751627 for multi-IRQ
Date: Thu, 14 May 2026 19:22:36 +0100	[thread overview]
Message-ID: <20260514-abiding-entertain-cd2aab06bef5@spud> (raw)
In-Reply-To: <23568f49-4b58-4acd-85fa-7eba5e99b46c@cjdns.fr>

[-- Attachment #1: Type: text/plain, Size: 2466 bytes --]

On Thu, May 14, 2026 at 05:22:05PM +0200, Caleb James DeLisle wrote:
> > > @@ -52,21 +52,31 @@ allOf:
> > >             items:
> > >               - description: VPE timers 0 and 1
> > >               - description: VPE timers 2 and 3
> > > +        interrupts:
> > > +          description: An interrupt for each timer (one per VPE)
> > > +          minItems: 4
> > Could this include an items list detailing the specific purpose of each
> > of the four interrupts? Defining an items array for each interrupt (such as
> > Timer for VPE 0, VPE 1, etc.) would help ensure clarity for driver developers
> > and enforce a consistent definition order.
> IMO should be self-evident.

Ye, I think this is okay. Perhaps you could make it an items list if you
want though.

> > 
> > [ ... ]
> > >   examples:
> > >     - |
> > > +    #include <dt-bindings/interrupt-controller/mips-gic.h>
> > >       timer@1fbf0400 {
> > >           compatible = "econet,en751627-timer", "econet,en751221-timer";
> > Is it safe to retain econet,en751221-timer as a fallback compatible string?
> > 
> > Device Tree fallback strings declare that an older OS can safely operate the
> > hardware using the fallback driver. Since econet,en751627-timer uses four
> > individual shared IRQs while econet,en751221-timer strictly uses a single
> > percpu IRQ, they appear to have fundamentally incompatible interrupt
> > topologies.
> > 
> > If an older kernel boots using the fallback, the legacy
> > timer-econet-en751221 driver will attempt to map the first shared IRQ as a
> > percpu IRQ via request_percpu_irq(). This will fail with -EINVAL, causing
> > the timer driver to fail to initialize and potentially leading to a boot
> > failure or system hang.
> > 
> > Should econet,en751627-timer be defined as a standalone compatible string
> > without the econet,en751221-timer fallback?
> I find this argument compelling so I'll switch.

And ye, this is a good point that it made.

> > 
> > >           reg = <0x1fbf0400 0x100>, <0x1fbe0000 0x100>;
> > >           interrupt-parent = <&intc>;
> > > -        interrupts = <30>;
> > > +        interrupts = <GIC_SHARED 30 IRQ_TYPE_LEVEL_HIGH>,
> > > +                     <GIC_SHARED 29 IRQ_TYPE_LEVEL_HIGH>,
> > > +                     <GIC_SHARED 37 IRQ_TYPE_LEVEL_HIGH>,
> > > +                     <GIC_SHARED 36 IRQ_TYPE_LEVEL_HIGH>;
> > >           clocks = <&hpt_clock>;
> > >       };

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]

  reply	other threads:[~2026-05-14 18:22 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-05-14  0:05 [PATCH v2 0/5] clocksource/timer-econet-en751221: Support irq number per timer Caleb James DeLisle
2026-05-14  0:05 ` [PATCH v2 1/5] dt-bindings: timer: econet: Update EN751627 for multi-IRQ Caleb James DeLisle
2026-05-14 11:42   ` sashiko-bot
2026-05-14 15:22     ` Caleb James DeLisle
2026-05-14 18:22       ` Conor Dooley [this message]
2026-05-14  0:05 ` [PATCH v2 2/5] clocksource/timer-econet-en751221: Move generic logic out of cevt_init Caleb James DeLisle
2026-05-14 12:05   ` sashiko-bot
2026-05-14 15:57     ` Caleb James DeLisle
2026-05-14  0:05 ` [PATCH v2 3/5] clocksource/timer-econet-en751221: Always map all membase blocks Caleb James DeLisle
2026-05-14 12:30   ` sashiko-bot
2026-05-14 16:52     ` Caleb James DeLisle
2026-05-14  0:06 ` [PATCH v2 4/5] clocksource/timer-econet-en751221: Unmap io mem on probe error Caleb James DeLisle
2026-05-14 12:56   ` sashiko-bot
2026-05-14 16:56     ` Caleb James DeLisle
2026-05-14  0:06 ` [PATCH v2 5/5] clocksource/timer-econet-en751221: Support irq number per timer Caleb James DeLisle
2026-05-14 16:18   ` sashiko-bot
2026-05-14 20:32     ` Caleb James DeLisle

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20260514-abiding-entertain-cd2aab06bef5@spud \
    --to=conor@kernel.org \
    --cc=cjd@cjdns.fr \
    --cc=conor+dt@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=krzk+dt@kernel.org \
    --cc=robh@kernel.org \
    --cc=sashiko-reviews@lists.linux.dev \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.