From ae7e0330ce22d580990cf40d648c809b5093b252 Mon Sep 17 00:00:00 2001 From: Valentin Caron Date: Tue, 27 May 2025 15:27:43 +0200 Subject: clk: scmi: add compatibility with clock protocol 2.0 Since clock protocol 2.0, SCMI specification add an option field "clock_enable_delay" to CLOCK_ATTRIBUTES command. scmi_read_resp_from_smt() will return an error ("Buffer too small") as the message length coming from the SCMI server is not the same as expected. So implement a condition to SCMI clock protocol version to change the length of the expected message. Signed-off-by: Valentin Caron Signed-off-by: Patrice Chotard Cc: Lukasz Majewski Cc: Sean Anderson Reviewed-by: Patrick Delaunay Reviewed-by: Patrice Chotard --- include/scmi_protocols.h | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'include') diff --git a/include/scmi_protocols.h b/include/scmi_protocols.h index 9046de7e3e7..762a1032c37 100644 --- a/include/scmi_protocols.h +++ b/include/scmi_protocols.h @@ -782,6 +782,21 @@ struct scmi_clk_attribute_out { char clock_name[SCMI_CLOCK_NAME_LENGTH_MAX]; }; +/** + * struct scmi_clk_get_nb_out_v2 - Response payload for SCMI_CLOCK_ATTRIBUTES command + * Clock management Protocol 2.0 + * @status: SCMI command status + * @attributes: clock attributes + * @clock_name: name of the clock + * @clock_enable_delay: delay incurred by the platform to enable the clock + */ +struct scmi_clk_attribute_out_v2 { + s32 status; + u32 attributes; + char clock_name[SCMI_CLOCK_NAME_LENGTH_MAX]; + u32 clock_enable_delay; +}; + /** * struct scmi_clk_state_in - Message payload for CLOCK_CONFIG_SET command * @clock_id: SCMI clock ID -- cgit v1.3.1