From owner-cvs-src@FreeBSD.ORG Wed Mar 1 02:48:15 2006 Return-Path: X-Original-To: cvs-src@freebsd.org Delivered-To: cvs-src@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 6272216A420; Wed, 1 Mar 2006 02:48:15 +0000 (GMT) (envelope-from scottl@samsco.org) Received: from pooker.samsco.org (pooker.samsco.org [168.103.85.57]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6034243D49; Wed, 1 Mar 2006 02:48:07 +0000 (GMT) (envelope-from scottl@samsco.org) Received: from [192.168.254.11] (junior.samsco.home [192.168.254.11]) (authenticated bits=0) by pooker.samsco.org (8.13.4/8.13.4) with ESMTP id k212m6sE059265; Tue, 28 Feb 2006 19:48:06 -0700 (MST) (envelope-from scottl@samsco.org) Message-ID: <44050B67.3040302@samsco.org> Date: Tue, 28 Feb 2006 19:48:07 -0700 From: Scott Long User-Agent: Mozilla/5.0 (X11; U; FreeBSD i386; en-US; rv:1.7.12) Gecko/20051230 X-Accept-Language: en-us, en MIME-Version: 1.0 To: Maksim Yevmenkin References: <200602282346.k1SNkNHq073716@repoman.freebsd.org> <4404FCC8.5070907@samsco.org> In-Reply-To: Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=-1.4 required=3.8 tests=ALL_TRUSTED autolearn=failed version=3.1.0 X-Spam-Checker-Version: SpamAssassin 3.1.0 (2005-09-13) on pooker.samsco.org Cc: cvs-src@freebsd.org, src-committers@freebsd.org, cvs-all@freebsd.org Subject: Re: cvs commit: src/sys/dev/kbd kbd.c src/sys/dev/syscons syscons.c X-BeenThere: cvs-src@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: CVS commit messages for the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 01 Mar 2006 02:48:15 -0000 Maksim Yevmenkin wrote: > On 2/28/06, Scott Long wrote: > >>Maksim Yevmenkin wrote: >> >>>emax 2006-02-28 23:46:23 UTC >>> >>> FreeBSD src repository >>> >>> Modified files: >>> sys/dev/kbd kbd.c >>> sys/dev/syscons syscons.c >>> Log: >>> Integrate kbdmux(4) into syscons(4) and kbd code. >>> >>> By default syscons(4) will look for the kbdmux(4) keyboard first, and then, >>> if not found, look for any keyboard. >>> >>> Current kbd code is modified so if kbdmux(4) is the current keyboard, all >>> new keyboards are automatically added to the kbdmux(4). >>> >>> Switch to kbdmux(4) can be done at boot time, by loading kbdmux module at >>> the loader prompt, or at runtime, by kldload'ing the kbdmux module and >>> releasing current active keyboard. >>> >>> If, for whatever reason, kbdmux(4) is not required/desired then just do >>> not load it and everything should work as before. It is also possible to >>> kldunload kbdmux at runtime and syscons(4) will automatically switch to >>> the first available keyboard. >>> >>> No response from: freebsd-current@ >>> MFC after: 1 day >>> >>> Revision Changes Path >>> 1.45 +24 -0 src/sys/dev/kbd/kbd.c >>> 1.442 +42 -4 src/sys/dev/syscons/syscons.c >> >>Ultimately I would like to see this enabled by default so that >>everything 'just works', but with a way to easily disable it in case >>something goes wrong. Would that be possible? > > > right now i can think of two ways to make it enabled by default: > > 1) add 'device kbdmux' to the kernel config (or even make it required) Could you add a check to the probe/attach routines of kbdmux so that it could be disabled via a loader hint? I assume that there will only be one instance of the kbdmux device, so this should be easy to do. Something similar is possible with acpi, fwiw. > > 2) set kbdmux_load to "YES" somewhere in loader.* files (somewhat > similar to acpi). Actually, acpi is much more evil. The loader probes the BIOS to see if ACPI tables are present, and then sets the acpi_load variable based on that. So no variables in loader.* are present in the default install. If we wanted to add the kbdmux_load variable in the default system then we will need to add /usr/src/sys/boot/forth/loader.conf, or add magic to the installkernel target to handle it similar to device.hints. > > with option (2) above it would be easy to disable, i.e. just do > > unset kdbmux_load > > at loader command prompt or loader.rc > > thanks, > max > Scott