detecting keyboard layout during boot

Polytropon freebsd at edvax.de
Wed May 15 14:45:24 UTC 2013


On Wed, 15 May 2013 15:53:08 +0200, Matthias Apitz wrote:
> Hello,
> 
> Here on an laptop/netbook EeePC 900 with English keyboard it says:
> 
> # dmesg | fgrep kbd
> kbd1 at kbdmux0
> atkbdc0: <Keyboard controller (i8042)> port 0x60,0x64 irq 1 on acpi0
> atkbd0: <AT Keyboard> irq 1 on atkbdc0
> kbd0 at atkbd0
> atkbd0: [GIANT-LOCKED]
> psm0: <PS/2 Mouse> irq 12 on atkbdc0
> 
> how do I know that the kb layout is English?

By looking at it. ONLY by looking at it. :-)

Even if you would remove the built-in keyboard (disconnect the
flex), you would see that entry. It's not about the keyboard per
se, it's about the keyboard controller. This interface usually
is "in parallel" with a PS/2 connector (if present). There is
no language information in it.



> > But as you're asking about USB, there is a way. But this way
> > depends on how the manufacturer cooperates. Let's discuss that.
> 
> USB was only meant as the boot device.

Okay, then I misread it. English is not my native language. :-)

The logical conclusion: You have no way to find out what keyboard
is physically installed (or attached via PS/2).

This _might_ be not entirely true: If you can obtain some hardware
identification of the eeePC you're using, maybe some kind of ACPI
string or other vendor and product ID from some component, you could
guess what "localization" the device has, and then assume what
keyboard is installed. But that's just a wild guess from my side.



-- 
Polytropon
Magdeburg, Germany
Happy FreeBSD user since 4.0
Andra moi ennepe, Mousa, ...


More information about the freebsd-questions mailing list