From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:51042) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VDU5S-0007Fh-Es for qemu-devel@nongnu.org; Sun, 25 Aug 2013 02:46:21 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1VDU5K-0000in-2G for qemu-devel@nongnu.org; Sun, 25 Aug 2013 02:46:10 -0400 Received: from mail-ee0-x232.google.com ([2a00:1450:4013:c00::232]:52477) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VDU5J-0000gn-Rr for qemu-devel@nongnu.org; Sun, 25 Aug 2013 02:46:01 -0400 Received: by mail-ee0-f50.google.com with SMTP id d51so1002340eek.9 for ; Sat, 24 Aug 2013 23:45:56 -0700 (PDT) Sender: Paolo Bonzini Message-ID: <5219A81D.7090008@redhat.com> Date: Sun, 25 Aug 2013 08:45:49 +0200 From: Paolo Bonzini MIME-Version: 1.0 References: <1377396984-17706-1-git-send-email-pingfank@linux.vnet.ibm.com> In-Reply-To: <1377396984-17706-1-git-send-email-pingfank@linux.vnet.ibm.com> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH 1/2] hpet: entitle more irq pins for hpet List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Liu Ping Fan Cc: Jan Kiszka , qemu-devel@nongnu.org, Anthony Liguori Il 25/08/2013 04:16, Liu Ping Fan ha scritto: > On PC, IRQ2/8 can be reserved for hpet timer 0/1. And pin 16~23 of > ioapic can be dynamically assigned to hpet as guest chooses. > > Signed-off-by: Liu Ping Fan > --- > hw/timer/hpet.c | 6 ++++-- > 1 file changed, 4 insertions(+), 2 deletions(-) > > diff --git a/hw/timer/hpet.c b/hw/timer/hpet.c > index 648b383..cd95d39 100644 > --- a/hw/timer/hpet.c > +++ b/hw/timer/hpet.c > @@ -41,6 +41,8 @@ > #endif > > #define HPET_MSI_SUPPORT 0 > +/* Hpet can use non-legacy IRQ16~23, and an IRQ2 ,IRQ8 */ > +#define HPET_TN_INT_CAP (0xff0104ULL << 32) > > #define TYPE_HPET "hpet" > #define HPET(obj) OBJECT_CHECK(HPETState, (obj), TYPE_HPET) > @@ -653,8 +655,8 @@ static void hpet_reset(DeviceState *d) > if (s->flags & (1 << HPET_MSI_SUPPORT)) { > timer->config |= HPET_TN_FSB_CAP; > } > - /* advertise availability of ioapic inti2 */ > - timer->config |= 0x00000004ULL << 32; > + /* advertise availability of ioapic int */ > + timer->config |= HPET_TN_INT_CAP; > timer->period = 0ULL; > timer->wrap_flag = 0; > } > These high 32-bits of timer->config need to be a property of the HPET devices, so that the old value (4) is used when running with old machine types. Also, this patch must be the second, not the first, otherwise you have a commit with btoken polarity IRQs. Paolo