make: install the firmware as well on "make install"

Simply copy the firmware using cp. There might be a nicer way
using the firmware_install stuff from the Linux kernel.

Signed-off-by: Henning Schild <henning.schild@siemens.com>
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
tools: Fix loading of multiple images

Regression of regression fix c7fc4f1b04: We were incrementing the image
pointer twice, once in the loop control statement and the second time in
the loop body. Remove the latter.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
driver: Fix error detection for root cell creation

cell_create returns an error-pointer, not just NULL when things went
wrong.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
core: Fix tear-down order in setup error path

We have to do the arch shutdown before the restoring the CPU state to
Linux as we will otherwise lack required mapping for MMIO access. On
x86, VT-d shutdown will then cause a crash.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
x86: Fix assembly constraints of write_gdtr/idtr

Copy & paste mistake: write_gdtr and write_idtr do not return anything
in descriptor table structure, they read from it. This broke the
hypervisor setup with certain optimizing compilers, noticed in
particular with old gcc 4.4.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
x86: Improve reporting of EPT violations

Report details about the EPT violation also when the MMIO parser fails.
At this chance, remove the term "EPT" from the print-out. This is an
invalid MMIO or RAM access.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>