[Linaro-uefi] Platforms/AMD/Styx: reserve ECAM config space in PNP0C02 device

Message ID 1484328856-21250-1-git-send-email-ard.biesheuvel@linaro.org
State Accepted
Commit 49812d42fe9af04f7d5e8edbc50b53bc5ceebec3
Headers show

Commit Message

Ard Biesheuvel Jan. 13, 2017, 5:34 p.m.
Linux for arm64 v4.10 and later will complain if the ECAM config space is
not reserved in the ACPI namespace:

  acpi PNP0A08:00: [Firmware Bug]: ECAM area [mem 0x3f000000-0x3fffffff] not reserved in ACPI namespace

The rationale is that OSes that don't consume the MCFG table should still
be able to infer that the PCI config space MMIO region is occupied.

So update the ACPI tables to add this reservation.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
---
 Platforms/AMD/Styx/AcpiTables/Dsdt.asl | 8 ++++++++
 1 file changed, 8 insertions(+)

Comments

Ard Biesheuvel Jan. 24, 2017, 8:28 p.m. | #1
On 13 January 2017 at 17:34, Ard Biesheuvel <ard.biesheuvel@linaro.org> wrote:
> Linux for arm64 v4.10 and later will complain if the ECAM config space is
> not reserved in the ACPI namespace:
>
>   acpi PNP0A08:00: [Firmware Bug]: ECAM area [mem 0x3f000000-0x3fffffff] not reserved in ACPI namespace
>
> The rationale is that OSes that don't consume the MCFG table should still
> be able to infer that the PCI config space MMIO region is occupied.
>
> So update the ACPI tables to add this reservation.
>
> Contributed-under: TianoCore Contribution Agreement 1.0
> Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>

Ping?

> ---
>  Platforms/AMD/Styx/AcpiTables/Dsdt.asl | 8 ++++++++
>  1 file changed, 8 insertions(+)
>
> diff --git a/Platforms/AMD/Styx/AcpiTables/Dsdt.asl b/Platforms/AMD/Styx/AcpiTables/Dsdt.asl
> index 7edec3d1ec28..3bfa26acea07 100644
> --- a/Platforms/AMD/Styx/AcpiTables/Dsdt.asl
> +++ b/Platforms/AMD/Styx/AcpiTables/Dsdt.asl
> @@ -646,6 +646,14 @@ DefinitionBlock ("DSDT.aml", "DSDT", 2, "AMDINC", "SEATTLE ", 3)
>                  Return (RBUF) /* \_SB_.PCI0._CRS.RBUF */
>              } // Method(_CRS)
>
> +            Device (RES0)
> +            {
> +                Name (_HID, "PNP0C02")
> +                Name (_CRS, ResourceTemplate ()
> +                {
> +                    Memory32Fixed (ReadWrite, 0xF0000000, 0x8000000)
> +                })
> +            }
>              Name (SUPP, 0x00)
>              Name (CTRL, 0x00)
>              Method (_OSC, 4, NotSerialized)  // _OSC: Operating System Capabilities
> --
> 2.7.4
>
Leif Lindholm Jan. 25, 2017, 9:36 a.m. | #2
On Tue, Jan 24, 2017 at 08:28:40PM +0000, Ard Biesheuvel wrote:
> On 13 January 2017 at 17:34, Ard Biesheuvel <ard.biesheuvel@linaro.org> wrote:
> > Linux for arm64 v4.10 and later will complain if the ECAM config space is
> > not reserved in the ACPI namespace:
> >
> >   acpi PNP0A08:00: [Firmware Bug]: ECAM area [mem 0x3f000000-0x3fffffff] not reserved in ACPI namespace
> >
> > The rationale is that OSes that don't consume the MCFG table should still
> > be able to infer that the PCI config space MMIO region is occupied.
> >
> > So update the ACPI tables to add this reservation.
> >
> > Contributed-under: TianoCore Contribution Agreement 1.0
> > Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
> 
> Ping?

Looks entirely plausible to me, but I'd prefer to see a review from
one of the ACPI people on cc as well.

Graeme?

/
    Leif

