# AMD Generic Encapsulated Software Architecture

AMD Generic Encapsulated Software Architecture, kurz AGESA, bezeichnet eine Programmbibliothek für BIOS-Entwickler. Der Chiphersteller Advanced Micro Devices (AMD) verfolgt damit das Ziel, die Entwicklungszeit (Time-to-Market) für die Firmware von Hauptplatinen mit AMD-x86-Prozessoren und -Chipsätzen zu reduzieren. AGESA wurde 2003 eingeführt und seither von zahlreichen BIOS- und UEFI-Herstellern in deren Firmware integriert.

## Technik

AGESA war bis Revision 2 (2006), u. a. für die damaligen Opteron-Prozessoren bis Versionen G und E (Opteron K8 und K9), in Assembler geschrieben und ist seit der „Barcelona“-Architektur Opteron K10 in C implementiert.
AGESA besteht aus einzelnen Modulen. Die drei Hauptmodule sind Prozessor, Speichercontroller und HyperTransport. Der AGESA-Code stellt Funktionen zum Initialisieren, Konfigurieren und zum Abfragen von Informationen der einzelnen Komponenten zur Verfügung und kann über Wrapper-Funktionen von der jeweiligen Firmware genutzt werden. Für Entwickler liefert AMD mit AGESA auch Beispiel-Quelltext, der die Programmierung dieser Wrapper-Funktionen erleichtern soll.

### Entwickler

Laut AMD ist der Vorteil durch die Nutzung von AGESA, dass der bereitgestellte Code die Entwicklung der Firmware vereinfacht, Fehler minimiert und optimierten Code produziert: Die Entwickler bei AMD spezialisieren sich auf die per AGESA bereitgestellten Hardware-nahen Funktionen, während sich die Entwickler der Systemfirmware (BIOS, UEFI) auf deren Funktionen konzentrieren können. Außerdem können Fehlerkorrekturen schneller an alle Hersteller gleichermaßen verteilt werden, die Integration in die Mainboard-spezifische Firmware wird durch die Standardisierung vereinfacht und dadurch auch beschleunigt.
Die AMD Generic Encapsulated Software Architecture muss von den Herstellern von Systemfirmware mit AMD-Prozessoren lizenziert werden. Für die Integration in das quelloffene und freie Coreboot muss vom jeweiligen Entwickler ein Geheimhaltungsvertrag (NDA, non-disclosure agreement) unterzeichnet werden. AGESA ist eine unregistrierte Warenmarke („AGESA™“).
AMD arbeitet mit den Mainboard-Firmware-Entwicklern zusammen und unterstützt sowohl den BIOS-Nachfolger UEFI als auch die freie Alternative Coreboot (ehemals LinuxBIOS).

### Benutzer

Für Benutzer eines x86-Windows-PCs mit AMD-Prozessor, das sind Endbenutzer im privaten Bereich (Heimanwender) sowie Firmen als Endkunden (und deren Administratoren als Benutzer), ist „AGESA“ oft deswegen ein Begriff, weil die AGESA-Revision bei BIOS- oder UEFI-Aktualisierungen zwar nicht immer, aber relativ häufig, im Changelog angegeben ist. So werden mit einem AGESA-Update oft neuere AMD-Prozessoren unterstützt, Funktionen verbessert oder Fehler beseitigt – und mit dem jeweiligen BIOS- oder UEFI-Update dann ebenso. Da per AGESA-Update auch kritische Fehler schneller beseitigt werden können, ist es indirekt Teil des zusätzlichen Schutzes, der bereits bei vielen BIOS- und UEFI-Implementierungen als Trusted Execution Environment vorhanden ist: per Vertrauenskette (englisch Chain of Trust) wird dabei nur per Signaturprüfung authentifizierter Code geladen. Die nötige Hardware steckt bei AMD im Platform Security Processor (PSP, seit 2014).
Beispiele:
* Im Jahr 2014 behob die Aktualisierung von AGESA-Code einige Sicherheitslücken in den Baureihen Trinity, Richland, Kaveri und Kabini. Die Prozessoren finden sich auf Motherboards mit den Fassungen FM2, FM2+, AM1, oder auch als BGA-Versionen zum Auflöten.
* Nach der Einführung der Ryzen-Prozessoren 2017 wurde mit dem AGESA-Update 1.0.0.6 die Unterstützung von Speichermodulen (DIMMs) stark verbessert.

## Versionen

