svn commit: r222795 - head/sys/dev/atkbdc

Jung-uk Kim jkim at FreeBSD.org
Tue Jun 7 19:08:41 UTC 2011


On Tuesday 07 June 2011 02:02 pm, John Baldwin wrote:
> On Tuesday, June 07, 2011 11:39:26 am Jung-uk Kim wrote:
> > On Tuesday 07 June 2011 09:52 am, John Baldwin wrote:
> > The whole point of this commit is to blacklist *recent* BIOS (or
> > CSM) from probing keyboard typematic information, more
> > specifically, recent Intel chipset platforms.  They don't support
> > many INT 15h/16h functions but only cause trouble at best.  OTOH,
> > I haven't seen such problems with AMD chipset systems and they
> > all seem to have traditional entry points at the interrupt vector
> > table, for example.
>
> Err, but you didn't blacklist recent BIOS.  You blacklist _all_
> BIOS that use entry points other than the ones from the UEFI spec,
> including BIOSes that don't claim to support UEFI and the BIOS from
> the two systems I quoted.

Relax.  The entry points were originally from IBM PC/AT and PS/2 
systems and UEFI CSM spec. was written to ensure backward 
compatibility with the *real* BIOS.  I am quite sure your BIOS 
doesn't support keyboard typematic, i.e., it doesn't have sufficient 
compatibility with the original IBM BIOS.  If it does, I'll happily 
revert the change. :-)

> > > You might as well just turn the check off on all machines at
> > > this point rather than using completely arbitrary tests that
> > > are only valid on a small fraction of the x86 universe.
> >
> > I don't think it is "completely" arbitrary.  If it doesn't have
> > the traditional entry points, it is very unlikely to support
> > keyboard typematic in the first place.  Please let me know if you
> > have any counter example.
>
> Umm, I just gave you two examples.  UEFI is not a standard
> appropriate to the vast majority of x86 BIOS implementations.  It
> is far, far too narrow.

Please see above.

> Put another way, we should assume that all non-recent BIOSes do not
> conform to UEFI (since many older systems pre-date the UEFI spec
> for one) and that they have all been effectively blacklisted now. 
> Given that, you've now restricted this functionality to only a
> subset of recent BIOSes and have blacklisted the rest of the known
> universe.

I mentioned UEFI CSM spec. in the commit log because it *also* 
mandated the entry points, not because new BIOS must conform to CSM 
spec., which would be totally non-sensical.

> However, the simplest fix is probably to just remove this entirely
> as I doubt anyone really depends on the BIOS settings for these
> anyway.

My 11-year old *Intel* Pentium III motherboard has the exact entry 
points and it still works fine. ;-)

Anyway, I don't mind this feature gets retired.

Jung-uk Kim


More information about the svn-src-head mailing list