From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:58614) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UDAoS-00050D-HJ for qemu-devel@nongnu.org; Wed, 06 Mar 2013 04:39:06 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UDAoR-00050B-D5 for qemu-devel@nongnu.org; Wed, 06 Mar 2013 04:39:04 -0500 Received: from mx1.redhat.com ([209.132.183.28]:40638) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UDAoR-000502-5C for qemu-devel@nongnu.org; Wed, 06 Mar 2013 04:39:03 -0500 Date: Wed, 6 Mar 2013 11:38:53 +0200 From: Gleb Natapov Message-ID: <20130306093852.GK11223@redhat.com> References: <20130303091738.GB23616@redhat.com> <513471F1.5020702@redhat.com> <20130306085628.GB4719@localhost.localdomain> <51370753.90806@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <51370753.90806@redhat.com> Subject: Re: [Qemu-devel] [PATCH v13 0/8] pv event interface between host and guest List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Paolo Bonzini Cc: Kevin Wolf , Peter Maydell , Andrew Jones , Anthony Liguori , Alex Williamson , kvm list , "Michael S. Tsirkin" , Hu Tao , Juan Quintela , "linux-kernel@vger.kernel.org" , qemu-devel , Markus Armbruster , Blue Swirl , Orit Wasserman , Alexander Graf , Sasha Levin , Stefan Hajnoczi , Jan Kiszka , Luiz Capitulino , Marcelo Tosatti , KAMEZAWA Hiroyuki On Wed, Mar 06, 2013 at 10:07:31AM +0100, Paolo Bonzini wrote: > Il 06/03/2013 09:56, Hu Tao ha scritto: > >> > > >> > Something like this should work (in SeaBIOS's src/acpi-dsdt-isa.dsl): > >> > > >> > Device(PEVT) { > >> > Name(_HID, EisaId("QEMU0001")) > >> > OperationRegion(PEOR, SystemIO, 0x505, 0x01) > >> > Field(PEOR, ByteAcc, NoLock, Preserve) { > >> > PEPT, 8, > >> > } > >> > > >> > Method(_STA, 0, NotSerialized) { > >> > Store(PEPT, Local0) > >> > If (LEqual(Local0, Zero)) { > >> > Return (0x00) > >> > } Else { > >> > Return (0x0F) > >> > } > >> > } > > IIUC, here _STA reads from ioport 0x505, if the result is 0, then the > > device is not present. Otherwise, the device is present. But as Gleb > > said, ''the data you read from unassigned port is not guarantied to be > > zero, it may depend on QEMU version''. What should I do to tell if the > > device is present or not correctly? > > The firmware is tied to the QEMU version, so you can rely on unassigned > ports returning zero. > > Later we can change this to use fw-cfg. > I thought we agreed to do it from the start :) -- Gleb.