> > ---
> >  Platforms/AMD/Styx/AcpiTables/Dsdt.asl | 8 ++++++++
> >  1 file changed, 8 insertions(+)
> >
> > diff --git a/Platforms/AMD/Styx/AcpiTables/Dsdt.asl b/Platforms/AMD/Styx/AcpiTables/Dsdt.asl
> > index 7edec3d1ec28..3bfa26acea07 100644
> > --- a/Platforms/AMD/Styx/AcpiTables/Dsdt.asl
> > +++ b/Platforms/AMD/Styx/AcpiTables/Dsdt.asl
> > @@ -646,6 +646,14 @@ DefinitionBlock ("DSDT.aml", "DSDT", 2, "AMDINC", "SEATTLE ", 3)
> >                  Return (RBUF) /* \_SB_.PCI0._CRS.RBUF */
> >              } // Method(_CRS)
> >
> > +            Device (RES0)
> > +            {
> > +                Name (_HID, "PNP0C02")
> > +                Name (_CRS, ResourceTemplate ()
> > +                {
> > +                    Memory32Fixed (ReadWrite, 0xF0000000, 0x8000000)
> > +                })
> > +            }
> >              Name (SUPP, 0x00)
> >              Name (CTRL, 0x00)
> >              Method (_OSC, 4, NotSerialized)  // _OSC: Operating System Capabilities
> > --
> > 2.7.4
> >
Graeme Gregory Jan. 26, 2017, 10:34 a.m. | #3
On Wed, Jan 25, 2017 at 09:36:14AM +0000, Leif Lindholm wrote:
> On Tue, Jan 24, 2017 at 08:28:40PM +0000, Ard Biesheuvel wrote:

> > On 13 January 2017 at 17:34, Ard Biesheuvel <ard.biesheuvel@linaro.org> wrote:

> > > Linux for arm64 v4.10 and later will complain if the ECAM config space is

> > > not reserved in the ACPI namespace:

> > >

> > >   acpi PNP0A08:00: [Firmware Bug]: ECAM area [mem 0x3f000000-0x3fffffff] not reserved in ACPI namespace

> > >

> > > The rationale is that OSes that don't consume the MCFG table should still

> > > be able to infer that the PCI config space MMIO region is occupied.

> > >

> > > So update the ACPI tables to add this reservation.

> > >

> > > Contributed-under: TianoCore Contribution Agreement 1.0

> > > Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>

> > 

> > Ping?

> 

> Looks entirely plausible to me, but I'd prefer to see a review from

> one of the ACPI people on cc as well.

> 

> Graeme?

> 


Another one where I did not actually get the original email!

Looks sane to me and what was expected from PCI maintainer.

Reviewed-by: Graeme Gregory <graeme.gregory@linaro.org>


> /

>     Leif

> 

> > > ---

> > >  Platforms/AMD/Styx/AcpiTables/Dsdt.asl | 8 ++++++++

> > >  1 file changed, 8 insertions(+)

> > >

> > > diff --git a/Platforms/AMD/Styx/AcpiTables/Dsdt.asl b/Platforms/AMD/Styx/AcpiTables/Dsdt.asl

> > > index 7edec3d1ec28..3bfa26acea07 100644

> > > --- a/Platforms/AMD/Styx/AcpiTables/Dsdt.asl

> > > +++ b/Platforms/AMD/Styx/AcpiTables/Dsdt.asl

> > > @@ -646,6 +646,14 @@ DefinitionBlock ("DSDT.aml", "DSDT", 2, "AMDINC", "SEATTLE ", 3)

> > >                  Return (RBUF) /* \_SB_.PCI0._CRS.RBUF */

> > >              } // Method(_CRS)

> > >

> > > +            Device (RES0)

> > > +            {

> > > +                Name (_HID, "PNP0C02")

> > > +                Name (_CRS, ResourceTemplate ()

> > > +                {

> > > +                    Memory32Fixed (ReadWrite, 0xF0000000, 0x8000000)

> > > +                })

> > > +            }

> > >              Name (SUPP, 0x00)

> > >              Name (CTRL, 0x00)

> > >              Method (_OSC, 4, NotSerialized)  // _OSC: Operating System Capabilities

> > > --

> > > 2.7.4

> > >
Leif Lindholm Jan. 26, 2017, 11:24 a.m. | #4
On Thu, Jan 26, 2017 at 10:34:22AM +0000, Graeme Gregory wrote:
> On Wed, Jan 25, 2017 at 09:36:14AM +0000, Leif Lindholm wrote:
> > On Tue, Jan 24, 2017 at 08:28:40PM +0000, Ard Biesheuvel wrote:
> > > On 13 January 2017 at 17:34, Ard Biesheuvel <ard.biesheuvel@linaro.org> wrote:
> > > > Linux for arm64 v4.10 and later will complain if the ECAM config space is
> > > > not reserved in the ACPI namespace:
> > > >
> > > >   acpi PNP0A08:00: [Firmware Bug]: ECAM area [mem 0x3f000000-0x3fffffff] not reserved in ACPI namespace
> > > >
> > > > The rationale is that OSes that don't consume the MCFG table should still
> > > > be able to infer that the PCI config space MMIO region is occupied.
> > > >
> > > > So update the ACPI tables to add this reservation.
> > > >
> > > > Contributed-under: TianoCore Contribution Agreement 1.0
> > > > Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
> > > 
> > > Ping?
> > 
> > Looks entirely plausible to me, but I'd prefer to see a review from
> > one of the ACPI people on cc as well.
> > 
> > Graeme?
> > 
> 
> Another one where I did not actually get the original email!

