diff mbox series

platform/x86: lenovo-ymc: Ignore the 0x0 state

Message ID 08ab73bb74c4ad448409f2ce707b1148874a05ce.1724340562.git.soyer@irl.hu (mailing list archive)
State Accepted, archived
Headers show
Series platform/x86: lenovo-ymc: Ignore the 0x0 state | expand

Commit Message

Gergo Koteles Aug. 22, 2024, 3:38 p.m. UTC
While booting, Lenovo 14ARB7 reports 'lenovo-ymc: Unknown key 0 pressed'
warning. Because lenovo_ymc_probe() calls lenovo_ymc_notify() and that
time the YMC part is not triggered yet (which is mandatory for this
model). At the end of lenovo_ymc_notify() YMC is triggered by the
ideapad-laptop driver and then lenovo_ymc_notify() will be called by WMI
to report the actual value.

Add 0x0 YMC state to the sparse keymap to ignore.

Signed-off-by: Gergo Koteles <soyer@irl.hu>
---
 drivers/platform/x86/lenovo-ymc.c | 2 ++
 1 file changed, 2 insertions(+)

Comments

Ilpo Järvinen Aug. 22, 2024, 3:56 p.m. UTC | #1
Hi,

A quick comment as I failed to understand your commit message.

On Thu, 22 Aug 2024, Gergo Koteles wrote:

> While booting, Lenovo 14ARB7 reports 'lenovo-ymc: Unknown key 0 pressed'
> warning. Because lenovo_ymc_probe() calls lenovo_ymc_notify() and that
> time the YMC part is not triggered yet

This sentence should be rephrased as is it doesn't seem to make sense.
Or is the . before it in wrong place and should be removed?

> (which is mandatory for this
> model).

If the latter of the options above is the right one, I cannot connect the 
meaning of this parenthesis part with the full sentence. That is, what is 
mandatory in that case? So you might have to rephrase it as well.

> At the end of lenovo_ymc_notify() YMC is triggered by the
> ideapad-laptop driver and then lenovo_ymc_notify() will be called by WMI
> to report the actual value.

--
 i.

> 
> Add 0x0 YMC state to the sparse keymap to ignore.
> 
> Signed-off-by: Gergo Koteles <soyer@irl.hu>
> ---
>  drivers/platform/x86/lenovo-ymc.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/drivers/platform/x86/lenovo-ymc.c b/drivers/platform/x86/lenovo-ymc.c
> index e0bbd6a14a89..bd9f95404c7c 100644
> --- a/drivers/platform/x86/lenovo-ymc.c
> +++ b/drivers/platform/x86/lenovo-ymc.c
> @@ -43,6 +43,8 @@ struct lenovo_ymc_private {
>  };
>  
>  static const struct key_entry lenovo_ymc_keymap[] = {
> +	/* Ignore the uninitialized state */
> +	{ KE_IGNORE, 0x00 },
>  	/* Laptop */
>  	{ KE_SW, 0x01, { .sw = { SW_TABLET_MODE, 0 } } },
>  	/* Tablet */
>
Hans de Goede Sept. 4, 2024, 4:59 p.m. UTC | #2
Hi,

On 8/22/24 5:38 PM, Gergo Koteles wrote:
> While booting, Lenovo 14ARB7 reports 'lenovo-ymc: Unknown key 0 pressed'
> warning. Because lenovo_ymc_probe() calls lenovo_ymc_notify() and that
> time the YMC part is not triggered yet (which is mandatory for this
> model). At the end of lenovo_ymc_notify() YMC is triggered by the
> ideapad-laptop driver and then lenovo_ymc_notify() will be called by WMI
> to report the actual value.
> 
> Add 0x0 YMC state to the sparse keymap to ignore.
> 
> Signed-off-by: Gergo Koteles <soyer@irl.hu>

Thank you for your patch, I've improved the commit message to address
Ilpo's review comments and applied this patch to my review-hans branch:
https://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86.git/commit/?h=review-hans&id=a8a2253e84dc62b0d50943408c480188a0086263

Once I've run some tests on this branch the patches there will be
added to the platform-drivers-x86/for-next branch and eventually
will be included in the pdx86 pull-request to Linus for the next
merge-window.

Regards,

Hans



> ---
>  drivers/platform/x86/lenovo-ymc.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/drivers/platform/x86/lenovo-ymc.c b/drivers/platform/x86/lenovo-ymc.c
> index e0bbd6a14a89..bd9f95404c7c 100644
> --- a/drivers/platform/x86/lenovo-ymc.c
> +++ b/drivers/platform/x86/lenovo-ymc.c
> @@ -43,6 +43,8 @@ struct lenovo_ymc_private {
>  };
>  
>  static const struct key_entry lenovo_ymc_keymap[] = {
> +	/* Ignore the uninitialized state */
> +	{ KE_IGNORE, 0x00 },
>  	/* Laptop */
>  	{ KE_SW, 0x01, { .sw = { SW_TABLET_MODE, 0 } } },
>  	/* Tablet */
diff mbox series

Patch

diff --git a/drivers/platform/x86/lenovo-ymc.c b/drivers/platform/x86/lenovo-ymc.c
index e0bbd6a14a89..bd9f95404c7c 100644
--- a/drivers/platform/x86/lenovo-ymc.c
+++ b/drivers/platform/x86/lenovo-ymc.c
@@ -43,6 +43,8 @@  struct lenovo_ymc_private {
 };
 
 static const struct key_entry lenovo_ymc_keymap[] = {
+	/* Ignore the uninitialized state */
+	{ KE_IGNORE, 0x00 },
 	/* Laptop */
 	{ KE_SW, 0x01, { .sw = { SW_TABLET_MODE, 0 } } },
 	/* Tablet */