Date: Sun, 29 Jun 1997 08:11:41 -0700 (PDT) From: Kazutaka YOKOTA <yokota@FreeBSD.ORG> To: cvs-committers@FreeBSD.ORG, cvs-all@FreeBSD.ORG, cvs-sys@FreeBSD.ORG Subject: cvs commit: src/sys/i386/isa syscons.c syscons.h Message-ID: <199706291511.IAA02789@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
yokota 1997/06/29 08:11:41 PDT Modified files: sys/i386/isa syscons.c syscons.h Log: A fix/work-around for ThinkPad 535. Add a new configuration flag, KBD_NORESET (0x20) to tell scprobe() not to reset the keyboard. IBM ThinkPad 535 has the `Fn' key with which the user can perform certain functions in conjunction with other keys. For example, `Fn' + PageUP/PageDOWN adjust speaker volume, `Fn' + Home/End change brightness of LCD screen. It can also be used to suspend the system. It appears that these functions are implemented at the keyboard level or the keyboard controller level and totally independent from BIOS or OS. But, if the keyboard is reset (as is done in scprobe()), they become unavailable. (There are other laptops which have similar functions associated with the `Fn' key. But, they aren't affected by keyboard reset.) ThinkPad 535 doesn't have switches or buttons to adjust brightness and volume, or to put the system into the suspend mode. Therefore, it is essential to preserve these `Fn' key functions in FreeBSD. The new flag make scprobe() skip keyboard reset. If this flag is not set, scprobe() behaves in the same say as before. (If we only knew a way to detect ThinkPad 535, we could skip keyboard reset automatically, but...) Revision Changes Path 1.218 +35 -21 src/sys/i386/isa/syscons.c 1.30 +2 -1 src/sys/i386/isa/syscons.h
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199706291511.IAA02789>