ukbd attachment and root mount
Andriy Gapon
avg at icyb.net.ua
Wed Nov 12 04:49:20 PST 2008
on 12/11/2008 14:33 Jeremy Chadwick said the following:
> On Wed, Nov 12, 2008 at 02:20:41PM +0200, Andriy Gapon wrote:
>> on 12/11/2008 14:14 Jeremy Chadwick said the following:
>>> On Wed, Nov 12, 2008 at 01:58:58PM +0200, Andriy Gapon wrote:
>> [snip]
>>>> 2. if ukbd driver is not attached then I don't see any way USB keyboard
>>>> would work in non-legacy way
>>> Regarding #2: at which stage? boot0/boot2/loader require an AT or PS/2
>>> keyboard to work. None of these stages use ukbd(4) or anything -- there
>>> is no kernel loaded at this point!! Meaning: if you have a USB keyboard,
>>> your BIOS will need to have a "USB Legacy" option to cause it to act as
>>> a PS/2 keyboard, for typing in boot0/boot2/loader to work.
>>>
>>> Device hints are for kernel drivers, once the kernel is loaded.
>> Jeremy,
>>
>> I understand all of this.
>> In subject line and earlier messages I say that I am interested in
>> mountroot prompt - the prompt where kernel can ask about what device to
>> use for root filesystem.
>> Essentially I would like kernel to recognize USB keyboard (and disable
>> all the legacy stuff if needed) before it prompts for the root device.
>
> I fully understand that fact. However, I don't see the logic in that
> statement. You should be able to remove and add a keyboard at any time
> and be able to type immediately. Meaning: I don't see why when the
> keyboard recognition is performed (e.g. before printing mountroot or
> after) matters. It should not. I think this is a red herring.
I think that this does matter because keyboard recognition is performed
after the 'mounting from' log line *only if* root mount is done
automatically.
If there is an actual interactive prompt then recognition is not
performed, at least I do not see any relevant lines on the screen and I
am stuck at the prompt.
> I've seen the problem where I have a fully functional USB keyboard in
> boot0/boot2/loader
For me it even randomly dies at these stages.
I reported this in a different thread.
But this should not be related to kernel behavior.
>and in multi-user,
For me this always works.
> but when booting into single-user
For me this always works.
> or when getting a mountroot prompt, the keyboard does not function.
> When the mountroot prompt is printed (before or after ukbd attached)
> makes no difference for me in this scenario -- I tested it many times.
For me ukbd lines are never printed if I get actual interactive
mountroot prompt.
> It's very possible that "something" (kbdcontrol?) is getting run only
> during late stages of multi-user, which makes the keyboard work. But
> prior to that "something" being run (but AFTER boot2/loader), the
> keyboard is not truly usable.
For me this is not true. My keyboard always works after ukbd lines
appear on screen.
> I hope everyone here is also aware of that fact that not all keyboards
> are created equal. Case in point (and this reason is exactly why I
> am purchasing a native PS/2 keyboard, as USB4BSD doesn't work with
> all USB keyboards right now):
For me this is not an option, no PS/2 ports.
> http://lists.freebsd.org/pipermail/freebsd-current/2008-November/000219.html
>
> The bottom line:
>
> FreeBSD cannot be reliably used with a USB keyboard in all
> circumstances.And that is a very sad reality, because 90% of the
> keyboards you find on the consumer and enterprise market are USB --
> native PS/2 keyboards are now a scarcity.
I agree that this is a sad reality but only for boot stages where we
depend on external entity named BIOS to help us.
This doesn't have to be a sad reality once kernel takes control.
USB support in boot chain - I don't know - this would be great of course
but that's a lot of code.
--
Andriy Gapon
More information about the freebsd-usb
mailing list