Change the PCIe bus range in the DSDT from [0x0 .. 0xf] to [0x00 .. 0x7f], which aligns it with the DT descripton. Also fix the I/O window: its range should be listed without taking the translation into account.
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ard Biesheuvel ard.biesheuvel@linaro.org Acked-by: Graeme Gregory graeme.gregory@linaro.org --- v2: add TypeTranslation property as well, as per the ACPI spec
Platforms/AMD/Styx/AcpiTables/Dsdt.asl | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-)
diff --git a/Platforms/AMD/Styx/AcpiTables/Dsdt.asl b/Platforms/AMD/Styx/AcpiTables/Dsdt.asl index 1f0a96fb83ee..554cb8738529 100644 --- a/Platforms/AMD/Styx/AcpiTables/Dsdt.asl +++ b/Platforms/AMD/Styx/AcpiTables/Dsdt.asl @@ -554,9 +554,9 @@ DefinitionBlock ("DSDT.aml", "DSDT", 2, "AMDINC", "SEATTLE ", 3) WordBusNumber (ResourceProducer, MinFixed, MaxFixed, PosDecode, 0x0000, // Granularity 0x0000, // Range Minimum - 0x000F, // Range Maximum + 0x007F, // Range Maximum 0x0000, // Translation Offset - 0x0010, // Length + 0x0080, // Length ) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite, 0x00000000, // Granularity @@ -637,10 +637,14 @@ DefinitionBlock ("DSDT.aml", "DSDT", 2, "AMDINC", "SEATTLE ", 3) ) DWordIo (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x00000000, // Granularity - 0xEFFF0000, // Range Minimum - 0xEFFFFFFF, // Range Maximum + 0x00000000, // Range Minimum + 0x0000FFFF, // Range Maximum 0xEFFF0000, // Translation Address - 0x00010000 // Length + 0x00010000, // Length + , + , + , + TypeTranslation ) }) Return (RBUF) /* _SB_.PCI0._CRS.RBUF */
The compiler complains about the named objects used to hold the return values of the I2C0 and I2C1 SSCN and FMCN methods:
Method (SSCN, 0, NotSerialized) Control Method should be made Serialized ^ (due to creation of named objects within)
Method (FMCN, 0, NotSerialized) Control Method should be made Serialized ^ (due to creation of named objects within)
So return anonymous rather than named packages to shut up the compiler diagnostic.
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ard Biesheuvel ard.biesheuvel@linaro.org --- v2: new patch
Platforms/AMD/Styx/AcpiTables/Dsdt.asl | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-)
diff --git a/Platforms/AMD/Styx/AcpiTables/Dsdt.asl b/Platforms/AMD/Styx/AcpiTables/Dsdt.asl index 554cb8738529..4e80e4e59547 100644 --- a/Platforms/AMD/Styx/AcpiTables/Dsdt.asl +++ b/Platforms/AMD/Styx/AcpiTables/Dsdt.asl @@ -397,24 +397,22 @@ DefinitionBlock ("DSDT.aml", "DSDT", 2, "AMDINC", "SEATTLE ", 3)
Method (SSCN, 0, NotSerialized) { - Name (PKG, Package (0x03) + Return (Package (0x03) { 0x0430, 0x04E1, 0x00 }) - Return (PKG) }
Method (FMCN, 0, NotSerialized) { - Name (PKG, Package (0x03) + Return (Package (0x03) { 0x00DE, 0x018F, 0x00 }) - Return (PKG) } }
@@ -433,24 +431,22 @@ DefinitionBlock ("DSDT.aml", "DSDT", 2, "AMDINC", "SEATTLE ", 3)
Method (SSCN, 0, NotSerialized) { - Name (PKG, Package (0x03) + Return (Package (0x03) { 0x0430, 0x04E1, 0x00 }) - Return (PKG) }
Method (FMCN, 0, NotSerialized) { - Name (PKG, Package (0x03) + Return (Package (0x03) { 0x00DE, 0x018F, 0x00 }) - Return (PKG) } }
No idea how I missed that at the time.
Acked-by: Graeme Gregory graeme.gregory@linaro.org
On 19 September 2016 at 18:16, Ard Biesheuvel ard.biesheuvel@linaro.org wrote:
The compiler complains about the named objects used to hold the return values of the I2C0 and I2C1 SSCN and FMCN methods:
Method (SSCN, 0, NotSerialized) Control Method should be made Serialized ^ (due to creation of named objects within)
Method (FMCN, 0, NotSerialized) Control Method should be made Serialized ^ (due to creation of named objects within)
So return anonymous rather than named packages to shut up the compiler diagnostic.
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ard Biesheuvel ard.biesheuvel@linaro.org
v2: new patch
Platforms/AMD/Styx/AcpiTables/Dsdt.asl | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-)
diff --git a/Platforms/AMD/Styx/AcpiTables/Dsdt.asl b/Platforms/AMD/Styx/ AcpiTables/Dsdt.asl index 554cb8738529..4e80e4e59547 100644 --- a/Platforms/AMD/Styx/AcpiTables/Dsdt.asl +++ b/Platforms/AMD/Styx/AcpiTables/Dsdt.asl @@ -397,24 +397,22 @@ DefinitionBlock ("DSDT.aml", "DSDT", 2, "AMDINC", "SEATTLE ", 3)
Method (SSCN, 0, NotSerialized) {
Name (PKG, Package (0x03)
Return (Package (0x03) { 0x0430, 0x04E1, 0x00 })
Return (PKG) } Method (FMCN, 0, NotSerialized) {
Name (PKG, Package (0x03)
Return (Package (0x03) { 0x00DE, 0x018F, 0x00 })
Return (PKG) } }
@@ -433,24 +431,22 @@ DefinitionBlock ("DSDT.aml", "DSDT", 2, "AMDINC", "SEATTLE ", 3)
Method (SSCN, 0, NotSerialized) {
Name (PKG, Package (0x03)
Return (Package (0x03) { 0x0430, 0x04E1, 0x00 })
Return (PKG) } Method (FMCN, 0, NotSerialized) {
Name (PKG, Package (0x03)
Return (Package (0x03) { 0x00DE, 0x018F, 0x00 })
Return (PKG) } }
-- 2.7.4
Hi,
On 09/19/2016 12:16 PM, Ard Biesheuvel wrote:
Change the PCIe bus range in the DSDT from [0x0 .. 0xf] to [0x00 .. 0x7f], which aligns it with the DT descripton. Also fix the I/O window: its range should be listed without taking the translation into account.
Looks good.
FWIW:
Reviewed-by: Jeremy Linton jeremy.linton@arm.com
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ard Biesheuvel ard.biesheuvel@linaro.org Acked-by: Graeme Gregory graeme.gregory@linaro.org
v2: add TypeTranslation property as well, as per the ACPI spec
Platforms/AMD/Styx/AcpiTables/Dsdt.asl | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-)
diff --git a/Platforms/AMD/Styx/AcpiTables/Dsdt.asl b/Platforms/AMD/Styx/AcpiTables/Dsdt.asl index 1f0a96fb83ee..554cb8738529 100644 --- a/Platforms/AMD/Styx/AcpiTables/Dsdt.asl +++ b/Platforms/AMD/Styx/AcpiTables/Dsdt.asl @@ -554,9 +554,9 @@ DefinitionBlock ("DSDT.aml", "DSDT", 2, "AMDINC", "SEATTLE ", 3) WordBusNumber (ResourceProducer, MinFixed, MaxFixed, PosDecode, 0x0000, // Granularity 0x0000, // Range Minimum
0x000F, // Range Maximum
0x007F, // Range Maximum 0x0000, // Translation Offset
0x0010, // Length
0x0080, // Length ) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite, 0x00000000, // Granularity
@@ -637,10 +637,14 @@ DefinitionBlock ("DSDT.aml", "DSDT", 2, "AMDINC", "SEATTLE ", 3) ) DWordIo (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x00000000, // Granularity
0xEFFF0000, // Range Minimum
0xEFFFFFFF, // Range Maximum
0x00000000, // Range Minimum
0x0000FFFF, // Range Maximum 0xEFFF0000, // Translation Address
0x00010000 // Length
0x00010000, // Length
,
,
,
TypeTranslation ) }) Return (RBUF) /* \_SB_.PCI0._CRS.RBUF */
On 19 September 2016 at 19:45, Jeremy Linton jeremy.linton@arm.com wrote:
Hi,
On 09/19/2016 12:16 PM, Ard Biesheuvel wrote:
Change the PCIe bus range in the DSDT from [0x0 .. 0xf] to [0x00 .. 0x7f], which aligns it with the DT descripton. Also fix the I/O window: its range should be listed without taking the translation into account.
Looks good.
FWIW:
Reviewed-by: Jeremy Linton jeremy.linton@arm.com
Thanks, Jeremy. I already pushed these patches, though, so I won't be able to add the tag anymore.
Cheers, Ard.