drivers/platform/x86/dell/dell-dw5826e-reset.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
From: surendra <kr494167@gmail.com>
PALC_DSM_FN_TRIGGER_PLDR was defined as BIT(1) (value 2).
acpi_evaluate_dsm() expects a 0-based function index integer (0, 1,
2, ...), whereas acpi_check_dsm() expects a bitmask of supported
function indices (BIT(1), BIT(2), ...).
Because PALC_DSM_FN_TRIGGER_PLDR was defined as BIT(1),
acpi_evaluate_dsm() was evaluating Function Index 2 instead of Function
Index 1, while acpi_check_dsm() was checking for Function Index 1
support.
Fix this by setting PALC_DSM_FN_TRIGGER_PLDR to 1 (the function index)
and passing BIT(PALC_DSM_FN_TRIGGER_PLDR) to acpi_check_dsm().
Fixes: 1ab843135a77 ("platform/x86: dell-dw5826e: Add reset driver for DW5826e")
Signed-off-by: surendra <kr494167@gmail.com>
---
drivers/platform/x86/dell/dell-dw5826e-reset.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/platform/x86/dell/dell-dw5826e-reset.c b/drivers/platform/x86/dell/dell-dw5826e-reset.c
index 1ca7c3421bb5..64e6e9b1d7a0 100644
--- a/drivers/platform/x86/dell/dell-dw5826e-reset.c
+++ b/drivers/platform/x86/dell/dell-dw5826e-reset.c
@@ -13,7 +13,7 @@
#include <linux/types.h>
#include <linux/uuid.h>
-#define PALC_DSM_FN_TRIGGER_PLDR BIT(1)
+#define PALC_DSM_FN_TRIGGER_PLDR 1
static guid_t palc_dsm_guid =
GUID_INIT(0x5a1a4bba, 0x8006, 0x487e, 0xbe, 0x0a, 0xac, 0xf5, 0xd8, 0xfd, 0xfe, 0x59);
@@ -66,7 +66,7 @@ static int palc_probe(struct platform_device *pdev)
if (!handle)
return -ENODEV;
- if (!acpi_check_dsm(handle, &palc_dsm_guid, 1, PALC_DSM_FN_TRIGGER_PLDR))
+ if (!acpi_check_dsm(handle, &palc_dsm_guid, 1, BIT(PALC_DSM_FN_TRIGGER_PLDR)))
return -ENODEV;
return 0;
--
2.55.0
On Wed, 22 Jul 2026, kr494167@gmail.com wrote:
> From: surendra <kr494167@gmail.com>
>
> PALC_DSM_FN_TRIGGER_PLDR was defined as BIT(1) (value 2).
>
> acpi_evaluate_dsm() expects a 0-based function index integer (0, 1,
> 2, ...), whereas acpi_check_dsm() expects a bitmask of supported
> function indices (BIT(1), BIT(2), ...).
>
> Because PALC_DSM_FN_TRIGGER_PLDR was defined as BIT(1),
> acpi_evaluate_dsm() was evaluating Function Index 2 instead of Function
> Index 1, while acpi_check_dsm() was checking for Function Index 1
> support.
>
> Fix this by setting PALC_DSM_FN_TRIGGER_PLDR to 1 (the function index)
> and passing BIT(PALC_DSM_FN_TRIGGER_PLDR) to acpi_check_dsm().
>
> Fixes: 1ab843135a77 ("platform/x86: dell-dw5826e: Add reset driver for DW5826e")
> Signed-off-by: surendra <kr494167@gmail.com>
Hi,
Thanks for the fix. We, however, need your real/full name on the
Signed-off-by line (and From should usually match that as well) to be
allowed to apply the patch.
For more information, please see:
Documentation/process/submitting-patches.rst
--
i.
> ---
> drivers/platform/x86/dell/dell-dw5826e-reset.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/platform/x86/dell/dell-dw5826e-reset.c b/drivers/platform/x86/dell/dell-dw5826e-reset.c
> index 1ca7c3421bb5..64e6e9b1d7a0 100644
> --- a/drivers/platform/x86/dell/dell-dw5826e-reset.c
> +++ b/drivers/platform/x86/dell/dell-dw5826e-reset.c
> @@ -13,7 +13,7 @@
> #include <linux/types.h>
> #include <linux/uuid.h>
>
> -#define PALC_DSM_FN_TRIGGER_PLDR BIT(1)
> +#define PALC_DSM_FN_TRIGGER_PLDR 1
>
> static guid_t palc_dsm_guid =
> GUID_INIT(0x5a1a4bba, 0x8006, 0x487e, 0xbe, 0x0a, 0xac, 0xf5, 0xd8, 0xfd, 0xfe, 0x59);
> @@ -66,7 +66,7 @@ static int palc_probe(struct platform_device *pdev)
> if (!handle)
> return -ENODEV;
>
> - if (!acpi_check_dsm(handle, &palc_dsm_guid, 1, PALC_DSM_FN_TRIGGER_PLDR))
> + if (!acpi_check_dsm(handle, &palc_dsm_guid, 1, BIT(PALC_DSM_FN_TRIGGER_PLDR)))
> return -ENODEV;
>
> return 0;
>
© 2016 - 2026 Red Hat, Inc.