All of lore.kernel.org
 help / color / mirror / Atom feed
From: Peng Fan <peng.fan@oss.nxp.com>
To: Sudeep Holla <sudeep.holla@arm.com>,
	Cristian Marussi <cristian.marussi@arm.com>,
	Shawn Guo <shawnguo@kernel.org>,
	Sascha Hauer <s.hauer@pengutronix.de>,
	Pengutronix Kernel Team <kernel@pengutronix.de>,
	Fabio Estevam <festevam@gmail.com>, Rob Herring <robh@kernel.org>,
	Krzysztof Kozlowski <krzk+dt@kernel.org>,
	Conor Dooley <conor+dt@kernel.org>
Cc: Dan Carpenter <dan.carpenter@linaro.org>,
	linux-kernel@vger.kernel.org, arm-scmi@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org, imx@lists.linux.dev,
	devicetree@vger.kernel.org, Peng Fan <peng.fan@nxp.com>
Subject: Re: [PATCH v3 0/7] firmware: scmi/imx: Add i.MX95 LMM/CPU Protocol
Date: Tue, 18 Mar 2025 16:28:04 +0800	[thread overview]
Message-ID: <20250318082804.GA1326@nxa18884-linux> (raw)
In-Reply-To: <20250303-imx-lmm-cpu-v3-0-7695f6f61cfc@nxp.com>

Hi Sudeep, Cristian

On Mon, Mar 03, 2025 at 10:53:21AM +0800, Peng Fan (OSS) wrote:
>i.MX95 System Manager(SM) implements Logical Machine Management(LMM) and
>CPU protocol to manage Logical Machine(LM) and CPUs(eg, M7).

Any comments?
I am thinking to address comments and post v4 after 6.15 merge window close.

Thanks,
Peng

