include/hw/uefi/hardware-info.h | 35 ++ include/hw/uefi/var-service-api.h | 48 ++ include/hw/uefi/var-service-edk2.h | 227 +++++++++ include/hw/uefi/var-service.h | 191 ++++++++ hw/arm/virt.c | 2 + hw/core/sysbus-fdt.c | 24 + hw/i386/pc_piix.c | 2 + hw/i386/pc_q35.c | 2 + hw/uefi/hardware-info.c | 31 ++ hw/uefi/var-service-auth.c | 361 ++++++++++++++ hw/uefi/var-service-core.c | 321 +++++++++++++ hw/uefi/var-service-guid.c | 99 ++++ hw/uefi/var-service-json.c | 243 ++++++++++ hw/uefi/var-service-pkcs7-stub.c | 16 + hw/uefi/var-service-pkcs7.c | 436 +++++++++++++++++ hw/uefi/var-service-policy.c | 370 +++++++++++++++ hw/uefi/var-service-siglist.c | 212 +++++++++ hw/uefi/var-service-sysbus.c | 124 +++++ hw/uefi/var-service-utils.c | 241 ++++++++++ hw/uefi/var-service-vars.c | 725 +++++++++++++++++++++++++++++ MAINTAINERS | 6 + docs/devel/index-internals.rst | 1 + docs/devel/uefi-vars.rst | 68 +++ hw/Kconfig | 1 + hw/meson.build | 1 + hw/uefi/Kconfig | 3 + hw/uefi/LIMITATIONS.md | 7 + hw/uefi/meson.build | 21 + hw/uefi/trace-events | 17 + meson.build | 1 + qapi/meson.build | 1 + qapi/qapi-schema.json | 1 + qapi/uefi.json | 64 +++ 33 files changed, 3902 insertions(+) create mode 100644 include/hw/uefi/hardware-info.h create mode 100644 include/hw/uefi/var-service-api.h create mode 100644 include/hw/uefi/var-service-edk2.h create mode 100644 include/hw/uefi/var-service.h create mode 100644 hw/uefi/hardware-info.c create mode 100644 hw/uefi/var-service-auth.c create mode 100644 hw/uefi/var-service-core.c create mode 100644 hw/uefi/var-service-guid.c create mode 100644 hw/uefi/var-service-json.c create mode 100644 hw/uefi/var-service-pkcs7-stub.c create mode 100644 hw/uefi/var-service-pkcs7.c create mode 100644 hw/uefi/var-service-policy.c create mode 100644 hw/uefi/var-service-siglist.c create mode 100644 hw/uefi/var-service-sysbus.c create mode 100644 hw/uefi/var-service-utils.c create mode 100644 hw/uefi/var-service-vars.c create mode 100644 docs/devel/uefi-vars.rst create mode 100644 hw/uefi/Kconfig create mode 100644 hw/uefi/LIMITATIONS.md create mode 100644 hw/uefi/meson.build create mode 100644 hw/uefi/trace-events create mode 100644 qapi/uefi.json