From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1NDP7L-0004bo-DF for qemu-devel@nongnu.org; Wed, 25 Nov 2009 16:09:39 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1NDP7G-0004Ts-Hd for qemu-devel@nongnu.org; Wed, 25 Nov 2009 16:09:38 -0500 Received: from [199.232.76.173] (port=47796 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NDP7G-0004Td-8D for qemu-devel@nongnu.org; Wed, 25 Nov 2009 16:09:34 -0500 Received: from mail.gmx.net ([213.165.64.20]:45501) by monty-python.gnu.org with smtp (Exim 4.60) (envelope-from ) id 1NDP7F-0007ii-Mk for qemu-devel@nongnu.org; Wed, 25 Nov 2009 16:09:34 -0500 Message-ID: From: "Sebastian Herbszt" References: <217FD12D88EA4AC2B2A32D77E010B16C@FSCPC> <20091122153809.GL3193@redhat.com> <8A56C1F849F34911ABF51DE049CA3D24@FSCPC> <20091123111137.GF2999@redhat.com> <11090DAABE9449F7B5D1415C45F8F411@FSCPC> <20091123194307.GC13854@redhat.com> <2D659FA33BF64C419243FD76049AFD33@FSCPC> <20091124062810.GZ2999@redhat.com> <20091124143812.GA27783@shareable.org> <20091124144044.GJ2999@redhat.com> <20091125060951.GA17203@shareable.org> In-Reply-To: <20091125060951.GA17203@shareable.org> Subject: Re: [Qemu-devel] Re: POST failure (loop) with isapc and seabios Date: Wed, 25 Nov 2009 22:08:16 +0100 MIME-Version: 1.0 Content-Type: text/plain; format=flowed; charset="iso-8859-1"; reply-type=original Content-Transfer-Encoding: 7bit List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Jamie Lokier , Gleb Natapov Cc: Kevin O'Connor , qemu-devel@nongnu.org Jamie Lokier wrote: > What about DOS and DOS-extender programs which do a soft reset by > triple-faulting the CPU (see Sebastian's notes on i440FX behaviour), > and asking the keyboard controller? > > Both of those methods are used by DOS and DOS-extender programs to > switch from protected mode to real mode. Keyboard controller was used > originally, but then someone figured out that triple fault can be used > (on most PCs) and is faster. > > The switch to real mode is done by writing somewhere the BIOS checks, > so the BIOS just branches back to the application. > > I think that may imply it has to be a "soft reset" as described by > Sebastian in the i440FX description, and I would think the BIOS must > not be reloaded. > > But the BIOS must be reloaded from ROM, I'm guessing, if the keyboard > controller method is used and the word asking for a branch back to the > application has not been set. Because that's how a modern OS (if not > using ACPI) asks for a system reset. > > Do you think the above is (a) correct, and (b) what's implemented? The 440fx spec says "External logic is required to combine the PMC soft reset with the keyboard controller and I/O port 92 soft reset generation." I conclude from this, that the keyboard controller generates a soft reset too. The ACPI spec says "The optional ACPI reset mechanism specifies a standard mechanism that provides a complete system reset. When implemented, this mechanism must reset the entire system. This includes processors, core logic, all buses, and all peripherals. From an OSPM perspective, asserting the reset mechanism is the logical equivalent to power cycling the machine. Upon gaining control after a reset, OSPM will perform actions in like manner to a cold boot." I think this power cycle behaviour is what "system_reset" should implement. - Sebastian