[PATCH v4 0/6] firmware: support i.MX95 SCMI BBM/MISC Extenstion
Peng Fan
peng.fan at nxp.com
Mon Jun 17 02:42:58 PDT 2024
> Subject: [PATCH v4 0/6] firmware: support i.MX95 SCMI BBM/MISC
> Extenstion
Any comments for the driver and doc part?
Thanks,
Peng.
>
> i.MX95 System Manager Firmware source: https://github.com/nxp-
> imx/imx-sm To generate html from the repo: make html
>
> i.MX95 System Manager Firmware support vendor extension protocol:
> - Battery Backed Module(BBM) Protocol
> This protocol is intended provide access to the battery-backed module.
> This contains persistent storage (GPR), an RTC, and the ON/OFF
> button.
> The protocol can also provide access to similar functions implemented
> via
> external board components. The BBM protocol provides functions to:
>
> - Describe the protocol version.
> - Discover implementation attributes.
> - Read/write GPR
> - Discover the RTCs available in the system.
> - Read/write the RTC time in seconds and ticks
> - Set an alarm (per LM) in seconds
> - Get notifications on RTC update, alarm, or rollover.
> - Get notification on ON/OFF button activity.
>
> - MISC Protocol for misc settings
> This includes controls that are misc settings/actions that must be
> exposed
> from the SM to agents. They are device specific and are usually define
> to
> access bit fields in various mix block control modules, IOMUX_GPR,
> and other
> GPR/CSR owned by the SM.
> This protocol supports the following functions:
>
> - Describe the protocol version.
> - Discover implementation attributes.
> - Set/Get a control.
> - Initiate an action on a control.
> - Obtain platform (i.e. SM) build information.
> - Obtain ROM passover data.
> - Read boot/shutdown/reset information for the LM or the system.
>
> This patchset is to support the two protocols and users that use the
> protocols. The upper protocol infomation is also included in patch 1
>
> Signed-off-by: Peng Fan <peng.fan at nxp.com>
> To: Jonathan Corbet <corbet at lwn.net>
> To: Shawn Guo <shawnguo at kernel.org>
> To: Sascha Hauer <s.hauer at pengutronix.de>
> To: Pengutronix Kernel Team <kernel at pengutronix.de>
> To: Fabio Estevam <festevam at gmail.com>
> To: Rob Herring <robh at kernel.org>
> To: Krzysztof Kozlowski <krzk+dt at kernel.org>
> To: Conor Dooley <conor+dt at kernel.org>
> To: Sudeep Holla <sudeep.holla at arm.com>
> To: Cristian Marussi <cristian.marussi at arm.com>
> To: Peng Fan <peng.fan at nxp.com>
> Cc: linux-doc at vger.kernel.org
> Cc: linux-kernel at vger.kernel.org
> Cc: imx at lists.linux.dev
> Cc: linux-arm-kernel at lists.infradead.org
> Cc: devicetree at vger.kernel.org
>
> Changes in v4:
> - Rebased to next-20240520
> - Added vendor/sub-vendor, currently the sub-vendor is "i.MX95 EVK",
> this may not be proper, I will check with firmware owner on this to
> seen any update. please still help review other parts of the patchset.
> - Added constrain value in binding doc, change the property name from
> nxp,wakeup-sources to nxp,ctrl-ids to match firmware definition.
> - Put i.MX code under new directory imx/
> - Change the misc event from three to one, the code in previous
> patchset
> was wrong.
> - Link to v3: https://lore.kernel.org/r/20240412-imx95-bbm-misc-v2-
> v3-0-4380a4070980 at nxp.com
>
> Changes in v3:
> - Update cover letter and patch commit log to include more
> information.
> - Add documentation for BBM and MISC protocols under
> Documentation/firmware-guide/nxp. Not sure if this is a good place.
> - Fix the bindings, hope I have addressed the issues.
> Drop imx,scmi.yaml.
> Add nxp,imx95-scmi.yaml for NXP vendor protocol properties.
> Add constraints, add nxp prefix for NXP vendor properties.
> Use anyOf in arm,scmi.yaml to ref vendor yaml.
> - Use cpu_to_le32 per Cristian
> - Link to v2: https://lore.kernel.org/r/20240405-imx95-bbm-misc-v2-
> v2-0-9fc9186856c2 at nxp.com
>
> Changes in v2:
> - Sorry for late update since v1.
> - Add a new patch 1
> - Address imx,scmi.yaml issues
> - Address comments for imx-sm-bbm.c and imx-sm-misc.c
> - I not add vendor id since related patches not landed in linux-next.
> - Link to v1: https://lore.kernel.org/r/20240202-imx95-bbm-misc-v1-0-
> 3cb743020933 at nxp.com
>
> ---
> Peng Fan (6):
> Documentation: firmware-guide: add NXP i.MX95 SCMI
> documentation
> dt-bindings: firmware: add i.MX95 SCMI Extension protocol
> firmware: arm_scmi: add initial support for i.MX BBM protocol
> firmware: arm_scmi: add initial support for i.MX MISC protocol
> firmware: imx: support i.MX95 BBM module
> firmware: imx: add i.MX95 MISC driver
>
> .../devicetree/bindings/firmware/arm,scmi.yaml | 5 +-
> .../bindings/firmware/nxp,imx95-scmi.yaml | 43 +
> Documentation/firmware-guide/index.rst | 10 +
> Documentation/firmware-guide/nxp/imx95-scmi.rst | 877
> +++++++++++++++++++++
> Documentation/firmware-guide/nxp/index.rst | 10 +
> drivers/firmware/arm_scmi/Kconfig | 2 +
> drivers/firmware/arm_scmi/Makefile | 1 +
> drivers/firmware/arm_scmi/imx/Kconfig | 23 +
> drivers/firmware/arm_scmi/imx/Makefile | 3 +
> drivers/firmware/arm_scmi/imx/imx-sm-bbm.c | 380 +++++++++
> drivers/firmware/arm_scmi/imx/imx-sm-misc.c | 303 +++++++
> drivers/firmware/imx/Makefile | 2 +
> drivers/firmware/imx/sm-bbm.c | 314 ++++++++
> drivers/firmware/imx/sm-misc.c | 108 +++
> include/linux/firmware/imx/sm.h | 33 +
> include/linux/scmi_imx_protocol.h | 64 ++
> 16 files changed, 2177 insertions(+), 1 deletion(-)
> ---
> base-commit: 81ec2bad50c0c1bd3c66389fda32a6f2cf922508
> change-id: 20240405-imx95-bbm-misc-v2-b5e9d24adc42
>
> Best regards,
> --
> Peng Fan <peng.fan at nxp.com>
More information about the linux-arm-kernel
mailing list