lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <c5a7fa10-7b6a-fa0d-622e-4392fda1ee93@tuxedocomputers.com>
Date:   Mon, 11 Jul 2022 14:45:58 +0200
From:   Werner Sembach <wse@...edocomputers.com>
To:     Hans de Goede <hdegoede@...hat.com>, dmitry.torokhov@...il.com,
        tiwai@...e.de, samuel@...oj.net, linux-input@...r.kernel.org,
        linux-kernel@...r.kernel.org
Subject: Re: [PATCH 2/2] Input: i8042 - add TUXEDO devices to i8042 quirk
 tables for partial fix

Hi,

On 7/8/22 21:39, Hans de Goede wrote:
> Hi,
>
> On 7/8/22 18:10, Werner Sembach wrote:
>> A lot of modern Clevo barebones have touchpad and/or keyboard issues after
>> suspend fixable with nomux + reset + noloop + nopnp. Luckily, none of them
>> have an external PS/2 port so this can safely be set for all of them.
>>
>> I'm not entirely sure if every device listed really needs all four quirks,
>> but after testing and production use. No negative effects could be
>> observed when setting all four.
>>
>> Setting SERIO_QUIRK_NOMUX or SERIO_QUIRK_RESET_ALWAYS on the Clevo N150CU
>> and the Clevo NHxxRZQ makes the keyboard very laggy for ~5 seconds after
>> boot and sometimes also after resume. However both are required for the
>> keyboard to not fail completely sometimes after boot or resume.
> Hmm, the very laggy bit does not sound good. Have you looked into other
> solutions, e.g. what happens if you use just nomux without any of the
> other 3 options ?

I tried a lot of combinations, but it was some time ago.

iirc: at least nomux and reset are required and both individually cause 
the lagging.

So the issue is not fixed by just using a different set of quirks.

Regards,

Werner

>
> Regards,
>
> Hans
>
>
>> Signed-off-by: Werner Sembach <wse@...edocomputers.com>
>> Cc: stable@...r.kernel.org
>> ---
>>   drivers/input/serio/i8042-x86ia64io.h | 28 +++++++++++++++++++++++++++
>>   1 file changed, 28 insertions(+)
>>
>> diff --git a/drivers/input/serio/i8042-x86ia64io.h b/drivers/input/serio/i8042-x86ia64io.h
>> index 5204a7dd61d4..9dc0266e5168 100644
>> --- a/drivers/input/serio/i8042-x86ia64io.h
>> +++ b/drivers/input/serio/i8042-x86ia64io.h
>> @@ -1107,6 +1107,20 @@ static const struct dmi_system_id i8042_dmi_quirk_table[] __initconst = {
>>   		.driver_data = (void *)(SERIO_QUIRK_NOMUX | SERIO_QUIRK_RESET_ALWAYS |
>>   					SERIO_QUIRK_NOLOOP | SERIO_QUIRK_NOPNP)
>>   	},
>> +	{
>> +		/*
>> +		 * Setting SERIO_QUIRK_NOMUX or SERIO_QUIRK_RESET_ALWAYS makes
>> +		 * the keyboard very laggy for ~5 seconds after boot and
>> +		 * sometimes also after resume.
>> +		 * However both are required for the keyboard to not fail
>> +		 * completely sometimes after boot or resume.
>> +		 */
>> +		.matches = {
>> +			DMI_MATCH(DMI_BOARD_NAME, "N150CU"),
>> +		},
>> +		.driver_data = (void *)(SERIO_QUIRK_NOMUX | SERIO_QUIRK_RESET_ALWAYS |
>> +					SERIO_QUIRK_NOLOOP | SERIO_QUIRK_NOPNP)
>> +	},
>>   	{
>>   		.matches = {
>>   			DMI_MATCH(DMI_BOARD_NAME, "NH5xAx"),
>> @@ -1114,6 +1128,20 @@ static const struct dmi_system_id i8042_dmi_quirk_table[] __initconst = {
>>   		.driver_data = (void *)(SERIO_QUIRK_NOMUX | SERIO_QUIRK_RESET_ALWAYS |
>>   					SERIO_QUIRK_NOLOOP | SERIO_QUIRK_NOPNP)
>>   	},
>> +	{
>> +		/*
>> +		 * Setting SERIO_QUIRK_NOMUX or SERIO_QUIRK_RESET_ALWAYS makes
>> +		 * the keyboard very laggy for ~5 seconds after boot and
>> +		 * sometimes also after resume.
>> +		 * However both are required for the keyboard to not fail
>> +		 * completely sometimes after boot or resume.
>> +		 */
>> +		.matches = {
>> +			DMI_MATCH(DMI_BOARD_NAME, "NHxxRZQ"),
>> +		},
>> +		.driver_data = (void *)(SERIO_QUIRK_NOMUX | SERIO_QUIRK_RESET_ALWAYS |
>> +					SERIO_QUIRK_NOLOOP | SERIO_QUIRK_NOPNP)
>> +	},
>>   	{
>>   		.matches = {
>>   			DMI_MATCH(DMI_BOARD_NAME, "NL5xRU"),

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