> and here the prtusb
> 
> schat...@schatten:~$ pfexec echo ::prtusb -v -i a | pfexec mdb -k
> INDEX   DRIVER      INST  NODE            VID.PID     PRODUCT             
> usb_mid     0     device          0a81.0103   USB  Keyboard
> 
>         HID Descriptor  {
...
>         bCountryCode = 0x21

This problem should be bug 13262,
https://defect.opensolaris.org/bz/show_bug.cgi?id=13262


OK, so this usb keyboard device identifies itself as
a keyboard using bCountryCode = 0x21 (33 in decimal),
and according to the usb hid specification, page 23 ...
http://www.usb.org/developers/devclass_docs/HID1_11.pdf
... that is indeed "US layout". 

The firmware of this german layout usb keyboard should
have returned either bCountryCode = 9 (German) or
bCountryCode = 0 (not supported).  In the first case (9)
hal would have found the correct keyboard layout 
directly from the usb keyboard; in the second case (0)
hal would have used the default layout configured by
the user on the /dev/kbd device.

With a bCountryCode different from 0 it seems that hal
trusts what this self-identifying keyboard returns and the
layout selected by the user (via eeprom or /etc/default/kbd)
is ignored.

Are there perhaps some dip switches on the keyboard to
configure the layout returned by the usb keyboard?
-- 
This message posted from opensolaris.org
_______________________________________________
opensolaris-help mailing list
[email protected]

Reply via email to