> -----Original Message----- > From: Pali Rohár <pali@xxxxxxxxxx> > Sent: Monday, June 8, 2020 3:36 PM > To: Limonciello, Mario > Cc: y.linux@xxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; platform-driver- > x86@xxxxxxxxxxxxxxx; mjg59@xxxxxxxxxxxxx > Subject: Re: [PATCH 1/3] platform/x86: dell-wmi: add new backlight events > > > [EXTERNAL EMAIL] > > On Monday 08 June 2020 20:14:15 Mario.Limonciello@xxxxxxxx wrote: > > > >>> index c25a4286d766..0b4f72f923cd 100644 > > > >>> --- a/drivers/platform/x86/dell-wmi.c > > > >>> +++ b/drivers/platform/x86/dell-wmi.c > > > >>> @@ -252,6 +252,10 @@ static const struct key_entry > > > >> dell_wmi_keymap_type_0010[] = { > > > >>> /* Fn-lock switched to multimedia keys */ > > > >>> { KE_IGNORE, 0x1, { KEY_RESERVED } }, > > > >>> > > > >>> + /* Backlight brightness level */ > > > >>> + { KE_KEY, 0x57, { KEY_BRIGHTNESSDOWN } }, > > > >>> + { KE_KEY, 0x58, { KEY_BRIGHTNESSUP } }, > > > >>> + > > > > > > > > For these particular events are they emitted by another interface as > well > > > in this > > > > platform? > > > > > > > > If so they should be KE_IGNORE so you don't end up with double > > > notifications to > > > > userspace. > > > Thank you both for the review, > > > This is my first patch so if i am doing something wrong please let me > know. > > > > > > Both before and after this change they are only emitted once (verified > via > > > showkeys) > > > this is because `dell_wmi_process_key()` calls > > > `acpi_video_handles_brightness_key_presses()` > > > for brightness events, and > `acpi_video_handles_brightness_key_presses()` > > > makes sure no duplicate acpi-video events are sent. > > > > That's good to hear that it also filters it, but my opinion is that dell- > wmi.c > > should also filter it. So just change KE_KEY to KE_IGNORE like the other > events. > > IIRC for other existing KEY_BRIGHTNESS* lines, KE_KEY/KE_IGNORE decision > is there just because kernel can be configured if ACPI layer would > handle them or not. And based on > acpi_video_handles_brightness_key_presses() > function we know if ACPI layer processed these keys or not. > > So in my opinion we should handle these new KEY_BRIGHTNESS* events in > the same way. So dell-wmi should process these events, but only in case > when ACPI layer did not processed them. OK thanks, I wasn't aware of this decision elsewhere.