platform/x86: thinkpad_acpi: clean up dytc profile convert
authorMark Pearson <markpearson@lenovo.com>
Mon, 7 Mar 2022 18:30:41 +0000 (13:30 -0500)
committerHans de Goede <hdegoede@redhat.com>
Wed, 9 Mar 2022 17:17:45 +0000 (18:17 +0100)
Minor update cleaning up the code around convert_profile_to_dytc as
identified in the previous commit.

Signed-off-by: Mark Pearson <markpearson@lenovo.com>
Link: https://lore.kernel.org/r/20220307183041.4467-1-markpearson@lenovo.com
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
drivers/platform/x86/thinkpad_acpi.c

index d9117f824ce9976695a3aa18cc626bbd947d357f..cb8f52be8253414a4c7c1985a0ab1f1986b8db90 100644 (file)
@@ -10298,6 +10298,7 @@ static int dytc_cql_command(int command, int *output)
 static int dytc_profile_set(struct platform_profile_handler *pprof,
                            enum platform_profile_option profile)
 {
+       int perfmode;
        int output;
        int err;
 
@@ -10305,6 +10306,10 @@ static int dytc_profile_set(struct platform_profile_handler *pprof,
        if (err)
                return err;
 
+       err = convert_profile_to_dytc(profile, &perfmode);
+       if (err)
+               goto unlock;
+
        if (dytc_profile_available == DYTC_FUNCMODE_MMC) {
                if (profile == PLATFORM_PROFILE_BALANCED) {
                        /*
@@ -10317,12 +10322,6 @@ static int dytc_profile_set(struct platform_profile_handler *pprof,
                        if (err)
                                goto unlock;
                } else {
-                       int perfmode;
-
-                       err = convert_profile_to_dytc(profile, &perfmode);
-                       if (err)
-                               goto unlock;
-
                        /* Determine if we are in CQL mode. This alters the commands we do */
                        err = dytc_cql_command(DYTC_SET_COMMAND(DYTC_FUNCTION_MMC, perfmode, 1),
                                                &output);
@@ -10331,12 +10330,6 @@ static int dytc_profile_set(struct platform_profile_handler *pprof,
                }
        }
        if (dytc_profile_available == DYTC_FUNCMODE_PSC) {
-               int perfmode;
-
-               err = convert_profile_to_dytc(profile, &perfmode);
-               if (err)
-                       goto unlock;
-
                err = dytc_command(DYTC_SET_COMMAND(DYTC_FUNCTION_PSC, perfmode, 1), &output);
                if (err)
                        goto unlock;