On May 28, 2025 at 13:35:15 +0530, Moteen Shah wrote: > Introduce response and request structs to receive and request > information regarding DM version, etc from TI SCI.
Nit: Remove the ", etc" The patch is literally just about DM version. > > Signed-off-by: Moteen Shah <m-s...@ti.com> > --- > drivers/firmware/ti_sci.h | 29 ++++++++++++++++++++++++++ > include/linux/soc/ti/ti_sci_protocol.h | 26 +++++++++++++++++++++++ > 2 files changed, 55 insertions(+) > > diff --git a/drivers/firmware/ti_sci.h b/drivers/firmware/ti_sci.h > index f3d9eb453b4..6ef77d83114 100644 > --- a/drivers/firmware/ti_sci.h > +++ b/drivers/firmware/ti_sci.h > @@ -19,6 +19,7 @@ > #define TI_SCI_MSG_ENABLE_WDT 0x0000 > #define TI_SCI_MSG_WAKE_RESET 0x0001 > #define TI_SCI_MSG_VERSION 0x0002 > +#define TI_SCI_MSG_DM_VERSION 0x000F > #define TI_SCI_MSG_WAKE_REASON 0x0003 > #define TI_SCI_MSG_GOODBYE 0x0004 > #define TI_SCI_MSG_SYS_RESET 0x0005 > @@ -135,6 +136,34 @@ struct ti_sci_msg_resp_version { > u8 abi_minor; > } __packed; > > +/** > + * struct ti_sci_msg_dm_resp_version - Response for a message > + * @hdr: Generic header > + * @version: Version number of the firmware > + * @sub_version: Sub-version number of the firmware > + * @patch_version: Patch version number of the firmware > + * @abi_major: Major version of the ABI that firmware supports > + * @abi_minor: Minor version of the ABI that firmware supports > + * @sci_server_version: String describing the SCI server version > + * @rm_pm_hal_version: String describing the RM PM HAL version > + * > + * In general, ABI version changes follow the rule that minor version > increments > + * are backward compatible. Major revision changes in ABI may not be > + * backward compatible. > + * > + * Response to a message with message type TI_SCI_MSG_DM_VERSION > + */ > +struct ti_sci_msg_dm_resp_version { > + struct ti_sci_msg_hdr hdr; > + u16 version; > + u8 sub_version; > + u8 patch_version; > + u8 abi_major; > + u8 abi_minor; > + char rm_pm_hal_version[12]; > + char sci_server_version[26]; > +} __packed; > + > /** > * struct ti_sci_query_fw_caps_resp - Response for a message > * @hdr: Generic header > diff --git a/include/linux/soc/ti/ti_sci_protocol.h > b/include/linux/soc/ti/ti_sci_protocol.h > index 05a19a8d86c..3f13a980433 100644 > --- a/include/linux/soc/ti/ti_sci_protocol.h > +++ b/include/linux/soc/ti/ti_sci_protocol.h > @@ -30,6 +30,28 @@ struct ti_sci_version_info { > char firmware_description[32]; > }; > > +/** > + * struct ti_sci_dm_version_info - version information structure > + * @abi_major: Major ABI version. Change here implies risk of > backward > + * compatibility break. > + * @abi_minor: Minor ABI version. Change here implies new > feature addition, > + * or compatible change in ABI. > + * @patch_ver: Patch version of the firmware. > + * @sub_ver: Sub-version of the firmware. > + * @dm_ver: DM version. > + * @sci_server_version: Version string of the SCI server. > + * @rm_pm_hal_version: Version string of the RM PM HAL. > + */ > +struct ti_sci_dm_version_info { > + u8 abi_major; > + u8 abi_minor; > + u8 patch_ver; > + u8 sub_ver; > + u16 dm_ver; > + char rm_pm_hal_version[12]; > + char sci_server_version[26]; > +}; > + > struct ti_sci_handle; > > /** > @@ -264,10 +286,14 @@ struct ti_sci_core_ops { > /** > * struct ti_sci_firmware_ops - DM firmware operations > * @query_dm_cap: Query the DM capabilities > + * @get_dm_version: Get the DM version. > + * Return 0 for successful query else appropriate error value. > */ > struct ti_sci_firmware_ops { > int (*query_dm_cap)(struct ti_sci_handle *handle, > u64 *dm_cap); > + int (*get_dm_version)(struct ti_sci_handle *handle, > + struct ti_sci_dm_version_info *get_dm_version); Reviewed-by: Dhruva Gole <d-g...@ti.com> -- Best regards, Dhruva Gole Texas Instruments Incorporated