From: Ponali <ponali2k@gmail.com>
To: Denis Benato <denis.benato@linux.dev>
Cc: platform-driver-x86@vger.kernel.org,
ilpo.jarvinen@linux.intel.com, hansg@kernel.org, luke@ljones.dev,
deor001@gmail.com, benato.denis96@gmail.com,
Salvatore Bonaccorso <carnil@debian.org>,
ponali2k@gmail.com
Subject: Re: [PATCH] platform/x86: asus-wmi: fix unclear usage of bd->props.power
Date: Tue, 25 Aug 2026 13:38:01 +0200 [thread overview]
Message-ID: <985b98f7-04a3-449b-ab6e-7f23e29e4b43@gmail.com> (raw)
In-Reply-To: <19443596-887f-4f06-ba74-c75637d6913f@linux.dev>
Hi,
I have applied your small patch, based on the diff you gave me, and the
ASUS ScreenPad display has started working.
I'm not sure what commit I was supposed to patch though, so I guessed
9bd6ec. I had to patch it manually because the line numbers weren't
matching, and you sent me the output of git diff directly instead of the
contents of a git patch file.
The custom compiled kernel created couldn't handle the brightness
correctly, only the power:
On KDE Plasma, changing the brightness is possible, but the maximum
brightness was set to be darker than usual.
On both brightnessctl and sysfs, writing to the brightness value would
change both brightness and actual_brightness, but no changes would
appear on the backlight.
Booting to a disk image of pre-6.12.90 linux with XFCE has the same
exact issues, but then after booting back to my normal 6.12.90 system,
the maximum brightness came back to what it used to be.
I hope this heisenbug only happened because i simply patched the wrong
commit.
On 19/08/2026 10:55 PM, Denis Benato wrote:
> On 8/19/26 22:53, Denis Benato wrote:
>> The bd->props.power is checked in parts of the driver correctly comparing with
>> BACKLIGHT_POWER_ON, while in others with a raw usage of bd->props.power
>> and !bd->props.power, moreover in certain checks the logic has been
>> inverted due to BACKLIGHT_POWER_ON being defined as 0: fix both the wrong
>> usage and the inconsistencies by using proper comparisons.
> Can someone having the regression please try this out please?
>> Fixes: 130d29c5627c ("platform/x86: asus-wmi: adjust screenpad power/brightness handling")
>> Closes:https://lore.kernel.org/all/178362762638.911488.8564892548331679884@eldamar.lan/
>> Closes:https://lore.kernel.org/all/ea9c63d1-4776-49d5-9dc4-6c09498f99c9@linux.dev/
>> Signed-off-by: Denis Benato<denis.benato@linux.dev>
>> ---
>> drivers/platform/x86/asus-wmi.c | 12 +++++++++---
>> 1 file changed, 9 insertions(+), 3 deletions(-)
>>
>> diff --git a/drivers/platform/x86/asus-wmi.c b/drivers/platform/x86/asus-wmi.c
>> index 8610663b8269..3600dddd8f36 100644
>> --- a/drivers/platform/x86/asus-wmi.c
>> +++ b/drivers/platform/x86/asus-wmi.c
>> @@ -4500,7 +4500,8 @@ static int update_screenpad_bl_status(struct backlight_device *bd)
>> u32 ctrl_param = bd->props.brightness;
>> int err = 0;
>>
>> - if (bd->props.power) {
>> + switch (bd->props.power) {
>> + case BACKLIGHT_POWER_ON:
>> err = asus_wmi_set_devstate(ASUS_WMI_DEVID_SCREENPAD_POWER, 1, NULL);
>> if (err < 0)
>> return err;
>> @@ -4508,12 +4509,17 @@ static int update_screenpad_bl_status(struct backlight_device *bd)
>> err = asus_wmi_set_devstate(ASUS_WMI_DEVID_SCREENPAD_LIGHT, ctrl_param, NULL);
>> if (err < 0)
>> return err;
>> - }
>> + break;
>>
>> - if (!bd->props.power) {
>> + case BACKLIGHT_POWER_OFF:
>> err = asus_wmi_set_devstate(ASUS_WMI_DEVID_SCREENPAD_POWER, 0, NULL);
>> if (err < 0)
>> return err;
>> + break;
>> +
>> + default:
>> + pr_warn("Invalid screenpad backlight power state: %d\n", bd->props.power);
>> + return -EINVAL;
>> }
>>
>> return err;
Regards,
Ponali
prev parent reply other threads:[~2026-08-25 11:38 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-19 20:53 [PATCH] platform/x86: asus-wmi: fix unclear usage of bd->props.power Denis Benato
2026-08-19 20:55 ` Denis Benato
2026-08-25 11:38 ` Ponali [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=985b98f7-04a3-449b-ab6e-7f23e29e4b43@gmail.com \
--to=ponali2k@gmail.com \
--cc=benato.denis96@gmail.com \
--cc=carnil@debian.org \
--cc=denis.benato@linux.dev \
--cc=deor001@gmail.com \
--cc=hansg@kernel.org \
--cc=ilpo.jarvinen@linux.intel.com \
--cc=luke@ljones.dev \
--cc=platform-driver-x86@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox