Commit Graph

69 Commits

Author SHA1 Message Date
Hongxu Jia
c18ef2583d ovmf: fix CVE-2024-38798
According to [1],

  EDK2 contains a vulnerability in BIOS where an attacker may cause “Exposure of
  Sensitive Information to an Unauthorized Actor” by local access. Successful
  exploitation of this vulnerability will lead to possible information disclosure
  or escalation of privilege and impact Confidentiality.

Backport a patch [2] from upstream to fix CVE-2024-38798

[1] https://nvd.nist.gov/vuln/detail/CVE-2024-38798
[2] 0cad130cb4

(From OE-Core rev: ed444adf325d3a985ed8f9ae0a009ecbaf67c3fd)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Fabien Thomas <fabien.thomas@smile.fr>
Signed-off-by: Paul Barker <paul@pbarker.dev>
2026-05-12 21:31:33 +01:00
Hongxu Jia
c71fdaca9c ovmf: fix CVE-2025-2296
According to [1], EDK2 contains a vulnerability in BIOS where an attacker may
cause “ Improper Input Validation” by local access. Successful exploitation of
this vulnerability could alter control flow in unexpected ways, potentially
allowing arbitrary command execution and impacting Confidentiality, Integrity,
and Availability.

Backport patches from upstream [2] to fix CVE-2025-2296

Note: backport 0001-AmdSev-Halt-on-failed-blob-allocation.patch to apply
the CVE patches without confliction

[1] https://nvd.nist.gov/vuln/detail/CVE-2025-2296
[2] https://github.com/tianocore/edk2/pull/10628

(From OE-Core rev: 09be6658833e7ac4143eeb26bdaf67c6c94e260a)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Fabien Thomas <fabien.thomas@smile.fr>
Signed-off-by: Paul Barker <paul@pbarker.dev>
2026-05-12 21:31:33 +01:00
Martin Jansa
f3e45f9d3e ovmf: backport a fix for build with gcc-16
Fixes build on host with gcc-16:

StringFuncs.c: In function ‘SplitStringByWhitespace’:
StringFuncs.c:113:15: error: variable ‘Item’ set but not used [-Werror=unused-but-set-variable=]
  113 |   UINTN       Item;
      |               ^~~~

and