>
>To manage M7 in a separate LM or in same LM as Linux itself. LMM APIs
>and CPU APIs are needed.
>
>When M7 is in LM 'lm-m7', and this LM is managable by 'linux-lm',
>linux could use LMM_BOOT, LMM_SHUTDOWN and etc to manage 'lm-m7'.
>
>If in same LM, use CPU_START, CPU_STOP, CPU_RESET_VECTOR_SET and etc to
>manage M7.
>
>Both LMM/CPU APIs will be used by remoteproc driver. The remoteproc
>patchset will be posted out after this patchset gets reviewed or in
>good shape per Maitainer's view.
>
>Build pass with COMPILE_TEST
>Tested with remoteproc on i.MX95
>
>Signed-off-by: Peng Fan <peng.fan@nxp.com>
>---
>Changes in v3:
>Patch 1: Correct LMM_ATTRIBUTE return values
>        Update the return status of LM_BOOT/RESET/SHUTDOWN/WAKE
>        clarify sync/async in the Introduction chapter of LMM
>        Update the Origin entry in LMM_RESET_REASON
>        Clarify CPU run/sleep mode
>        Add note for CPU protocol to indicate AP using PSCI, non-AP use OS.
>        Specify mandatory for each command in LMM/CPU per firmware owner.
>        For BBM/MISC which have optional command, I will update doc in separate patch later
>Patch 2: Add description in binding doc
>Patch 3: Unify scmi_imx_lmm_[boot,power_on], Use le32_get_bits
>Patch 4: Unify scmi_imx_cpu_[start,stop], Use le32_encode_bits
>	 Add pointer check in scmi_imx_cpu_started
>	 correct nr_cpus calculation
>Patch 5: Unify lmm shutdown,boot/power_on, update kconfig to avoid build bot issue
>         Add R-b
>Patch 6: Unity cpu start/stop, update Kconfig to avoid build bot issue.
>         Add R-b
>
>Ran smatch as below, no issue found.
>~/smatch/smatch_scripts/kchecker drivers/firmware/arm_scmi/vendors/imx/
>~/smatch/smatch_scripts/kchecker drivers/firmware/imx/
>
>- Link to v2: https://lore.kernel.org/r/20250212-imx-lmm-cpu-v2-0-3aee005968c1@nxp.com
>
>Changes in v2:
>- Add dt-bindings patch 2
>- Add a maintainer entry with patch 7
>- Update doc to address various questions and make it clear
>- Use strscpy to use scmi server returned string
>- Drop extra blank line
>- Shrink scmi_imx_cpu_attributes_get function args.
>- Typo fixes
>- Add LMM_RESET_VECTOR_SET
>- Link to v1: https://lore.kernel.org/r/20250121-imx-lmm-cpu-v1-0-0eab7e073e4e@nxp.com
>
>---
>Peng Fan (7):
>      firmware: arm_scmi: imx: Add LMM and CPU documentation
>      dt-bindings: firmware: Add i.MX95 SCMI LMM and CPU protocol
>      firmware: arm_scmi: imx: Add i.MX95 LMM protocol
>      firmware: arm_scmi: imx: Add i.MX95 CPU Protocol
>      firmware: imx: Add i.MX95 SCMI LMM driver
>      firmware: imx: Add i.MX95 SCMI CPU driver
>      MAINTAINERS: add entry for i.MX SCMI extensions
>
> .../bindings/firmware/nxp,imx95-scmi.yaml          |  23 +
> MAINTAINERS                                        |   9 +
> drivers/firmware/arm_scmi/vendors/imx/Kconfig      |  24 +
> drivers/firmware/arm_scmi/vendors/imx/Makefile     |   2 +
> drivers/firmware/arm_scmi/vendors/imx/imx-sm-cpu.c | 276 +++++++
> drivers/firmware/arm_scmi/vendors/imx/imx-sm-lmm.c | 257 +++++++
> drivers/firmware/arm_scmi/vendors/imx/imx95.rst    | 801 +++++++++++++++++++++
> drivers/firmware/imx/Kconfig                       |  22 +
> drivers/firmware/imx/Makefile                      |   2 +
> drivers/firmware/imx/sm-cpu.c                      |  85 +++
> drivers/firmware/imx/sm-lmm.c                      |  91 +++
> include/linux/firmware/imx/sm.h                    |  19 +
> include/linux/scmi_imx_protocol.h                  |  42 ++
> 13 files changed, 1653 insertions(+)
>---
>base-commit: fb2b3e3bd74b8a3f742eaade06f6565323cf4bdf
>change-id: 20250120-imx-lmm-cpu-418daaa257e2
>
>Best regards,
>-- 
>Peng Fan <peng.fan@nxp.com>
>

  parent reply	other threads:[~2025-03-18  7:20 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-03-03  2:53 [PATCH v3 0/7] firmware: scmi/imx: Add i.MX95 LMM/CPU Protocol Peng Fan (OSS)
2025-03-03  2:53 ` [PATCH v3 1/7] firmware: arm_scmi: imx: Add LMM and CPU documentation Peng Fan (OSS)
2025-04-01 14:15   ` Sudeep Holla
2025-04-02 12:35     ` Peng Fan
2025-04-02 11:46       ` Sudeep Holla
2025-04-02 16:10         ` Peng Fan
2025-04-02 15:30           ` Sudeep Holla
2025-04-01 14:51   ` Cristian Marussi
2025-04-02 12:42     ` Peng Fan
2025-03-03  2:53 ` [PATCH v3 2/7] dt-bindings: firmware: Add i.MX95 SCMI LMM and CPU protocol Peng Fan (OSS)
2025-04-01 22:21   ` Rob Herring (Arm)
2025-03-03  2:53 ` [PATCH v3 3/7] firmware: arm_scmi: imx: Add i.MX95 LMM protocol Peng Fan (OSS)
2025-03-03  8:03   ` Dan Carpenter
2025-04-01 14:21   ` Sudeep Holla
2025-04-01 14:36     ` Cristian Marussi
2025-04-01 14:48       ` Sudeep Holla
2025-04-01 15:00   ` Cristian Marussi
2025-03-03  2:53 ` [PATCH v3 4/7] firmware: arm_scmi: imx: Add i.MX95 CPU Protocol Peng Fan (OSS)
2025-03-03  2:53 ` [PATCH v3 5/7] firmware: imx: Add i.MX95 SCMI LMM driver Peng Fan (OSS)
2025-03-03  2:53 ` [PATCH v3 6/7] firmware: imx: Add i.MX95 SCMI CPU driver Peng Fan (OSS)
2025-03-03  2:53 ` [PATCH v3 7/7] MAINTAINERS: add entry for i.MX SCMI extensions Peng Fan (OSS)
2025-03-18  8:28 ` Peng Fan [this message]
2025-03-19  9:54   ` [PATCH v3 0/7] firmware: scmi/imx: Add i.MX95 LMM/CPU Protocol Sudeep Holla

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=20250318082804.GA1326@nxa18884-linux \
    --to=peng.fan@oss.nxp.com \
    --cc=arm-scmi@vger.kernel.org \
    --cc=conor+dt@kernel.org \
    --cc=cristian.marussi@arm.com \
    --cc=dan.carpenter@linaro.org \
    --cc=devicetree@vger.kernel.org \
    --cc=festevam@gmail.com \
    --cc=imx@lists.linux.dev \
    --cc=kernel@pengutronix.de \
    --cc=krzk+dt@kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=peng.fan@nxp.com \
    --cc=robh@kernel.org \
    --cc=s.hauer@pengutronix.de \
    --cc=shawnguo@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 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.