Open Source BIOS at Scale - FOSDEM · 2018. 2. 6. · Why Open Source We tried BIOS vendors but:...
Transcript of Open Source BIOS at Scale - FOSDEM · 2018. 2. 6. · Why Open Source We tried BIOS vendors but:...
![Page 1: Open Source BIOS at Scale - FOSDEM · 2018. 2. 6. · Why Open Source We tried BIOS vendors but: • Some sources + some binaries • Almost no documentation • Pay extra for support](https://reader035.fdocuments.in/reader035/viewer/2022071513/6133e07cdfd10f4dd73b5f4e/html5/thumbnails/1.jpg)
Open Source BIOS at ScaleWe gave it a try, it worked. You can jump in!
![Page 2: Open Source BIOS at Scale - FOSDEM · 2018. 2. 6. · Why Open Source We tried BIOS vendors but: • Some sources + some binaries • Almost no documentation • Pay extra for support](https://reader035.fdocuments.in/reader035/viewer/2022071513/6133e07cdfd10f4dd73b5f4e/html5/thumbnails/2.jpg)
Online / Scaleway @ IliadHosting: Online, Dedibox
Cloud: ScalewayWe design our own servers• ARM 32: C1 cloud offer
• X86: Intel Avoton C2000C2 cloud offerDedibox SC/XC 2016
• X86: Intel Denverton C3000Scaleway is growing and hiring
![Page 3: Open Source BIOS at Scale - FOSDEM · 2018. 2. 6. · Why Open Source We tried BIOS vendors but: • Some sources + some binaries • Almost no documentation • Pay extra for support](https://reader035.fdocuments.in/reader035/viewer/2022071513/6133e07cdfd10f4dd73b5f4e/html5/thumbnails/3.jpg)
Develop an Open Source BIOSWe design our own servers : a custom BIOS is required
• Configure the SoC / board• PXE Boot• Local drive Boot• Provide ACPI, SMBios tables …• Interface with our BMC• Secure update process• Remote console (Serial)
![Page 4: Open Source BIOS at Scale - FOSDEM · 2018. 2. 6. · Why Open Source We tried BIOS vendors but: • Some sources + some binaries • Almost no documentation • Pay extra for support](https://reader035.fdocuments.in/reader035/viewer/2022071513/6133e07cdfd10f4dd73b5f4e/html5/thumbnails/4.jpg)
Why Open SourceWe tried BIOS vendors but:• Some sources + some binaries• Almost no documentation• Pay extra for support• Slow support• Pay a fee by devices
➔Locked: no source, poor support!
You ‘just’ get: Intel’s Init + UEFI + CSM (legacy) + a nice menu
Intel’s CRB reference BIOS• Not allowed in production
No solution covers all our needs• BMC interface not covered
➔Some development was needed!
We design our own servers : let’s build our own BIOS
![Page 5: Open Source BIOS at Scale - FOSDEM · 2018. 2. 6. · Why Open Source We tried BIOS vendors but: • Some sources + some binaries • Almost no documentation • Pay extra for support](https://reader035.fdocuments.in/reader035/viewer/2022071513/6133e07cdfd10f4dd73b5f4e/html5/thumbnails/5.jpg)
coreboot + FSP + TianoCorecoreboot: community driven
• Early init• Multiprocessor init• ACPI, SMBios tables…
Firmware Support Package: by Intel• MRC• Silicon Init
TianoCore: (Intel’s) Open Source• UEFI implementation
![Page 6: Open Source BIOS at Scale - FOSDEM · 2018. 2. 6. · Why Open Source We tried BIOS vendors but: • Some sources + some binaries • Almost no documentation • Pay extra for support](https://reader035.fdocuments.in/reader035/viewer/2022071513/6133e07cdfd10f4dd73b5f4e/html5/thumbnails/6.jpg)
So we took everything from Intel and the community,
compiled it and it worked!
![Page 7: Open Source BIOS at Scale - FOSDEM · 2018. 2. 6. · Why Open Source We tried BIOS vendors but: • Some sources + some binaries • Almost no documentation • Pay extra for support](https://reader035.fdocuments.in/reader035/viewer/2022071513/6133e07cdfd10f4dd73b5f4e/html5/thumbnails/7.jpg)
Of Course not!
![Page 8: Open Source BIOS at Scale - FOSDEM · 2018. 2. 6. · Why Open Source We tried BIOS vendors but: • Some sources + some binaries • Almost no documentation • Pay extra for support](https://reader035.fdocuments.in/reader035/viewer/2022071513/6133e07cdfd10f4dd73b5f4e/html5/thumbnails/8.jpg)
Just a few fixes
• CPU Cores were stuck at 800MHz• Bad DDR4 SMBIOS info from FSP MRC code• Undocumented GPIO Lock Interface• Missing ACPI Tables (P-States, T-States and C-States)• PCIe NVMe + FSP initialization failure
![Page 9: Open Source BIOS at Scale - FOSDEM · 2018. 2. 6. · Why Open Source We tried BIOS vendors but: • Some sources + some binaries • Almost no documentation • Pay extra for support](https://reader035.fdocuments.in/reader035/viewer/2022071513/6133e07cdfd10f4dd73b5f4e/html5/thumbnails/9.jpg)
Pros / ConsCons• A -little- longer to develop• No nice graphical menu• No legacy BIOS (seabios as CSM)• Intel’s bugs hits us instead of
our BIOS vendor• No BIOS professional support,
but no fee :)• Early contribution is hard:
Intel NDA + porting strategy
Pros• 95% of existing code• It fits our needs!• Perf inline with reference BIOS• Extra features with our BMC• UART Verbosity rate config• Low level Flash Protection
• Discussing with Intel support = influence on release contentex: MRC verbosity
![Page 10: Open Source BIOS at Scale - FOSDEM · 2018. 2. 6. · Why Open Source We tried BIOS vendors but: • Some sources + some binaries • Almost no documentation • Pay extra for support](https://reader035.fdocuments.in/reader035/viewer/2022071513/6133e07cdfd10f4dd73b5f4e/html5/thumbnails/10.jpg)
Conclusion
It was an investment, but it was a useful one!
We’re happy to have full stack control.
![Page 11: Open Source BIOS at Scale - FOSDEM · 2018. 2. 6. · Why Open Source We tried BIOS vendors but: • Some sources + some binaries • Almost no documentation • Pay extra for support](https://reader035.fdocuments.in/reader035/viewer/2022071513/6133e07cdfd10f4dd73b5f4e/html5/thumbnails/11.jpg)
We are producing tens of thousands of servers with this BIOS!
![Page 12: Open Source BIOS at Scale - FOSDEM · 2018. 2. 6. · Why Open Source We tried BIOS vendors but: • Some sources + some binaries • Almost no documentation • Pay extra for support](https://reader035.fdocuments.in/reader035/viewer/2022071513/6133e07cdfd10f4dd73b5f4e/html5/thumbnails/12.jpg)
Questions?
![Page 13: Open Source BIOS at Scale - FOSDEM · 2018. 2. 6. · Why Open Source We tried BIOS vendors but: • Some sources + some binaries • Almost no documentation • Pay extra for support](https://reader035.fdocuments.in/reader035/viewer/2022071513/6133e07cdfd10f4dd73b5f4e/html5/thumbnails/13.jpg)
So when will you do it?FOSDEM 2018Open Source Bios at ScaleJulien Viard de Galbert <[email protected]>
Looking for an amazing job? Join us NOW ! https://careers.scaleway.com/