EfiRom.c: In function ‘main’:
EfiRom.c:78:17: error: assignment discards ‘const’ qualifier from pointer target type [-Werror=discarded-qualifiers]
   78 |       if ((Ptr0 = strstr ((CONST CHAR8 *) mOptions.FileList->FileName, DEFAULT_OUTPUT_EXTENSION)) != NULL) {
      |                 ^

and one more for older version used in scarthgap

main.c: In function ‘ProcessArgs’:
main.c:163:42: error: too many arguments to function ‘p->process’; expected 0, have 2
  163 |                                         (*p->process)( *argv, *(argv+1) );
      |                                         ~^~~~~~~~~~~~  ~~~~~
main.c:120:34: note: declared here
  120 |                         WildFunc process;
      |                                  ^~~~~~~
main.c:168:42: error: too many arguments to function ‘p->process’; expected 0, have 1
  168 |                                         (*p->process)( *argv );
      |                                         ~^~~~~~~~~~~~  ~~~~~
main.c:120:34: note: declared here
  120 |                         WildFunc process;
      |                                  ^~~~~~~

(From OE-Core rev: 7de54889b3547a94bc7c6015731ec1c099e4d629)

Signed-off-by: Martin Jansa <martin.jansa@gmail.com>
[YC: upstream commit a1db482ecd2824a4ae67a3c2a8e607b607ab4a43]
Signed-off-by: Yoann Congal <yoann.congal@smile.fr>
Signed-off-by: Paul Barker <paul@pbarker.dev>
2026-05-04 13:57:32 +01:00
Mikko Rapeli
e146288bcb ovmf-native: remove .pyc files from install
They break builds which share sstate files on different
machines and paths:

ERROR: ovmf-edk2-stable202408-r0 do_prepare_recipe_sysroot: Error executing a python function in exec_func_python() autogenerated:

The stack trace of python calls that resulted in this exception/failure was:
File: 'exec_func_python() autogenerated', lineno: 2, function: <module>
     0001:
 *** 0002:extend_recipe_sysroot(d)
     0003:
File: '/srv/pokybuild/yocto-worker/oe-selftest-fedora/build/meta/classes-global/staging.bbclass', lineno: 624, function: extend_recipe_sysroot
     0620:
     0621:    # Handle deferred binfiles
     0622:    for l in binfiles:
     0623:        (targetdir, dest) = binfiles[l]
 *** 0624:        staging_copyfile(l, targetdir, dest, postinsts, seendirs)
     0625:
     0626:    bb.note("Installed into sysroot: %s" % str(msg_adding))
     0627:    bb.note("Skipping as already exists in sysroot: %s" % str(msg_exists))
     0628:
File: '/srv/pokybuild/yocto-worker/oe-selftest-fedora/build/meta/classes-global/staging.bbclass', lineno: 165, function: staging_copyfile
     0161:        os.symlink(linkto, dest)
     0162:        #bb.warn(c)
     0163:    else:
     0164:        try:
 *** 0165:            os.link(c, dest)
     0166:        except OSError as err:
     0167:            if err.errno == errno.EXDEV:
     0168:                bb.utils.copyfile(c, dest)
     0169:            else:
Exception: FileExistsError: [Errno 17] File exists: '/srv/pokybuild/yocto-worker/oe-selftest-fedora/build/build-st-667282/tmp/sysroots-components/x86_64/ovmf-native/usr/bin/edk2_basetools/BaseTools/Source/Python/AutoGen/__pycache__/WorkspaceAutoGen.cpython-312.pyc' -> '/srv/pokybuild/yocto-worker/oe-selftest-fedora/build/build-st-667282/tmp/work/core2-64-poky-linux/ovmf/edk2-stable202408/recipe-sysroot-native/usr/bin/edk2_basetools/BaseTools/Source/Python/AutoGen/__pycache__/WorkspaceAutoGen.cpython-312.pyc'

(From OE-Core rev: d89f2533f1b394f443117d6c935ee04a3c6741e7)

Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit facd9e17fa53e2fb3a828b3f179cfb659be75d37)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2025-01-09 06:25:36 -08:00
Hongxu Jia
de191df9f6 ovmf: fix CVE-2024-1298
Backport fix from upstream to resolve CVE-2024-1298

  284dbac43d

(From OE-Core rev: 2a6825a8ad6e5a600e458614ff7bb676ec9c5fac)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-12-09 06:54:14 -08:00
Hongxu Jia
7bd9a000b6 ovmf: fix CVE-2024-38796
Backport fix from upstream to resolve CVE-2024-38796

  c95233b852

(From OE-Core rev: 01743182b7a4bcbd47157a49da7af7b41546434c)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-12-09 06:54:14 -08:00
Chen Qi
87aed498b9 ovmf: set CVE_STATUS for a few CVEs
For all those CVE-2019-xxxxx CVEs, following the links in NVD, we
can see they have all been fixed.

For CVE-2014-4859 and CVE-2014-4860, there's no useful links in NVD,
but according to the following two links, they have also been fixed.

  https://security-tracker.debian.org/tracker/CVE-2014-4859
  https://security-tracker.debian.org/tracker/CVE-2014-4860

(From OE-Core rev: 62f1e5d1bb8df17aaa14265a7acf60e5b44b53b5)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-04-08 17:35:35 +01:00
Alexander Kanavin
282e464d7d ovmf: update 202308 -> 202402
RP: The upgrade covers these security issues:
CVE-2022-36763
CVE-2022-36764
CVE-2022-36765
CVE-2023-45229
CVE-2023-45230
CVE-2023-45231
CVE-2023-45232
CVE-2023-45233
CVE-2023-45234
CVE-2023-45235
CVE-2023-45236
CVE-2023-45237

