From mboxrd@z Thu Jan 1 00:00:00 1970 From: Marcelo Tosatti Subject: Re: [patch 3/4] QEMU/KVM: non-virtualized ACPI PMTimer support Date: Thu, 29 May 2008 14:56:27 -0300 Message-ID: <20080529175626.GA30591@dmt> References: <20080524234342.983197667@localhost.localdomain> <20080525000036.645310064@localhost.localdomain> <48393D06.2060406@qumranet.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: Chris Wright , kvm-devel To: Avi Kivity Return-path: Received: from mx1.redhat.com ([66.187.233.31]:43432 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751286AbYE2R4t (ORCPT ); Thu, 29 May 2008 13:56:49 -0400 Content-Disposition: inline In-Reply-To: <48393D06.2060406@qumranet.com> Sender: kvm-owner@vger.kernel.org List-ID: On Sun, May 25, 2008 at 01:18:46PM +0300, Avi Kivity wrote: > > pm_io_base = PM_IO_BASE; > >+ pmtmr_base = cmos_readb(0x60); > >+ pmtmr_base |= cmos_readb(0x61) << 8; > >+ pmtmr_base |= cmos_readb(0x62) << 16; > >+ pmtmr_base |= cmos_readb(0x63) << 24; > >+ if (!pmtmr_base) > >+ pmtmr_base = pm_io_base + 0x08; > > > > You're splitting the ACPI ioport range into two. I think the correct > fix here is to have qemu supply a PMBA hint to the BIOS. If the hint is > present, the bios should locate pm_io_base there, and should also avoid > placing other pio resources there. PBLK_BASE (processor block) is statically defined in acpi-dsdt.dsl, and I don't see any easy way to change that dynamically. In practice I don't see any problem with not having the PMBA registers in a contiguous range, since I doubt any ACPI implementation will assume PIIX4 specific details (ACPI driver looks for the register addresses in FADT, so does not matter if they're contiguous or not).