Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 9 Jun 2011 13:42:21 -0400
From:      Jung-uk Kim <jkim@FreeBSD.org>
To:        Andriy Gapon <avg@freebsd.org>
Cc:        svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, John Baldwin <jhb@freebsd.org>
Subject:   Re: svn commit: r222795 - head/sys/dev/atkbdc
Message-ID:  <201106091342.41548.jkim@FreeBSD.org>
In-Reply-To: <4DEF13DF.4090103@FreeBSD.org>
References:  <201106062303.p56N3cjs053024@svn.freebsd.org> <201106071545.02850.jkim@FreeBSD.org> <4DEF13DF.4090103@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wednesday 08 June 2011 02:17 am, Andriy Gapon wrote:
> on 07/06/2011 22:45 Jung-uk Kim said the following:
> > On Tuesday 07 June 2011 03:31 pm, Jung-uk Kim wrote:
> >> On Tuesday 07 June 2011 03:08 pm, Andriy Gapon wrote:
> >>> on 07/06/2011 21:02 John Baldwin said the following:
> >>>> 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.
> >>>
> >>> I'd like to simply add two datapoints:
> >>> 1) recent AMD system:
> >>>
> >>> $ dd if=/dev/mem bs=4 iseek=0x15 count=2 | hd
> >>> 00000000  59 f8 00 f0 2e e8 00 f0
> >>
> >> Yes, that's exactly what I am seeing from all of my AMD systems
> >> and a 11-year old Pentium III system.
> >>
> >>> 2) very old PIIX/440BX system (manufactured ~1999):
> >>> $ dd if=/dev/mem bs=4 iseek=0x15 count=2 | hd
> >>> 00000000  9a 06 b8 9c 2e e8 00 f0
> >>
> >> INT 15h is relocated under 0xa0000, i.e., "highmem".  Are you
> >> using non-FreeBSD chain loader?
>
> Ah, yes, it's a diskless boot using gpxe.

Installing custom BIOS services on conventional memory and replacing 
INT 15h vector (to reserve the page or to hide itself from e820h 
subfunction queries), was a very widely used technique back then, for 
TSRs and boot loaders (and for virii). :-)

> > Do you have "relocate to highmem" option
> >
> >> in the BIOS configuration?
> >
> > Sorry, it's actually under 640KB in conventional memory.  It must
> > be done by TSR or boot loader.  Ah, good ol'days... :-P
> >
> >> Most importantly, does it support keyboard typematic feature?
>
> At least there is a BIOS option for setting it.

If you don't use the pixie boot loader, then the interrupt vector will 
be back to normal, I guess.

Jung-uk Kim



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