Hi Sudeep, > Subject: RE: [PATCH v7 0/7] firmware: support i.MX95 SCMI BBM/MISC > Extension With Cristian's transport patchset applied, there a minor conflict in Makefile with this patchset. Please let me know if I need to send v8 to address the Makefile conflict or you could help. Thanks, Peng. > > Hi Sudeep, > > > Subject: [PATCH v7 0/7] firmware: support i.MX95 SCMI BBM/MISC > > Extension > > Would you please give a look on patch [1-4]/7? > Cristian has gave his R-b, are the patches good for you to pick up? > > Thanks, > Peng. > > > > > i.MX95 System Manager Firmware source: > > > https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2F > gith > > ub.com%2Fnxp- > &data=05%7C02%7Cpeng.fan%40nxp.com%7C1002bc37426b4344192 > 5 > > > 08dcbde5c496%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0% > 7C638594041757 > > > 286225%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJ > QIjoiV2luMzIiLCJ > > > BTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C0%7C%7C%7C&sdata=Id8fggn%2 > B%2B8NBRYzEHSr > > LK3GYSDX8bA3%2FNHPibH5xuEk%3D&reserved=0 > > 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@xxxxxxx> > > > > Changes in v7: > > - Just correct R-b tag from Rob to drop quotes "", and rebased > > - Link to v6: > > > https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2F > lore > > .kernel.org%2Fr%2F20240718-imx95-bbm-misc-v2- > &data=05%7C02%7Cpeng.fan% > > > 40nxp.com%7C1002bc37426b4344192508dcbde5c496%7C686ea1d3 > bc2b4c6fa92cd99 > > > c5c301635%7C0%7C0%7C638594041757299262%7CUnknown%7CT > WFpbGZsb3d8eyJWIjo > > > iMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D > %7C0%7C%7C% > > > 7C&sdata=IelY7nn8UonmziY%2FTKQy0V5F68zDmX3fRJeS%2FNYxlRA% > 3D&reserved=0 > > v6-0-18f008e16e9d@xxxxxxx > > > > Changes in v6: > > - Add R-b from Cristian for patch 2,3,4,5,6 > > - Add a new function parameter 'bool enable' to rtc_alarm_set in > patch > > 2 > > - Drop dev_err per RTC maintainer, move devm_rtc_register to > function > > end in patch 6 > > - Address Cristian's comment to documentation. Also moved the > > documentation to patch 3, which adds the imx.rst under > > drivers/firmware/arm_scmi/imx > > - Add remove hook to cancel_delayed_work_sync in patch 7 > > - Link to v5: > > > https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2F > lore > > .kernel.org%2Fr%2F20240621-imx95-bbm-misc-v2- > &data=05%7C02%7Cpeng.fan% > > > 40nxp.com%7C1002bc37426b4344192508dcbde5c496%7C686ea1d3 > bc2b4c6fa92cd99 > > > c5c301635%7C0%7C0%7C638594041757307547%7CUnknown%7CT > WFpbGZsb3d8eyJWIjo > > > iMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D > %7C0%7C%7C% > > > 7C&sdata=TIgALwKaM0bL3%2F8%2BH5TURHjK4KM6Qadpr64dUEbla6 > M%3D&reserved=0 > > v5-0-b85a6bf778cb@xxxxxxx > > > > Changes in v5: > > - Collected missing comments in v1, I not intend to miss any, and > sorry > > if I make something wrong. > > - Update the documentation per Cristian's comments. Not sure we > need a > > new directory for firmware stuff, not firmware-guide direcotyr. > > - Added R-b for patch 3 "firmware: arm_scmi: add initial support for > > i.MX BBM protocol" > > - For patch 4, added comments in scmi_imx_misc_ctrl_validate_id, > use > > num_sources in scmi_protocol_events, move > > scmi_imx_misc_protocol_init > > near init, use get_max_msg_size and drop MISC_MAX_VAL. > > - Separate the sm-bbm.c into rtc and key drivers with > > each has its own notifiy callback, put the driver in rtc and input > > directory, handle error return, add kconfig for each driver, use > > to_delayed_work, use READ/WRITE_ONCE, still keep ops as private, > > device_init_wakeup set false if failure. > > - For patch 5, Add kconfig for sm-misc.c. Only support one instance, > > so add a check > > ops in probe. > > - Link to v4: > > > https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2F > lore > > .kernel.org%2Fr%2F20240524-imx95-bbm-misc-v2- > &data=05%7C02%7Cpeng.fan% > > > 40nxp.com%7C1002bc37426b4344192508dcbde5c496%7C686ea1d3 > bc2b4c6fa92cd99 > > > c5c301635%7C0%7C0%7C638594041757313869%7CUnknown%7CT > WFpbGZsb3d8eyJWIjo > > > iMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D > %7C0%7C%7C% > > > 7C&sdata=NLUX8pWiyfLJXd9tLkWZHW9HxB00gVnKpNqGphH6PZk%3 > D&reserved=0 > > v4-0-dc456995d590@xxxxxxx > > > > 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://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2F > lore > > .kernel.org%2Fr%2F20240412-imx95-bbm-misc-v2- > &data=05%7C02%7Cpeng.fan% > > > 40nxp.com%7C1002bc37426b4344192508dcbde5c496%7C686ea1d3 > bc2b4c6fa92cd99 > > > c5c301635%7C0%7C0%7C638594041757319735%7CUnknown%7CT > WFpbGZsb3d8eyJWIjo > > > iMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D > %7C0%7C%7C% > > > 7C&sdata=DsX6rHSn9UHxg00XUXdioRTDKikM9dlGWtyMOWSKQqc%3 > D&reserved=0 > > v3-0-4380a4070980@xxxxxxx > > > > 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://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2F > lore > > .kernel.org%2Fr%2F20240405-imx95-bbm-misc-v2- > &data=05%7C02%7Cpeng.fan% > > > 40nxp.com%7C1002bc37426b4344192508dcbde5c496%7C686ea1d3 > bc2b4c6fa92cd99 > > > c5c301635%7C0%7C0%7C638594041757325573%7CUnknown%7CT > WFpbGZsb3d8eyJWIjo > > > iMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D > %7C0%7C%7C% > > > 7C&sdata=xCKP6hjdqJIppJkmJsNhfZa85df%2BDYR%2B%2FawL6qQI5Xc > %3D&reserved > > =0 > > v2-0-9fc9186856c2@xxxxxxx > > > > 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://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2F > lore > > .kernel.org%2Fr%2F20240202-imx95-bbm-misc-v1-0- > &data=05%7C02%7Cpeng.fa > > > n%40nxp.com%7C1002bc37426b4344192508dcbde5c496%7C686ea1 > d3bc2b4c6fa92cd > > > 99c5c301635%7C0%7C0%7C638594041757331366%7CUnknown%7C > TWFpbGZsb3d8eyJWI > > > joiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3 > D%7C0%7C%7 > > > C%7C&sdata=V5SX0eUuQo5nYcQD44C%2FSnq9M9cc2TlpeuoO2A2Mh > Ss%3D&reserved=0 > > 3cb743020933@xxxxxxx > > > > --- > > Peng Fan (7): > > 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: arm_scmi: add NXP i.MX95 SCMI documentation > > firmware: imx: add i.MX95 MISC driver > > rtc: support i.MX95 BBM RTC > > input: keyboard: support i.MX95 BBM module > > > > .../devicetree/bindings/firmware/arm,scmi.yaml | 5 +- > > .../bindings/firmware/nxp,imx95-scmi.yaml | 43 + > > 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 | 379 > +++++++++ > > drivers/firmware/arm_scmi/imx/imx-sm-misc.c | 315 ++++++++ > > drivers/firmware/arm_scmi/imx/imx95.rst | 886 > > +++++++++++++++++++++ > > drivers/firmware/imx/Kconfig | 11 + > > drivers/firmware/imx/Makefile | 1 + > > drivers/firmware/imx/sm-misc.c | 119 +++ > > drivers/input/keyboard/Kconfig | 11 + > > drivers/input/keyboard/Makefile | 1 + > > drivers/input/keyboard/imx-sm-bbm-key.c | 236 ++++++ > > drivers/rtc/Kconfig | 8 + > > drivers/rtc/Makefile | 1 + > > drivers/rtc/rtc-imx-sm-bbm.c | 162 ++++ > > include/linux/firmware/imx/sm.h | 33 + > > include/linux/scmi_imx_protocol.h | 59 ++ > > 20 files changed, 2298 insertions(+), 1 deletion(-) > > --- > > base-commit: 668d33c9ff922c4590c58754ab064aaf53c387dd > > change-id: 20240405-imx95-bbm-misc-v2-b5e9d24adc42 > > > > Best regards, > > -- > > Peng Fan <peng.fan@xxxxxxx>