qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] setting fadt->century


From: Paolo Bonzini
Subject: Re: [Qemu-devel] setting fadt->century
Date: Thu, 10 Dec 2015 15:17:32 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.3.0


On 10/12/2015 15:08, Laszlo Ersek wrote:
> 
>     The RTC CMOS RAM index to the century of data value (hundred and
>     thousand year decimals). If this field contains a zero, then the
>     RTC centenary feature is not supported. If this field has a
>     non-zero value, then this field contains an index into RTC RAM
>     space that OSPM can use to program the centenary field.
> 
> Since the i440fx and Q35 machine types of the i386/x86_64 targets always
> include the RTC device -- rtc_init() --, and said RTC device supports
> the "centenary feature" -- see RTC_CENTURY in "hw/timer/mc146818rtc.c"
> --, I think the fadt_setup() function should set fadt->century to
> RTC_CENTURY.
> 
> Do you guys agree?

Yes.

> If so, should 2.5 and earlier machine types be shielded from this change?

I think this shouldn't be necessary.

Paolo

> Currently the field is left at zero:
> 
> [06Ch 0108   1]            RTC Century Index : 00
> 
> which -- according to analysis done by Ruiyu Ni at Intel -- should cause
> Linux and Windows 8+ to think the RTC centenary feature is unavailable,
> and cause Windows 7 to (incorrectly) assume that the offset to use is
> 0x32. (Which happens to be the right value, but Windows 7 is wrong to
> assume anything at all).
> 
> Fixing this would inform Linux and Windows 8+ about the right
> capabilities of the hardware, plus retrofit the FADT to Windows 7's
> behavior.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]