Wow, your spam folder must be the place to be ;)

> Looks sane to me and what was expected from PCI maintainer.
> 
> Reviewed-by: Graeme Gregory <graeme.gregory@linaro.org>

In which case, if you trim down the subject line to get PatchCheck.py
to stop complaining:
Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>

/
    Leif


> > /
> >     Leif
> > 
> > > > ---
> > > >  Platforms/AMD/Styx/AcpiTables/Dsdt.asl | 8 ++++++++
> > > >  1 file changed, 8 insertions(+)
> > > >
> > > > diff --git a/Platforms/AMD/Styx/AcpiTables/Dsdt.asl b/Platforms/AMD/Styx/AcpiTables/Dsdt.asl
> > > > index 7edec3d1ec28..3bfa26acea07 100644
> > > > --- a/Platforms/AMD/Styx/AcpiTables/Dsdt.asl
> > > > +++ b/Platforms/AMD/Styx/AcpiTables/Dsdt.asl
> > > > @@ -646,6 +646,14 @@ DefinitionBlock ("DSDT.aml", "DSDT", 2, "AMDINC", "SEATTLE ", 3)
> > > >                  Return (RBUF) /* \_SB_.PCI0._CRS.RBUF */
> > > >              } // Method(_CRS)
> > > >
> > > > +            Device (RES0)
> > > > +            {
> > > > +                Name (_HID, "PNP0C02")
> > > > +                Name (_CRS, ResourceTemplate ()
> > > > +                {
> > > > +                    Memory32Fixed (ReadWrite, 0xF0000000, 0x8000000)
> > > > +                })
> > > > +            }
> > > >              Name (SUPP, 0x00)
> > > >              Name (CTRL, 0x00)
> > > >              Method (_OSC, 4, NotSerialized)  // _OSC: Operating System Capabilities
> > > > --
> > > > 2.7.4
> > > >
Ard Biesheuvel Jan. 26, 2017, 7:47 p.m. | #5
On 26 January 2017 at 11:24, Leif Lindholm <leif.lindholm@linaro.org> wrote:
> On Thu, Jan 26, 2017 at 10:34:22AM +0000, Graeme Gregory wrote:
>> On Wed, Jan 25, 2017 at 09:36:14AM +0000, Leif Lindholm wrote:
>> > On Tue, Jan 24, 2017 at 08:28:40PM +0000, Ard Biesheuvel wrote:
>> > > On 13 January 2017 at 17:34, Ard Biesheuvel <ard.biesheuvel@linaro.org> wrote:
>> > > > Linux for arm64 v4.10 and later will complain if the ECAM config space is
>> > > > not reserved in the ACPI namespace:
>> > > >
>> > > >   acpi PNP0A08:00: [Firmware Bug]: ECAM area [mem 0x3f000000-0x3fffffff] not reserved in ACPI namespace
>> > > >
>> > > > The rationale is that OSes that don't consume the MCFG table should still
>> > > > be able to infer that the PCI config space MMIO region is occupied.
>> > > >
>> > > > So update the ACPI tables to add this reservation.
>> > > >
>> > > > Contributed-under: TianoCore Contribution Agreement 1.0
>> > > > Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
>> > >
>> > > Ping?
>> >
>> > Looks entirely plausible to me, but I'd prefer to see a review from
>> > one of the ACPI people on cc as well.
>> >
>> > Graeme?
>> >
>>
>> Another one where I did not actually get the original email!
>
> Wow, your spam folder must be the place to be ;)
>
>> Looks sane to me and what was expected from PCI maintainer.
>>
>> Reviewed-by: Graeme Gregory <graeme.gregory@linaro.org>
>
> In which case, if you trim down the subject line to get PatchCheck.py
> to stop complaining:
> Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
>

Pushed, thanks.

Patch

diff --git a/Platforms/AMD/Styx/AcpiTables/Dsdt.asl b/Platforms/AMD/Styx/AcpiTables/Dsdt.asl
index 7edec3d1ec28..3bfa26acea07 100644
--- a/Platforms/AMD/Styx/AcpiTables/Dsdt.asl
+++ b/Platforms/AMD/Styx/AcpiTables/Dsdt.asl
@@ -646,6 +646,14 @@  DefinitionBlock ("DSDT.aml", "DSDT", 2, "AMDINC", "SEATTLE ", 3)
                 Return (RBUF) /* \_SB_.PCI0._CRS.RBUF */
             } // Method(_CRS)
 
+            Device (RES0)
+            {
+                Name (_HID, "PNP0C02")
+                Name (_CRS, ResourceTemplate ()
+                {
+                    Memory32Fixed (ReadWrite, 0xF0000000, 0x8000000)
+                })
+            }
             Name (SUPP, 0x00)
             Name (CTRL, 0x00)
             Method (_OSC, 4, NotSerialized)  // _OSC: Operating System Capabilities