(From OE-Core rev: 46763f78344547a3126b536695077c9e7e60c9d6)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-04-08 12:55:21 +01:00
Chen Qi
118faea62c ovmf: set CVE_STATUS for CVE-2014-8271
CVE-2014-8271 has an unusual versioning, svn_16280, which breaks
the version comparison and gives us warning like below:

  Failed to compare 202308 < svn_16280 for CVE-2014-8271

The fix has been there since 2014, our current version has included
the fix.

(From OE-Core rev: fdd74b3f3e3a8a07a6107e6ef07198ebe63d2bc8)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-04-08 11:01:09 +01:00
Chen Qi
fa6c4f014a ovmf: set CVE_PRODUCT and CVE_VERSION
Set CVE_PRODUCT and CVE_VERSION for ovmf. NVD uses 'edk2' and the
version should be the date only. Here's an example:
https://nvd.nist.gov/vuln/detail/CVE-2023-45232

(From OE-Core rev: 7d11e4d55c9de23edbf5ba21d7ee007bab20c38a)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-04-04 14:05:03 +01:00
Martin Jansa
649ec73076 ovmf: drop PE, PR from /usr/src/debug paths
(From OE-Core rev: d12ee54263e3a2ed8b1a84b72a2a1423fe09c3cf)

Signed-off-by: Martin Jansa <martin.jansa@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-11-20 15:30:52 +00:00
Alexander Kanavin
efddfa97a2 ovmf: update edk2-stable202305 -> edk2-stable202308
(From OE-Core rev: 48878248d39d7e0bf66f33051f7ecef49c14e1e1)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-09-18 08:53:10 +01:00
Alexander Kanavin
f3c0c3a35c ovmf: update 202302 -> 202305
(From OE-Core rev: 175927cedffbd9fe5815219984d8b3c4be56ad98)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-06-27 16:23:40 +01:00
Alexander Kanavin
3c8969b6e6 ovmf: update 202211 -> 202302
(From OE-Core rev: 8cdea67a68896a9e5964ffcd3dff2ca465ef5675)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-05-22 10:53:47 +01:00
Alexander Kanavin
3f79265a7d ovmf: update edk2-stable202208 -> edk2-stable202211
(From OE-Core rev: f59ac932a6114eb662109ba958e591c34c93801c)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-21 10:16:31 +00:00
Alexander Kanavin
6487b06bd0 ovmf: upgrade edk2-stable202205 -> edk2-stable202208
(From OE-Core rev: 5037ab9736e833f5e2b1345b99412bcf0eb7306c)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-29 16:28:36 +01:00
Alexander Kanavin
458a20d94d ovmf: drop the force no-stack-protector patch
This should not be necessary, as ovmf is already marked as
COMPATIBLE_HOST:class-target='(i.86|x86_64).*'
and existing upstream code handles both.

If/when ovmf is used on other targets, the situation can be revisited.

(From OE-Core rev: 4a75ca7c5a1c6330748fd1efa0a23af4acd23099)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-09-02 15:58:25 +01:00
Alexander Kanavin
953547ed1e ovmf: update 202202 -> 202205
(From OE-Core rev: 251ae38c744df13dc259f85fba7fa4bc06464df6)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-06-07 21:21:55 +01:00
Khem Raj
2f36d912d4 ovmf: Fix native build with gcc-12
Host distros have started deploying gcc12 as well e.g. archlinux
this build failure shows up which has been fixed upstream

In function ‘GetAlignmentFromFile’,
    inlined from ‘main’ at GenFfs.c:816:20:
GenFfs.c:545:5: error: pointer ‘InFileHandle’ used after ‘fclose’ [-Werror=use-after-free]
  545 |     Error(NULL, 0, 4001, "Resource", "memory cannot be allocated  of %s", InFileHandle);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

