linux-gpio.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Linus Walleij <linus.walleij@linaro.org>
To: Oleksii Moisieiev <Oleksii_Moisieiev@epam.com>
Cc: "sudeep.holla@arm.com" <sudeep.holla@arm.com>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"linux-arm-kernel@lists.infradead.org" 
	<linux-arm-kernel@lists.infradead.org>,
	"linux-gpio@vger.kernel.org" <linux-gpio@vger.kernel.org>
Subject: Re: [RFC v1 0/2] Introducing generic SCMI pinctrl driver implementation
Date: Tue, 11 Apr 2023 14:27:53 +0200	[thread overview]
Message-ID: <CACRpkdaY1KjkJ_it0okrixrbCbe5Yy8PZiFAYacr_C03adP_hQ@mail.gmail.com> (raw)
In-Reply-To: <cover.1680793130.git.oleksii_moisieiev@epam.com>

Hi Oleksii,

thanks for your patches!

On Fri, Apr 7, 2023 at 12:18 PM Oleksii Moisieiev
<Oleksii_Moisieiev@epam.com> wrote:

> This RFC patch series is intended to introduce the potential generic driver for
> pin controls over SCMI protocol, provided in the latest beta version of DEN0056 [0].
>
> On ARM-based systems, a separate Cortex-M based System Control Processor (SCP)
> provides control on pins, as well as with power, clocks, reset controllers. In this case,
> kernel should use one of the possible transports, described in [0] to access SCP and
> control clocks/power-domains etc. This driver is using SMC transport to communicate with SCP via
> SCMI protocol and access to the Pin Control Subsystem.
>
> The provided driver consists of 2 parts:
>  - firmware/arm_scmi/pinctrl.c - the SCMI pinctrl protocol inmplementation
>    responsible for the communication with SCP firmware.
>
>  - drivers/pinctrl/pinctrl-scmi.c - pinctrl driver, which is using pinctrl
>   protocol implementation to access all necessary data.

TBH this looks so good that I am happy to merge it once you send a non-RFC
version.

My main concern would have been the protocol itself, but that was very
carefully tailored to match what the pin control subsystem needs and
I am quite happy with it the way it came out: using strings for groups and
functions.

The scmi code in patch 1 adds an extra layer of abstraction and a vtable
that would not have been necessary if all of the code was confined in
one file in drivers/pinctrl but it is not up to me how the SCMI people
want to abstract their stuff and there seems to be precedents to do things
this way.

I heard that someone wanted to also implement GPIO over SCMI, but
it is not part of this driver so I guess that will be a future addition.
It's a good starting point to add GPIO later.

Yours,
Linus Walleij

  parent reply	other threads:[~2023-04-11 12:28 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-04-07 10:18 [RFC v1 0/2] Introducing generic SCMI pinctrl driver implementation Oleksii Moisieiev
2023-04-07 10:18 ` [RFC v1 1/2] scmi: Introduce pinctrl SCMI protocol driver Oleksii Moisieiev
2023-04-12 22:04   ` Cristian Marussi
2023-04-17  2:55     ` Peng Fan
2023-04-21  8:40       ` Oleksii Moisieiev
2023-04-21  9:28         ` Linus Walleij
2023-04-21  9:47           ` Cristian Marussi
2023-04-21  9:53             ` Oleksii Moisieiev
2023-04-21  9:30         ` Cristian Marussi
2023-04-21  9:48           ` Oleksii Moisieiev
2023-04-21  9:54             ` Cristian Marussi
2023-04-24  2:12             ` Peng Fan
2023-04-24  1:52         ` Peng Fan
2023-04-24 10:33           ` Oleksii Moisieiev
2023-04-25  2:13             ` Peng Fan
2023-04-25  7:22               ` Oleksii Moisieiev
2023-04-20 17:05     ` Cristian Marussi
2023-04-20 17:23       ` Oleksii Moisieiev
2023-04-20 18:47         ` Cristian Marussi
2023-04-21  7:54           ` Oleksii Moisieiev
     [not found]     ` <71f48fcf-db04-b09f-2ab2-95e6562c8359@epam.com>
2023-04-26 11:19       ` Cristian Marussi
2023-04-26 13:28         ` Oleksii Moisieiev
2023-04-07 10:18 ` [RFC v1 2/2] pinctrl: Implementation of the generic scmi-pinctrl driver Oleksii Moisieiev
2023-04-11 12:27 ` Linus Walleij [this message]
2023-04-11 13:25   ` [RFC v1 0/2] Introducing generic SCMI pinctrl driver implementation Sudeep Holla
2023-04-12 18:44 ` Cristian Marussi
2023-04-26 12:06 ` Michal Simek

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=CACRpkdaY1KjkJ_it0okrixrbCbe5Yy8PZiFAYacr_C03adP_hQ@mail.gmail.com \
    --to=linus.walleij@linaro.org \
    --cc=Oleksii_Moisieiev@epam.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-gpio@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=sudeep.holla@arm.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;
as well as URLs for NNTP newsgroup(s).