aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCristian Marussi <[email protected]>2024-07-30 15:47:04 +0100
committerSudeep Holla <[email protected]>2024-08-18 20:22:16 +0100
commit1780e411ef940db314578b511518e5872d4a13b4 (patch)
treecc0ef6a76c6b5bf03d0f31bdd3e372184a62f530
parent3a5e6ab06eabcf105a83199be09453ff1475e77e (diff)
firmware: arm_scmi: Use max-rx-timeout-ms from devicetree
Override default maximum RX timeout with the value picked from the devicetree, when provided. Suggested-by: Peng Fan <[email protected]> Signed-off-by: Cristian Marussi <[email protected]> Tested-by: Peng Fan <[email protected]> #i.MX95 19x19 EVK Message-Id: <[email protected]> Signed-off-by: Sudeep Holla <[email protected]>
-rw-r--r--drivers/firmware/arm_scmi/driver.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/firmware/arm_scmi/driver.c b/drivers/firmware/arm_scmi/driver.c
index 918d7287ecf4..66806578df5a 100644
--- a/drivers/firmware/arm_scmi/driver.c
+++ b/drivers/firmware/arm_scmi/driver.c
@@ -3029,6 +3029,7 @@ static int scmi_debugfs_raw_mode_setup(struct scmi_info *info)
static const struct scmi_desc *scmi_transport_setup(struct device *dev)
{
struct scmi_transport *trans;
+ int ret;
trans = dev_get_platdata(dev);
if (!trans || !trans->desc || !trans->supplier || !trans->core_ops)
@@ -3045,6 +3046,14 @@ static const struct scmi_desc *scmi_transport_setup(struct device *dev)
dev_info(dev, "Using %s\n", dev_driver_string(trans->supplier));
+ ret = of_property_read_u32(dev->of_node, "max-rx-timeout-ms",
+ &trans->desc->max_rx_timeout_ms);
+ if (ret && ret != -EINVAL)
+ dev_err(dev, "Malformed max-rx-timeout-ms DT property.\n");
+
+ dev_info(dev, "SCMI max-rx-timeout: %dms\n",
+ trans->desc->max_rx_timeout_ms);
+
return trans->desc;
}