Re: [PATCH 2/2] Input: soc_button_array - Fix mapping of the 5th GPIO in a PNP0C40 device

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Jan 7, 2019 at 11:03 AM Hans de Goede <hdegoede@xxxxxxxxxx> wrote:
>
> Hi,
>
> On 07-01-19 10:58, Benjamin Tissoires wrote:
> > On Fri, Jan 4, 2019 at 12:26 AM Hans de Goede <hdegoede@xxxxxxxxxx> wrote:
> >>
> >> The Microsoft documenation for the PNP0C40 device aka the
> >> "Windows-compatible button array" describes the 5th GpioInt listed in
> >> the resources as: '5. Interrupt corresponding to the "Rotation Lock"
> >> button, if supported'.
> >>
> >> Notice this describes the 5th entry as a button while we sofar have been
> >> mapping it to EV_SW, SW_ROTATE_LOCK. On my Point of View TAB P1006W-232
> >> which actually comes with a rotation-lock button, the button indeed is a
> >> button and not a slider/switch. An image search for other Windows tablets
> >> has found 2 more models with a rotation-lock button and on both of those
> >> it too is a push-button and not a slider/switch.
> >>
> >> Further evidence can be found in the HUT extension HUTRR52 from Microsoft
> >> which adds rotation lock support to the HUT, which describes 2 different
> >> usages: "0xC9 System Display Rotation Lock Button" and
> >> "0xCA System Display Rotation Lock Slider Switch" note that switch is seen
> >> as a separate thing here and the non switch wording is an exact match for
> >> the "Windows-compatible button array" spec wording.
> >>
> >> TL;DR: our current mapping of the 5th GPIO to SW_ROTATE_LOCK is wrong
> >> because the 5th GPIO is for a push-button not a switch.
> >>
> >> This commit fixes this by maping the 5th GPIO to KEY_ROTATE_LOCK_TOGGLE.
> >>
> >> Signed-off-by: Hans de Goede <hdegoede@xxxxxxxxxx>
> >> ---
> >> The referenced documents can currently be found here:
> >> https://docs.microsoft.com/en-us/windows-hardware/drivers/bringup/other-acpi-namespace-objects
> >> https://www.usb.org/sites/default/files/hutrr52_system_display_rotation_lock_controls_0.pdf
> >
> > We should probably add those links to the commit description.
> > They sometimes disappear, but that will help for regressions in the
> > short term if there are any.
>
> That is fine with me, I put them here because some subsystems don't
> want URLs in the commit message since they go stale over time.

That is a policy Dmitry needs to make then :)
But I often prefer having those for the reasons above. At least we
know the docs were available even if the link is broken :)

>
> Do you want me to do a resend with these added to the commit message?

Up to Dmitry again. But if it doesn't bother you, maybe a quick v2
would be fine.

Cheers,
Benjamin

>
> > Both patches are:
> > Acked-by: Benjamin Tissoires <benjamin.tissoires@xxxxxxxxxx>
>
> Thanks & Regards,
>
> Hans
>
>
> >> ---
> >>   drivers/input/misc/soc_button_array.c | 2 +-
> >>   1 file changed, 1 insertion(+), 1 deletion(-)
> >>
> >> diff --git a/drivers/input/misc/soc_button_array.c b/drivers/input/misc/soc_button_array.c
> >> index f53923b1593b..bb458beecb43 100644
> >> --- a/drivers/input/misc/soc_button_array.c
> >> +++ b/drivers/input/misc/soc_button_array.c
> >> @@ -377,7 +377,7 @@ static struct soc_button_info soc_button_PNP0C40[] = {
> >>          { "home", 1, EV_KEY, KEY_LEFTMETA, false, true },
> >>          { "volume_up", 2, EV_KEY, KEY_VOLUMEUP, true, false },
> >>          { "volume_down", 3, EV_KEY, KEY_VOLUMEDOWN, true, false },
> >> -       { "rotation_lock", 4, EV_SW, SW_ROTATE_LOCK, false, false },
> >> +       { "rotation_lock", 4, EV_KEY, KEY_ROTATE_LOCK_TOGGLE, false, false },
> >>          { }
> >>   };
> >>
> >> --
> >> 2.20.1
> >>



[Index of Archives]     [Linux Media Devel]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Linux Wireless Networking]     [Linux Omap]

  Powered by Linux