[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <905bd588-38c7-e3ad-c201-534c4593aa51@amd.com>
Date: Wed, 26 Apr 2023 14:06:05 +0200
From: Michal Simek <michal.simek@....com>
To: Oleksii Moisieiev <Oleksii_Moisieiev@...m.com>,
"sudeep.holla@....com" <sudeep.holla@....com>
Cc: Linus Walleij <linus.walleij@...aro.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"linux-arm-kernel@...ts.infradead.org"
<linux-arm-kernel@...ts.infradead.org>,
"linux-gpio@...r.kernel.org" <linux-gpio@...r.kernel.org>
Subject: Re: [RFC v1 0/2] Introducing generic SCMI pinctrl driver
implementation
Hi,
On 4/7/23 12:18, Oleksii Moisieiev 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.
>
> Configuration:
> The scmi-pinctrl driver can be configured using DT bindings.
> For example:
> / {
> cpu_scp_shm: scp-shmem@...3FF0000 {
> compatible = "arm,scmi-shmem";
> reg = <0x0 0x53FF0000 0x0 0x1000>;
> };
>
> firmware {
> scmi {
> compatible = "arm,scmi-smc";
> arm,smc-id = <0x82000002>;
> shmem = <&cpu_scp_shm>;
> #address-cells = <1>;
> #size-cells = <0>;
>
> scmi_pinctrl: protocol@19 {
> reg = <0x18>;
> #pinctrl-cells = <0>;
>
> i2c2_pins: i2c2 {
> groups = "i2c2_a";
> function = "i2c2";
> };
> };
> };
> };
> };
Spec itself has as the part of pinctrl also gpio support.
Here the example there is no gpio-cells property that's why I am curious if you
plan to also add it here.
Thanks,
Michal
Powered by blists - more mailing lists