platform/x86: samsung-galaxybook: Fix block_recording not supported logic
authorJoshua Grisham <josh@joshuagrisham.com>
Mon, 3 Mar 2025 13:24:32 +0000 (14:24 +0100)
committerIlpo Järvinen <ilpo.jarvinen@linux.intel.com>
Wed, 5 Mar 2025 12:13:34 +0000 (14:13 +0200)
Fixes logic error when block_recording is not supported but the fw attr was
being added anyway (reported by GitHub user bbregeault).

Tested myself on a Samsung Galaxy Book2 Pro (has block_recording) and by
bbregeault on a Galaxy Book2 Business (does not have block_recording).

Fixes: 56f529ce4370 ("platform/x86: samsung-galaxybook: Add samsung-galaxybook driver")

Signed-off-by: Joshua Grisham <josh@joshuagrisham.com>
Reviewed-by: Armin Wolf <W_Armin@gmx.de>
Link: https://lore.kernel.org/r/20250303132433.348653-1-josh@joshuagrisham.com
Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
drivers/platform/x86/samsung-galaxybook.c

index de1ed2dc6cca4ee963de745108a5d275d84634d5..5878a351993eb05a4c5c2c75b4915d972ce9becc 100644 (file)
@@ -1100,11 +1100,13 @@ static int galaxybook_fw_attrs_init(struct samsung_galaxybook *galaxybook)
        }
 
        err = galaxybook_block_recording_init(galaxybook);
-       if (!err)
-               galaxybook->has_block_recording = true;
-       else if (err != GB_NOT_SUPPORTED)
+       if (err == GB_NOT_SUPPORTED)
+               return 0;
+       else if (err)
                return err;
 
+       galaxybook->has_block_recording = true;
+
        return galaxybook_fw_attr_init(galaxybook,
                                       GB_ATTR_BLOCK_RECORDING,
                                       &block_recording_acpi_get,