(From OE-Core rev: 7b67f19d353d88107f52cceda3c858730ac1db54)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-05-15 08:57:16 +01:00
wangmy
05fbb1a2ee ovmf: upgrade 202111 -> 202202
0001-Fix-VLA-parameter-warning.patch
removed since it's included in 202202

Changelog:
=========
OvmfPkg Add new target for Cloud Hypervisor
Add TDVF to OvmfPkg
Add new APIs to UefiCpuPkg/UefiCpuLib
Add AMD Secure Nested Paging Support
Add SSDT PCI generator in DynamicTablesPkg
Support ACPI 6.4 PPTT changes
Add FdtHwInfoParser library
Add DynamicPlatRepo library
Make package and platform builds reproducible across source format changes
Add Uncrustify CI Plugin
Apply uncrustify changes to all package C and H files

(From OE-Core rev: 5e280a4d6bf67c3b7d26c444bc52f25e63ae57a4)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-03-02 18:43:24 +00:00
wangmy
f0e8d3042d ovmf: upgrade 202108 -> 202111
(From OE-Core rev: bb025ed25d0826f900208d4c4e52ae404ce523b7)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-12-01 16:23:45 +00:00
Alexander Kanavin
fc5c6e373a ovmf: remove patch merged upstream
See here:
https://github.com/tianocore/edk2/pull/1513/files

The change was thus applied twice to the same file.

(From OE-Core rev: af90f9681bae3defe841ddcf80755960792faa88)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-11-29 23:07:13 +00:00
Alexander Kanavin
f65a34764c ovmf: update 202105 -> 202108
(From OE-Core rev: 9e5d15aba7515952614f69e06d3d9b9316a77204)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-10-23 17:42:25 +01:00
Kristian Klausen
3ac9722e0f ovmf: add TPM PACKAGECONFIG and enable if tpm is in MACHINE_FEATURES
By enabling TPM support the boot will be measured into the TPM's
Platform Configuration Registers (PCRs).

(From OE-Core rev: e71280883c217d86b4636da6e549334183f1aff7)

Signed-off-by: Kristian Klausen <kristian@klausen.dk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-10-01 14:51:45 +01:00
Ross Burton
64a2dd7fdf ovmf: set precise BSD license
"BSD" is ambiguous, use the precise license BSD-2-Clause-Patent.

(From OE-Core rev: 3e5c91e3517f15c25ecf56877a15962427dd0f3b)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-09-04 08:44:11 +01:00
Richard Purdie
bb6ddc3691 Convert to new override syntax
This is the result of automated script conversion:

scripts/contrib/convert-overrides.py <oe-core directory>

converting the metadata to use ":" as the override character instead of "_".

(From OE-Core rev: 42344347be29f0997cc2f7636d9603b1fe1875ae)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-08-02 15:44:10 +01:00
Alexander Kanavin
f9cbd62bf3 ovmf: update 2021.02 -> 2021.05
Reformat patches using git, so that rebasing them to newer versions is easier.

(From OE-Core rev: 796f5a422a1bb9059ca8045b5aa199aa02b0e46a)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-06-17 00:07:05 +01:00
Khem Raj
43380125d9 ovmf: Fix VLA warnings with GCC 11
(From OE-Core rev: 5406ce83e07c3f89b9f2bb26f083861467b7bc59)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-05-31 14:31:01 +01:00
Richard Purdie
944de7ea5f ovmf: Fix other reproducibility issues
When building in longer paths, the ovmf build changes in many ways. This adds a
patch addressing various causes of problems. Full details are in the patch header.

(From OE-Core rev: 9113a5815f3c682ef99fd777e35e892b2e08237f)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-05-13 11:34:14 +01:00
Richard Purdie
8e19e48f1b ovmf: Disable lto to aid reproducibility
lto tends to break reproducibility and makes ovmf near impossible to debug
reproducibility issues in. Disable it and supress the warnings that then
generates from Werror.

