WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

Re: [Xen-devel] Re: [PATCH] hvmloader: Fix FADT table with QEMU Upstream

To: Ian Campbell <Ian.Campbell@xxxxxxxxxx>, Anthony PERARD <anthony.perard@xxxxxxxxxx>
Subject: Re: [Xen-devel] Re: [PATCH] hvmloader: Fix FADT table with QEMU Upstream.
From: Keir Fraser <keir.xen@xxxxxxxxx>
Date: Tue, 26 Jul 2011 13:41:45 +0100
Cc: Tobias Geiger <tobias.geiger@xxxxxxxxx>, Xen Devel <xen-devel@xxxxxxxxxxxxxxxxxxx>
Delivery-date: Tue, 26 Jul 2011 05:42:28 -0700
Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=user-agent:date:subject:from:to:cc:message-id:thread-topic :thread-index:in-reply-to:mime-version:content-type :content-transfer-encoding; bh=F8Jx2yF1kprVDIq6orPLNg8tYjI2kkB8hkfRiYCyqoo=; b=kdqAcXitaoXyg8iwcQLJoWjjHE3mO2sFqONfaFvKVmlqnEv+8aSsMY8E/pTaFNZoAL 5iUp0ckucXpMDUIZNgC3RjIgiFWe02fPa1Tn+gittZiYe3ot+AG1XDNLReFNNf+zxlxC oxQOXXwFzwvcm8+Cg9thJEyhW+lqeXXue9g7s=
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <1311683141.24408.18.camel@xxxxxxxxxxxxxxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Thread-index: AcxLkWCaiCDi1lEK1kqmjZo9xEyUHA==
Thread-topic: [Xen-devel] Re: [PATCH] hvmloader: Fix FADT table with QEMU Upstream.
User-agent: Microsoft-Entourage/12.30.0.110427
On 26/07/2011 13:25, "Ian Campbell" <Ian.Campbell@xxxxxxxxxx> wrote:

> On Tue, 2011-07-26 at 07:57 -0400, Anthony PERARD wrote:
>> When booting a Windows guest, the OS report an issue with the ACPI (in a
>> BSOD). The exact issue is "SCI_EN never becomes set in PM1 Control
>> Register." (quoted from WinDbg help).
>> 
>> To fix this, this patch set some value related to the QEMU upstream: The
>> SMI command port, and the acpi_enable/acpi_disable values.
> 
> Would it be harmful to include these new values in the Fadt for every
> BIOS rather than adding special cases?
> 
> If this really needs to be Sea BIOS specific then I think it would be
> better done as a function call (e.g. acpi_enable_whatever()) into the
> ACPI code (where the rest of the Fadt init lives) from the seabios hooks
> rather than splitting the initialisation between two locations (or maybe
> better this should be the default and the ROMBIOS hooks should disable
> it if necessary).

Descriptive macros and/or comments that describe the magic numbers being
poked into the FADT would also be helpful.

 -- Keir

> Ian.
> 
>> Reported-by: Tobias Geiger <tobias.geiger@xxxxxxxxx>
>> Signed-off-by: Anthony PERARD <anthony.perard@xxxxxxxxxx>
>> ---
>>  tools/firmware/hvmloader/seabios.c |    8 ++++++++
>>  1 files changed, 8 insertions(+), 0 deletions(-)
>> 
>> diff --git a/tools/firmware/hvmloader/seabios.c
>> b/tools/firmware/hvmloader/seabios.c
>> index 8cd0108..1b89ba7 100644
>> --- a/tools/firmware/hvmloader/seabios.c
>> +++ b/tools/firmware/hvmloader/seabios.c
>> @@ -28,6 +28,9 @@
>>  #include "smbios_types.h"
>>  #include "acpi/acpi2_0.h"
>>  
>> +/* Upstream QEMU require to set more field in the FADT */
>> +extern struct acpi_20_fadt Fadt;
>> +
>>  #define ROM_INCLUDE_SEABIOS
>>  #include "roms.inc"
>>  
>> @@ -91,6 +94,11 @@ static void add_table(uint32_t t)
>>  static void seabios_acpi_build_tables(void)
>>  {
>>      uint32_t rsdp = (uint32_t)scratch_alloc(sizeof(struct acpi_20_rsdp), 0);
>> +
>> +    Fadt.smi_cmd = 0xb2;
>> +    Fadt.acpi_enable = 0xf1;
>> +    Fadt.acpi_disable = 0xf0;
>> +
>>      acpi_build_tables(rsdp);
>>      add_table(rsdp);
>>  }
> 
> 
> 
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@xxxxxxxxxxxxxxxxxxx
> http://lists.xensource.com/xen-devel



_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel

<Prev in Thread] Current Thread [Next in Thread>