From: Vinod Koul <vkoul@kernel.org>
To: Richard Fitzgerald <rf@opensource.cirrus.com>
Cc: broonie@kernel.org, linux-sound@vger.kernel.org,
linux-kernel@vger.kernel.org, patches@opensource.cirrus.com
Subject: Re: [PATCH 3/4] soundwire: bus_type: Create IRQ mapping before calling driver probe()
Date: Wed, 12 Aug 2026 14:14:57 +0530 [thread overview]
Message-ID: <anwyid-ZPYHo1huA@vaman> (raw)
In-Reply-To: <271cedf9-9fb0-443c-ae26-fa3276e3c6ab@opensource.cirrus.com>
On 11-08-26, 09:37, Richard Fitzgerald wrote:
> On 11/8/26 06:16, Vinod Koul wrote:
> > On 10-08-26, 11:40, Richard Fitzgerald wrote:
> > > Call sdw_irq_create_mapping() before calling the peripheral driver
> > > probe() so that it is possible to request the IRQ during probe().
> > >
> > > Previously creation of the mapping was conditional on the use_domain_irq
> > > flag in the driver properties. But these are filled in after probe(),
> > > which meant it wasn't possible to request the IRQ during probe(). This
> > > was ok for MFD drivers where only children requested the IRQ. But for
> > > normal drivers it led to the non-standard behavior of having to defer
> > > requesting the IRQ until after probe().
> >
> > Shouldnt that still be the case (conditionally creating mapping). Does
> > every need this mapping?
>
> Other interrupt providers create all their IRQs even if nothing uses
> them, so why worry about one IRQ mapping per SoundWire peripheral?
>
> Currently it's just another way that the SoundWire subsystem doesn't
> follow normal Linux conventions and requires the codec drivers to
> work around the strangeness.
Hmm okay lets go with this, so
Acked-by: Vinod Koul <vkoul@kernel.org>
>
> We could unmap it after ops->read_prop() if we see use_domain_irq is
> false.
>
> If we want to skip ever creating it, we'd need to move use_domain_irq
> to somewhere that is valid _before_ calling the codec driver probe().
>
> Or call ops->read_prop() before calling probe(). There's no explanation
> why read_prop() was placed after probe() so I'm reluctant to move it.
> But I assume it's expected that probe() will always be the first
> function called in a driver.
The intent was that drivers can override the properties, so after the
probe is recommended.
--
~Vinod
next prev parent reply other threads:[~2026-08-12 8:45 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-10 10:40 [PATCH 0/4] ASoC: cs35l56: Switch to using the IRQ from the SoundWire core Richard Fitzgerald
2026-08-10 10:40 ` [PATCH 1/4] ASoC: cs35l56: Request IRQ in cs35l56_common_probe() Richard Fitzgerald
2026-08-10 10:40 ` [PATCH 2/4] ASoC: cs35l56: Move cs35l56_irq_request() after cs35l56_irq() Richard Fitzgerald
2026-08-10 10:40 ` [PATCH 3/4] soundwire: bus_type: Create IRQ mapping before calling driver probe() Richard Fitzgerald
2026-08-11 5:16 ` Vinod Koul
2026-08-11 8:37 ` Richard Fitzgerald
2026-08-12 8:44 ` Vinod Koul [this message]
2026-08-10 10:40 ` [PATCH 4/4] ASoC: cs35l56: Use IRQ provided by the SoundWire core Richard Fitzgerald
2026-08-12 10:01 ` [PATCH 0/4] ASoC: cs35l56: Switch to using the IRQ from " Richard Fitzgerald
2026-08-14 12:54 ` Mark Brown
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=anwyid-ZPYHo1huA@vaman \
--to=vkoul@kernel.org \
--cc=broonie@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-sound@vger.kernel.org \
--cc=patches@opensource.cirrus.com \
--cc=rf@opensource.cirrus.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®