grub-devel
[Top][All Lists]
Advanced

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

Re: [PATCH] at_keyboard: Fix keyboards that report IBM PC AT scan codes


From: Javier Martinez Canillas
Subject: Re: [PATCH] at_keyboard: Fix keyboards that report IBM PC AT scan codes
Date: Tue, 19 Jan 2021 09:07:30 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.6.0

Hello Vladimir and Daniel,

Could you please let us know your thoughts on Renaud's investigation
and patches? Thanks a lot for your help.

On 1/8/21 3:00 PM, Renaud Métrich wrote:
> Hello,
> 
> It appears that the proposal works fine on all systems I could test 
> except one: a HP DL380p Gen 8.
> 
> On that system, querying the set fails: the ACK bytes in write_mode(0) 
> work perfectly, but then 0xFE ("NACK") is read, as if the keyboard 
> didn't want to send back the set in use.
> 
> Hence, query_mode() returns 0, causing set1 to be used, but 
> unfortunately the system expects set2 to be used.
> 
> I tried using the "resend" command, but nothing helps.
> 
> I'm hence proposing a fallback solution for this kind of hardware where 
> the admin can add a "at_keyboard_fallback_set" environment variable in 
> grub.cfg that would end using a specific set if query_mode() fails.
> 
> See proposed patch in attachment.
> 
> Renaud.
> 
> On 12/14/20 5:47 PM, Renaud Métrich wrote:
>> Hi Vladimir,
>>
>> Thanks for the hint, this was obvious now.
>>
>> Please find attached the new patch which definitely fixes the issue.
>>
>> It has been tested on various hardware (see git commit details).
>>
>> In a nutshell the solution is to stick to set 1 if controller is in 
>> Translate mode, and use set X otherwise, X being the queried mode.
>>
>> Additionally, in controller_fini, nothing has to be restored, since 
>> nothing was changed. This fixes an issue when switching between 
>> at_keyboard, console, and at_keyboard again, in case queried set is 
>> not the actual used set.
>>
>> Renaud.
>>

Best regards,
-- 
Javier Martinez Canillas
Software Engineer - Desktop Hardware Enablement
Red Hat




reply via email to

[Prev in Thread] Current Thread [Next in Thread]