(From OE-Core rev: 627b6ed763eca90192203932784872b60a65fcaa)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-05-13 11:34:14 +01:00
Richard Purdie
8dcb68f477 ovmf: Improve reproducibility by enabling prefix mapping
We want to pass ${DEBUG_PREFIX_MAP} to gcc commands and also pass in
--debug-prefix-map to nasm (we carry a patch to nasm for this). The
tools definitions are built by ovmf-native so we need to pass this in
at target build time when we know the right values.

By using determininistc file paths in the ovmf build, it removes the
opportunitity for gcc/ld to change the output binaries due to path
lengths overflowing section sizes and causing small changes in the
binary output.

This also means that if builds have reproducibility issues in future, it
becomes much easier to compare intermediate build artefacts.

(From OE-Core rev: 51f51310d6d5cced2b55bf27dbb9a5717740a206)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-05-11 11:54:26 +01:00
Ross Burton
56c043a58d ovmf: make output binaries reproducible
OVMF is mostly reproducible, but the final .efi binaries have a 'NM10'
segment in that references the original input file, and this input file
has the build path in.

This can be solved by passing --zero to GenFw so that this segment is
zero'd out in release builds.

[ YOCTO #14264 ]

(From OE-Core rev: 8b4e5a3b8c3eabfbb94ab577529240b2e270efa7)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-03-20 18:54:55 +00:00
Wang Mingyu
d34234c6e1 ovmf: upgrade 202011 -> 202102
0003-ovmf-enable-long-path-file.patch
removed since it is not available in 202102.

(From OE-Core rev: c364d64adcb8c7fdfe196186efa868381f8630e7)

Signed-off-by: Wang Mingyu <wangmy@cn.fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-03-14 16:33:59 +00:00
Alexander Kanavin
dfcdb32251 ovmf: upgrade 202008 -> 202011
(From OE-Core rev: f1382f73f1faa0653aebd2cbb492131972755c20)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-12-31 11:53:26 +00:00
Alexander Kanavin
fdee18c6b0 ovmf: update edk2-stable202005 -> edk2-stable202008
(From OE-Core rev: 61cc9acb54be09a12aac7c79f4b14e7e525d5596)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-10-30 13:22:48 +00:00
Daniel Klauer
62931865d5 deploy.bbclass: Clean DEPLOYDIR before do_deploy
do_deploy should clean up ${DEPLOYDIR} before running, just like do_install
cleans up ${D} before running. This reduces the risk of DEPLOYDIR being
accidentally contaminated by files from previous runs, possibly even with
different config, in case of incremental builds.

It is convenient to have this in deploy.bbclass, so it doesn't have to be
duplicated in every recipe, considering for example meta-freescale, which
has 23 affected recipes.

All recipes using deploy.bbclass (grep -r 'inherit .*deploy') in poky,
meta-openembedded and meta-freescale look like they either benefit from
this or are at least not affected negatively by it. The only exception
I've noticed was uboot-sign.bbclass, which was however fixed by the
previous patch.

(From OE-Core rev: 7083a7d56f4d90c81d2e6652ee291d20fd908bbe)

Signed-off-by: Daniel Klauer <daniel.klauer@gin.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-06-30 23:03:02 +01:00
Ross Burton
add3d45c69 ovmf: build natively everywhere
The OVMF target binaries are (currently) x86-specific, but the native
tools to build them are not.

Make the COMPATIBLE_HOST assignment target-specific, so that the native
tools can be built on an arm64 build server.

(From OE-Core rev: 58ebb47688fc98fdaeb78b4033bd31100218d5d6)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-06-28 08:36:00 +01:00
Alexander Kanavin
f9b4abc12e ovmf: update to 202005
(From OE-Core rev: f8bf6b5f9aedcc4490008000250e69f74529db75)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-06-09 13:14:00 +01:00
Alexander Kanavin
1c81649cc1 ovmf: update to 202002
(From OE-Core rev: c4301758f5a1560965ca5fb69eb1492adf351ed0)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-05-07 12:16:00 +01:00
Alexander Kanavin
fd61f30c2a ovmf: update to 201911
Remove unused patch.

(From OE-Core rev: 159328dde56e35ba56ec0b1e3602a3b2df6ad691)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-01-10 21:18:22 +00:00
Ross Burton
daf1a2211c ovmf: unify DEPENDS
Instead of depending on iasl-native, depend on ovmf-native as iasl was merged
into that recipe some time ago.

bc-native doesn't appear to be a build requirement anymore, and for clarity
merge two overridden DEPENDS into a single DEPENDS.

(From OE-Core rev: 78d2f68a956ff49410b238456ce0a23c5a0667aa)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-11-14 13:20:59 +00:00
Christophe PRIOUZEAU
72db0053d6 ovmf: Clarify BSD license variant
The license of ovmf is BSD-2-Clause

(From OE-Core rev: 8d53cbe59a10c065417ef6e87e657a5b590ea344)

Signed-off-by: Christophe Priouzeau <christophe.priouzeau@st.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-10-15 14:16:11 +01:00
Alexander Kanavin
21b9552645 ovmf: fix upstream version check
(From OE-Core rev: 7ec9997c86df11a9a08e1531269435010b12e8da)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-14 17:33:49 +01:00
Ricardo Neri
c7fb87ee6f ovmf: Generate test Platform key and first Key Exchange Key
Commit from EDK2 be9470b3c91f ("OvmfPkg/EnrollDefaultKeys: enroll
PK/KEK1 from the Type 11 SMBIOS table") mandates that a Platform Key
and first Key Exchange Key certificate is provided to the
EnrollDefaultKeys application.

Previously, the application was using a hard-coded certificate
from Red Hat embedded in the application.

Create a certificate that can QEMU can subsequently pass to
EnrollDefaultKeys when running qemu-shell-image.

Cc: Ross Burton <ross.burton@intel.com>
Cc: Patrick Ohly <patrick.ohly@intel.com>
Cc: Alexander Kanavin <alex.kanavin@gmail.com>
(From OE-Core rev: daaf9d7bd8c3586609ab0eccf49af38dbdb0b02e)

Signed-off-by: Ricardo Neri <ricardo.neri-calderon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-12 16:23:57 +01:00
Ricardo Neri
29fb47861f ovmf: Use HOSTTOOLS' python3
Use the variable PYTHON_COMMAND to let know EDK2 base tools that python3
in the host shall be used.

In order build successfully, the host must have installed the
python3-distutils package or equivalent.

Based on an original patch by Ross Burton.

Cc: Ross Burton <ross.burton@intel.com>
Cc: Patrick Ohly <patrick.ohly@intel.com>
(From OE-Core rev: 435d1f8ffe9df86367316d25cb6def2ea2041642)

Signed-off-by: Ricardo Neri <ricardo.neri-calderon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-12 16:23:57 +01:00
Ricardo Neri
b7f92324cc ovmf: Set PV
Now that EDK2 has been tagging stable releases, we can also set PV
and drop UPSTREAM_VERSION_UNKNOWN.

Cc: Ross Burton <ross.burton@intel.com>
Cc: Patrick Ohly <patrick.ohly@intel.com>
(From OE-Core rev: b9851d612be842d35ebd78f5f21158beaaed8e64)

Signed-off-by: Ricardo Neri <ricardo.neri-calderon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-12 16:23:57 +01:00
Ricardo Neri
bc59000e77 ovmf: Update to version edk2-stable201905
Fixes [YOCTO #13438]

Update OVMF to edk2-stable201905. Since the last update, several things
have changed. Many of the patches we were carrying have now been taken
upstream in EDK2 or become obsolete. See below for details.

Also, as of commit 0c1ffb9504c3("CryptoPkg: Adding OpenSSL as one
submodule of EDKII repo"), openssl is not embedded into EDK2 using a
patching script but a git submodule. Then, use the gitsm bitbabke fetcher
and drop the extra SRC_URI from openssl when building with secureboot
enabled. Also remove all related variables.

OVMF switched to BSD+Patent license as detailed in
https://bugzilla.tianocore.org/show_bug.cgi?id=1373. Hence, update
LIC_FILES_CHKSUM accordingly to reflect this change.

Patches are updated as follows:

Drop 0001-ia32-Dont-use-pie.patch as it is implemented in upstream EDK2
in commits are 11d0cd23dd1b ("BaseTools/tools_def IA32: drop -no-pie linker
option for GCC49" and c25d3905523a ("BaseTools/tools_def IA32: disable PIE
code generation explicitly") for the applicable GCC versions.

Rebase 0003-BaseTools-makefile-adjust-to-build-in-under-bitbake.patch
to edk2-stable201905.

Drop VfrCompile-increase-path-length-limit.patch as it has been taken
upstream in EDK2 in commit ba78032bc8c9f("BaseTools/VfrCompile: Remove the
MAX_PATH limitation").

Rebase no-stack-protector-all-archs.patch to keep behavior on not using
stack protector on all archs.

Drop 0001-BaseTools-header.makefile-add-Wno-stringop-truncatio.patch,
0002-BaseTools-header.makefile-add-Wno-restrict.patch, and
0003-BaseTools-header.makefile-revert-gcc-8-Wno-xxx-optio.patch. These
patches have been taken in upstream EDK2 in commits 9222154ae7b3("BaseTools
/header.makefile: add "-Wno-restrict"), 1d212a83df0e("BaseTools/
header.makefile: add "-Wno-stringop-truncation"), and 777f4aa083e9
("BaseTools/header.makefile: revert gcc-8 '-Wno-xxx' options on OSX"),
respectively.

Also, drop 0004-BaseTools-GenVtf-silence-false-stringop-overflow-war.patch.
GenVtf has been removed from EDK2 in commit 64ab2c82e8f6("BaseTools:
Remove GenVtf"). Also, this patch had been taken in EDK2 upstream in
commit 9de306701312("BaseTools/GenVtf: silence false 'stringop-overflow'
warning with memcpy()").

Drop patch 0007-OvmfPkg-EnrollDefaultKeys-application-for-enrolling-.patch
as it also has been taken by EDK2.

Patches 0002-ovmf-update-path-to-native-BaseTools.patch and
0004-ovmf-enable-long-path-file.patch did not need any update.

Lastly, add a needed dependency on bc.

Cc: Ross Burton <ross.burton@intel.com>
Cc: Patrick Ohly <patrick.ohly@intel.com>
(From OE-Core rev: 1f64ecf92fa77b682b18efe72fb6b27ff64ee052)

Signed-off-by: Ricardo Neri <ricardo.neri-calderon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-12 16:23:57 +01:00
Alexander Kanavin
48522906a2 qemu: split the native version into usermode and system parts
The rationale is to streamline the overall build.

The system parts are only needed to run target images, and so can be
built towards the end of the build process. At the same time, the
system parts may need gtk+-native and mesa-native which add significantly
to the build time.

On the other hand, the usermode parts have almost no dependencies
and can be built quickly. They are needed at recipes build time to
run target binaries, and so are required quite early in the typical
build process.

(From OE-Core rev: 4a558a5f2db68538e0edad798ddf48eb9510a7d6)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-02-28 13:21:54 +00:00
Ross Burton
25392f7ed1 ovmf: remove ossp-util from DEPENDS
This was added back in the meta-luv days[1] presumably under the impression that
it needs ossp-uuid but in reality we rename ossp-uuid's library and uuid.h comes
from util-linux.

[1] e08817342b

(From OE-Core rev: 2a2da0fb7b42c92864f39dcdaf949a5c34ef4eda)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-30 12:44:35 +01:00
Christopher Larson
653c96d8e1 ovmf: set PARALLEL_MAKE for target as well
This can fail for target, not just native.

(From OE-Core rev: 747c7dc8702d2241475894876d06a2f1f2b29fed)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-27 13:55:21 +01:00