Date: Wed, 28 Apr 2010 13:24:55 -0400 From: Alexander Sack <pisymbol@gmail.com> To: Maxim Sobolev <sobomax@freebsd.org> Cc: freebsd-current@freebsd.org, mj@feral.com Subject: Re: FreeBSD kernel doesn't boot on FUJITSU PRIMERGY RX200 S5 server Message-ID: <v2j3c0b01821004281024v2ce4f577ie68c5726cab5ffbe@mail.gmail.com> In-Reply-To: <4BD76E04.30604@FreeBSD.org> References: <4BCD5A7B.2070505@FreeBSD.org> <201004271654.07340.jhb@freebsd.org> <4BD751DD.80407@FreeBSD.org> <201004271725.36518.jhb@freebsd.org> <g2m3c0b01821004271437wcaf82bc0o751bb19f04ceed46@mail.gmail.com> <4BD76E04.30604@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Apr 27, 2010 at 7:06 PM, Maxim Sobolev <sobomax@freebsd.org> wrote: > Alexander Sack wrote: >> >> On Tue, Apr 27, 2010 at 5:25 PM, John Baldwin <jhb@freebsd.org> wrote: >>> >>> On Tuesday 27 April 2010 5:06:37 pm Maxim Sobolev wrote: >>>> >>>> John Baldwin wrote: >>>>> >>>>> On Tuesday 27 April 2010 4:26:09 pm Maxim Sobolev wrote: >>>>>> >>>>>> John Baldwin wrote: >>>>>>> >>>>>>> Hmm, I think you should definitely commit the atkbdc_isa.c change >>>>>>> first of >>>>>>> all. =A0I'm still thinking about the other change. =A0I wonder if w= e can >>>>>>> figure >>>>>>> out that a keyboard isn't present sooner somehow? =A0Do you know if= the >>>>>>> keyboard >>>>>>> appears to be present but just slow vs if the keyboard is eventuall= y >>>>>>> found to >>>>>>> not be present? >>>>>> >>>>>> Our syscons does keyboard probing two times - once early during kern= el >>>>>> initialization before most of the subsystems have been initialized >>>>>> yet, >>>>>> and then "real" probing later in boot process. Interesting thing is >>>>>> that >>>>>> initially keyboard looks present. Reading status port in >>>>>> atkbdc_configure() gives value other than 0xff, although reading is >>>>>> thousand times slower than usually. This causes syscons try attachin= g >>>>>> it. Even though reading status port works, apparently either emulati= on >>>>>> is not complete or there is some other issue, so that it never >>>>>> responds >>>>>> to some commands. Slow access and lack of response results in >>>>>> wait_for_data() function waiting several minutes instead of 200ms as >>>>>> designed. This what causes that 6-10 minutes delay in boot process. >>>>> >>>>> I believe the USB driver has disabled the keyboard emulation by the >>>>> time the >>>>> second probe happens in syscons. =A0Can you try disabling legacy USB >>>>> support in >>>>> the BIOS just to make sure that is what causes the delay? >>>> >>>> Unfortunately it's not possible. Hosting provider doesn't allow me to >>>> have access to BIOS settings. >> >> Stunt double: =A0I tried it and it has no effect. =A0The waits in atkdbd >> kills it with or without USB legacy support on. =A0The wait on this >> machine is about 1-2 minutes before boot. =A0Just another data point. > > Have you tried my patch? Does it help? Maxim, yes I have. Works much better. Wait time is nominal. I would definitely document the time delay code as its non-intuitive looking at it. -aps
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?v2j3c0b01821004281024v2ce4f577ie68c5726cab5ffbe>