mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Billy Tsai <billy_tsai@aspeedtech.com>
To: Tony Lindgren <tony@atomide.com>
Cc: Haojian Zhuang <haojian.zhuang@linaro.org>,
	"linux-arm-kernel@lists.infradead.org"
	<linux-arm-kernel@lists.infradead.org>,
	"linux-omap@vger.kernel.org" <linux-omap@vger.kernel.org>,
	"linux-gpio@vger.kernel.org" <linux-gpio@vger.kernel.org>,
	Linus Walleij <linusw@kernel.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"andrew@codeconstruct.com.au" <andrew@codeconstruct.com.au>,
	BMC-SW <BMC-SW@aspeedtech.com>
Subject: Re: [PATCH v2 0/3] pinctrl: single: bit-per-mux DT flexibility, probe robustness, and consistent pinconf offsets
Date: Fri, 6 Feb 2026 07:24:12 +0000	[thread overview]
Message-ID: <OSQPR06MB7252ADEF2CB075BC40AD7DB68B66A@OSQPR06MB7252.apcprd06.prod.outlook.com> (raw)
In-Reply-To: <20260206042215.GA5376@atomide.com>

* Billy Tsai <billy_tsai@aspeedtech.com> [260204 06:54]:
> > Hi Tony,
> >
> > This series proposes a set of changes to pinctrl-single motivated by
> > bit-per-mux SoC designs such as ASPEED AST2700 (per-pin DT encoding,
> > aligned pinconf offsets, and allowing probe to continue when the MMIO
> > region is already reserved).
> >
> > Linus reviewed the series and noted that he would prefer a custom
> > pinctrl driver using existing helpers and the pinmux = <...> DT
> > property, rather than extending pinctrl-single, and suggested that the
> > pinctrl-single maintainers review the approach before any merge
> > decision.
> >
> > I would appreciate your guidance on whether extending
> > pinctrl-single in this direction is acceptable, or if the preference is
> > to pursue a dedicated driver instead.

> I agree with what Linus that separate more targeted drivers are better
> to avoid the drivers getting complex. With the GENERIC_PIN* helpers doing
> targeted drivers should be trivial.

> My preference would be to move the bit-per-mux handling out of the
> pinctrl-single driver into a separate pinctrl-single-bit type driver.
> Seems that can still handle the cases where no hardware specific driver
> is needed.

> This would simplify pinctrl-single driver quite a bit, and would make
> the new driver quite simple too AFAIK.

Hi Tony,

Thanks for the clarification.

I understand the preference is to keep pinctrl-single minimal and move
the bit-per-mux handling into a separate, more targeted driver built on
top of the GENERIC_PINMUX/GENERIC_PINCONF helpers, rather than extending
pinctrl-single itself.

Based on that, I’ll look into refactoring this into a
pinctrl-single-bit style driver that covers bit-per-mux / bit-per-pin
layouts generically (including AST2700), while keeping pinctrl-single
focused on the simpler register models.

One additional point I’d like to raise is the handling of pre-reserved
MMIO regions.

On AST2700 systems, the SCU register range containing the pinctrl
registers is commonly reserved by a top-level syscon node or by firmware.
In this setup, devm_request_mem_region() can return -EBUSY even though the
registers are valid and intended to be shared, which currently causes the
driver to fail probing and leaves pinmux unconfigured.

When moving to a separate targeted driver, would the preferred approach
be to treat this condition as a warning and continue probing, or is there
an alternative pattern you’d recommend for handling shared SCU-style
register blocks in pinctrl drivers?

Thanks,
Billy

  reply	other threads:[~2026-02-06  7:24 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-01-23  3:41 Billy Tsai
2026-01-23  3:41 ` [PATCH v2 1/3] pinctrl: single: add per-pin binding support for bit-per-mux Billy Tsai
2026-01-23  3:41 ` [PATCH v2 2/3] pinctrl: single: Allow probe to continue if mem region busy Billy Tsai
2026-01-23  3:41 ` [PATCH v2 3/3] pinctrl: single: unify pinconf offset mapping with pinmux Billy Tsai
2026-02-03  0:13 ` [PATCH v2 0/3] pinctrl: single: bit-per-mux DT flexibility, probe robustness, and consistent pinconf offsets Linus Walleij
2026-02-04  6:54   ` Billy Tsai
2026-02-06  4:22     ` Tony Lindgren
2026-02-06  7:24       ` Billy Tsai [this message]
2026-02-06 11:04         ` Linus Walleij
2026-02-06 11:34           ` Billy Tsai
2026-02-06 12:50             ` Linus Walleij
2026-02-09  2:25               ` Billy Tsai
2026-02-09  9:50                 ` Linus Walleij
2026-02-09 14:42                   ` Tony Lindgren
2026-02-10  6:28                     ` Billy Tsai
2026-02-11  1:48                       ` Andrew Jeffery

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=OSQPR06MB7252ADEF2CB075BC40AD7DB68B66A@OSQPR06MB7252.apcprd06.prod.outlook.com \
    --to=billy_tsai@aspeedtech.com \
    --cc=BMC-SW@aspeedtech.com \
    --cc=andrew@codeconstruct.com.au \
    --cc=haojian.zhuang@linaro.org \
    --cc=linusw@kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-gpio@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-omap@vger.kernel.org \
    --cc=tony@atomide.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®