From patchwork Wed Jul 1 03:59:17 2009 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Beth Kon X-Patchwork-Id: 33403 Received: from vger.kernel.org (vger.kernel.org [209.132.176.167]) by demeter.kernel.org (8.14.2/8.14.2) with ESMTP id n613v0YC030394 for ; Wed, 1 Jul 2009 03:57:00 GMT Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754289AbZGAD44 (ORCPT ); Tue, 30 Jun 2009 23:56:56 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1752917AbZGAD4z (ORCPT ); Tue, 30 Jun 2009 23:56:55 -0400 Received: from e2.ny.us.ibm.com ([32.97.182.142]:48927 "EHLO e2.ny.us.ibm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752863AbZGAD4x (ORCPT ); Tue, 30 Jun 2009 23:56:53 -0400 Received: from d01relay02.pok.ibm.com (d01relay02.pok.ibm.com [9.56.227.234]) by e2.ny.us.ibm.com (8.13.1/8.13.1) with ESMTP id n613q1Rf030598 for ; Tue, 30 Jun 2009 23:52:01 -0400 Received: from d01av01.pok.ibm.com (d01av01.pok.ibm.com [9.56.224.215]) by d01relay02.pok.ibm.com (8.13.8/8.13.8/NCO v9.2) with ESMTP id n613uvAO224370 for ; Tue, 30 Jun 2009 23:56:57 -0400 Received: from d01av01.pok.ibm.com (loopback [127.0.0.1]) by d01av01.pok.ibm.com (8.12.11.20060308/8.13.3) with ESMTP id n613uu2U001719 for ; Tue, 30 Jun 2009 23:56:57 -0400 Received: from localhost.localdomain (sig-9-48-52-90.mts.ibm.com [9.48.52.90]) by d01av01.pok.ibm.com (8.12.11.20060308/8.12.11) with ESMTP id n613urAi001620; Tue, 30 Jun 2009 23:56:55 -0400 From: Beth Kon To: avi@redhat.com Cc: kvm@vger.kernel.org, Beth Kon Subject: [PATCH 3/5] BIOS changes for qemu-kvm hpet support (v8) Date: Tue, 30 Jun 2009 23:59:17 -0400 Message-Id: <1246420759-12502-3-git-send-email-eak@us.ibm.com> X-Mailer: git-send-email 1.5.4.3 In-Reply-To: <1246420759-12502-1-git-send-email-eak@us.ibm.com> References: <1246420759-12502-1-git-send-email-eak@us.ibm.com> Sender: kvm-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: kvm@vger.kernel.org Advertise HPET in ACPI HPET table Signed-off-by: Beth Kon Signed-off-by: Avi Kivity --- kvm/bios/acpi-dsdt.dsl | 2 -- kvm/bios/rombios32.c | 11 +++-------- 2 files changed, 3 insertions(+), 10 deletions(-) -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html diff --git a/kvm/bios/acpi-dsdt.dsl b/kvm/bios/acpi-dsdt.dsl index 3560baa..26fc7ad 100755 --- a/kvm/bios/acpi-dsdt.dsl +++ b/kvm/bios/acpi-dsdt.dsl @@ -194,7 +194,6 @@ DefinitionBlock ( }) } #ifdef BX_QEMU -#ifdef HPET_WORKS_IN_KVM Device(HPET) { Name(_HID, EISAID("PNP0103")) Name(_UID, 0) @@ -214,7 +213,6 @@ DefinitionBlock ( }) } #endif -#endif } Scope(\_SB.PCI0) { diff --git a/kvm/bios/rombios32.c b/kvm/bios/rombios32.c index 9e5370e..110d130 100755 --- a/kvm/bios/rombios32.c +++ b/kvm/bios/rombios32.c @@ -1527,8 +1527,8 @@ struct acpi_20_generic_address { } __attribute__((__packed__)); /* - * * HPET Description Table - * */ + * HPET Description Table + */ struct acpi_20_hpet { ACPI_TABLE_HEADER_DEF /* ACPI common table header */ uint32_t timer_block_id; @@ -1717,13 +1717,11 @@ void acpi_bios_init(void) addr += madt_size; #ifdef BX_QEMU -#ifdef HPET_WORKS_IN_KVM addr = (addr + 7) & ~7; hpet_addr = addr; hpet = (void *)(addr); addr += sizeof(*hpet); #endif -#endif /* RSDP */ memset(rsdp, 0, sizeof(*rsdp)); @@ -1901,7 +1899,6 @@ void acpi_bios_init(void) } /* HPET */ -#ifdef HPET_WORKS_IN_KVM memset(hpet, 0, sizeof(*hpet)); /* Note timer_block_id value must be kept in sync with value advertised by * emulated hpet @@ -1910,7 +1907,6 @@ void acpi_bios_init(void) hpet->addr.address = cpu_to_le32(ACPI_HPET_ADDRESS); acpi_build_table_header((struct acpi_table_header *)hpet, "HPET", sizeof(*hpet), 1); -#endif #endif @@ -1920,8 +1916,7 @@ void acpi_bios_init(void) rsdt->table_offset_entry[nb_rsdt_entries++] = cpu_to_le32(ssdt_addr); rsdt->table_offset_entry[nb_rsdt_entries++] = cpu_to_le32(madt_addr); #ifdef BX_QEMU - /* No HPET (yet) */ -// rsdt->table_offset_entry[nb_rsdt_entries++] = cpu_to_le32(hpet_addr); + rsdt->table_offset_entry[nb_rsdt_entries++] = cpu_to_le32(hpet_addr); if (nb_numa_nodes > 0) rsdt->table_offset_entry[nb_rsdt_entries++] = cpu_to_le32(srat_addr); acpi_additional_tables(); /* resets cfg to required entry */