All of lore.kernel.org
 help / color / mirror / Atom feed
From: Esben Haabendal <esben@geanix.com>
To: "Alexander Stein" <alexander.stein@ew.tq-group.com>
Cc: "Catalin Marinas" <catalin.marinas@arm.com>,
	 "Will Deacon" <will@kernel.org>,
	 "Stefan Wahren" <wahrenst@gmx.net>,
	<linux-arm-kernel@lists.infradead.org>,
	 <linux-kernel@vger.kernel.org>,
	"Shawn Guo" <shawnguo@kernel.org>
Subject: Re: [PATCH 1/1] arm64: Kconfig: Enable PINCTRL on i.MX platforms
Date: Thu, 08 May 2025 19:09:57 +0200	[thread overview]
Message-ID: <87ikmbav16.fsf@geanix.com> (raw)
In-Reply-To: <6002097.iIbC2pHGDl@steina-w> (Alexander Stein's message of "Thu, 08 May 2025 15:18:04 +0200")

"Alexander Stein" <alexander.stein@ew.tq-group.com> writes:

> Am Donnerstag, 8. Mai 2025, 14:43:09 CEST schrieb Esben Haabendal:
>> "Alexander Stein" <alexander.stein@ew.tq-group.com> writes:
>> > Am Donnerstag, 8. Mai 2025, 10:18:35 CEST schrieb Esben Haabendal:
>> >> "Alexander Stein" <alexander.stein@ew.tq-group.com> writes:
>> >> > Am Donnerstag, 8. Mai 2025, 08:44:22 CEST schrieb Esben Haabendal:
>> >> >> "Alexander Stein" <alexander.stein@ew.tq-group.com> writes:
>> >> >> > Am Mittwoch, 7. Mai 2025, 16:30:33 CEST schrieb Stefan Wahren:
>> >> >> >> Am 07.05.25 um 14:44 schrieb Alexander Stein:
>> >> >> > I noticed that, when using arch/arm64/defconfig and disabling all
>> >> >> > platforms despite ARCH_MXC before running make olddefconfig,
>> >> >> > CONFIG_PINCTRL gets disabled as well. No platform is enabling it. I
>> >> >> > noticed this when building in yocto and non-IMX platforms are disabled
>> >> >> > for build time reasons.
>> >> >>
>> >> >> But is that something that needs to be fixed?
>> >> >>
>> >> >> It sounds like quite a special use-case, and why not simply enable
>> >> >> CONFIG_PINCTRL in that case then?
>> >> >
>> >> > PINCTRL is crucial for any SoC to even boot, so this is an option which has
>> >> > to be set if that platform is enabled.
>> >>
>> >> Yes, but PINCTRL (framework) does not by itself do anything meaningful.
>> >> You need the correct pinctrl driver.
>> >>
>> >> Making the various SOC's select the corresponding pinctrl drivers makes
>> >> sense if it is required for booting under all circumstances. And this
>> >> should then indirectly enable/select PINCTRL and anything else needed
>> >> for that driver.
>> >
>> > If you prefer I don't mind enabling PINCTRL and the SoC-specific driver
>> > (e.g. PINCTRL_IMX8MP) depending on each SoC-support, e.g. SOC_IMX35 or
>> > SOC_IMX8M.
>>
>> For SOC_IMX35, it should be selected by default.
>>
>>     config PINCTRL_IMX35
>>             bool "IMX35 pinctrl driver"
>>             depends on OF
>>             depends on SOC_IMX35 || COMPILE_TEST
>>             default SOC_IMX35
>>
>> For the IMX8M* SoC's, that is not done, as there is only a common
>> SOC_IMX8M config entry, which corresponds to multiple pinctrl drivers,
>> which we probably don't want to select all of by default.
>
> Well, is the SoC support is enabled, it makes totally sense to enable a
> crucial driver like pinctrl by default. It's still deselectable after
> all.

Yes. But now I think I figured out what I was missing here.

In order for the patch to achieve something meaningful, it is not enough
to select PINCTRL from ARCH_MXC. You should add default statements to
the various related SoC specific pinctrl drivers. For example

    config PINCTRL_IMX8MP
            tristate "IMX8MP pinctrl driver"
            depends on OF
            depends on SOC_IMX8M || COMPILE_TEST
            default SOC_IMX8M
            select PINCTRL_IMX
            help
              Say Y here to enable the imx8mp pinctrl driver

This aligns with the way it is done for the arch/arm pinctrl drivers,
and will automatically enable the relevant SoC pinctrl drivers, and
still allow completely disabling pinctrl if/when that is needed.

For SOC_IMX8M, 4 pinctrl drivers will be selected.

/Esben


  reply	other threads:[~2025-05-08 17:21 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-05-07 12:44 [PATCH 1/1] arm64: Kconfig: Enable PINCTRL on i.MX platforms Alexander Stein
2025-05-07 14:30 ` Stefan Wahren
2025-05-08  5:52   ` Alexander Stein
2025-05-08  6:44     ` Esben Haabendal
2025-05-08  8:07       ` Alexander Stein
2025-05-08  8:18         ` Esben Haabendal
2025-05-08 12:25           ` Alexander Stein
2025-05-08 12:43             ` Esben Haabendal
2025-05-08 13:18               ` Alexander Stein
2025-05-08 17:09                 ` Esben Haabendal [this message]
  -- strict thread matches above, loose matches on Subject: below --
2025-05-14 12:19 Alexander Stein

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=87ikmbav16.fsf@geanix.com \
    --to=esben@geanix.com \
    --cc=alexander.stein@ew.tq-group.com \
    --cc=catalin.marinas@arm.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=shawnguo@kernel.org \
    --cc=wahrenst@gmx.net \
    --cc=will@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.