User talk:Eocallaghan: Difference between revisions

From coreboot
Jump to navigation Jump to search
Line 46: Line 46:
|
|
| Temash || ? || ??
| Temash || ? || ??
|}
{| border="1" class="wikitable"
|+ AMD AGESA map
|-
! Arch Name
! Model Name
! Family / Model #
! colspan="3" |Documentation
|-
! K10 architecture (2011)
| Llano
|| [http://search.amd.com/en-us/Pages/results-all.aspx?k=%22family%2012h%22 <br> Family 12h]
|| [http://support.amd.com/TechDocs/41131.pdf BKDG]
|| [http://support.amd.com/TechDocs/44739_12h_Rev_Gd.pdf Revision Guide]
||
* [http://support.amd.com/TechDocs/50322_12h_AthlonII_PDS.pdf Athlon II Data Sheet]
* [http://support.amd.com/TechDocs/50321_12h_Sempron_PDS.pdf Sempron Data Sheet]
* [http://support.amd.com/TechDocs/49894_12h_A-Series_PDS.pdf A-Series Data Sheet]
|-
! Bobcat architecture (2011)
| Ontario / Zacate / Desna / Honda
|| [http://search.amd.com/en-us/Pages/results-all.aspx?k=%22family%2014h%20models%2000h-0fh%22 Family 14h <br> Models 00h-0fh]
|| [http://support.amd.com/TechDocs/43170_14h_Mod_00h-0Fh_BKDG.pdf BKDG]
|| [http://support.amd.com/TechDocs/47534_14h_Mod_00h-0Fh_Rev_Guide.pdf Revision Guide]
|-
! Piledriver architecture (2012)
| Orochi
|| [http://search.amd.com/en-us/Pages/results-all.aspx?k=%22family%2015h%20models%2000h-0fh%22 Family 15h <br> Models 00h-0fh]
|| [http://support.amd.com/TechDocs/42301_15h_Mod_00h-0Fh_BKDG.pdf BKDG ]
|| [http://support.amd.com/TechDocs/48063_15h_Mod_00h-0Fh_Rev_Guide.pdf Revision Guide]
||
* [http://support.amd.com/TechDocs/49686_15h_Mod_00h-0Fh_FX-Series_PDS.pdf FX-Series Data Sheet]
* [http://support.amd.com/TechDocs/49687_15h_Mod_00h-0Fh_Opteron_PDS.pdf Opteron Data Sheet]
|-
|
|| Trinity / Richland
|| [http://search.amd.com/en-us/Pages/results-all.aspx?k=%22family%2015h%20models%2010h-1fh%22 Family 15tn <br> Models 10h-1fh]
|| [http://support.amd.com/TechDocs/42300_15h_Mod_10h-1Fh_BKDG.pdf BKDG ]
|| [http://support.amd.com/TechDocs/48931_15h_Mod_10h-1Fh_Rev_Guide.pdf Revision Guide]
||
* [http://support.amd.com/TechDocs/50911_15h_Mod_10h-1Fh_A-Series_PDS.pdf A-Series Data Sheet]
* [http://support.amd.com/TechDocs/51309.PDF R-Series Data Sheet]
|-
! Jaguar architecture (2013)
| Kabini / Temash
|| [http://search.amd.com/en-us/Pages/results-all.aspx?k=%22family%2016h%20models%2000h-0fh%22 Family 16kb <br> Models 00h-0f]
|| [http://support.amd.com/TechDocs/48751_16h_bkdg.pdf BKDG]
|| [http://support.amd.com/TechDocs/51810_16h_00h-0Fh_Rev_Guide.pdf Revision Guide]
||
* [http://support.amd.com/TechDocs/53738_PDS_Athlon.pdf Athlon Data Sheet]
* [http://support.amd.com/TechDocs/52259_KB_G-Series_Product_Data_Sheet.pdf G-Series Data Sheet]
* [http://support.amd.com/TechDocs/52169_KB_A_Series_Mobile.pdf A-Series Data Sheet]
* [http://support.amd.com/TechDocs/53102_Opteron_Product_Data_Sheet.pdf Opteron Data Sheet]
|-
! Steamroller architecture (2014)
| Kaveri
|| [http://search.amd.com/en-us/Pages/results-all.aspx?k=%22family%2015h%20models%2030h-3fh%22 Family 15kv <br> Models 30h-3fh]
|| [http://support.amd.com/TechDocs/49125_15h_Models_30h-3Fh_BKDG.pdf BKDG]
|| [http://support.amd.com/TechDocs/51603_Rev_Guide_15h_Models_30h-3Fh.pdf Revision Guide]
||
* [http://support.amd.com/TechDocs/51590_15h_Models_30h-3Fh_A-Series_PDS.pdf A-Series Data Sheet]
|-
! Puma architecture (2014)
|| Mullins / Beema
|| [http://search.amd.com/en-us/Pages/results-all.aspx?k=%22family%2016h%20models%2030h-3fh%22 Family 16ml <br> Models 30h-3fh]
|| [http://support.amd.com/TechDocs/52740_16h_Models_30h-3Fh_BKDG.pdf BKDG]
|| [http://support.amd.com/TechDocs/53072_Rev_Guide_16h_Models_30h-3Fh.pdf Revision Guide]
|-
|}
|}



Revision as of 01:49, 7 June 2014

You can find me floating in #coreboot as funfunctor

Sections deserving their own page


AGESA family table

AMD AGESA map
Arch Name Model Name Model # Family
K10 architecture (2011) Llano ? f12
Bobcat architecture (2011) Ontario ? f14
Zacate ? f14
Desna ? f14
Hondo ? f14
Piledriver architecture (2012) Orochi 00h-0fh f15
Trinity ? f15tn
Richland ? f15rl
Jaguar architecture (2013) Kabini ? f16kb
Temash ? ??


AMD AGESA map
Arch Name Model Name Family / Model # Documentation
K10 architecture (2011) Llano
Family 12h
BKDG Revision Guide
Bobcat architecture (2011) Ontario / Zacate / Desna / Honda Family 14h
Models 00h-0fh
BKDG Revision Guide
Piledriver architecture (2012) Orochi Family 15h
Models 00h-0fh
BKDG Revision Guide
Trinity / Richland Family 15tn
Models 10h-1fh
BKDG Revision Guide
Jaguar architecture (2013) Kabini / Temash Family 16kb
Models 00h-0f
BKDG Revision Guide
Steamroller architecture (2014) Kaveri Family 15kv
Models 30h-3fh
BKDG Revision Guide
Puma architecture (2014) Mullins / Beema Family 16ml
Models 30h-3fh
BKDG Revision Guide

Current Activities

  • Clean up superio support.
  • Fix DSDT/SSDT in AGESA

AGESA - DSDT/SSDT

Current list of issues below:

Error 6126: syntax error, ***

Notes:

We may extract and decompile the first SSDT table in the following way:

cat /sys/firmware/acpi/tables/SSDT1 > ssdt.dd ; iasl -d ssdt.dd

A snip of the broken code fragment in question is given:

If (LEqual (Local2, 0x07))
{
    If (CondRefOf (\_SB.ALIC, Local6))
    {
        Store (ShiftLeft (Add (Arg0, 0x02), 0x03), Local1)
        \_SB.ALIC (Local1, 0x00, Sleep (0x02), \_SB.ALIC (Local1, 0x01, Store (0x00, 
            Local3), Store (0x01, Local2), Continue, Store (0x04, Local2)), If (LEqual (Local2, 
            0x05))
            {
                Store (0x01, Local4)
                Store (0x00, Local2)
                A074 (Arg0, 0x02)
            }, If (LEqual (Local2, 0x00))
            {
                Store (0x01, A017) /* \_SB_.A017 */
                A029 ()
                Store (0x08, Local2)
            })
    }
}


Currently AGESA has pre-compiled a bunch of .esl files into:

src/vendorcode/amd/agesa/f14/Proc/GNB/PCIe/Family/0x14/F14PcieAlibSsdt.h

This array of pre-compiled SSDT bytecode is used to construct the SSDT table in:

src/vendorcode/amd/agesa/f14/Proc/GNB/Modules/GnbPcieAlibV1/PcieAlib.c

in the function:

AGESA_STATUS PcieAlibBuildAcpiTable ( IN AMD_CONFIG_PARAMS *StdHeader, OUT VOID  **AlibSsdtPtr ) { .. }

The root of SSDT seems to be in the file: vendorcode/amd/agesa/f14/Proc/GNB/PCIe/Family/0x14/F14PcieAlib.esl

We can work around the broken SSDT in mainboard support by maing the following changes to this line in acpi_tables.c:

- alib = (acpi_header_t *)agesawrapper_getlateinitptr (PICK_ALIB);
+ // alib = (acpi_header_t *)agesawrapper_getlateinitptr (PICK_ALIB);
+ alib = NULL;

A full diagnostic report is given:

Test 2 of 2: Disassemble and reassemble SSDT
 
Checking ACPI table SSDT (#0)
 
FAILED [HIGH] AMLAsmASL_MSG_SYNTAX: Test 2, Assembler error in line 1151
Line | AML source
--------------------------------------------------------------------------------
01148| If (CondRefOf (\_SB.ALIC, Local6))
01149| {
01150| Store (ShiftLeft (Add (Arg0, 0x02), 0x03), Local1)
01151| \_SB.ALIC (Local1, 0x00, Sleep (0x02), \_SB.ALIC (Local1, 0x01, Store (0x00,
| ^
| Error 6126: syntax error, unexpected PARSEOP_SLEEP, expecting ',' or ')'
01152| Local3), Store (0x01, Local2), Continue, Store (0x04, Local2)), If (LEqual (Local2,
01153| 0x05))
01154| {
================================================================================
:
ADVICE: (for Error #6126, ASL_MSG_SYNTAX): The disassembled code cannot be
reassembled using the strict IASL compiler as it contains syntax errors.
 
FAILED [HIGH] AMLAsmASL_MSG_SYNTAX: Test 2, Assembler error in line 1152
Line | AML source
--------------------------------------------------------------------------------
01149| {
01150| Store (ShiftLeft (Add (Arg0, 0x02), 0x03), Local1)
01151| \_SB.ALIC (Local1, 0x00, Sleep (0x02), \_SB.ALIC (Local1, 0x01, Store (0x00,
01152| Local3), Store (0x01, Local2), Continue, Store (0x04, Local2)), If (LEqual (Local2,
| ^
| Error 6126: syntax error, unexpected PARSEOP_CONTINUE, expecting ',' or ')'
01153| 0x05))
01154| {
01155| Store (0x01, Local4)
================================================================================
 
ADVICE: (for Error #6126, ASL_MSG_SYNTAX): The disassembled code cannot be
reassembled using the strict IASL compiler as it contains syntax errors.
 
FAILED [HIGH] AMLAsmASL_MSG_SYNTAX: Test 2, Assembler error in line 1152
Line | AML source
--------------------------------------------------------------------------------
01149| {
01150| Store (ShiftLeft (Add (Arg0, 0x02), 0x03), Local1)
01151| \_SB.ALIC (Local1, 0x00, Sleep (0x02), \_SB.ALIC (Local1, 0x01, Store (0x00,
01152| Local3), Store (0x01, Local2), Continue, Store (0x04, Local2)), If (LEqual (Local2,
| ^
| Error 6126: syntax error, unexpected ')'
01153| 0x05))
01154| {
01155| Store (0x01, Local4)
================================================================================
 
ADVICE: (for Error #6126, ASL_MSG_SYNTAX): The disassembled code cannot be
reassembled using the strict IASL compiler as it contains syntax errors.
 
FAILED [HIGH] AMLAsmASL_MSG_SYNTAX: Test 2, Assembler error in line 1158
Line | AML source
--------------------------------------------------------------------------------
01155| Store (0x01, Local4)
01156| Store (0x00, Local2)
01157| A074 (Arg0, 0x02)
01158| }, If (LEqual (Local2, 0x00))
| ^
| Error 6126: syntax error, unexpected ','
01159| {
01160| Store (0x01, A017) /* \_SB_.A017 */
01161| A029 ()
================================================================================
 
ADVICE: (for Error #6126, ASL_MSG_SYNTAX): The disassembled code cannot be
reassembled using the strict IASL compiler as it contains syntax errors.
 
FAILED [HIGH] AMLAsmASL_MSG_SYNTAX: Test 2, Assembler error in line 1163
Line | AML source
--------------------------------------------------------------------------------
01160| Store (0x01, A017) /* \_SB_.A017 */
01161| A029 ()
01162| Store (0x08, Local2)
01163| })
| ^
| Error 6126: syntax error, unexpected ')'
01164| }
01165| }
01166| }
================================================================================
 
ADVICE: (for Error #6126, ASL_MSG_SYNTAX): The disassembled code cannot be
reassembled using the strict IASL compiler as it contains syntax errors.
 
FAILED [HIGH] SyntaxCheckIASLCompilerAborted: Test 2, Compilation aborted early
due to a parser detected syntax error.
 
ADVICE: Some subsequent errors may not be detected because the compiler had to
terminate prematurely. If the compiler did not abort early then potentially
correct code may parse incorrectly producing some or many false positive errors.
 
Table SSDT (0) reassembly: Found 5 errors, 0 warnings, 0 remarks.

Remark 2089: Object is not referenced

./src/southbridge/amd/cimx/sb800/acpi/fch.asl:	CreateDWordField(Arg3,0,CDW1)
./src/southbridge/amd/cimx/sb800/acpi/fch.asl:	CreateDWordField(Arg3,4,CDW2)
./src/southbridge/amd/cimx/sb800/acpi/fch.asl:	CreateDWordField(Arg3,8,CDW3)
Checking ACPI table DSDT (#0)

FAILED [LOW] AMLAsmASL_MSG_NOT_REFERENCED: Test 1, Assembler remark in line 1793
Line | AML source
--------------------------------------------------------------------------------
01790|             Method (_OSC, 4, NotSerialized)  // _OSC: Operating System Capabilities
01791|             {
01792|                 CreateDWordField (Arg3, Zero, CDW1)
01793|                 CreateDWordField (Arg3, 0x04, CDW2)
     |                                                 ^
     | Remark 2089: Object is not referenced    (Name is within method [_OSC])
01794|                 CreateDWordField (Arg3, 0x08, CDW3)
01795|                 If (LEqual (Arg0, Buffer (0x10)
01796|                         {
================================================================================
FAILED [LOW] AMLAsmASL_MSG_NOT_REFERENCED: Test 1, Assembler remark in line 1794
Line | AML source
--------------------------------------------------------------------------------
01791|             {
01792|                 CreateDWordField (Arg3, Zero, CDW1)
01793|                 CreateDWordField (Arg3, 0x04, CDW2)
01794|                 CreateDWordField (Arg3, 0x08, CDW3)
     |                                                 ^
     | Remark 2089: Object is not referenced    (Name is within method [_OSC])
01795|                 If (LEqual (Arg0, Buffer (0x10)
01796|                         {
01797|                             /* 0000 */   0x5B, 0x4D, 0xDB, 0x33, 0xF7, 0x1F, 0x1C, 0x40,
================================================================================
Table DSDT (0) reassembly: Found 0 errors, 0 warnings, 2 remarks.