From: "Michael S. Tsirkin" <mst@redhat.com>
To: Laszlo Ersek <lersek@redhat.com>
Cc: Igor Mammedov <imammedo@redhat.com>,
Paolo Bonzini <pbonzini@redhat.com>,
Phil Dennis-Jordan <phil@philjordan.eu>,
Richard Henderson <rth@twiddle.net>,
Eduardo Habkost <ehabkost@redhat.com>,
qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH RFC] acpi: add reset register to fadt
Date: Wed, 1 Feb 2017 18:17:45 +0200 [thread overview]
Message-ID: <20170201181609-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <7c950267-9cd6-2e85-8b5e-218c0c7f7bdb@redhat.com>
On Wed, Feb 01, 2017 at 05:03:38PM +0100, Laszlo Ersek wrote:
> On 02/01/17 16:16, Igor Mammedov wrote:
> > On Wed, 1 Feb 2017 14:03:52 +0100
> > Laszlo Ersek <lersek@redhat.com> wrote:
> >
> >> On 02/01/17 13:52, Laszlo Ersek wrote:
> >>> On 02/01/17 12:37, Igor Mammedov wrote:
> >>>> On Tue, 31 Jan 2017 20:17:02 +0200
> >>>> "Michael S. Tsirkin" <mst@redhat.com> wrote:
> >>>>
> >>>>> On Tue, Jan 31, 2017 at 05:28:57PM +0100, Laszlo Ersek wrote:
> >>>>>> The ACPI 6.1 spec says,
> >>>>>>
> >>>>>> - DSDT: [...] If the X_DSDT field contains a non-zero value then this
> >>>>>> field must be zero.
> >>>>>> - X_DSDT: [...] If the DSDT field contains a non-zero value then this
> >>>>>> field must be zero.
> >>>>>
> >>>>> But that's only 6.1. 6.0 and earlier did not say this.
> >>>>> The errata they wanted to address was:
> >>>>> 1393 In FADT: if X_DSDT field is non-zero, DSDT
> >>>>> field should be ignored or deprecated
> >>>>>
> >>>>> I would class this as a spec bug.
> >>>>>
> >>>>
> >>>> The same applies to X_PM1a_EVT_BLK and co,
> >>>> for example 5.1 spec "This is a required
> >>>> field."
> >>>>
> >>>> And looks like Windows implemented it as mandatory
> >>>> to boot perhaps to be compatible with 5.1 and earlier
> >>>> specs.
> >>>>
> >>>> It appears fw would be forced to fill fields depending
> >>>> on table revision.
> >>>
> >>> Sounds like a valid point.
> >>>
> >>> I compared the FADT defintion between ACPI 5.1 and ACPI 6.1. Indeed, the
> >>> former says:
> >>>
> >>> - FADT Major Version: 5; Major Version of this FADT structure, [...]
> >>> - DSDT: Physical memory address (0-4 GB) of the DSDT.
> >>> - X_DSDT: 64bit physical address of the DSDT.
> >>>
> >>> the latter says:
> >>>
> >>> - FADT Major Version: 6; Major Version of this FADT structure, [...]
> >>>
> >>> - DSDT: Physical memory address of the DSDT. If the X_DSDT field
> >>> contains a non-zero value then this field must be zero.
> >>>
> >>> - X_DSDT: Extended physical address of the DSDT. If the DSDT field
> >>> contains a non-zero value then this field must be zero.
> >>>
> >>> I will ask on edk2-devel whether the
> >>> "MdeModulePkg/Universal/Acpi/AcpiTableDxe" maintainers can think of a
> >>> way to accommodate this.
> >>
> >> Sigh, this looks nasty.
> >>
> >> Considering specifically the DSDT <-> X_DSDT question, Mantis ticket
> >> #1393 (which requires the mutual exclusion) went into 5.1B. In version
> >> 5.1A, the mutual exclusion is not required.
> >>
> >> Unfortuantely, the FADT Major.Minor version, as reported through the
> >> bytes at offsets 8 and 131 decimal in the table, is "5.1" for *both*
> >> 5.1A and 5.1B. In other words, looking at just Major.Minor, it cannot be
> >> determined with full precision whether the DSDT and X_DSDT fields should
> >> be exclusive or not. :/
> > The same applies to 6.0 vs 6.0A
>
> Thanks for the info; I've updated the patch!
>
> Laszlo
Same applies for firmware control. There, the difference would be
between 3.0 and 4.0 where they made the incompatible change.
--
MST
next prev parent reply other threads:[~2017-02-01 16:17 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-01-18 11:45 [Qemu-devel] [PATCH RFC] acpi: add reset register to fadt Phil Dennis-Jordan
2017-01-18 16:30 ` Michael S. Tsirkin
2017-01-18 17:19 ` Igor Mammedov
2017-01-31 14:31 ` Phil Dennis-Jordan
2017-01-31 14:58 ` Michael S. Tsirkin
2017-01-31 15:41 ` Igor Mammedov
2017-01-31 16:04 ` Phil Dennis-Jordan
2017-01-31 16:17 ` Igor Mammedov
2017-02-02 16:12 ` Michael S. Tsirkin
2017-01-31 16:28 ` Laszlo Ersek
2017-01-31 18:17 ` Michael S. Tsirkin
2017-01-31 19:08 ` Laszlo Ersek
2017-02-06 16:44 ` Phil Dennis-Jordan
2017-02-07 0:09 ` Laszlo Ersek
2017-02-01 11:37 ` Igor Mammedov
2017-02-01 12:52 ` Laszlo Ersek
2017-02-01 13:03 ` Laszlo Ersek
2017-02-01 15:16 ` Igor Mammedov
2017-02-01 16:03 ` Laszlo Ersek
2017-02-01 16:17 ` Michael S. Tsirkin [this message]
2017-02-01 16:27 ` Laszlo Ersek
2017-02-01 14:49 ` Michael S. Tsirkin
2017-02-06 16:30 ` Phil Dennis-Jordan
2017-02-07 19:54 ` Laszlo Ersek
2017-02-07 21:02 ` Phil Dennis-Jordan
2017-02-08 0:52 ` Laszlo Ersek
2017-01-19 18:09 ` Phil Dennis-Jordan
2017-01-23 11:12 ` Igor Mammedov
2017-01-26 13:43 ` Phil Dennis-Jordan
2017-01-27 13:57 ` Igor Mammedov
2017-01-27 16:05 ` Paolo Bonzini
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20170201181609-mutt-send-email-mst@kernel.org \
--to=mst@redhat.com \
--cc=ehabkost@redhat.com \
--cc=imammedo@redhat.com \
--cc=lersek@redhat.com \
--cc=pbonzini@redhat.com \
--cc=phil@philjordan.eu \
--cc=qemu-devel@nongnu.org \
--cc=rth@twiddle.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.