All of lore.kernel.org
 help / color / mirror / Atom feed
From: Sander Vanheule <sander@svanheule.net>
To: linux-kernel@vger.kernel.org, devicetree@vger.kernel.org
Cc: Thomas Gleixner <tglx@linutronix.de>,
	Marc Zyngier <maz@kernel.org>, Rob Herring <robh+dt@kernel.org>,
	Birger Koblitz <mail@birger-koblitz.de>,
	Bert Vermeulen <bert@biot.com>, John Crispin <john@phrozen.org>,
	Sander Vanheule <sander@svanheule.net>
Subject: [PATCH v3 0/6] Rework realtek-rtl IRQ driver
Date: Sun,  9 Jan 2022 15:54:31 +0100	[thread overview]
Message-ID: <cover.1641739718.git.sander@svanheule.net> (raw)

After seeing some use, and with more devices tested, the current implementation
for the Realtek SoC interrupt controller was found to contain a few flaws.

The driver requires the following fixes:
- irq_domain_ops::map should map the virq, not the hwirq
- routing has an off-by-one error. Routing values (1..6) correspond to MIPS CAUSEF(2..7)

The following improvements should also be made:
- Use N real cascaded interrupts with an interrupt-specific mask of child irq lines.
  Otherwise a high-priority interrupt may cause a low-priority interrupt to be
  handled first.
- Get rid of assumed routing to parent interrupts of the original implementation.

Changes since v2 (RFC):
Link: https://lore.kernel.org/all/cover.1640548009.git.sander@svanheule.net/

- Define new, two-part compatibles for devicetree bindings. The existing format
  is kept for the old one-part compatible, but deprecated. New compatibles will
  require a different way of specifying parent interrupts and interrupt routing.
- Add change to handle all pending SoC interrupts in one go.

Changes since v1 (RFC):
Link: https://lore.kernel.org/all/cover.1640261161.git.sander@svanheule.net/

- Split some of the changes to limit the patch scope to one issue.
- Dropped some small (spurious or unneeded) changes
- Instead of dropping/replacing interrupt-map, the last patches now provide an
  implementation that amends the current situtation.

Sander Vanheule (6):
  irqchip/realtek-rtl: map control data to virq
  irqchip/realtek-rtl: fix off-by-one in routing
  irqchip/realtek-rtl: clear all pending interrupts
  dt-bindings: interrupt-controller: realtek,rtl-intc: require parents
  irqchip/realtek-rtl: use parent interrupts
  irqchip/realtek-rtl: use per-parent domains

 .../realtek,rtl-intc.yaml                     |  78 ++++--
 drivers/irqchip/irq-realtek-rtl.c             | 235 ++++++++++++------
 2 files changed, 222 insertions(+), 91 deletions(-)

-- 
2.33.1


             reply	other threads:[~2022-01-09 14:54 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-01-09 14:54 Sander Vanheule [this message]
2022-01-09 14:54 ` [PATCH v3 1/6] irqchip/realtek-rtl: map control data to virq Sander Vanheule
2022-01-09 14:54 ` [PATCH v3 2/6] irqchip/realtek-rtl: fix off-by-one in routing Sander Vanheule
2022-01-09 14:54 ` [PATCH v3 3/6] irqchip/realtek-rtl: clear all pending interrupts Sander Vanheule
2022-01-09 14:54 ` [PATCH v3 4/6] dt-bindings: interrupt-controller: realtek,rtl-intc: require parents Sander Vanheule
2022-01-21 22:56   ` Rob Herring
2022-01-22 12:49     ` Sander Vanheule
2022-02-05  2:08       ` Rob Herring
2022-01-09 14:54 ` [PATCH v3 5/6] irqchip/realtek-rtl: use parent interrupts Sander Vanheule
2022-01-09 14:54 ` [PATCH v3 6/6] irqchip/realtek-rtl: use per-parent domains Sander Vanheule
2022-01-17 12:21 ` [PATCH v3 0/6] Rework realtek-rtl IRQ driver Marc Zyngier

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=cover.1641739718.git.sander@svanheule.net \
    --to=sander@svanheule.net \
    --cc=bert@biot.com \
    --cc=devicetree@vger.kernel.org \
    --cc=john@phrozen.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mail@birger-koblitz.de \
    --cc=maz@kernel.org \
    --cc=robh+dt@kernel.org \
    --cc=tglx@linutronix.de \
    /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.