[prev in list] [next in list] [prev in thread] [next in thread] 

List:       linux-kernel
Subject:    Re: [PATCH] Support tablet mode switch for Dell laptops
From:       Marco Martin <notmart () gmail ! com>
Date:       2018-01-22 12:50:44
Message-ID: CAD6_BotNWGq5A_kz_MWgbMCETQxo-CBuRi-+i54V68qfNdzPJw () mail ! gmail ! com
[Download RAW message or body]

On Mon, Jan 22, 2018 at 12:59 PM, Marco Martin <notmart@gmail.com> wrote:
> On Fri, Jan 19, 2018 at 6:29 PM, Dmitry Torokhov
> <dmitry.torokhov@gmail.com> wrote:
>>> We discussed a little more on the bug he filed with attached DSDT.  I think that in
>>> sparse keymap he can use KE_VSW for the entries and sparse keymap can handle.
>>
>> No it should be KE_SW I believe, as the "keycode" encodes the state.
>> See example in intel-hid.c.
>>
>> So you probably want:
>>
>>         ...
>>         { KE_SW, 0xCC, { .sw = { SW_TABLET_MODE, 1 } } }, /* Press */
>>         { KE_SW, 0xCD, { .sw = { SW_TABLET_MODE, 0 } } }, /* Release */
>>
>> Thanks.
>
> If I add those lines to intel_vbtn_keymap and remove the two special
> cases for 0xCC and 0xCD, it does work, but only if I explicitly call
> input_sync(priv->input_dev) after sparse_keymap_report_event()
> otherwise i don't get the event (cheching for instance with evtest)
> until a sync gets called (i tried to put the sync only for 0xcd and in
> that case i get both 0xcc and 0xcd when i go out of tablet mode)

with the caveat of an input_sync every event, new patch as a new
thread with Mario's
 and Dmitry's suggestions integrated in, and formatted to conform
checkpatch controls

--
Marco Martin
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic