Patch Set 6:

Did a closer review and realized that this patch will break STM support.

If you turn on the STM, the build should fail because start32_offset is missing. The STM initialization functions use this value to create the entry point to start the SMI handler in 32-bit mode.

Secondly, the tss segment selector (0x20) has to be there because when the STM starts the SMI handler VM, the VMX startup checks the TSS selector for proper values. Without it, the VM start will fail with an invalid guest state error.

Thanks for the indepth review! Yes, there are lot of missing features. As there's no support for running on real hardware yet (or platforms supporting STM), this can be fixed in a later commit.
First of all a wrapper around FSP has to be written to enable support on those platforms.

View Change

To view, visit change 37392. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-Project: coreboot
Gerrit-Branch: master
Gerrit-Change-Id: I26300492e4be62ddd5d80525022c758a019d63a1
Gerrit-Change-Number: 37392
Gerrit-PatchSet: 6
Gerrit-Owner: Patrick Rudolph <patrick.rudolph@9elements.com>
Gerrit-Reviewer: Eugene Myers <cedarhouse1@comcast.net>
Gerrit-Reviewer: Patrick Rudolph <patrick.rudolph@9elements.com>
Gerrit-Reviewer: Patrick Rudolph <siro@das-labor.org>
Gerrit-Reviewer: Raul Rangel <rrangel@chromium.org>
Gerrit-Reviewer: build bot (Jenkins) <no-reply@coreboot.org>
Gerrit-CC: Angel Pons <th3fanbus@gmail.com>
Gerrit-CC: Arthur Heymans <arthur@aheymans.xyz>
Gerrit-CC: Patrick Rudolph
Gerrit-CC: Paul Menzel <paulepanter@users.sourceforge.net>
Gerrit-CC: ron minnich <rminnich@gmail.com>
Gerrit-Comment-Date: Mon, 06 Jul 2020 19:32:57 +0000
Gerrit-HasComments: No
Gerrit-Has-Labels: No
Gerrit-MessageType: comment