Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 12 Nov 2008 14:49:15 +0200
From:      Andriy Gapon <avg@icyb.net.ua>
To:        Jeremy Chadwick <koitsu@FreeBSD.org>
Cc:        Nate Eldredge <neldredge@math.ucsd.edu>, freebsd-hackers@FreeBSD.org, FreeBSD Stable <freebsd-stable@FreeBSD.org>, freebsd-usb@FreeBSD.org
Subject:   Re: ukbd attachment and root mount
Message-ID:  <491AD0CB.8050309@icyb.net.ua>
In-Reply-To: <20081112123315.GA24907@icarus.home.lan>
References:  <4911BA93.9030006@icyb.net.ua> <491ABFCD.3060309@icyb.net.ua> <Pine.GSO.4.64.0811120352100.1597@zeno.ucsd.edu> <491AC502.9000507@icyb.net.ua> <20081112121410.GA24629@icarus.home.lan> <491ACA19.2040008@icyb.net.ua> <20081112123315.GA24907@icarus.home.lan>

next in thread | previous in thread | raw e-mail | index | archive | help
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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?491AD0CB.8050309>