Oude SoC nieuwe trucjes leren: Native raminit voor Bay Trail

Er bestaat al lange tijd een stedelijke legende over de moeilijkheid van het implementeren van native DRAM-initialisatie in coreboot.

Firmware-code die in dit stadium wordt uitgevoerd, heeft geen hoofdgeheugen tot তার beschikking en moet werken met een kleine hoeveelheid CPU-cache als gegevensopslag. DRAM-initialisatie houdt in:

  • het ophalen van de kenmerken van de geheugenchips voor elk kanaal;
  • het berekenen van gemeenschappelijke parameters;
  • het programmeren van een grote set geheugencontroller-registers;
  • het programmeren van de DDR PHY-registers.

Daarna moet een reeks SoC-specifieke en JEDEC-standaard trainingsalgoritmen worden uitgevoerd om empirisch een set vertragingen (delays) af te leiden op basis van beperkte hardware-signaalfeedback.

Al dit was lange tijd ondergebracht in propriëtaire "MRC"-blobs met nauwelijks documentatie, wat de meeste coreboot-ontwikkelaars ervan weerhield om open source-code voor deze taak te produceren.

Casestudy: Intel Bay Trail

Deze presentatie richt zich op het meer dan 10 jaar oude Intel Bay Trail-platform, dat in coreboot aanwezig is sinds de release van Chromebooks met deze SoC. In plaats van te focussen op de low-level details van dit specifieke platform, wordt dit gebruikt als casestudy voor moderne technieken voor reverse engineering en de daaropvolgende implementatie van open source-code voor deze DRAM-initialisatiestap.

De presentatie zal het volgende belichten:

  • Het gebruik van SerialICE, gemoderniseerd met de Unicorn Engine, om de werking van binary blobs te traceren.
  • Hoe dit kan worden hergebruikt en gecombineerd met nieuwe harnesses om het snel prototypen van de kernalgoritmen mogelijk te maken.
  • Hoe zorgvuldig en sceptisch gebruik van moderne LLM-gebaseerde tooling de conversie versnelde naar een werkende coreboot-implementatie van prototype-kwaliteit, die in staat is om op meerdere echte boards te booten.

Over de spreker: Mate Kukri

Mate is een software engineer met een passie voor het bouwen van een veiligere en betrouwbaardere computerervaring door free en open source naar de laagste niveaus van de softwarestack te brengen. Hij is de afgelopen jaren een contributor aan het coreboot-project geweest, waarbij hij heeft gewerkt aan het retrofitten van coreboot op diverse bestaande hardware. Momenteel is hij een maintainer van de bootloader-stack en UEFI Secure Boot-ondersteuning in een grote Linux-distributie.

Sessie-informatie

  • Datum: 16 september 2026
  • Tijd: 16:50–17:20
  • Locatie: Main Room // Grote Zaal
  • Type: Presentatie