AGESA-Versionen für Sockel AM5 :
| Name | Mikroarchitektur | Version | Hinweise | Datum |
| ComboAM5PI | Zen 5 Zen 4 | 1.2.0.3a Patch A | RAM-Kompatibilität im Single Rank und Dual Rank | Januar 2025 |
| ComboAM5PI | Zen 5 Zen 4 | 1.2.0.2 | Reduzierte Inter-Core-Latenz | September 2024 |
| ComboAM5PI | Zen 5 Zen 4 | 1.2.0.1 | Schließt Sicherheitslücken (AMD-SB-7014) | August 2024 |
| ComboAM5PI | Zen 5 Zen 4 | 1.2.0.0a | Performance, Fehlerbereinigungen | Juni 2024 |
| FireRangePi | Zen 5 Zen 4 | 1.1.7.0 Patch A | Unterstützung für Ryzen 9000 | April 2024 |
| ComboAM5PI | Zen 4 | 1.1.0.1 | Schließt Sicherheitslücken (LogoFAIL) | Januar 2024 |
| ComboAM5PI | Zen 4 | 1.1.0.0 | Fehlerbereinigungen | Dezember 2023 |
| ComboAM5PI | Zen 4 | 1.0.9.0 | Fehlerbereinigungen mit USB 3.0 | November 2023 |
| ComboAM5PI | Zen 4 | 1.0.8.0 | Unterstützung für Phoenix | Oktober 2023 |
| ComboAM5PI | Zen 4 | 1.0.0.7c | Behebt Boot-Problem bei bestimmtem RAM | August 2023 |
| ComboAM5PI | Zen 4 | 1.0.0.7 | Begrenzung der Kernspannung auf 1,3 Volt | Mai 2023 |
| ComboAM5PI | Zen 4 | 1.0.0.6 | Fehlerbereinigungen | April 2023 |
| ComboAM5PI | Zen 4 | 1.0.0.5 Patch C | Unterstützung für Ryzen 7000X3D | März 2023 |
| ComboAM5PI | Zen 4 | 1.0.0.4 | Unterstützung für Ryzen 7000 mit 65 Watt | Januar 2023 |
| ComboAM5PI | Zen 4 | 1.0.0.3 Patch A | Performance, GeForce RTX 40, Ryzen Master | September 2022 |
| ComboAM5PI | Zen 4 | 1.0.0.3 | Optimierte Systemeinstellungen | September 2022 |
| ComboAM5PI | Zen 4 | 1.0.0.2 | Verbesserte Systemstabilität | September 2022 |
| ComboAM5PI | Zen 4 | 1.0.0.1 Patch H | Verbesserte RAM-Kompatibilität | September 2022 |
AGESA-Versionen für Sockel AM4 :
| Name | Mikroarchitektur | Version | Hinweise | Datum |
| Combo-AM4v2 | Zen 3 Zen 2 Zen+ Zen | 1.2.0.Cc | Schließt Sicherheitslücken (Sinkclose/SMM Lock Bypass) in Ryzen 3000 | September 2024 |
| Combo-AM4v2 | Zen 3 Zen 2 Zen+ Zen | 1.2.0.Cb | Schließt Sicherheitslücken (Sinkclose/SMM Lock Bypass AMD-SB-7014) in Ryzen 4000/5000 | August 2024 |
| Combo-AM4v2 | Zen 3 Zen 2 Zen+ Zen | 1.2.0.Ca | Schließt Sicherheitslücken für Renoir (AMD-SB-7008) | April 2024 |
| Combo-AM4v2 | Zen 3 Zen 2 Zen+ Zen | 1.2.0.C | Schließt Sicherheitslücken | März 2024 |
| Combo-AM4v2 | Zen 3 Zen 2 Zen+ Zen | 1.2.0.B | Schließt Sicherheitslücken (Inception) | September 2023 |
| Combo-AM4v2 | Zen 3 Zen 2 Zen+ Zen | 1.2.0.A | Schließt Sicherheitslücken | April 2023 |
| Combo-AM4v2 | Zen 3 Zen 2 Zen+ Zen | 1.2.0.8 | Schließt Sicherheitslücken für Cezanne | Januar 2023 |
| Combo-AM4v2 | Zen 3 Zen 2 Zen+ Zen | 1.2.0.7 | Unterstützung für Cezanne mit 300-Chipsatz | April 2022 |
| Combo-AM4v2 | Zen 3 Zen 2 Zen+ Zen | 1.2.0.6b | Unterstützung für Ryzen 5800X3D | März 2022 |
| Combo-AM4v2 | Zen 3 Zen 2 Zen+ Zen | 1.2.0.5 | Fehlerbereinigungen | Dezember 2021 |
| Combo-AM4v2 | Zen 3 Zen 2 Zen+ Zen | 1.2.0.3c | Unterstützung für Vermeer, Renoir mit 300-Chipsatz | Oktober 2021 |
| Combo-AM4v2 | Zen 3 Zen 2 Zen+ Zen | 1.2.0.2 | Fehlerbereinigungen | März 2021 |
| Combo-AM4v2 | Zen 3 Zen 2 Zen+ Zen | 1.2.0.1 | Fehlerbereinigungen | Februar 2021 |
| Combo-AM4v2 | Zen 3 Zen 2 Zen+ Zen | 1.2.0.0 | Unterstützung für Vermeer, Renoir, Cezanne mit 400-Chipsatz | Januar 2021 |
| Combo-AM4v2 | Zen 3 Zen 2 Zen+ Zen | 1.1.9.0 | Curve Optimizer für Undervolting und Übertakten | Januar 2021 |
| Combo-AM4v2 | Zen 3 Zen 2 Zen+ Zen | 1.1.0.0d | Unterstützung für 400-Chipsatz | Dezember 2020 |
| Combo-AM4v2 | Zen 3 Zen 2 Zen+ Zen | 1.1.0.0c | Fehlerbereinigungen | November 2020 |
| Combo-AM4v2 | Zen 3 Zen 2 Zen+ Zen | 1.1.0.0 | Fehlerbereinigungen | September 2020 |
| Combo-AM4v2 | Zen 3 Zen 2 Zen+ Zen | 1.0.8.1 | Fehlerbereinigungen | September 2020 |
| Combo-AM4v2 | Zen 3 Zen 2 Zen+ Zen | 1.0.8.0 | Unterstützung für Vermeer mit 500-Chipsatz | August 2020 |
| Combo-AM4v2 | Zen 3 Zen 2 Zen+ Zen | 1.0.0.2 | Unterstützung für B550-Chipsatz, Matisse XT, Renoir | Juni 2020 |
| Combo-AM4 | Zen 2 Zen+ Zen (Excavator) | 1.0.0.6 | Fehlerbereinigungen | Juni 2020 |
| Combo-AM4 | Zen 2 Zen+ Zen (Excavator) | 1.0.0.5 | Fehlerbereinigungen | April 2020 |
| Combo-AM4 | Zen 2 Zen+ Zen (Excavator) | 1.0.0.4b | Unterstützung für Ryzen 9 3950X, Zen und Zen+ | November 2019 |
| Combo-AM4 | Zen 2 Zen+ Zen (Excavator) | 1.0.0.3abba | Fehlerbereinigungen | September 2019 |
| Combo-AM4 | Zen 2 Zen+ Zen (Excavator) | 1.0.0.3abb | Fehlerbereinigungen | August 2019 |
| Combo-AM4 | Zen 2 Zen+ Zen (Excavator) | 1.0.0.3aba | Fehlerbereinigungen | |
| Combo-AM4 | Zen 2 Zen+ Zen (Excavator) | 1.0.0.3ab | Fehlerbereinigungen | |
| Combo-AM4 | Zen 2 Zen+ Zen (Excavator) | 1.0.0.3a | Fehlerbereinigungen | |
| Combo-AM4 | Zen 2 Zen+ Zen (Excavator) | 1.0.0.3 | Fehlerbereinigungen | |
| Combo-AM4 | Zen 2 Zen+ Zen (Excavator) | 1.0.0.2 | Fehlerbereinigungen | |
| Combo-AM4 | Zen 2 Zen+ Zen (Excavator) | 1.0.0.1 | Vollständige Unterstützung für Matisse | |
| Combo-AM4 | Zen 2 Zen+ Zen (Excavator) | 0.0.7.2 | Unterstützung für Picasso und vorläufig für Matisse | März 2019 |
| PinnaclePI-AM4 | Zen+ Zen Excavator | 1.0.0.6 | | Dezember 2018 |
| PinnaclePI-AM4 | Zen+ Zen Excavator | 1.0.0.4 | | August 2018 |
| PinnaclePI-AM4 | Zen+ Zen Excavator | 1.0.0.2a | | Juni 2018 |
| PinnaclePI-AM4 | Zen+ Zen Excavator | 1.0.0.2 | | Juni 2018 |
| PinnaclePI-AM4 | Zen+ Zen Excavator | 1.0.0.1a | | März 2018 |
| SummitPI-AM4 | Zen Excavator | 1.0.0.6b | | September 2017 |
| SummitPI-AM4 | Zen Excavator | 1.0.0.6a | | Juli 2017 |
| SummitPI-AM4 | Zen Excavator | 1.0.0.6 | Unterstützung für DDR4-RAM bis 4000 MHz | Mai 2017 |
| SummitPI-AM4 | Zen Excavator | 1.0.0.4a | | April 2017 |