Hi Hans, On 2/14/2024 16:00, Hans de Goede wrote: > Hi, > > On 2/14/24 10:28, Shyam Sundar S K wrote: >> Hi Hans, >> >> On 2/13/2024 13:06, Shyam Sundar S K wrote: >>> Improve code readability by removing smart_pc_status enum, as the same >>> can be done with a simple true/false check; Update the code checks >>> accordingly. >>> >>> Signed-off-by: Shyam Sundar S K <Shyam-sundar.S-k@xxxxxxx> >>> --- >>> v1->v2: >>> - remove enum smart_pc_status and adjust the code handling >> >> Please drop this patch for your review list. I tested this on a wrong >> environment and seems like some more code handling is required before >> we remove the enum. > > Ah yes, I see I missed that this also chnages the return value of > amd_pmf_init_smart_pc(). I assume that is what you are referring to ? That's right. Need to handle this case. Also, when Smart PC is advertised and enabled the other two features have to be dropped. Thanks, Shyam > > Regards, > > Hans > > >>> drivers/platform/x86/amd/pmf/pmf.h | 5 ----- >>> drivers/platform/x86/amd/pmf/tee-if.c | 4 ++-- >>> 3 files changed, 3 insertions(+), 8 deletions(-) >>> >>> diff --git a/drivers/platform/x86/amd/pmf/core.c b/drivers/platform/x86/amd/pmf/core.c >>> index feaa09f5b35a..ff0d61a56484 100644 >>> --- a/drivers/platform/x86/amd/pmf/core.c >>> +++ b/drivers/platform/x86/amd/pmf/core.c >>> @@ -351,7 +351,7 @@ static void amd_pmf_deinit_features(struct amd_pmf_dev *dev) >>> amd_pmf_deinit_sps(dev); >>> } >>> >>> - if (!dev->smart_pc_enabled) { >>> + if (dev->smart_pc_enabled) { >>> amd_pmf_deinit_smart_pc(dev); >>> } else if (is_apmf_func_supported(dev, APMF_FUNC_AUTO_MODE)) { >>> amd_pmf_deinit_auto_mode(dev); >>> diff --git a/drivers/platform/x86/amd/pmf/pmf.h b/drivers/platform/x86/amd/pmf/pmf.h >>> index 16999c5b334f..66cae1cca73c 100644 >>> --- a/drivers/platform/x86/amd/pmf/pmf.h >>> +++ b/drivers/platform/x86/amd/pmf/pmf.h >>> @@ -441,11 +441,6 @@ struct apmf_dyn_slider_output { >>> struct apmf_cnqf_power_set ps[APMF_CNQF_MAX]; >>> } __packed; >>> >>> -enum smart_pc_status { >>> - PMF_SMART_PC_ENABLED, >>> - PMF_SMART_PC_DISABLED, >>> -}; >>> - >>> /* Smart PC - TA internals */ >>> enum system_state { >>> SYSTEM_STATE_S0i3, >>> diff --git a/drivers/platform/x86/amd/pmf/tee-if.c b/drivers/platform/x86/amd/pmf/tee-if.c >>> index f8c0177afb0d..8b7e3f87702e 100644 >>> --- a/drivers/platform/x86/amd/pmf/tee-if.c >>> +++ b/drivers/platform/x86/amd/pmf/tee-if.c >>> @@ -260,7 +260,7 @@ static int amd_pmf_start_policy_engine(struct amd_pmf_dev *dev) >>> res = amd_pmf_invoke_cmd_init(dev); >>> if (res == TA_PMF_TYPE_SUCCESS) { >>> /* Now its safe to announce that smart pc is enabled */ >>> - dev->smart_pc_enabled = PMF_SMART_PC_ENABLED; >>> + dev->smart_pc_enabled = true; >>> /* >>> * Start collecting the data from TA FW after a small delay >>> * or else, we might end up getting stale values. >>> @@ -268,7 +268,7 @@ static int amd_pmf_start_policy_engine(struct amd_pmf_dev *dev) >>> schedule_delayed_work(&dev->pb_work, msecs_to_jiffies(pb_actions_ms * 3)); >>> } else { >>> dev_err(dev->dev, "ta invoke cmd init failed err: %x\n", res); >>> - dev->smart_pc_enabled = PMF_SMART_PC_DISABLED; >>> + dev->smart_pc_enabled = false; >>> return res; >>> } >>> >> >