https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=246121

--- Comment #12 from Koine Yuusuke <koi...@yahoo.co.jp> ---
(In reply to Peter Grehan from comment #11)

Thank you for responding.

I think it is unnecessary to add a translation table from scanset2 to scanset
1.
In the patch suggested this time, the translation process from scanset 2 to
scanset 1 is bypassed in the atkbd emulation only when the QEMU Extended Key
Event Message is received.
(Therefore, an argument that specifies whether scanset conversion is performed
is added to the fifo_get() function and fifo_put() function arguments.)

There are two reasons for doing this.
 1) It is written that a simple 1:1 translation is possible from scanset2 to
scanset 1, but I understand the following exceptions.
     Scanset 2      Scanset 1
   -----------------------------
     0x02/0x83  ->  0x41
     0x7f/0x84  ->  0x54
   There is no problem when tranlating from scanset 2 to scanset 1 as int the
atkbd emulation, but when performing reverse tranlation, it is the recognition
that 0x41/0x54 of scanset 1 cannot determine which value of scanset 2 is set.
   (However, as far as I know, this is only the F7 key(0x83->0x41), so it may
not be a problem ...)

 2) In bhyve's code, translating from scanset 1 to scanset 2 in ps2kbd.c, and
then translating from scanset 2 to scanset 1 in atkbd.c again immediately, it
is 
considered redundant even if the effect on performance is slight I will.

In the future, if we decide to make the atkbd emulation(atkbdc.c) and PS2
virtual keyboard driver(ps2kbd.c) completely independent, I'm aware that there
is a problem because the method suggested this time will not be able to make
them independent.
However, in the current implementation, the function of the PS2 virtual
keyboard driver is directly called from the atkbd emulation, so I couldn't
understand the future course.

If necessary, I can stop the bypass process and add the translation process
from scanset 1 to scanset 2.
I apologize for the inconvenience, but please would like to know the
correspondence policy.

-- 
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
freebsd-virtualization@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-virtualization
To unsubscribe, send any mail to 
"freebsd-virtualization-unsubscr...@freebsd.org"

Reply via email to