All of lore.kernel.org
 help / color / mirror / Atom feed
From: Alexander Wilhelm <alexander.wilhelm@westermo.com>
To: Frank Li <Frank.li@oss.nxp.com>
Cc: Thomas Gleixner <tglx@kernel.org>,
	linux-kernel@vger.kernel.org, imx@lists.linux.dev,
	Ioana Ciornei <ioana.ciornei@nxp.com>
Subject: Re: [PATCH RFC 0/2] irqchip/ls-scfg-msi: add multi-MSI support
Date: Mon, 31 Aug 2026 09:35:38 +0200	[thread overview]
Message-ID: <apUuyrFxd_ds3J_H@FUE-ALEWI-WINX> (raw)
In-Reply-To: <aocmn8mkac5O3OMq@lizhi-Precision-Tower-5810>

On Thu, Aug 20, 2026 at 12:09:03PM -0400, Frank Li wrote:
> On Thu, Jul 16, 2026 at 12:14:59PM +0200, Alexander Wilhelm wrote:
> > This series enables multi-MSI (nr_irqs > 1) allocation on the Layerscape
> > SCFG MSI controller so PCI endpoints that request contiguous MSI vector
> > blocks (for example ath12k, which asks for 16 vectors: 3 MHI + 5 CE + 8 DP)
> > no longer fall back to single-MSI operation with all interrupts multiplexed
> > onto one CPU.
> >
> > The first patch is a preparation refactor: switch the hwirq bookkeeping
> > from find_first_zero_bit() / __set_bit() to bitmap_find_free_region() /
> > bitmap_release_region(), release the region on iommu_dma_prepare_msi()
> > error, and loop irq_domain_set_info() over nr_irqs. For the current
> > single-MSI case (order 0) this is functionally equivalent; the only
> > externally visible change is -ENOMEM instead of -ENOSPC on exhaustion.
> >
> > The second patch enables MSI_FLAG_MULTI_PCI_MSI on the parent domain, drops
> > the WARN_ON(nr_irqs != 1) guard, and statically pins each MSIR's chained
> > parent IRQ to its matching CPU in no-affinity mode. That pinning is
> > required because affinity mode only releases every (1 << ibs_shift)-th
> > hwirq and cannot satisfy aligned power-of-two allocations of size > 1;
> > users of multi-MSI must therefore boot with lsmsi=no-affinity.
> 
> what's happen if not set "lsmsi=no-affinity" at boot?

If "no-affinity" is not set, the system falls back to a single MSI vector as
before.


Best regards
Alexander Wilhelm

      reply	other threads:[~2026-08-31  7:55 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-07-16 10:14 [PATCH RFC 0/2] irqchip/ls-scfg-msi: add multi-MSI support Alexander Wilhelm
2026-07-16 10:15 ` [PATCH RFC 1/2] irqchip/ls-scfg-msi: refactor allocation to bitmap_find_free_region() Alexander Wilhelm
2026-07-20  9:34   ` Thomas Gleixner
2026-07-16 10:15 ` [PATCH RFC 2/2] irqchip/ls-scfg-msi: enable multi-MSI allocation Alexander Wilhelm
2026-07-20  9:41   ` Thomas Gleixner
2026-08-20 16:09 ` [PATCH RFC 0/2] irqchip/ls-scfg-msi: add multi-MSI support Frank Li
2026-08-31  7:35   ` Alexander Wilhelm [this message]

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=apUuyrFxd_ds3J_H@FUE-ALEWI-WINX \
    --to=alexander.wilhelm@westermo.com \
    --cc=Frank.li@oss.nxp.com \
    --cc=imx@lists.linux.dev \
    --cc=ioana.ciornei@nxp.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=tglx@kernel.org \
    /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.