Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 29 Apr 2010 06:16:00 +0000 (UTC)
From:      Maxim Sobolev <sobomax@FreeBSD.org>
To:        cvs-src-old@freebsd.org
Subject:   cvs commit: src/sys/dev/atkbdc atkbdc.c atkbdc_ebus.c atkbdc_isa.c atkbdcreg.h
Message-ID:  <201004290616.o3T6GKwo053816@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
sobomax     2010-04-29 06:16:00 UTC

  FreeBSD src repository

  Modified files:
    sys/dev/atkbdc       atkbdc.c atkbdc_ebus.c atkbdc_isa.c 
                         atkbdcreg.h 
  Log:
  SVN rev 207354 on 2010-04-29 06:16:00Z by sobomax
  
  On certain chipsets AT keyboard controller isn't present and is
  emulated by BIOS using SMI interrupt. On those chipsets reading
  from the status port may be thousand times slower than usually.
  Sometimes this emilation is not working properly resulting in
  commands timing out and since we assume that inb() operation
  takes very little time to complete we need to adjust number of
  retries to keep waiting time within a designed limits (100ms).
  Measure time it takes to make read_status() call and adjust
  number of retries accordingly.
  
  To keep it simple, use TSC to measure inb() performance and
  keep it to amd64-only, since TSC may not available on older
  CPUs.
  
  Also enable detection of the AT controller absence on amd64.
  
  Reviewed by:    jhb
  MFC after:      1 month
  
  Revision  Changes    Path
  1.26      +62 -14    src/sys/dev/atkbdc/atkbdc.c
  1.2       +1 -0      src/sys/dev/atkbdc/atkbdc_ebus.c
  1.38      +5 -2      src/sys/dev/atkbdc/atkbdc_isa.c
  1.13      +1 -0      src/sys/dev/atkbdc/atkbdcreg.h



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