From: Armin Wolf Date: Mon, 4 Mar 2024 20:50:02 +0000 (+0100) Subject: platform/x86/amd/pmf: Fix return value of amd_pmf_start_policy_engine() X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=d1e33cd66670cd9c07258398ffe93961d2089287;p=linux.git platform/x86/amd/pmf: Fix return value of amd_pmf_start_policy_engine() amd_pmf_start_policy_engine() returns an negative error code upon failure, so the TA_PMF_* error codes cannot be used here. Return -EIO instead. Also stop shadowing the return code in amd_pmf_get_pb_data(). Compile-tested only. Suggested-by: Ilpo Järvinen Fixes: 7c45534afa44 ("platform/x86/amd/pmf: Add support for PMF Policy Binary") Signed-off-by: Armin Wolf Reviewed-by: Shyam Sundar S K Link: https://lore.kernel.org/r/20240304205005.10078-2-W_Armin@gmx.de Reviewed-by: Ilpo Järvinen Signed-off-by: Ilpo Järvinen --- diff --git a/drivers/platform/x86/amd/pmf/tee-if.c b/drivers/platform/x86/amd/pmf/tee-if.c index 16973bebf55fe..13dd4462e1e39 100644 --- a/drivers/platform/x86/amd/pmf/tee-if.c +++ b/drivers/platform/x86/amd/pmf/tee-if.c @@ -269,7 +269,7 @@ static int amd_pmf_start_policy_engine(struct amd_pmf_dev *dev) } else { dev_err(dev->dev, "ta invoke cmd init failed err: %x\n", res); dev->smart_pc_enabled = PMF_SMART_PC_DISABLED; - return res; + return -EIO; } return 0; @@ -309,8 +309,8 @@ static ssize_t amd_pmf_get_pb_data(struct file *filp, const char __user *buf, amd_pmf_hex_dump_pb(dev); ret = amd_pmf_start_policy_engine(dev); - if (ret) - return -EINVAL; + if (ret < 0) + return ret; return length; }