]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
cpufreq/amd-pstate: Call amd_pstate_set_driver() in amd_pstate_register_driver()
authorDhananjay Ugwekar <Dhananjay.Ugwekar@amd.com>
Thu, 17 Oct 2024 10:05:29 +0000 (10:05 +0000)
committerMario Limonciello <mario.limonciello@amd.com>
Mon, 28 Oct 2024 19:54:35 +0000 (14:54 -0500)
Replace a similar chunk of code in amd_pstate_register_driver() with
amd_pstate_set_driver() call.

Signed-off-by: Dhananjay Ugwekar <Dhananjay.Ugwekar@amd.com>
Reviewed-by: Mario Limonciello <mario.limonciello@amd.com>
Link: https://lore.kernel.org/r/20241017100528.300143-3-Dhananjay.Ugwekar@amd.com
Signed-off-by: Mario Limonciello <mario.limonciello@amd.com>
drivers/cpufreq/amd-pstate.c

index 856f0d11983e4edd0848862e31e02abd499f1795..5155fc0019dfdf8560b7f78f8c60b8c6b381d98e 100644 (file)
@@ -1191,16 +1191,32 @@ static void amd_pstate_driver_cleanup(void)
        current_pstate_driver = NULL;
 }
 
+static int amd_pstate_set_driver(int mode_idx)
+{
+       if (mode_idx >= AMD_PSTATE_DISABLE && mode_idx < AMD_PSTATE_MAX) {
+               cppc_state = mode_idx;
+               if (cppc_state == AMD_PSTATE_DISABLE)
+                       pr_info("driver is explicitly disabled\n");
+
+               if (cppc_state == AMD_PSTATE_ACTIVE)
+                       current_pstate_driver = &amd_pstate_epp_driver;
+
+               if (cppc_state == AMD_PSTATE_PASSIVE || cppc_state == AMD_PSTATE_GUIDED)
+                       current_pstate_driver = &amd_pstate_driver;
+
+               return 0;
+       }
+
+       return -EINVAL;
+}
+
 static int amd_pstate_register_driver(int mode)
 {
        int ret;
 
-       if (mode == AMD_PSTATE_PASSIVE || mode == AMD_PSTATE_GUIDED)
-               current_pstate_driver = &amd_pstate_driver;
-       else if (mode == AMD_PSTATE_ACTIVE)
-               current_pstate_driver = &amd_pstate_epp_driver;
-       else
-               return -EINVAL;
+       ret = amd_pstate_set_driver(mode);
+       if (ret)
+               return ret;
 
        cppc_state = mode;
 
@@ -1726,25 +1742,6 @@ static struct cpufreq_driver amd_pstate_epp_driver = {
        .attr           = amd_pstate_epp_attr,
 };
 
-static int __init amd_pstate_set_driver(int mode_idx)
-{
-       if (mode_idx >= AMD_PSTATE_DISABLE && mode_idx < AMD_PSTATE_MAX) {
-               cppc_state = mode_idx;
-               if (cppc_state == AMD_PSTATE_DISABLE)
-                       pr_info("driver is explicitly disabled\n");
-
-               if (cppc_state == AMD_PSTATE_ACTIVE)
-                       current_pstate_driver = &amd_pstate_epp_driver;
-
-               if (cppc_state == AMD_PSTATE_PASSIVE || cppc_state == AMD_PSTATE_GUIDED)
-                       current_pstate_driver = &amd_pstate_driver;
-
-               return 0;
-       }
-
-       return -EINVAL;
-}
-
 /*
  * CPPC function is not supported for family ID 17H with model_ID ranging from 0x10 to 0x2F.
  * show the debug message that helps to check if the CPU has CPPC support for loading issue.