Commit Graph

378 Commits

Author SHA1 Message Date
Alexey Kardashevskiy
c49b67f72b pseries: Update SLOF firmware image
The only change is that now SLOF can also boot big endian zImage
but kernel-addr=0 is still required.

Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com>
2022-08-30 16:20:01 -03:00
Helge Deller
64ee6989c9 New SeaBIOS-hppa version 6
Staring with SEABIOS_HPPA_VERSION 6 the serial ports are now emulated as
on physical hardware, with LASI UART being serial port #0 and DINO UART
as serial port #1. On older versions those ports were swapped.

This SeaBIOS-hppa fix is needed to allow fixing the qemu serial
pass-through from host to guest.

Signed-off-by: Helge Deller <deller@gmx.de>
2022-05-26 12:54:29 +02:00
Helge Deller
041eb5bcf7 seabios-hppa: Update SeaBIOS-hppa to VERSION 5
New features and fixes in SeaBIOS for hppa/parisc:

* STI firmware now contains additional fonts built-in, which
  can be selected with qemu command-line options:
        -fw_cfg opt/font,string=1       - a HP 8x16 font
        -fw_cfg opt/font,string=2       - a HP 6x13 font
        -fw_cfg opt/font,string=3       - a HP 10x20 font
        -fw_cfg opt/font,string=4       - a Linux 16x32 font

* Fixed PS/2 keyboard emulation when running in graphical mode.
  This allows to type boot commands in the firmware boot menu if
  qemu was started with "-boot menu=on" (and no linux kernel was
  given on the qemu command line).

* Fix firmware rendenzvous code to clear all pending external intrrupts
  before entering the waiting loop.

Signed-off-by: Helge Deller <deller@gmx.de>
2022-05-16 15:51:02 +02:00
Joel Stanley
5dd0be53e8 ppc/pnv: Update skiboot to v7.0
This is skiboot 7.0 (commit 76b349cf7b40). Built using gcc 11.2.0 and
binutils 2.38.

Changes since the previous version:

Christophe Lombard (15):
      npu2: move opal api
      pau: introduce support
      rainier: detect pau devices
      pau: assign bars
      pau: create phb
      pau: enabling opencapi
      pau: translation layer configuration
      pau: enable interrupt on error
      pau: complete phb ops
      pau: hmi scom dump
      pau: phy init
      pau: link training
      pau: update current opal call functions
      pau: mmio invalidates
      pau: Add support for OpenCAPI Persistent Memory devices.

Cédric Le Goater (4):
      xive/p10: Fix xive_special_cache_check when DEBUG=1
      xive/p10: Fix mismatch errors when DEBUG=1
      interrupts: Do not advertise XICS support on P10
      skiboot v6.6.6 release notes

Frederic Barrat (6):
      phb4/5: Escalate page-level TCE kills
      npu3: Remove GPU support on Swift
      phb5: Remove obsolete capp-related properties
      xive/p10:: Declare xive2 DT node as an interrupt-controller
      skiboot v6.0.24 release notes
      opal-api: Drop diagnostics data type symbol for PHB5

Michael Ellerman (3):
      external/mambo: Print more info when the kernel is too big
      doc: Make it clear all existing platforms use Power9N
      docs: Add Swift, Mowgli & Rainier

Nicholas Piggin (12):
      external/mambo: Updates for POWER10 configuration for DD2.0
      external/mambo: Updates POWER9 SIM_CTRL1 to remove hardware atomic RC
      external/mambo: Add POWER10 small-core mode
      HBRT: fix clobbered r16 when host services handlers are called
      interrupts: add_opal_interrupts avoid NULL dereference on P10 mambo
      cpu: cpu_idle_job SMT priority fix
      cpu: add debug check in cpu_relax
      asm/head: Fix P10 HILE for little endian build
      phb4: annotate tbl_pest with endian types
      Remove support for POWER8 DD1
      phb3: make endian-clean
      flash: AST BMC endian fixes

Nick Child (1):
      secvar: Free md context on hash error

Ryan Grimm (1):
      AWAN simulator support for P10

Vasant Hegde (5):
      ci: Bump qemu version
      hello_world: Add p10 mambo tests
      skiboot v6.7.3 release notes
      skiboot v6.8.1 release notes
      skiboot v7.0 release notes

Signed-off-by: Joel Stanley <joel@jms.id.au>
Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com>
2022-04-20 17:58:35 -03:00
Gerd Hoffmann
3ce48e499b edk2: add microvm build
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
2022-03-15 07:18:30 +01:00
Gerd Hoffmann
4911df8a7a edk2: .git can be a file
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
2022-03-15 07:18:30 +01:00
Gerd Hoffmann
ca26041500 edk2: switch to release builds
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
2022-03-15 07:18:29 +01:00
Gerd Hoffmann
e2f3137c73 edk2: update submodule to stable202202
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
2022-03-15 07:18:29 +01:00
Peter Maydell
4b7520911b qemu-openbios queue
-----BEGIN PGP SIGNATURE-----
 
 iQFSBAABCgA8FiEEzGIauY6CIA2RXMnEW8LFb64PMh8FAmInDjUeHG1hcmsuY2F2
 ZS1heWxhbmRAaWxhbmRlLmNvLnVrAAoJEFvCxW+uDzIfYWEH/0gcE2o5bOsED7ui
 Mg1vnt0xdTXpdDcgLWAb912ashiO/KZwTUcg7r3UsuH1dQxRRfjaJlcJSLk65HsL
 sPejdZv9saom4m/55XzSL/E2kR+EbJRdVKis/ilyidAZ9jHTVrZaGE1UKBLzJdbu
 bEbrn2JguYXh+Hu9FdinmmsKszmga4lWuGhh80zZTe3WZokvLN4YlC4Q45xhedII
 PF65nXcaYAW/+HEDduB3Uf6sNr9C5fcAwpaGgJ9+vkS0PYvmGi5QrwV36XwSHVyF
 5y9ZbaoToKx0Hym1tmdl5xUh9gWx3d2XUzS/tqxnP/mq5fPwG7BjNtJ6F/DmzAn4
 gMhFEsY=
 =U1E2
 -----END PGP SIGNATURE-----

Merge remote-tracking branch 'remotes/mcayland/tags/qemu-openbios-20220308' into staging

qemu-openbios queue

# gpg: Signature made Tue 08 Mar 2022 08:05:09 GMT
# gpg:                using RSA key CC621AB98E82200D915CC9C45BC2C56FAE0F321F
# gpg:                issuer "mark.cave-ayland@ilande.co.uk"
# gpg: Good signature from "Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>" [full]
# Primary key fingerprint: CC62 1AB9 8E82 200D 915C  C9C4 5BC2 C56F AE0F 321F

* remotes/mcayland/tags/qemu-openbios-20220308:
  roms/openbios: update OpenBIOS images to 0e0afae6 built from submodule

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2022-03-09 15:50:39 +00:00
Mark Cave-Ayland
ab71472dfb roms/openbios: update OpenBIOS images to 0e0afae6 built from submodule
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
2022-03-07 23:12:01 +00:00
Gerd Hoffmann
f682abc83b update seabios submodule to 1.16.0
git shortlog 6a62e0cb0dfe..rel-1.16.0
-------------------------------------

Florian Larysch (1):
      nvme: fix LBA format data structure

Jan Beulich via SeaBIOS (1):
      nvme: avoid use-after-free in nvme_controller_enable()

Kevin O'Connor (9):
      smm: Suppress gcc array-bounds warnings
      nvme: Rework nvme_io_readwrite() to return -1 on error
      nvme: Add nvme_bounce_xfer() helper function
      nvme: Convert nvme_build_prpl() to nvme_prpl_xfer()
      nvme: Pass prp1 and prp2 directly to nvme_io_xfer()
      nvme: Build the page list in the existing dma buffer
      nvme: Only allocate one dma bounce buffer for all nvme drives
      sercon: Fix missing GET_LOW() to access rx_bytes
      docs: Note v1.16.0 release

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2022-03-07 11:20:21 +01:00
Peter Maydell
8f3e5ce773 Fixes and updates for hppa target
This patchset fixes some important bugs in the hppa artist graphics driver:
 - Fix artist graphics for HP-UX and Linux
 - Mouse cursor fixes for HP-UX
 - Fix draw_line() function on artist graphic
 
 and it adds new qemu features for hppa:
 - Allow up to 16 emulated CPUs (instead of 8)
 - Add support for an emulated TOC/NMI button
 
 A new Seabios-hppa firmware is included as well:
 - Update SeaBIOS-hppa to VERSION 3
 - New opt/hostid fw_cfg option to change hostid
 - Add opt/console fw_cfg option to select default console
 - Added 16x32 font to STI firmware
 
 Signed-off-by: Helge Deller <deller@gmx.de>
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYIAB0WIQS86RI+GtKfB8BJu973ErUQojoPXwUCYfrIogAKCRD3ErUQojoP
 X93ZAP9hqp/FCz/goH7Tpqce6FspHriJm6Ej2Rd7HxZWmh4bpQD/cMjY8qpcA/6r
 Nx4bgRPT6kCZwwLx7v2jZ2QsA2KaZAM=
 =c0qO
 -----END PGP SIGNATURE-----

Merge remote-tracking branch 'remotes/hdeller/tags/hppa-updates-pull-request' into staging

Fixes and updates for hppa target

This patchset fixes some important bugs in the hppa artist graphics driver:
- Fix artist graphics for HP-UX and Linux
- Mouse cursor fixes for HP-UX
- Fix draw_line() function on artist graphic

and it adds new qemu features for hppa:
- Allow up to 16 emulated CPUs (instead of 8)
- Add support for an emulated TOC/NMI button

A new Seabios-hppa firmware is included as well:
- Update SeaBIOS-hppa to VERSION 3
- New opt/hostid fw_cfg option to change hostid
- Add opt/console fw_cfg option to select default console
- Added 16x32 font to STI firmware

Signed-off-by: Helge Deller <deller@gmx.de>

# gpg: Signature made Wed 02 Feb 2022 18:08:34 GMT
# gpg:                using EDDSA key BCE9123E1AD29F07C049BBDEF712B510A23A0F5F
# gpg: Good signature from "Helge Deller <deller@gmx.de>" [unknown]
# gpg:                 aka "Helge Deller <deller@kernel.org>" [unknown]
# gpg: WARNING: This key is not certified with a trusted signature!
# gpg:          There is no indication that the signature belongs to the owner.
# Primary key fingerprint: 4544 8228 2CD9 10DB EF3D  25F8 3E5F 3D04 A7A2 4603
#      Subkey fingerprint: BCE9 123E 1AD2 9F07 C049  BBDE F712 B510 A23A 0F5F

* remotes/hdeller/tags/hppa-updates-pull-request:
  hw/display/artist: Fix draw_line() artefacts
  hw/display/artist: Mouse cursor fixes for HP-UX
  hw/display/artist: rewrite vram access mode handling
  hppa: Add support for an emulated TOC/NMI button.
  hw/hppa: Allow up to 16 emulated CPUs
  seabios-hppa: Update SeaBIOS-hppa to VERSION 3

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2022-02-02 19:54:30 +00:00
Helge Deller
097defeb12 seabios-hppa: Update SeaBIOS-hppa to VERSION 3
New firmware features and fixes:

* Allow up to 16 CPUs

* Add TOC button support:
    To trigger a TOC, execute "nmi" in the qemu monitor (Ctrl-A C)

* New opt/hostid fw_cfg option to change hostid:
    -fw_cfg opt/hostid,string=334455

* Add opt/console fw_cfg option to select default console:
    -fw_cfg opt/console,string=serial
    -fw_cfg opt/console,string=graphics

* Add Linux TER16x32 font to STI firmware:
    -fw_cfg opt/font,string=2

* Leave IRQs disabled after rendevouz

Signed-off-by: Helge Deller <deller@gmx.de>
2022-02-02 18:45:02 +01:00
Anup Patel
4211fc5532 roms/opensbi: Remove ELF images
Now that all RISC-V machines can use OpenSBI BIN images, we remove
OpenSBI ELF images and also exclude these images from BIOS build.

Signed-off-by: Anup Patel <apatel@ventanamicro.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
2022-01-21 15:52:57 +10:00
Gerd Hoffmann
6a094d62ff seabios: update submodule to snapshot
Most important update is smbios3 support being added, this update should
help getting the qemu side of things (flip to smbios3 by default for new
machine types) merged and tested.

Not fully clear yet when the next 1.16 seabios version will be released,
but it should be no later than end of February so we can pick it up for
qemu 7.0.

full shortlog
=============

Andy Pei (3):
      virtio-blk: add feature VIRTIO_BLK_F_SIZE_MAX and VIRTIO_BLK_F_SEG_MAX
      virtio-blk: abstract a function named virtio_blk_op_one_segment to handle r/w request
      virtio-blk: split large IO according to size_max

Eduardo Habkost (19):
      biostables: copy_fseg_table() function
      util.h: Delete unused get_smbios_entry_point() prototype
      smbios: Rename code specific for SMBIOS 2.1 entry points
      smbios: Generic smbios_next() function
      smbios: smbios_get_tables() function
      smbios: Use smbios_get_tables()/smbios_next() at display_uuid()
      smbios: smbios_major_version()/smbios_minor_version() helpers
      tpm: Use smbios_get_tables()
      csm: Don't check SMBios21Addr before calling copy_smbios_21()
      smbios: Make SMBios21Addr variable static
      smbios: Use smbios_next() at smbios_romfile_setup()
      smbios: Extract SMBIOS table building code to separate function
      smbios: Make smbios_build_tables() more generic
      smbios: smbios_21_setup_entry_point() function
      smbios: Make some smbios_build_tables() arguments optional
      smbios: Make smbios_build_tables() ready for 64-bit tables
      smbios: copy_smbios_30() function
      smbios: Support SMBIOS 3.0 entry point at copy_table()
      smbios: Support SMBIOS 3.0 entry point at smbios_romfile_setup()

Gerd Hoffmann (1):
      svgamodes: add standard 4k modes

Igor Mammedov (2):
      pci: reserve resources for pcie-pci-bridge to fix regressed hotplug on q35
      pci: let firmware reserve IO for pcie-pci-bridge

Kevin O'Connor (4):
      vgasrc: Don't use VAR16 in header files to fix gcc warning
      memmap: Fix gcc out-of-bounds warning
      readserial: Improve Python3 compatibility
      scripts: Remove python23compat.py

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2022-01-18 12:19:15 +01:00
Mark Cave-Ayland
8d7ebae480 roms/openbios: update OpenBIOS images to 04dfc98 built from submodule
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
2022-01-15 17:34:36 +00:00
Cédric Le Goater
4d805d43b2 Merge tag 'qemu-slof-20220110' of github.com:aik/qemu into ppc-7.0
* tag 'qemu-slof-20220110' of github.com:aik/qemu:
  pseries: Update SLOF firmware image

Signed-off-by: Cédric Le Goater <clg@kaod.org>
2022-01-12 11:27:16 +01:00
Alexey Kardashevskiy
1c127fa8e2 pseries: Update SLOF firmware image
The only change is that SLOF is compiled with -mcpu=power5
to make it work on PPC970 too.

Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
2022-01-10 15:31:14 +11:00
Bin Meng
b3e0204968 roms/opensbi: Upgrade from v0.9 to v1.0
Upgrade OpenSBI from v0.9 to v1.0 and the pre-built bios images.

The v1.0 release includes the following commits:

ec5274b platform: implement K210 system reset
5487cf0 include: sbi: Simplify HSM state define names
8df1f9a lib: sbi: Use SBI_HSM_STATE_xyz defines instead of SBI_STATE_xyz defines
7c867fd lib: sbi: Rename sbi_hsm_hart_started_mask() function
638c948 lib: sbi: Remove redundant sbi_hsm_hart_started() function
ca864a9 lib: sbi: Fix error codes returned by HSM start() and stop() functions
6290a22 include: sbi: Add HSM suspend related defines
4b05df6 lib: sbi: Add sbi_hart_reinit() function
807d71c include: sbi: Add hart_suspend() platform callback
7475689 lib: sbi: Implement SBI HSM suspend function
b9cf617 include: sbi: Upgrade SBI implementation version to v0.3
50d4fde lib: Remove redundant sbi_platform_ipi_clear() calls
ff5bd94 include: sbi: SBI function IDs for RFENCE extension
22d8ee9 firmware: Use lla to access all global symbols
0f20e8a firmware: Support position independent execution
ddad02d lib: sbi: illegal CSR 0x306 access in hpm_allowed()
bfc85c7 include: headers: Replace __ASSEMBLY__ with __ASSEMBLER__
9190ad1 lib/utils: Support the official clint DT bindings
ca3f358 lib/utils: Drop the 'compat' parameter of fdt_plic_fixup()
4edc822 lib/utils: Support fixing up the official DT bindings of PLIC
4ef2f5d firware: optimize the exception exit code
3d8a952 lib: fix csr detect support
e71a7c1 firmware: Remove redundant add instruction from trap restore path
d4a94ea include: types: Add __aligned(x) to define the minimum alignement
d0e406f include: sbi: Allow direct initialization via SPIN_LOCK_INIT()
4d8e2f1 lib: sbi: Replace test-and-set locks by ticket locks
70ffc3e lib: sbi: fix atomic_add_return
27a16b1 docs: fix link to OpenPiton documentation
b1df1ac lib: sbi: Domains can be registered only before finalizing domains
7495bce lib: sbi: Add sbi_domain_memregion_init() API
4dc0001 lib: sbi: Add sbi_domain_root_add_memregion() API
8b56980 lib: utils/sys: Add CLINT memregion in the root domain
fc37c97 lib: sbi: Make the root domain instance global variable
e7e4bcd lib: utils: Copy over restricted root domain memregions to FDT domains
f41196a lib: sbi: Make sbi_domain_memregion_initfw() a local function
c5d0645 lib: utils: Implement "64bit-mmio" property parsing
49e422c lib: utils: reset: Add T-HEAD sample platform reset driver
0d56293 lib: sbi: Fix sbi_domain_root_add_memregion() for merging memregions
bf3ef53 firmware: Enable FW_PIC by default
1db8436 platform: Remove platform/thead
6d1642f docs: generic: Add T-HEAD C9xx series processors
a3689db lib: sbi: Remove domains_root_regions() platform callback
068ca08 lib: sbi: Simplify console platform operations
559a8f1 lib: sbi: Simplify timer platform operations
dc39c7b lib: sbi: Simplify ipi platform operations
043d088 lib: sbi: Simplify system reset platform operations
a84a1dd lib: sbi: Simplify HSM platform operations
e9a27ab lib: sbi: Show devices provided by platform in boot prints
632e27b docs/platform: sifive_fu540: Update U-Boot defconfig name
117fb6d lib: utils/serial: Add support for Gaisler APBUART
552f53f docs: platform: Sort platform names
d4177e7 docs: platform: Describe sifive_fu540 as supported generic platform
26998f3 platform: Remove sifive/fu540 platform
f90c4c2 lib: sbi: Have spinlock checks return bool
e822b75 lib: utils/serial: Support Synopsys DesignWare APB UART
6139ab2 Makefile: unconditionally disable SSP
c9ef2bc lib: utils: Add strncpy macro to libfdt_env.h
ee7c2b2 lib: utils/fdt: Don't use sbi_string functions
fe92347 lib: utils/fdt: Replace strcmp with strncmp
b2dbbc0 lib: Check region base for merging in sbi_domain_root_add_memregion()
54d7def lib: utils: Try other FDT drivers when we see SBI_ENODEV
d9ba653 docs: debugging OpenSBI
66c4fca lib: utils: consider ':' in stdout-path
f30b189 lib: sbi_scratch: remove owner from sbi_scratch_alloc_offset
a03ea2e platform: andes/ae350: Cosmetic fixes in plicsw.c
b32fac4 docs/platform: andes-ae350: Fix missing spaces
de446cc platform: andes/ae350: Drop plicsw_get_pending()
434198e platform: andes/ae350: Drop plicsw_ipi_sync()
1da3d80 lib: sbi_scratch: zero out scratch memory on all harts
360ab88 lib: utils: missing initialization in thead_reset_init
79f9b42 lib: sbi: Fix GET_F64_REG inline assembly
eb90e0a lib: utils/libfdt: Upgrade to v1.6.1 release
cdcf907 lib: sign conflict in sbi_tlb_entry_process()
9901794 lib: sign conflict in wake_coldboot_harts()
11c345f lib: simplify sbi_fifo_inplace_update()
4519e29 lib: utils/timer: Add ACLINT MTIMER library
5a049fe lib: utils/ipi: Add ACLINT MSWI library
bd5d208 lib: utils: Add FDT parsing API common for both ACLINT and CLINT
56fc5f7 lib: utils/ipi: Add FDT based ACLINT MSWI IPI driver
03d6bb5 lib: utils/timer: Add FDT based ACLINT MTIMER driver
a731c7e platform: Replace CLINT library usage with ACLINT library
b7f2cd2 lib: utils: reset: unify naming of 'sifive_test' device
197e089 docs/platform: thead-c9xx: Remove FW_PIC=y
17e23b6 platform: generic: Terminate platform.name with null
3e8b31a docs: Add device tree bindings for SBI PMU extension
fde28fa lib: sbi: Detect mcountinihibit support at runtime
d3a96cc lib: sbi: Remove stray '\' character
0829f2b lib: sbi: Detect number of bits implemented in mhpmcounter
9c9b4ad lib: sbi: Disable m/scounteren & enable mcountinhibit
41ae63c include: Add a list empty check function
fd9116b lib: sbi: Remove redundant boot time print statement
49966db lib: sbi: Use csr_read/write_num to read/update PMU counters
e7cc7a3 lib: sbi: Add PMU specific platform hooks
13d40f2 lib: sbi: Add PMU support
ae72ec0 utils: fdt: Add fdt helper functions to parse PMU DT nodes
37f9b0f lib: sbi: Implement SBI PMU extension
764a17d lib: sbi: Implement firmware counters
ec1b8bb lib: sbi: Improve TLB function naming
0e12aa8 platform: generic: Add PMU support
14c7f71 firmware: Minor optimization in _scratch_init()
dafaa0f docs: Correct a typo in platform_guide.md
abfce9b docs: Make <xyz> visible in the rendered platform guide
dcb756b firmware: Remove the sanity checks in fw_save_info()
b88b366 firmware: Define a macro for version of struct fw_dynamic_info
a76ac44 lib: sbi: Fix sbi_pmu_exit() for systems not having MCOUNTINHIBIT csr
7f1be8a fw_base: Don't mark fw_platform_init as both global and weak
397afe5 fw_base: Put data in .data rather than .text
a3d328a firmware: Explicitly pass -pie to the linker, not just the driver
09ad811 firmware: Only default FW_PIC to y if supported
2942777 Makefile: Support building with Clang and LLVM binutils
17729d4 lib: utils: Drop dependency on libgcc by importing part of FreeBSD's libquad
e931f38 lib: utils/fdt: Add fdt_parse_phandle_with_args() API
36b8eff lib: utils/gpio: Add generic GPIO configuration library
c14f1fe lib: utils/gpio: Add simple FDT based GPIO framework
4c3df2a lib: utils/gpio: Add minimal SiFive GPIO driver
e3d6919 lib: utils/reset: Add generic GPIO reset driver
7210e90 firmware: use __SIZEOF_LONG__ for field offsets in fw_dynamic.h
f3a8f60 include: types: Use __builtin_offsetof when supported
8a1475b firmware: Remove the unhelpful alignment codes before fdt relocation
a4555e5 docs: Document parameters passed to firmware and alignment requirement
2c74dc3 docs: Document FW_PIC compile time option
81eb708 README: Update toolchain information
9890391 Makefile: Manually forward RELAX_FLAG to the assembler when linking with LLD
74db0ac firmware: use _fw_start for load address
217d5e4 generic: fu740: add workaround for CIP-1200 errata
ce03c88 lib: utils: remove unused variable in fdt_reset_init
e928472 lib: utils: support both of gpio-poweroff, gpio-reset
d244f3d lib: sbi: Fix bug in strncmp function when count is 0
47a4765 lib: utils/fdt: Change addr and size to uint64_t
e0d1b9d lib: utils/timer: Allow separate base addresses for MTIME and MTIMECMP
7a3a0cc lib: utils: Extend fdt_get_node_addr_size() for multiple register sets
f3a0eb8 lib: utils/fdt: Extend fdt_parse_aclint_node() function
b35f782 lib: utils/timer: Allow ACLINT MTIMER supporting only 32-bit MMIO
7aa6c9a lib: utils/timer: Simplify MTIMER synchronization
33eac76 lib: sbi: Fix bug in sbi_ecall_rfence that misses checking
ee27437 lib: sbi_trap: Restore redirect for access faults
b1d3e91 payloads/test: Add support for SBI v0.2 ecalls
bd316e2 lib: sbi: Correct typo in faults delegation CSR name
c262306 lib: sbi: protect dprintf output with spinlock
1718b16 lib: sbi: Checking fifo validness in sbi_fifo_is_empty and is_full
bd35521 lib: sbi: Refine the way to construct platform features
0274a96 lib: utils/reset: Sort fdt_reset driver list
395ff7e lib: utils/reset: Add a sunxi watchdog reset driver
3477f08 lib: sbi: fix ctz bug
12753d2 lib: sbi: add some macros to detect BUG at runtime
51113fe lib: sbi: Add BUG() macro for csr_read/write_num() and misa_string()
72154f4 lib: utils/fdt: Add fdt_parse_timebase_frequency() function
12e7af9 lib: sbi: Add timer frequency to struct sbi_timer_device
6355155 lib: sbi: Print timer frequency at boot time
9d0ab35 lib: sbi: Add generic timer delay loop function
fa59dd3 lib: utils/reset: use sbi_timer_mdelay() in gpio reset driver
754d511 lib: utils: identify supported GPIO reset methods
516161c lib: sbi: convert reset to list
9283d50 lib: sbi: add priority for reset handler
c38973e lib: sbi: Save context for all non-retentive suspend types
67cbbcb lib: sbi: system reset with invalid parameters
422eda4 Makefile: Add build time and compiler info string
78c2b19 lib: utils/irqchip: Automatically delegate T-HEAD PLIC access
309e8bd lib: utils/reset: Register separate GPIO system reset devices
723aa88 lib: sbi: Refine addr format in sbi_printf
c891acc include: sbi_utils: Introduce an helper to get fdt base address
013ba4e lib: sbi: Fix GPA passed to __sbi_hfence_gvma_xyz() functions
0979ffd lib: utils/gpio: use list for drivers
2fe2f55 lib: sbi: move sbi_boot_print_general()
57f094e platform: generic: move fdt_reset_init to final_init
be245ac lib: sbi: error handling in fdt_reset_init()
a74daf2 riscv: Add new CSRs introduced by Sscofpmf[1] extension
7084ad9 lib: sbi: Update csr_read/write_num for PMU
867c653 lib: sbi: Detect Sscofpmf extension at run time
9134c36 lib: sbi: Delegate PMU counter overflow interrupt to S mode
730f01b lib: sbi: Support sscofpmf extension in OpenSBI
2363f95 lib: sbi: Always enable access for all counters
0c304b6 lib: sbi: Allow programmable counters to monitor cycle/instret events
1e14732 lib: sbi: Reset the mhpmevent value upon counter reset
b628cfd lib: sbi: Counter info width should be zero indexed
b28f070 lib: sbi: Enable PMU extension for platforms without mcountinhibit
15906a3 lib: utils: Rename the prefix in PMU DT properties
b8845e4 lib: sbi: Fix initial value mask while updating the counters
31fe5a7 lib: sbi: Fix PMP address bits detection
94eba23 lib: utils/reset: add priority to gpio reset
1d462e0 lib: utils/reset: separate driver init func
2c964a2 lib: utils/i2c: Add generic I2C configuration library
6ca6bca lib: utils/i2c: Add simple FDT based I2C framework
13a1158 lib: utils/i2c: Add minimal SiFive I2C driver
f374496 platform: sifive_fu740: add platform reset driver
d335a17 lib: sbi: clear pmpcfg.A before setting in pmp_set()
52af6e4 lib: utils: Add LiteX UART support
22d556d lib: sbi: Fix spelling of "address" in sbi_domain.c
7a22c78 lib: sbi: Fix missing space
7e77706 lib: sbi: Resolve the uninitialized complaint in sbi_pmu
14faee6 lib: sbi: Improve fatal error handling
2428987 lib: pmu: support the event ID encoded by a bitmap.
66fbcc0 docs/platform: spike: Enhance Spike examples
460041c lib: pmu: check SSCOF before masking
69d7e53 Makefile: Fix -msave-restore compile warning with CLANG-10 (or lower)
d249d65 lib: sbi: Fix compile errors using -Os option
f270359 Makefile: Improve the method to disable -m(no-)save-restore option
2082153 lib: sbi: simplify pmp_set(), pmp_get()
d30bde3 firmware: Move memcpy/memset mapping to fw_base.S
48f91ee include: Bump-up version to 1.0

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
2022-01-08 15:46:09 +10:00
Cédric Le Goater
2307ddc15b Merge tag 'qemu-slof-20211112' of github.com:aik/qemu into ppc-next
* tag 'qemu-slof-20211112' of github.com:aik/qemu:
  pseries: Update SLOF firmware image

Signed-off-by: Cédric Le Goater <clg@kaod.org>
2021-12-16 20:09:11 +01:00
Gerd Hoffmann
e7fa3377cc seabios: update submodule to 1.15.0
Update seabios to the final release.  No code changes
compared to the snapshot merged a few weeks ago.

shortlog 64f37cc530f1..rel-1.15.0
---------------------------------

Kevin O'Connor (1):
      docs: Note v1.15.0 release

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2021-12-03 07:09:32 +01:00
Alexey Kardashevskiy
73944a4bf4 pseries: Update SLOF firmware image
This has really just one fix from Stefan, the rest is housekeeping.

The full changelog is:

Alexey Kardashevskiy (3):
      Revert "make: Define default rule for .c when V=1 or V=2"
      js2x: Fix compile and cleanup
      version: update to 20211112

Stefan Berger (1):
      tcgbios: Disable platform hierarchy in case of failure

Thomas Huth (8):
      Mention the CR vs. LF problem in the documentation
      slof/fs/accept: Replace TABs with spaces
      Fix the URL to the Linux kernel coding style
      lib/libc/README.txt: Fix "cannel" typo
      travis.yml: Fix keywords
      travis.yml: Update to Focal Fossa
      travis.yml: Compile-test the qemu build
      Silence some trivial compiler warning in the js2x code

Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
2021-11-13 14:47:56 +11:00
Mark Cave-Ayland
97a5b35c17 roms/openbios: update OpenBIOS images to b9062dea built from submodule
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
2021-11-01 21:50:52 +00:00
Gerd Hoffmann
b4b9a0e32f update seabios to master branch snapshot
A new seabios release is planned for november.

Update to a master branch snapshot, to
  (a) increase test coverage of the changes.
  (b) make the delta smaller when updating to the final
      release during the qemu 6.2 freeze.

Most noteworthy this fixes the nvme boot regression caused
by adding namespace support to the qemu nvme emulation.

seabios shortlog
================

Alex Martens via SeaBIOS (1):
      nvme: fix missing newline on sq full print

Alexander Graf (4):
      nvme: Record maximum allowed request size
      nvme: Allow to set PRP2
      nvme: Pass large I/O requests as PRP lists
      nvme: Split requests by maximum allowed size

Daniel P. Berrangé (1):
      smbios: avoid integer overflow when adding SMBIOS type 0 table

David Woodhouse (1):
      nvme: Clean up nvme_cmd_readwrite()

Gerd Hoffmann (9):
      output: add support for uppercase hex numbers
      dsdt: add support for pnp ids as strings
      usb: add boot prio support for mmio host adapters
      usb/xhci: split xhci setup into generic and pci parts
      usb/xhci: add support for mmio host adapters (via acpi).
      usb boot: add xhci mmio example
      nvme: improve namespace allocation
      nvme: drive desc should not include the newline
      Increase BUILD_MIN_BIOSTABLE for large roms

Matt DeVillier (1):
      usb.c: Fix devices using non-primary interface descriptor

Mike Banon (1):
      Support booting USB drives with a write protect switch enabled

Sergei Trofimovich (1):
      vgasrc: ignore .node.gnu.property (binutils-2.36 support)

Stefan Berger (4):
      tcgbios: Fix details in log entries
      Add implementations for sha256, sha384, and sha512
      tcgbios: Use The proper sha function for each PCR bank
      tcgbios: Disable platform hierarchy in case of failure

Stefan Ott via SeaBIOS (1):
      usb-hid: Increase MAX_KBD_EVENT

Volker Rümelin (2):
      stacks: call check_irqs() in run_thread()
      stacks: call check_irqs() after switch_next()

weitaowang-oc@zhaoxin.com (1):
      USB:Fix xHCI initail fail by using longer reset and CNR clear timeout value

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2021-10-22 12:25:03 +02:00
Philippe Mathieu-Daudé
bd0da3a3d4 roms/edk2: Only initialize required submodules
The EDK2 firmware images built to test QEMU do not require
the following submodules:

 - MdeModulePkg/Universal/RegularExpressionDxe/oniguruma
 - UnitTestFrameworkPkg/Library/CmockaLib/cmocka

The only submodules required are:

 - ArmPkg/Library/ArmSoftFloatLib/berkeley-softfloat-3
 - BaseTools/Source/C/BrotliCompress/brotli
 - CryptoPkg/Library/OpensslLib/openssl
 - MdeModulePkg/Library/BrotliCustomDecompressLib/brotli

Adapt the buildsys machinery to only initialize the required
submodules.

Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Reviewed-by: Gerd Hoffmann <kraxel@redhat.com>
Message-Id: <20211018105816.2663195-3-philmd@redhat.com>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
2021-10-20 16:26:19 -07:00
Philippe Mathieu-Daudé
b152229697 roms/edk2: Only init brotli submodule to build BaseTools
Since EDK2 BaseTools only require the brotli submodule,
we don't need to initialize other submodules to build it.

Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Reviewed-by: Gerd Hoffmann <kraxel@redhat.com>
Message-Id: <20211018105816.2663195-2-philmd@redhat.com>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
2021-10-20 16:26:19 -07:00
Helge Deller
e770b8cf76 pc-bios: Update hppa-firmware.img
Update SeaBIOS to seabios-hppa-v2

Changes in seabios-hppa:
* Include all latest upstream SeaBIOS patches
* add support for the qemu "bootindex" parameter
* add support for the qemu "-boot order=g-m" parameter to choose
  SCSI ID

Signed-off-by: Helge Deller <deller@gmx.de>
Message-Id: <YU4st/zcLcg6RKNn@ls3530>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
2021-10-12 09:27:28 -07:00
Mark Cave-Ayland
bac97d80ce Update OpenBIOS images to d657b653 built from submodule.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
2021-09-08 10:30:10 +01:00
Cédric Le Goater
1d76437b45 ppc/pnv: update skiboot to commit 820d43c0a775.
It includes support for the POWER10 processor and the QEMU platform.

Built from submodule.

Signed-off-by: Cédric Le Goater <clg@kaod.org>
Message-Id: <20210806180040.156999-1-clg@kaod.org>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
2021-08-27 12:41:13 +10:00
Alexey Kardashevskiy
d01e8dcf27 pseries: Update SLOF firmware image
This is all about TPM fixes and improvements.

The change log is:

Alexey Kardashevskiy (2):
      tcgbios: Fix warnings
      version: update to 20210711

Stefan Berger (9):
      tcgbios: Fix details in log entries
      tcgbios: Fix a typo in the sha256 algo description
      tcgbios: Add implementations for sha1, sha384, and sha512
      tpm: Add firmware API call 2HASH-EXT-LOG
      tcgbios: Change format of S_CRTM_VERSION string to ucs-2
      tcgbios: Use assembly for 32 bit rotr in sha256
      tcgbios: Use The proper sha function for each PCR bank
      tcgbios: Add test cases and test script to run them
      Travis: Add script for running tests on Travis

Thomas Huth (1):
      Fix bad header guard in version.h

Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
2021-07-13 10:04:30 +10:00
Bin Meng
a0c3747e14 roms/u-boot: Bump ppce500 u-boot to v2021.07 to add eTSEC support
Update the QEMU shipped u-boot.e500 image built from U-Boot mainline
v2021.07 release, which added eTSEC support to the QEMU ppce500 target,
via the following U-Boot series:

  http://patchwork.ozlabs.org/project/uboot/list/?series=233875&state=*

The cross-compilation toolchain used to build the U-Boot image is:
https://mirrors.edge.kernel.org/pub/tools/crosstool/files/bin/x86_64/10.1.0/x86_64-gcc-10.1.0-nolibc-powerpc-linux.tar.xz

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
2021-07-09 10:38:19 +10:00
Richard Henderson
c6446a1b6d pc-bios: Update the palcode-clipper image
Build a new palcode image with Jason Thorpe's patches
to support NetBSD.

Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
2021-06-28 07:27:32 -07:00
Bin Meng
335b638937 roms/u-boot: Bump ppce500 u-boot to v2021.04 to fix broken pci support
When QEMU originally supported the ppce500 machine back in Jan 2014,
it was created with a 1:1 mapping of PCI bus address. Things seemed
to change rapidly that in Nov 2014 with the following QEMU commits:

commit e6b4e5f479 ("PPC: e500: Move CCSR and MMIO space to upper end of address space")

and

commit cb3778a045 ("PPC: e500 pci host: Add support for ATMUs")

the PCI memory and IO physical address were moved to beyond 4 GiB,
but PCI bus address remained below 4 GiB, hence a non-identity
mapping was created. Unfortunately corresponding U-Boot updates
were missed along with the QEMU changes and the U-Boot QEMU ppce500
PCI support has been broken since then, until this issue was fixed
recently in U-Boot mainline v2021.04 release, specifically by the
following U-Boot series:

http://patchwork.ozlabs.org/project/uboot/list/?series=230985&state=*

The cross-compilation toolchain used to build the U-Boot image is:
https://mirrors.edge.kernel.org/pub/tools/crosstool/files/bin/x86_64/10.1.0/x86_64-gcc-10.1.0-nolibc-powerpc-linux.tar.xz

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
2021-05-04 11:41:25 +10:00
Bin Meng
8c8a7ed50c roms/Makefile: Update ppce500 u-boot build directory name
Currently building ppce500 u-boot image results in

  modified:   roms/u-boot (untracked content)

As roms/u-boot/.gitignore indicates, update the build directory
name to build-e500 to eliminate this message.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
2021-05-04 11:41:25 +10:00
Mark Cave-Ayland
ee2e67da8f Update OpenBIOS images to 4a004110 built from submodule.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
2021-03-16 20:03:00 +00:00
Alexey Kardashevskiy
b88e0a57e6 pseries: Update SLOF firmware image
This is mostly compiler warnings fixed but while doing this,
a bug in MIN() in tcgbios was found.

Alexey Kardashevskiy (14):
      helpers: Define MIN()
      libc: Compile with -Wextra
      elf: Compile with -Wextra
      usb: Compile with -Wextra
      veth: Compile with -Wextra
      virtio: Compile with -Wextra
      e1000: Compile with -Wextra
      libnet: Compile with -Wextra
      libhv: Compile with -Wextra
      libnvram: Compile with -Wextra
      libtpm: Compile with -Wextra
      slof/prim: Compile with -Wextra
      Makefile: Actually compile with -Wextra
      version: update to 20210217

Thomas Huth (1):
      virtio-serial: Remove superfluous serial-* words

Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
2021-03-10 09:07:08 +11:00
Bin Meng
454d1e7cf2 roms/opensbi: Upgrade from v0.8 to v0.9
Upgrade OpenSBI from v0.8 to v0.9 and the pre-built bios images.

The v0.9 release includes the following commits:

35bc810 docs/platform: Update QEMU parameter for fw_payload
78afe11 config.mk: Update QEMU run command for generic and sifive fu540 platforms
ec3e5b1 docs/platform: sifive_fu540: Update U-Boot instructions
7d61a68 README.md: fix markdown link formatting
a5f9104 lib/utils: fdt: Update FDT expand size to 1024 for reserved memory node
ec1abf6 include: sbi_bitops: Remove dead shift assignment in ffs/fls
8e47649 lib: Add sbi_strncmp implementation
2845d2d lib: utils: Add a macro in libfdt_env.h for strncmp
2cfd2fc lib: utils: Use strncmp in fdt_parse_hart_id()
937caee lib: sbi_misaligned_ldst: Determine transformed instruction length correctly
4b18a2a firmware: fw_base: Improve exception stack setup in trap handler
9d56961 lib: sbi_trap: Fix hstatus.SPVP update in sbi_trap_redirect()
d7f87d9 platform: kendryte/k210: fixup FDT
e435ba0 lib: sbi_init: Avoid thundering hurd problem with coldboot_lock
4f3bad6 lib: sbi: Handle the case where MTVAL has illegal instruction address
7b0b289 lib: sbi: Remove redundant SBI_HART_HAS_PMP feature
74d1db7 lib: sbi: Improve PMP CSR detection and progamming
2c341f7 lib: sbi: Detect and print MHPM counters at boot-time
162d453 include: sbi: Few cosmetic changes in riscv_encoding.h
ebc8ebc lib: sbi: Improve HPM CSR read/write emulation
dcb10c0 lib: sbi: Don't handle VS-mode ecall in sbi_trap_handler()
bef63d6 include: Rename ECALL defines to match latest RISC-V spec
c1c7c3e lib: sbi_trap: Allow M-mode to M-mode ECALLs
6734304 lib: sbi: Allow specifying start mode to sbi_hsm_hart_start() API
7ccf6bf lib: sbi: Allow specifying mode in sbi_hart_pmp_check_addr() API
9f935a4 lib: utils: Improve fdt_cpu_fixup() implementation
172fa16 lib: sbi: Ensure coldboot HART supports next privilege mode
aaeca7e platform: generic: Don't mark non-MMU HARTs as invalid
7701ea1 lib: sbi: Fix PMP CSR detection
79bf80b lib: sbi_scratch: typo scatch
a04c465 makefile: fix clean directive
af4b50f Makefile: Build ELF, BIN and LD script in platform build directory
6ca0969 firmware: Add common FW_FDT_PATH compile-time option
9c07c51 firmware: Remove FW_PAYLOAD_FDT_PATH compile-time option
e9a4bfb Makefile: Allow padding zeros when converting DTB to C source
a0f2d4a platform: kendryte/k210: Add some padding for FDT fixups
dbeeacb include: sbi: Remove redundant includes from sbi_platform.h
a12d46a include: sbi: Remove pmp_region callbacks from sbi_platform_operations
a126886 lib: sbi: Configure PMP late in coldboot and warmboot path
f81d6f6 lib: sbi: Remove redundant hartid parameter from sbi_hart_init()
8b65005 include: sbi: Make hartmask pointer const in sbi_hartmask_test_hart()
b1678af lib: sbi: Add initial domain support
e73b92d lib: sbi: Extend sbi_hsm_hart_started_mask() for domains
3a30d2c lib: sbi: Extend sbi_hsm_hart_start() for domains
530e95b lib: sbi: Optimize sbi_hsm_hart_started_mask() implementation
3e20037 lib: sbi: Extend sbi_system_reset() for domains
5edbb7c lib: utils: Update fdt_reserved_memory_fixup() to use current domain
5fd99db lib: utils: Update fdt_cpu_fixup() to use current domain
e856462 lib: sbi: Remove redundant sbi_hart_pmp_xyz() functions
c10c30b lib: sbi: Configure PMP based on domain memory regions
c347408 lib: sbi: Display domain details in boot prints
fdf5d5c docs: Add initial documentation for domain support
74c0ea1 lib: utils: Implement "ranges" property parsing
bf21632 lib: sbi: Detect PMP granularity and number of address bits
a809f40 lib: sbi: Improve boot time print with additional PMP information
914f81f Makefile: Add option to use toolchain default ABI and ISA string
48616b3 lib: sbi: Improve boot prints in cold boot sequence
781cafd docs: fix a typo error
54a7734 include: sbi: Add SBI SRST extension related defines
c4acc60 include: sbi: Remove opensbi specific reset type defines
da07479 platform: Remove dummy system reset functions
5c429ae lib: sbi: Improve system reset platform operations
548d03e lib: sbi: Implement System Reset (SRST) SBI extension
2677324 firmware: fw_base: Optimize trap handler for RV32 systems
8d2edc4 lib: sbi: Fix sbi_hart_switch_mode() for u-mode
3d921fa lib: sbi: Fix typo in sbi_domain_finalize()
4e37022 lib: sbi: Fix domain_count check in sbi_domain_finalize()
c709d40 lib: sbi: Auto start domain only if boot HART within limits
c1f6d89 include: sbi: Use lower bits for domain memory region permissions
62ea4f4 lib: sbi: Override domain boot HART when coldboot HART assigned to it
555e737 lib: sbi: Add error prints in sbi_domain_finalize()
9b65dca include: sbi: Add domains_init() platform operation
c0d2baa docs: Add domain device tree binding documentation
ba741ea lib: utils: Add helper routines to populate domains from FDT
4fffb53 platform: generic: Populate domains from FDT
e7da0b4 lib: utils/libfdt: Upgrade to v1.6.0 release
2179777 lib: utils: Allow FDT domain iteration functions to fail
7baccfc lib: sbi: Add function to register new domain
6fc1986 lib: utils: Remove fdt_domain_get() function
a029bd9 lib: sbi: Remove domain_get() platform callback function
7dcb1e1 lib: sbi: Fix sign-extension in sbi_misaligned_load_handler()
80bc506 lib: sbi: Replace args with trap registers in ecall handler
b7df5e4 lib: sbi: Introduce sbi_trap_exit() API
12394a2 lib: sbi: Allow custom local TLB flush function
0d49c3b lib: utils: Fix shakti uart implementation
db56341 lib: sbi: Allow platforms to provide root domain memory regions
e884416 include: sbi: No need to pack struct sbi_trap_regs
386eba2 include: sbi: No need to pack struct sbi_scratch
1bbf361 include: sbi: Don't pack struct sbi_platform and sbi_platform_operations
da5293f platform: template: Fix compile error
234ed8e include: Bump-up version to 0.9

Signed-off-by: Bin Meng <bin.meng@windriver.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Message-Id: 20210119234438.10132-1-bmeng.cn@gmail.com
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
2021-03-04 09:43:29 -05:00
Paolo Bonzini
5983021eb6 qboot: update to latest upstream
This also brings in two patches that Debian had to include,
qboot_stop_using_inttypes.patch and qboot_no_jump_tables.diff.

Reported-by: Michael Tokarev <mjt@tls.msk.ru>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Message-Id: <20201120152408.164346-1-pbonzini@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-11-20 10:48:53 -05:00
Bruce Rogers
577b808b09 roms/Makefile: Add qboot to .PHONY list
Adding qboot to the .PHONY directive will allow a
make -C roms qboot invocation to work as expected

Signed-off-by: Bruce Rogers <brogers@suse.com>
Message-id: 20201020152512.837769-1-brogers@suse.com
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2020-11-04 08:25:17 +01:00
Gerd Hoffmann
be404fa560 seabios: add microvm config, update build rules
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Reviewed-by: Sergio Lopez <slp@redhat.com>
Message-id: 20200915120909.20838-3-kraxel@redhat.com
2020-09-17 14:16:19 +02:00
Gerd Hoffmann
3bee1d1d14 microvm: name qboot binary qboot.rom
qboot isn't a bios and shouldnt be named that way.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Reviewed-by: Sergio Lopez <slp@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-id: 20200915120909.20838-2-kraxel@redhat.com
2020-09-17 14:16:19 +02:00
Havard Skinnemoen
d1cb5eda67 roms: Add virtual Boot ROM for NPCM7xx SoCs
This is a minimalistic boot ROM written specifically for use with QEMU.
It supports loading the second-stage loader from SPI flash into RAM, SMP
boot, and not much else.

Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Signed-off-by: Havard Skinnemoen <hskinnemoen@google.com>
Message-id: 20200911052101.2602693-7-hskinnemoen@google.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2020-09-14 14:24:59 +01:00
Laszlo Ersek
374680acf3 roms/Makefile.edk2: enable new ARM/AARCH64 flags up to edk2-stable202008
Edk2 commit ffe048a0807b ("ArmVirtPkg: handle NETWORK_TLS_ENABLE in
ArmVirtQemu*", 2019-06-28), part of edk2-stable201908, allows us to
include the UEFI HTTPS Boot feature in the ArmVirtQemu fw platform (ARM
and AARCH64).

Edk2 commit range 4c0f6e349d32..0980779a9ddc, part of edk2-stable202005,
added TPM2 support to ArmVirtQemu; enable it as well. (Unlike with OVMF
IA32 and X64, TPM-1.2 support is not included, hence the TPM2-specific
flag names.)

Cc: Philippe Mathieu-Daudé <philmd@redhat.com>
Ref: https://bugs.launchpad.net/qemu/+bug/1852196
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20200908072939.30178-8-lersek@redhat.com>
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
2020-09-13 23:03:15 +02:00
Laszlo Ersek
e105de7579 roms/Makefile.edk2: complete replacing TPM2*_ENABLE macros
At tag "edk2-stable202008", the TPM2_ENABLE and TPM2_CONFIG_ENABLE macros
are useless (for IA32 and X64). Their roles have been absorbed by
TPM_ENABLE and TPM_CONFIG_ENABLE, respectively. Remove the old build
flags.

Cc: Philippe Mathieu-Daudé <philmd@redhat.com>
Ref: https://bugs.launchpad.net/qemu/+bug/1852196
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20200908072939.30178-7-lersek@redhat.com>
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
2020-09-13 23:03:15 +02:00
Laszlo Ersek
0e2db2c663 roms/edk2: update submodule from edk2-stable201905 to edk2-stable202008
Update the edk2 submodule from release edk2-stable201905 to
edk2-stable202008. The release notes can be read at

  https://github.com/tianocore/edk2/releases/tag/edk2-stable201908
  https://github.com/tianocore/edk2/releases/tag/edk2-stable201911
  https://github.com/tianocore/edk2/releases/tag/edk2-stable202002
  https://github.com/tianocore/edk2/releases/tag/edk2-stable202005
  https://github.com/tianocore/edk2/releases/tag/edk2-stable202008

The update brings in a new submodule (cmocka), and replaces three bundled
libraries with submodules (one instance of Oniguruma and two instances of
Brotli):

- 0eb522987fcd ("UnitTestFrameworkPkg/Library: Add library instances",
  2020-02-07) [edk2-stable202002]

- 48b6c60cc6a2 ("MdeModulePkg/RegularExpressionDxe: Make oniguruma a
  submodule in edk2.", 2020-04-13) [edk2-stable202005]

- 58802e02c41b ("MdeModulePkg/BrotliCustomDecompressLib: Make brotli a
  submodule", 2020-04-16) [edk2-stable202005]

- 06033f5abad3 ("BaseTools: Make brotli a submodule", 2020-04-16)
  [edk2-stable202005]

Our firmware binaries include code from none of these, therefore we're not
going to modify the "licenses" list in "roms/Makefile.edk2".
(Consequently, "pc-bios/edk2-licenses.txt" will not change either).

Shortlog below (using the mailmap updates posted at
<http://mid.mail-archive.com/20200907193102.30535-1-lersek@redhat.com> aka
<https://edk2.groups.io/g/devel/message/65096>):

$ git shortlog edk2-stable201905..edk2-stable202008

> Aaron Antone (1):
>       MdeModulePkg/ConSplitterDxe: Optimize the ConSplitterTextOutSetMode
>
> Abdul Lateef Attar (1):
>       MdeModulePkg: Sets the Cursor to selected BootOption.
>
> Abner Chang (39):
>       MdeModulePkg: Update to support SmBios 3.3.0
>       MdePkg/Include: Update to support SmBios 3.3.0
>       ShellPkg/UefiShellDebug1CommandsLib: Update to support SmBios 3.3.0
>       FatPkg: Add RISC-V architecture for EDK2 CI.
>       FmpDevicePkg: Add RISC-V architecture for EDK2 CI.
>       NetworkPkg: Add RISC-V architecture for EDK2 CI.
>       NetworkPkg/HttpBootDxe: Add RISC-V architecture for EDK2 CI.
>       CryptoPkg: Add RISC-V architecture for EDK2 CI.
>       MdePkg/Include: Add RISC-V related definitions EDK2 CI.
>       SecurityPkg: Security package changes for RISC-V EDK2 CI.
>       ShellPkg: Shell package changes for RISC-V EDK2 CI.
>       UnitTestFrameworkPkg: Add RISC-V architecture for RISC-V EDK2 CI.
>       MdeModulePkg: Use LockBoxNullLib for RISC-V
>       .python/SpellCheck: Add "RISCV" to "words" section
>       BaseTools: BaseTools changes for RISC-V platform.
>       BaseTools: BaseTools changes for RISC-V platform.
>       BaseTools: BaseTools changes for RISC-V platform.
>       BaseTools: Enable RISC-V architecture for RISC-V EDK2 CI.
>       .azurepipelines: Add RISC-V architecture on RISC-V EDK2 CI.
>       .pytool: Add RISC-V architecture on RISC-V EDK2 CI.
>       MdePkg: Add RISC-V RISCV64 binding
>       MdePkg/Include: RISC-V definitions.
>       MdePkg/BaseLib: BaseLib for RISCV64 architecture
>       MdePkg/BaseCacheMaintenanceLib: RISC-V cache maintenance implementation.
>       MdePkg/BaseIoLibIntrinsic: Rename IoLibArm.c=>IoLibNoIo.c
>       MdePkg/BasePeCoff: Add RISC-V PE/Coff related code.
>       MdePkg/BaseCpuLib: RISC-V Base CPU library implementation.
>       MdePkg/BaseSynchronizationLib: RISC-V cache related code.
>       MdePkg/BaseSafeIntLib: Add RISCV64 arch for BaseSafeIntLib.
>       MdeModulePkg/Logo:Add RISCV64 architecture
>       MdeModulePkg/CapsuleRuntimeDxe: Add RISCV64 architecture
>       MdeModulePkg/DxeIplPeim : RISC-V platform level DxeIPL
>       NetworkPkg: Add RISCV64 architecture
>       BaseTools: Add external definitions for RISC-V assembly build
>       BaseTools/PeCoffLoaderEx: Remove the unused local variable
>       BaseLib:Fix RISC-V Supervisor mode (S-Mode) trap handler reentry issue.
>       CryptoPkg/Library: Remove the redundant build option
>       EmbeddedPkg/libfdt: Add strncmp macro to use AsciiStrnCmp
>       MdePkg/Include: Add missing definition of SMBIOS type 42h in SmBios.h
>
> Agrawal, Sachin (1):
>       MdeModulePkg/Ufs: Fix UFS flag read from Query Resp UPIU
>
> Albecki, Mateusz (24):
>       MdeModulePkg/UfsPassThruDxe: Refactor UFS device presence detection
>       MdeModulePkg/UfsPassThruDxe: Fix unaligned data transfer handling
>       MdeModulePkg/SdMmcOverride: Add GetOperatingParam notify phase
>       MdeModulePkg/SdMmcHcDxe: Implement revision 3 of SdMmcOverrideProtocol
>       MdeModulePkg: Add definition of the EDKII_UFS_HC_PLATFORM_PROTOCOL
>       MdeModulePkg/UfsPassThruDxe: Refactor UfsExecUicCommand function
>       MdeModulePkg/UfsPassThruDxe: Refactor private data to use UfsHcInfo
>       MdeModulePkg/UfsPassThruDxe: Implement EDKII_UFS_HC_PLATFORM_PROTOCOL
>       MdeModulePkg/SdMmcPciHcDxe: Remove clock stop from HS200 switch
>       MdeModulePkg/SdMmcPciHcDxe: Fix bus timing switch sequence
>       MdeModulePkg/SdMmcPciHcDxe: Fix SdMmcMmcLegacy bus timing handling
>       MdeModulePkg/SdMmcPciHcDxe: Hook SwitchClockFreq after SD clock start
>       MdeModulePkg/SdMmcPciHcDxe: Add function to start SD clock
>       MdeModulePkg/SdMmcPciHcDxe: Fix unknown doxygen tag error
>       MdeModulePkg/SdMmcPciHcDxe: Fix DAT lane SW reset
>       MdeModulePkg/SdMmcPciHcDxe: Refactor command error detection
>       MdeModulePkg/SdMmcPciHcDxe: Add retries for sync commands
>       MdeModulePkg/SdMmcPciHcDxe: Add retries for async commands
>       MdeModulePkg/SdMmcPciHcDxe: Send SEND_STATUS at lower frequency
>       MdeModulePkg/SdMmcPciHcDxe: Enhance driver traces
>       MdeModulePkg/SdMmcPciHcDxe: Read response on command completion
>       MdeModulePkg/SdMmcPciHcDxe: Refactor data transfer completion
>       MdeModulePkg/SdMmcPciHcDxe: Do not map memory for non DMA transfer
>       MdeModulePkg/SdMmcPciHcDxe: Fix PIO transfer mode
>
> Alex James (1):
>       MdePkg: Use __builtin_offset with CLANGPDB toolchain
>
> Alexander Graf (1):
>       ArmPlatformPkg: Actually disable PL031 interrupts
>
> Amol N Sukerkar (4):
>       CryptoPkg: Add CryptoPkg Token Space GUID
>       CryptoPkg/BaseHashApiLib: Implement Unified Hash Calculation API
>       CryptoPkg/BaseHashApiLib: Align BaseHashApiLib with TPM 2.0 Implementation
>       CryptoPkg/BaseHashApiLib: Change PcdHashApiLibPolicy type to FixedAtBuild
>
> Andrei Warkentin (1):
>       ArmPlatformPkg/PrePi: fix IS_XIP
>
> Andrew Fish (7):
>       EmulatorPkg/Unix/Host: Disable inline/optimizations for XCODE5
>       EmulatorPkg: Fix XCODE5 lldb issues
>       EmulatorPkg/Unix/Host: Initialize field in BerkeleyPacketFilter.c
>       EmulatorPkg/Unix/Host: Remove debug code from BerkeleyPacketFilter.c
>       EmulatorPkg: Disable TftpDynamicCommand and LogoDxe for XCODE5
>       EmulatorPkg/Sec: Change scope of PpiArray[10]
>       BaseTools/tools_def.template: Add -gdwarf to XCODE5 X64
>
> Anthony PERARD (46):
>       MdeModulePkg: Introduce EDKII_SERIAL_PORT_LIB_VENDOR_GUID
>       ArmVirtPkg/PlatformBootManagerLib: Use EDKII_SERIAL_PORT_LIB_VENDOR_GUID
>       ArmPkg/PlatformBootManagerLib: Use EDKII_SERIAL_PORT_LIB_VENDOR_GUID from MdeModulePkg
>       UefiPayloadPkg/PlatformBootManagerLib: Use EDKII_SERIAL_PORT_LIB_VENDOR_GUID from MdeModulePkg
>       OvmfPkg/XenBusDxe: Close XenIoProtocol openned by children
>       OvmfPkg/XenBusDxe: Don't call DisconnectController in Stop()
>       OvmfPkg/ResetSystemLib: Add missing dependency on PciLib
>       OvmfPkg: Create platform OvmfXen
>       OvmfPkg: Introduce XenResetVector
>       OvmfPkg: Introduce XenPlatformPei
>       OvmfPkg/OvmfXen: Creating an ELF header
>       OvmfPkg/XenResetVector: Add new entry point for Xen PVH
>       OvmfPkg/XenResetVector: Saving start of day pointer for PVH guests
>       OvmfPkg/XenResetVector: Allow jumpstart from either hvmloader or PVH
>       OvmfPkg/OvmfXen: use a TimerLib instance that depends only on the CPU
>       OvmfPkg/XenPlatformPei: Detect OVMF_INFO from hvmloader
>       OvmfPkg/XenPlatformPei: Use mXenHvmloaderInfo to get E820
>       OvmfPkg/XenPlatformPei: Grab RSDP from PVH guest start of day struct
>       OvmfPkg/Library/XenPlatformLib: New library
>       OvmfPkg/AcpiPlatformDxe: Use XenPlatformLib
>       OvmfPkg/AcpiPlatformDxe: Use Xen PVH RSDP if it exist
>       OvmfPkg/XenHypercallLib: Enable it in PEIM
>       OvmfPkg/XenPlatformPei: Reinit XenHypercallLib
>       OvmfPkg/XenPlatformPei: Introduce XenHvmloaderDetected
>       OvmfPkg/XenPlatformPei: Setup HyperPages earlier
>       OvmfPkg/XenPlatformPei: Introduce XenPvhDetected
>       OvmfPkg: Import XENMEM_memory_map hypercall to Xen/memory.h
>       OvmfPkg/XenPlatformPei: no hvmloader: get the E820 table via hypercall
>       OvmfPkg/XenPlatformPei: Rework memory detection
>       OvmfPkg/XenPlatformPei: Reserve VGA memory region, to boot Linux
>       OvmfPkg/XenPlatformPei: Ignore missing PCI Host Bridge on Xen PVH
>       OvmfPkg/XenPlatformLib: Cache result for XenDetected
>       OvmfPkg/PlatformBootManagerLib: Use XenDetected from XenPlatformLib
>       OvmfPkg/PlatformBootManagerLib: Handle the absence of PCI bus on Xen PVH
>       OvmfPkg/OvmfXen: Override PcdFSBClock to Xen vLAPIC timer frequency
>       OvmfPkg/OvmfXen: Introduce XenTimerDxe
>       OvmfPkg/PlatformBootManagerLib: Use a Xen console for ConOut/ConIn
>       OvmfPkg: Introduce PcdXenGrantFrames
>       OvmfPkg: Introduce XenIoPvhDxe to initialize Grant Tables
>       OvmfPkg: Move XenRealTimeClockLib from ArmVirtPkg
>       OvmfPkg/OvmfXen: use RealTimeClockRuntimeDxe from EmbeddedPkg
>       OvmfPkg/OvmfXen: Remove DEBUG_ON_SERIAL_PORT
>       OvmfPkg/PlatformDebugLibIoPort: Reword QEMU to hypervisor
>       OvmfPkg/PlatformDebugLibIoPort: factor out debug port detection
>       OvmfPkg/PlatformDebugLibIoPort: Introduce a Nocheck variant
>       OvmfPkg/OvmfXen: Introduce DEBUG_ON_HYPERVISOR_CONSOLE build flag
>
> Antoine Cœur (79):
>       ArmPkg: Fix various typos
>       ArmPlatformPkg: Fix various typos
>       EmbeddedPkg: Fix various typos
>       BaseTools: Fix various typos
>       FmpDevicePkg: Fix various typos
>       Revert "FmpDevicePkg: Fix various typos"
>       IntelFsp2Pkg: Fix various typos
>       FmpDevicePkg: Fix various typos
>       IntelFsp2WrapperPkg: Fix various typos
>       CryptoPkg/OpensslLib: Fix few typos
>       EmbeddedPkg/VirtualKeyboard: Fix few typos
>       EmulatorPkg/Sec: Fix various typos
>       EmulatorPkg/Unix: Fix various typos
>       EmulatorPkg/Win: Fix various typos
>       FatPkg/EnhancedFatDxe: Fix various typos
>       FatPkg/FatPei: Fix few typos
>       MdeModulePkg/Application: Improve French translation
>       MdeModulePkg/Application: Fix various typos
>       MdeModulePkg/Bus/Ata: Fix various typos
>       MdeModulePkg/Bus/I2c: Fix few typos
>       MdeModulePkg/Bus/Isa: Fix various typos
>       MdeModulePkg/Bus/Scsi: Fix various typos
>       MdeModulePkg/Bus/Sd: Fix various typos
>       MdeModulePkg/Core/Pei: Fix various typos
>       MdeModulePkg/Core/PiSmmCore: Fix various typos
>       MdeModulePkg/UsbMass: Fix various typos
>       MdeModulePkg/UsbMouse: Fix few typos
>       MdeModulePkg/UsbBus: Fix various typos
>       MdeModulePkg/Usb: Fix various typos
>       MdePkg/IndustryStandard: Fix various typos
>       MdePkg/Library/Dxe: Fix various typos
>       MdePkg/Library/Pci: Fix various typos
>       MdePkg/Library/Smm: Fix various typos
>       MdePkg/Ppi: Fix various typos
>       MdePkg/Register: Fix various typos
>       NetworkPkg/ArpDxe: Fix various typos
>       NetworkPkg/Dhcp4Dxe: Fix various typos
>       NetworkPkg/Dhcp6Dxe: Fix various typos
>       NetworkPkg/DnsDxe: Fix various typos
>       NetworkPkg/DpcDxe: Fix few typos
>       NetworkPkg/HttpBootDxe: Fix various typos
>       NetworkPkg/HttpDxe: Fix various typos
>       NetworkPkg/Ip4Dxe: Fix various typos
>       NetworkPkg/Ip6Dxe: Fix various typos
>       NetworkPkg/IScsiDxe: Fix various typos
>       NetworkPkg/Library: Fix various typos
>       NetworkPkg/MnpDxe: Fix various typos
>       NetworkPkg/Mtftp4Dxe: Fix various typos
>       NetworkPkg/Mtftp6Dxe: Fix various typos
>       NetworkPkg/SnpDxe: Fix few typos
>       NetworkPkg/TcpDxe/Sock: Fix few typos
>       NetworkPkg/TcpDxe/Tcp: Fix various typos
>       NetworkPkg/Tls: Fix few typos
>       NetworkPkg/Udp4Dxe: Fix various typos
>       NetworkPkg/Udp6Dxe: Fix various typos
>       NetworkPkg/UefiPxeBcDxe: Fix various typos
>       NetworkPkg/VlanConfigDxe: Fix few typos
>       OvmfPkg/Acpi: Fix few typos
>       OvmfPkg/Csm: Fix various typos
>       OvmfPkg/Qemu: Fix various typos
>       OvmfPkg/Virtio: Fix few typos
>       OvmfPkg/Xen: Fix various typos
>       PcAtChipsetPkg: Fix few typos
>       SecurityPkg: Fix few typos
>       SecurityPkg/Hash2DxeCrypto: Fix few typos
>       SecurityPkg/Library/Tpm: Fix various typos
>       SecurityPkg/Tcg: Fix various typos
>       SecurityPkg/VariableAuthenticated: Fix few typos
>       ShellPkg/Application: Fix various typos
>       ShellPkg/DynamicCommand: Fix various typos
>       SignedCapsulePkg: Fix various typos
>       SignedCapsulePkg/Universal: Fix various typos
>       SourceLevelDebugPkg/DebugAgent: Fix various typos
>       SourceLevelDebugPkg/DebugCommunicationLib: Fix various typos
>       SourceLevelDebugPkg: Fix few typos
>       StandaloneMmPkg: Fix few typos
>       UefiCpuPkg/CpuDxe: Fix few typos
>       UefiCpuPkg/PiSmm: Fix various typos
>       UefiCpuPkg/Smm: Fix various typos
>
> Ard Biesheuvel (128):
>       EmbeddedPkg/PrePiLib: remove dead status code reporting code
>       BaseTools/GenFw AARCH64: fix up GOT based relative relocations
>       ArmVirtPkg/ArmVirtPrePiUniCoreRelocatable: revert to PIE linking
>       ShellPkg/ShellPkg.dsc AARCH64: enable stack protector
>       ArmVirtPkg: increase FD/FV size for NOOPT builds
>       StandaloneMmPkg: make package .DSC file build again
>       DynamicTablesPkg: include ARM intrinsics library to fix 32-bit build
>       BaseTools/GenFw AARCH64: disregard ADRP instructions that are patched already
>       EmbeddedPkg/NonCoherentDmaLib: implement support for DMA range limits
>       EmbeddedPkg: implement EDK2 IoMmu protocol wrapping DmaLib
>       Maintainers: assume co-maintainership of StandaloneMmPkg
>       ArmPkg/MmCommunicationDxe: relay architected PI events to MM context
>       OvmfPkg: reorganize TPM2 support in DSC/FDF files
>       OvmfPkg: use HII type PCDs for TPM2 config related variables
>       MdeModulePkg: remove EnterS3WithImmediateWake () from ResetSystemLib
>       PcAtChipsetPkg: remove EnterS3WithImmediateWake () from ResetSystemLib
>       UefiPayloadPkg: remove EnterS3WithImmediateWake () from ResetSystemLib
>       OvmfPkg: remove EnterS3WithImmediateWake () from ResetSystemLib
>       ArmVirtPkg: remove EnterS3WithImmediateWake () from ResetSystemLib
>       ArmPkg/ArmSmcPsciResetSystemLib: remove EnterS3WithImmediateWake ()
>       ArmPlatformPkg/PrePeiCore: enable VFP at startup
>       OvmfPkg/Tcg2ConfigPei: introduce a signalling PPI to depex on
>       ArmVirtPkg/PlatformPeiLib: make PcdLib dependency explicit in .INF
>       ArmVirtPkg/PlatformPeiLib: discover the TPM base address from the DT
>       ArmVirtPkg: implement ArmVirtPsciResetSystemPeiLib
>       ArmVirtPkg/ArmVirtQemu: add ResetSystem PEIM for upcoming TPM2 support
>       ArmVirtPkg/ArmVirtQemu: enable TPM2 support in the PEI phase
>       ArmVirtPkg; avoid DxeTpmMeasurementLib in shared .DSC
>       ArmVirtPkg: unshare TpmMeasurementLib resolution between platforms
>       ArmVirtPkg/ArmVirtQemu: enable the DXE phase TPM2 support module
>       ArmVirtPkg/ArmVirtQemu: enable the TPM2 configuration module
>       ArmVirtPkg/ArmVirtQemu: enable TPM2 based measured boot
>       OvmfPkg: add definition of LINUX_EFI_INITRD_MEDIA_GUID
>       OvmfPkg: add 'initrd' shell command to expose Linux initrd via device path
>       ArmVirtPkg: add the 'initrd' dynamic shell command
>       OvmfPkg: add the 'initrd' dynamic shell command
>       MdeModulePkg/DxeCore: defer PE/COFF emulator registration to StartImage
>       OvmfPkg IA32: add support for loading X64 images
>       OvmfPkg/LinuxInitrdDynamicShellCommand: bail if initrd already exists
>       ArmPkg/MmCommunicationDxe: fix logic bug in DXE driver entrypoint
>       OvmfPkg/LinuxInitrdDynamicShellCommand: fix uninitialized status return
>       ArmPlatformPkg/LcdGraphicsOutputDxe: add missing protocol dependency
>       ArmPlatformPkg/PrePeiCore: replace set/way cache ops with by-VA ones
>       OvmfPkg: add GUID for the QEMU kernel loader fs media device path
>       OvmfPkg: export abstract QEMU blob filesystem in standalone driver
>       OvmfPkg: introduce QemuLoadImageLib library class
>       OvmfPkg: provide a generic implementation of QemuLoadImageLib
>       ArmVirtPkg: incorporate the new QEMU kernel loader driver and library
>       ArmVirtPkg/PlatformBootManagerLib: switch to separate QEMU loader
>       OvmfPkg/QemuKernelLoaderFsDxe: don't expose kernel command line
>       OvmfPkg/QemuKernelLoaderFsDxe: add support for the kernel setup block
>       OvmfPkg: create protocol and GUID header for loaded x86 Linux kernels
>       OvmfPkg: implement QEMU loader library for X86 with legacy fallback
>       OvmfPkg: add new QEMU kernel image loader components
>       OvmfPkg/PlatformBootManagerLib: switch to QemuLoadImageLib
>       OvmfPkg/QemuKernelLoaderFsDxe: add support for new Linux initrd device path
>       OvmfPkg: use generic QEMU image loader for secure boot enabled builds
>       ArmPlatformPkg/PrePi: replace set/way cache ops with by-VA ones
>       ArmPkg/ArmMmuLib ARM: remove dummy constructor
>       ArmPkg/ArmMmuLib ARM: split ArmMmuLibCore.c into core and update code
>       ArmPkg/ArmMmuLib ARM: use AllocateAlignedPages() for alignment
>       ArmPkg/ArmMmuLib ARM: cache-invalidate initial page table entries
>       ArmPkg/ArmMmuLib AARCH64: cache-invalidate initial page table entries
>       ArmPkg/ArmLib: move set/way helper functions into private header
>       ArmPkg/ArmLib: clean up library includes
>       ArmPkg/ArmLib: remove bogus protocol declaration
>       ArmPkg/ArmLib: ASSERT on set/way cache ops being used with MMU on
>       ArmPkg/ArmMmuLib ARM: simplify assignment of TTBR0 system register
>       ArmPkg/ArmMmuLib ARM: drop memory type check for page tables
>       OvmfPkg/OvmfXen: fix build by providing QemuLoadImageLib resolution
>       OvmfPkg/QemuKernelLoaderFsDxe: drop tentative const object definition
>       ArmPkg/ArmMmuLib AARCH64: rewrite page table code
>       ArmPkg/ArmMmuLib AARCH64: invalidate page tables before populating them
>       ArmPkg/ArmMmuLib AARCH64: drop pointless page table memory type check
>       ArmPkg/ArmMmuLib AARCH64: cosmetic fixups
>       OvmfPkg/X86QemuLoadImageLib: add dummy assignment to work around GCC
>       ArmVirtPkg/PlatformPeiLib: add dummy assignment to work around older GCC
>       ArmPkg/ArmMmuLib AARCH64: limit recursion when freeing page tables
>       ArmPkg/ArmMmuLib AARCH64: use helpers to determine table entry types
>       ArmPkg/ArmMmuLib AARCH64: preserve attributes when replacing a table entry
>       OvmfPkg/GenericQemuLoadImageLib: Fix VS2019 UINT32 conversion error
>       Maintainers: switch to my Arm email address
>       ArmPkg/CpuDxe: use private copy of GetRootTranslationTableInfo()
>       ArmPkg/CpuDxe: move PageAttributeToGcdAttribute() out of ArmMmuLib
>       ArmPkg/ArmMmuLib: drop pointless LookupAddresstoRootTable() routine
>       ArmPkg/ArmMmuLib: get rid of GetRootTranslationTableInfo()
>       ArmPkg/ArmMmuLib: drop unused TT_ATTR_INDX_INVALID CPP macro
>       OvmfPkg: remove handling of properties table
>       MdeModulePkg: disable properties table generation but retain the code
>       MdePkg: remove PropertiesTable GUID
>       MdeModulePkg/DxeCore: merge properties table routines into MAT handling
>       MdeModulePkg/DeviceManagerUiLib: connect all before creating menu page
>       EmbeddedPkg: rename gEfiMmcHostProtocolGuid to gEmbeddedMmcHostProtocolGuid
>       EmbeddedPkg: remove DwEmmcDxe host controller driver
>       EmbeddedPkg: remove Lan91x network controller driver
>       EmbeddedPkg: remove Lan9118 network controller driver
>       EmbeddedPkg: remove SiI3132 SATA controller driver
>       EmbeddedPkg: remove ISP 1716 USB host controller driver
>       ArmPlatformPkg: remove PL180 SD controller driver
>       EmbeddedPkg/EmbeddedPkg.dsc: remove some stale component references
>       MdePkg: introduce MM communicate 2 protocol
>       MdeModulePkg/SmmIpl: expose MM communicate 2 protocol
>       ArmPkg/MmCommunicationDxe: expose MM Communicate 2 protocol
>       MdeModulePkg/VariableInfo: switch to MM communicate 2 protocol
>       MdeModulePkg/FaultTolerantWriteSmmDxe: switch to MM communicate 2
>       MdeModulePkg/VariableSmmRuntimeDxe: switch to MM communicate 2
>       StandaloneMmPkg: switch to MM communicate 2 protocol
>       ArmPkg/CompilerIntrinsicsLib: provide atomics intrinsics
>       ArmPkg/PlatformBootManagerLib: use static assertion for console type
>       ArmPkg/PlatformBootManagerLib: reject 'default' parity and stop bit count
>       ArmPkg/ArmPkg.dsc: set terminal type PCD to the right value
>       ArmPkg/PlatformBootManagerLib: connect non-discoverable USB hosts
>       ArmPkg/PlatformBootManagerLib: register 's' as UEFI Shell hotkey
>       ArmPkg/PlatformBootManagerLib: fall back to the UiApp on boot failure
>       MdeModulePkg/BootManagerUiLib: show inactive boot options
>       ArmPkg/PlatformBootManagerLib: hide UEFI Shell as a regular boot option
>       ArmPkg/PlatformBootManagerLib: don't connect all devices on each boot
>       ArmVirtPkg: add FDF rule for self-relocating PrePi
>       ArmVirtPkg/PrePi: use standard PeCoff routines for self-relocation
>       ArmVirtPkg: remove unused files
>       MdePkg/BasePrintLib: avoid absolute addresses for error strings
>       StandaloneMmPkg/Core: fix bogus FV pointer in DEBUG string
>       StandaloneMmPkg/Core: add missing GUID reference
>       StandaloneMmPkg: generate position independent code for StMM core
>       StandaloneMmPkg/StandaloneMmCoreEntryPoint: relocate StMM core on the fly
>       ArmPkg/PlatformBootManagerLib: regenerate boot options on boot failure
>       EmbeddedPkg/NonCoherentDmaLib: avoid dereferencing bogus buffer address
>       ArmVirtPkg/NorFlashQemuLib: disable NOR flash DT nodes upon discovery
>
> Ashish Singhal (7):
>       MdeModulePkg/XhciDxe: Fix Aligned Page Allocation
>       MdeModulePkg/XhciPei: Fix Aligned Page Allocation
>       EmbeddedPkg/DtPlatformDxe: Add DT/ACPI Default Flexibility
>       MdeModulePkg: Add EDK2 Platform Boot Manager Protocol
>       MdeModulePkg/BaseSerialPortLib16550: Fix Serial Port Ready
>       ShellPkg/UefiShellAcpiViewCommandLib: Fix FADT Parser
>       ArmPkg/ArmLib: Fix cache-invalidate initial page tables
>
> Bret Barkelew (11):
>       CryptoPkg: Add missing instance for build only
>       SourceLevelDebugPkg: Add missing instances for build only
>       MdeModulePkg: Add missing instances for build only
>       MdeModulePkg/CapsulePei: Optimize the CapsulePei
>       MdeModulePkg/PeiMain: PeiAllocatePool: output NULL if HOB creation fails
>       SecurityPkg: Add missing instances for build only
>       MdeModulePkg: Add a pcd to set the OS indications bit
>       ShellPkg/UefiShellLib: Set input pointer parameter to null if failure
>       MdePkg/Include/Library: Add UnitTestLib class
>       UnitTestFrameworkPkg: Add info to readme about working with UnitTests
>       UnitTestFrameworkPkg/Readme.md: Update documentation for latest features
>
> Brian R Haug (1):
>       MdeModulePkg/Setup: Update opcode number variable type to UINTN
>
> Burt Silverman (1):
>       BaseTools: Robustness for multiple build environments
>
> Chasel Chiu (15):
>       IntelFsp2Pkg/SplitFspBin.py: Support rebasing 1.x binary.
>       IntelFsp2Pkg: add TempRamExitPpi.h.
>       IntelFsp2Pkg: FSP Python scripts to support 3.x.
>       IntelFsp2Pkg: PeiService pointer not reset to 0 in SecMain
>       BaseTools/Scripts: Add GetUtcDateTime script.
>       UefiCpuPkg: support single EFI_PEI_CORE_FV_LOCATION_PPI in PpiList
>       MdeModulePkg: Enable/Disable S3BootScript dynamically.
>       IntelFsp2Pkg/SplitFspBin.py: Command crashed when FV almost full.
>       IntelFsp2Pkg/GenCfgOpt.py: Coverity scan flags issues.
>       IntelFsp2Pkg/SplitFspBin.py: Coverity scan flags issues.
>       IntelFsp2Pkg: Support Multi-Phase SiInit and debug handlers.
>       IntelFsp2Pkg: Add FunctionParametePtr to FspGlobalData.
>       IntelFsp2Pkg: Add Fsp22SecCoreS.inf to Dsc.
>       IntelFsp2Pkg: Add FSP*_ARCH_UPD.
>       IntelFsp2WrapperPkg: Add FSP*_ARCH_UPD.
>
> Ching JenX Cheng (3):
>       IntelFsp2Pkg: Improve FSP Python scripts to support 3.x.
>       Add VS2019 Toolchain def
>       Add VS2019 Support on ToolSetup Batches
>
> Christopher J Zurcher (7):
>       MdePkg: Implement SCSI commands for Security Protocol In/Out
>       MdeModulePkg/UfsPassThruDxe: Check for RPMB W-LUN (SecurityLun)
>       MdeModulePkg/ScsiBusDxe: Clean up Peripheral Type check
>       MdeModulePkg/ScsiDiskDxe: Support Storage Security Command Protocol
>       CryptoPkg/OpensslLib: Add "sort" keyword to header file parsing loop
>       CryptoPkg/OpensslLib: Remove "no-autoalginit" flag from OpenSSL build
>       MdePkg/UefiScsiLib: Set FUA bit for synchronous SCSI Write operations
>
> Cole Robinson (4):
>       BaseTools: Fix python3.8 SyntaxWarning
>       BaseTools: fix ucs-2 lookup on python 3.9
>       BaseTools: Work around array.array.tostring() removal in python 3.9
>       Add a stub CONTRIBUTING.md pointing to the wiki
>
> Cole, Deric (1):
>       UefiCpuPkg/SecCore: Add pre-memory AP vector
>
> Damian Nikodem (2):
>       UefiCpuPkg/PiSmmCpuDxeSmm: don't free page table pages that are required to handle current page fault
>       UefiCpuPkg: Fix potential spinLock issue in SmmStartupThisAp
>
> Dandan Bi (12):
>       ShellPkg/Debug1CommandsLib: Fix bugs in func DisplaySysEventLogData
>       Edk2: Remove nt32 related flag in bat files
>       Edk2Setup: Support different VS tool chain setup
>       EmbeddedPkg: Unload image on EFI_SECURITY_VIOLATION
>       MdeModulePkg/DxeCapsuleLibFmp: Unload image on EFI_SECURITY_VIOLATION
>       MdeModulePkg/UefiBootManager: Unload image on EFI_SECURITY_VIOLATION
>       MdeModulePkg/PlatformDriOverride: Unload image on EFI_SECURITY_VIOLATION
>       ShellPkg: Unload image on EFI_SECURITY_VIOLATION
>       MdeModulePkg/HiiDB: Remove configuration table when it's freed (CVE-2019-14586)
>       MdeModulePkg/String.c: Zero memory before free (CVE-2019-14558)
>       MdeModulePkg/DisplayEngine: Zero memory before free (CVE-2019-14558)
>       MdeModulePkg/DisplayEngine: Add Debug message to show mismatch menu info
>
> Daniel Pawel Banaszek (1):
>       MdePkg PciExpress21: PCI_REG_PCIE_DEVICE_CONTROL2 struct has 17 bits
>
> Daniel Schaefer (2):
>       MdeModulePkg: Use CopyMem instead of GUID assignment
>       MdePkg/DxeServicesLib: Add RISC-V architecture
>
> David Woodhouse (5):
>       OvmfPkg/Csm/LegacyBiosDxe: Fix Legacy16GetTableAddress call for E820 data
>       OvmfPkg/LegacyBios: set NumberBbsEntries to the size of BbsTable
>       OvmfPkg/LegacyBbs: Add boot entries for VirtIO and NVME devices
>       OvmfPkg: Don't build in QemuVideoDxe when we have CSM
>       OvmfPkg: don't assign PCI BARs above 4GiB when CSM enabled
>
> Derek Lin (2):
>       BaseTools: Fix an incremental build issue caused by macro in #include
>       SecurityPkg: Fix TPM2 ACPI measurement.
>
> Desimone, Nathaniel L (1):
>       BaseTools/Scripts: Add sendemail.transferEncoding to SetupGit.py
>
> Donald Kuo (1):
>       UefiCpuPkg: Adding a new TSC library by using CPUID(0x15) TSC leaf
>
> Dorapika Wu (1):
>       ShellPkg: Update timezone of 3 cities
>
> Eric Dong (41):
>       MdePkg: Add new MM MP Protocol definition.
>       UefiCpuPkg/PiSmmCpuDxeSmm: Enable MM MP Protocol
>       UefiCpuPkg/RegisterCpuFeaturesLib: Avoid AP calls PeiServices table.
>       UefiCpuPkg/RegisterCpuFeaturesLib: avoid use dynamic PCD.
>       UefiCpuPkg/Include/MpInitLib.h: Add MpInitLibStartupAllCPUs API.
>       UefiCpuPkg/MpInitLib: Add MpInitLibStartupAllCPUs API.
>       UefiCpuPkg/MpInitLibUp: Add MpInitLibStartupAllCPUs API.
>       UefiCpuPkg: Add new EDKII_PEI_MP_SERVICES2_PPI
>       UefiCpuPkg/CpuMpPei: Produce EDKII_PEI_MP_SERVICES2_PPI.
>       UefiCpuPkg/RegisterCpuFeaturesLib: Start all processors simultaneously.
>       UefiCpuPkg/MpInitLib: don't shadow the microcode patch twice.
>       UefiCpuPkg/RegisterCpuFeaturesLib: Remove debug message.
>       UefiCpuPkg/PiSmmCpuDxeSmm: Remove debug message.
>       OvmfPkg/PlatformPei: Change referenced MSR name.
>       UefiCpuPkg/RegisterCpuFeaturesLib: Clean up useless ConsoleLogLock spinlock.
>       UefiCpuPkg/PiSmmCpuDxeSmm: Clean up useless ConsoleLogLock spinlock.
>       UefiCpuPkg/RegisterCpuFeaturesLib: Add "Test Then Write" Macros.
>       UefiCpuPkg/PiSmmCpuDxeSmm: Combine CR read/write action.
>       UefiCpuPkg/PiSmmCpuDxeSmm: Supports test then write new value logic.
>       UefiCpuPkg/RegisterCpuFeaturesLib: Combine CR read/write action.
>       UefiCpuPkg/RegisterCpuFeaturesLib: Supports test then write new value logic.
>       UefiCpuPkg/CpuCommonFeaturesLib: Use new macros.
>       UefiCpuPkg/SecCore: get AllSecPpiList after SecPlatformMain.
>       UefiCpuPkg/CpuDxe: clean up PAGE_TABLE_LIB_PAGING_CONTEXT usage.
>       UefiCpuPkg/PiSmmCpuDxeSmm: Avoid allocate Token every time
>       UefiCpuPkg/PiSmmCpuDxeSmm: Remove dependence between APs
>       UefiCpuPkg/PiSmmCpuDxeSmm: Fix buffer overflow issue.
>       UefiCpuPkg/PiSmmCpuDxeSmm: Pre-allocate PROCEDURE_TOKEN buffer
>       Revert "UefiCpuPkg/PiSmmCpuDxeSmm: Fix buffer overflow issue."
>       UefiCpuPkg/PiSmmCpuDxeSmm: improve the coding style
>       UefiCpuPkg/PiSmmCpuDxeSmm: Add missed comments for parameter.
>       UefiCpuPkg/PiSmmCpuDxeSmm: Remove Used parameter.
>       UefiCpuPkg/PiSmmCpuDxeSmm: Remove useless code in ResetTokens.
>       UefiCpuPkg/MpInitLib: Restore IDT context for APs.
>       UefiCpuPkg/MpInitLib: Avoid ApInitReconfig in PEI.
>       Maintainers.txt: Add reviewers for Tcg related modules.
>       Maintainers.txt: Add reviewer for security boot modules.
>       Maintainers.txt: Add reviewer for UefiCpuPkg.
>       Maintainers.txt: Add reviewer for SEC related modules.
>       Maintainers.txt: Add reviewer for Pei Core.
>       IntelFsp2Pkg/FspSecCore: Use UefiCpuLib.
>
> Eric Jin (13):
>       BaseTools/Capsule: Supports multiple payloads and drivers in capsule
>       MdeModulePkg/EsrtFmpDxe: Enhance ESRT to support multiple controllers
>       FmpDevicePkg: Add UEFI_DRIVER support
>       FmpDevicePkg: Add APIs to FmpDeviceLib
>       FmpDEvicePkg/FmpDeviceLibNull: Implement new APIs
>       FmpDevicePkg/FmpDxe: Use new FmpDeviceLib APIs
>       FmpDevicePkg/FmpDxe: Different variable for each FMP Descriptor
>       FmpDevicePkg: Add Capsule Update Policy Protocol
>       FmpDevicePkg/FmpDxe: Improve all DEBUG() messages
>       FmpDevicePkg/FmpDxe: Add PcdFmpDeviceImageTypeIdGuid
>       FmpDevicePkg/FmpDxe: Add PcdFmpDeviceStorageAccessEnable
>       FmpDevicePkg/FmpDxe: Remove use of CatSprint()
>       BaseTools/Capsule: Tool to generate Windows Firmware Update Driver
>
> Eugene Cohen (2):
>       .mailmap: update description to account for job changes
>       .mailmap: add entry for Eugene Cohen reflecting email change
>
> Felix Polyudov (1):
>       MdePkg: Add PCI Express 5.0 Header File
>
> Feng, Bob C (60):
>       BaseTools: refine CreateAsBuiltInf function
>       BaseTools: Move Build Cache related function out of CreateAsBuiltInf
>       BaseTools: Fixed the issue of the CFlag for compile PcdValueInit.c
>       BaseTools: Detect the change of env variable used in tooldef.txt
>       BaseTools: Fixed the issue when ToolDefinitionFile is not generated
>       BaseTools: Create ".cache" folder when initialize Build object
>       BaseTools: Fixed the mis-using strip() function issue.
>       BaseTools: Sort file list in Makefile
>       BaseTools:Updata the output encoding of the Popen function
>       BaseTools: Fixed a typo in Trim.py
>       BaseTools: Singleton the object to handle build conf file
>       BaseTools: Split WorkspaceAutoGen._InitWorker into multiple functions
>       BaseTools: Add functions to get platform scope build options
>       BaseTools: Decouple AutoGen Objects
>       BaseTools: Enable Multiple Process AutoGen
>       BaseTools: Add shared data for processes
>       BaseTools: Add LogAgent to support multiple process Autogen
>       BaseTools: Move BuildOption parser out of build.py
>       BaseTools: Add the support for python 2
>       BaseTools: Enable block queue log agent.
>       BaseTools: Fixed an issue that build raise exception
>       BaseTools: Fix incremental build bug
>       BaseTools: Add "-" in a re to parse line in .map file
>       BaseTools: Move buildoptions.py to Common folder
>       BaseTools: Fixed issue of incorrect Module Unique Name
>       BaseTools: Fix incremental build genmake issue
>       BaseTools: Incorrect error message for library instance not found
>       BaseTools: fix an incremental build issue.
>       BaseTools: Fixed regression issue for building !x86 builds
>       BaseTools: Fix a bug for Hii Pcd override
>       BaseTools: Fixed build clean regression issue
>       BaseTools: Fixed issue for IgnoreAutoGen
>       BaseTools: Sort Pcd settings to make PcdTokenNumber be fixed
>       BaseTools: Fixed the bug of multi-thread genffs for override inf
>       BaseTools: Fixed the build fail on Linux with --genfds-multi-thread
>       BaseTools: Enable --genfds-multi-thread to default build
>       BaseTools: Fixed a bug of IgnoreAutoGen
>       BaseTools: Improve GetDependencyList function
>       BaseTools: remove unnecessary calls of os.exist
>       BaseTools:Remove the unnecessary operation of renaming a file.
>       BaseTools: init DependencyHeaderFileSet for each MakeFile class
>       BaseTools: Fix the lib order in static_library_files.lst
>       BaseTools: Fix a bug of genffs command generation
>       BaseTools: Enable MACRO for DSC Components section tag
>       BaseTools: Add build option for dependency file generation
>       BaseTools: Generate dependent files for ASL and ASM files
>       BaseTools: Update build_rule.txt to generate dependent files.
>       BaseTools: Enhance Basetool for incremental build
>       BaseTools: Fix build failure when multiple build targets given
>       BaseTools: Resolve a issue of Incremental build
>       BaseTools: Fixed a incremental build bug
>       BaseTools: Fixed a Incremental build issue
>       BaseTools: Remove invalid leading space before !INCLUDE in Makefile
>       OvmfPkg/LinuxInitrdDynamicShellCommand: Cast UNIT64 to UNITN in assignment
>       BaseTools: Warn user the file not found issue instead of break build.
>       BaseTools: Remove the file timestamp checking during parsing
>       Revert "BaseTools: Add gcc flag to warn on void* pointer arithmetic"
>       BaseTools: Improve the method of checking queue empty
>       BaseTools: Move CreateAsBuiltInf into AutoGenWorker for parallel
>       BaseTools/Ecc: Fix an issue of path separator compatibility
>
> Feng, YunhuaX (2):
>       BaseTools: Fix parse PCD GUID expression issue
>       BaseTools: Fix binary file not generate map file issue
>
> Gary Lin (14):
>       OvmfPkg/README: Update the network build flags
>       OvmfPkg: use DxeTpmMeasurementLib if and only if TPM2_ENABLE
>       OvmfPkg/OvmfPkg.dec: Adjust PcdMptScsiStallPerPollUsec token value
>       OvmfPkg/LsiScsiDxe: Create the empty driver
>       OvmfPkg/LsiScsiDxe: Install the skeleton of driver binding
>       OvmfPkg/LsiScsiDxe: Report the name of the driver
>       OvmfPkg/LsiScsiDxe: Probe PCI devices and look for LsiScsi
>       OvmfPkg/LsiScsiDxe: Install stubbed EXT_SCSI_PASS_THRU
>       OvmfPkg/LsiScsiDxe: Report Targets and LUNs
>       OvmfPkg/LsiScsiDxe: Open PciIo protocol and initialize the device
>       OvmfPkg/LsiScsiDxe: Map DMA buffer
>       OvmfPkg/LsiScsiDxe: Examine the incoming SCSI Request Packet
>       OvmfPkg/LsiScsiDxe: Process the SCSI Request Packet
>       Maintainers.txt: Add Gary Lin as the reviewer for LsiScsi driver
>
> Gary West (1):
>       CryptoPkg/BaseCryptLib: Wrap OpenSSL HKDF algorithm
>
> Gaurav Jain (3):
>       MdeModulePkg/Pci: Fixed Asserts in SCT PCIIO Protocol Test.
>       EmbeddedPkg/RealTimeClockRuntimeDxe: Drop ASSERTs on function arguments
>       EmbeddedPkg/MmcDxe: Added MaxBlock Transfer Limit 65535 in R/W.
>
> GregX Yeh (1):
>       MdeModulePkg/Setup: Check ConfigAccess protocol in case it's destroyed
>
> Gris87 (1):
>       MdeModulePkg: Add missing sourceX for Blt
>
> Guo Dong (4):
>       UefiPayloadPkg: Remove legacy PIC 8259 driver
>       UefiPayloadPkg/BootManager: Add PS2 keyboard support
>       UefiPayloadPkg:Fix NOOPT build failure
>       UefiPayloadPkg: Fix TerminalDxe build time configurable
>
> Guomin Jiang (31):
>       FmpDevicePkg/FmpDxe: Issues reported by ECC in EDK2.
>       MdeModulePkg: Issues reported by ECC in EDK2.
>       SecurityPkg: Issues reported by ECC in EDK2.
>       MdeModulePkg/SdDxe: Check the Token to avoid null pointer
>       MdePkg/UnitTestBaseLib: Add check for pointer BinData
>       UnitTestFrameworkPkg/UnitTestLib: Check Suite pointer before use.
>       UnitTestFrameworkPkg/ResultReportLib: Remove invalid index string indicator
>       UefiCpuPkg/MpInitLib: Add out attribute for parameter.
>       MdeModulePkg: Remove gEfiFormBrowserExProtocolGuid Protocol Guid
>       CryptoPkg/BaseCryptLibOnProtocolPpi: Add missing comments
>       CryptoPkg/BaseHashApiLib: Rename BaseHashApiLib by HashApiLib
>       MdeModulePkg/SmiHandlerProfileInfo: Overflowed Array Index
>       EmulatorPkg/WinHost: Add link flags for VS2019 tool chains.
>       EmulatorPkg: Add MagicPageLib header file declaration.
>       SecurityPkg/TPM: measure UEFI images without associated device paths again
>       SecurityPkg/DxeImageAuth: Mark the File parameter as OPTIONAL
>       SecurityPkg/DxeImageVerificationLib: Mark the File parameter as OPTIONAL
>       MdeModulePkg/SecurityManagementLib: Mark the File parameter as OPTIONAL
>       MdeModulePkg/SecurityStubDxe: Mark the File parameter as OPTIONAL
>       MdePkg/Security2: Mark the File parameter as OPTIONAL.
>       UnitTestFrameworkPkg/PersistenceLib: Correct the allocated size.
>       CryptoPkg/Pkcs7: Extend support for other OID types
>       BaseTools/Scripts: Ignore the CRLF check when upgrade submodule.
>       CryptoPkg/OpensslLib: Upgrade OpenSSL to 1.1.1g
>       MdeModulePkg: Add new PCD to control the evacuate temporary memory feature (CVE-2019-11098)
>       MdeModulePkg/Core: Create Migrated FV Info Hob for calculating hash (CVE-2019-11098)
>       SecurityPkg/Tcg2Pei: Use Migrated FV Info Hob for calculating hash (CVE-2019-11098)
>       UefiCpuPkg/CpuMpPei: Enable paging and set NP flag to avoid TOCTOU (CVE-2019-11098)
>       UefiCpuPkg: Correct some typos.
>       SecurityPkg/TcgPei: Use Migrated FV Info Hob for calculating hash (CVE-2019-11098)
>       Maintainers.txt: Add "Guomin Jiang" as reviewer for Crypto and Capsule
>
> Hao A Wu (36):
>       OvmfPkg: Drop build flag USE_LEGACY_ISA_STACK and legacy ISA stack
>       Maintainers.txt: Add maintainer for CSM components in OvmfPkg
>       OvmfPkg: Copy the required CSM components from framework packages
>       OvmfPkg/OvmfPkg.dec: Add definitions for CSM-related Guid & Protocol
>       OvmfPkg/OvmfPkg.dec: Add the new include folder for CSM header files
>       OvmfPkg/OvmfPkg.dec: Add PCD definitions used by copied CSM modules
>       OvmfPkg/Csm/VideoDxe: Update to make it build for OVMF
>       OvmfPkg/Csm/LegacyBiosDxe: Update to make it build for OVMF
>       OvmfPkg/Csm/LegacyBootMaintUiLib: Update to make it build for OVMF
>       OvmfPkg/Csm/LegacyBootManagerLib: Update to make it build for OVMF
>       OvmfPkg: Update DSC/FDF files to consume CSM components in OvmfPkg
>       OvmfPkg/PlatformPei: Remove redundant reference of framework pkg DEC
>       OvmfPkg/IncompatiblePciDeviceSupportDxe: Drop framework pkg dependency
>       OvmfPkg/Csm/CsmSupportLib: Drop IntelFrameworkPkg dependency
>       OvmfPkg: Refer to Shell app via its declared GUID
>       PcAtChipsetPkg: Remove framework modules
>       EmulatorPkg/MiscSubClassPlatformDxe: Remove this unused module
>       Remove IntelFrameworkModulePkg
>       Remove IntelFrameworkPkg
>       Maintainers.txt: Remove information for IntelFramework[Module]Pkg
>       Maintainers.txt: Drop deprecated SourceForge SVN link
>       Maintainers.txt: Fine-grained review ownership for MdeModulePkg
>       UefiCpuPkg/MpInitLib: Collect processors' CPUID & Platform ID info
>       UefiCpuPkg/MpInitLib: Reduce the size when loading microcode patches
>       UefiCpuPkg: Add definitions for EDKII microcode patch HOB
>       UefiCpuPkg/MpInitLib: Produce EDKII microcode patch HOB
>       UefiCpuPkg/MpInitLib: Relocate microcode patch fields in CPU_MP_DATA
>       UefiCpuPkg/MpInitLib: Remove redundant microcode fields in CPU_MP_DATA
>       UefiCpuPkg/MpInitLib: Fix possible uninitialized 'InitFlag' field
>       UefiCpuPkg/MpInitLib: Always get CPUID & PlatformID in MicrocodeDetect()
>       MdeModulePkg/PiDxeS3BootScriptLib: Fix potential numeric truncation (CVE-2019-14563)
>       Revert UefiCpuPkg/MpInitLib: Relocate microcode patch fields in CPU_MP_DATA
>       UefiCpuPkg/MpInitLib: Not pass microcode info between archs in CPU_MP_DATA
>       MdeModulePkg/SdMmcPciHcDxe: Fix double PciIo Unmap in TRB creation (CVE-2019-14587)
>       UefiCpuPkg/MpInitLib DXE: Add PCD to control AP status check interval
>       UefiCpuPkg/MpInitLib: Add missing explicit PcdLib dependency
>
> Heinrich Schuchardt (3):
>       ShellPkg/CommandLib: avoid NULL derefence and memory leak
>       ShellPkg/edit: typo "%d Lines Wrote"
>       MdeModulePkg: Make retval in UninstallMultipleProtocol follow Spec
>
> Heng Luo (1):
>       MdeModulePkg: Perform test only if not ignore memory test
>
> Heyi Guo (1):
>       ArmPkg/ArmExceptionLib: use static buffer for sp_el0
>
> Huang, Qing (1):
>       MdePkg-UefiSpec.h: Add UEFI 2.8 new memory attributes
>
> Igor Druzhinin (1):
>       OvmfPkg: End timer interrupt later to avoid stack overflow under load
>
> Imran Desai (9):
>       MdePkg/Protocol/Hash: introduce GUID for SM3
>       SecurityPkg: introduce the SM3 digest algorithm
>       SecurityPkg/HashLibBaseCryptoRouter: recognize the SM3 digest algorithm
>       SecurityPkg: set SM3 bit in TPM 2.0 hash mask by default
>       OvmfPkg: link SM3 support into Tcg2Pei and Tcg2Dxe
>       SecurityPkg: introduce the SM3 digest algorithm
>       SecurityPkg/HashLibBaseCryptoRouter: recognize the SM3 digest algorithm
>       SecurityPkg: set SM3 bit in TPM 2.0 hash mask by default
>       OvmfPkg: link SM3 support into Tcg2Pei and Tcg2Dxe
>
> Irene Park (2):
>       BaseTools/build.py: Exit with 1 when AutoGen error occurred
>       ArmPlatformPkg/PL011UartLib: Check PID2 if FiFoDepth is zero
>
> Jaben Carsey (1):
>       Maintainers.txt update for ShellPkg
>
> Jason Voelz (2):
>       MdePkg BaseLib.h: Update IA32_CR4 strut to include all public fields
>       UefiCpuPkg/CpuCommonFeaturesLib: SMXE bit of CR4 should set
>
> Javeed, Ashraf (5):
>       PciBusDxe: duplicate node insertion for every PPB device in the system
>       MdePkg/PciExpress21.h: Fix the PCI industry standard register defines
>       MdePkg/PciExpress40.h: DVSEC definition missing
>       MdePkg/Include/IndustryStandard: CXL 1.1 Registers
>       MdePkg/Include/IndustryStandard: Main CXL header
>
> Jayanth Raghuram (1):
>       MdePkg/DxeHstiLib: Added checks to improve error handling.
>
> Jeff Brasen (2):
>       ArmPlatformPkg/Ds5: Increase path length to 400
>       MdeModulePkg/DxeCorePerformanceLib: Switch to UnicodeStrnToAsciiStrS
>
> Jessica Clarke (1):
>       MdePkg Base.h: Delete prototype for __builtin_return_address
>
> Jian J Wang (25):
>       SecurityPkg: add definitions for OBB verification
>       SecurityPkg/FvReportPei: implement a common FV verifier and reporter
>       SecurityPkg: add FvReportPei.inf in dsc for build validation
>       Readme.md: add submodule policy and clone commands
>       CryptoPkg/OpensslLib: remove clone commands
>       SecurityPkg/SecurityPkg.uni: Add missing strings for new PCDs
>       Maintainers.txt: Unify one maintainer name
>       MdeModulePkg/DxeIplPeim: reserve page 0 for NULL pointer detection
>       MdeModulePkg/Core/Dxe: free page 0 after disabling NULL pointer detection
>       MdePkg: add null version of RngLib
>       CryptoPkg/BaseCryptLib: replace HmacXxxInit API with HmacXxxSetKey
>       CryptoPkg/BaseCryptLib: remove HmacXxxGetContextSize interface
>       SecurityPkg/DxeImageVerificationLib: Fix memory leaks (CVE-2019-14575)
>       SecurityPkg/DxeImageVerificationLib: reject CertStack.CertNumber==0 per DBX (CVE-2019-14575)
>       SecurityPkg/DxeImageVerificationLib: fix wrong fetch dbx in IsAllowedByDb (CVE-2019-14575)
>       SecurityPkg/DxeImageVerificationLib: avoid bypass in fetching dbx (CVE-2019-14575)
>       SecurityPkg/DxeImageVerificationLib: refactor db/dbx fetching code (CVE-2019-14575)
>       SecurityPkg/DxeImageVerificationLib: Differentiate error/search result (1) (CVE-2019-14575)
>       SecurityPkg/DxeImageVerificationLib: tighten default result (CVE-2019-14575)
>       SecurityPkg/DxeImageVerificationLib: Differentiate error/search result (2) (CVE-2019-14575)
>       SecurityPkg/DxeImageVerificationLib: change IsCertHashFoundInDatabase name (CVE-2019-14575)
>       SecurityPkg: add RpmcLib and VariableKeyLib public headers
>       SecurityPkg: add null version of RpmcLib
>       SecurityPkg: add null version of VariableKeyLib
>       Maintainers.txt: Remove invalid email address and a few other role changes
>
> Jiaxin Wu (6):
>       MdePkg/Include/Protocol/Tls.h: Add the data type of EfiTlsVerifyHost (CVE-2019-14553)
>       CryptoPkg/TlsLib: Add the new API "TlsSetVerifyHost" (CVE-2019-14553)
>       NetworkPkg/TlsDxe: Add the support of host validation to TlsDxe driver (CVE-2019-14553)
>       NetworkPkg/HttpDxe: Set the HostName for the verification (CVE-2019-14553)
>       Maintainers.txt: Change NetworkPkg maintainer role.
>       NetworkPkg/Ip4Dxe: Check the received package length (CVE-2019-14559).
>
> Jiewen Yao (29):
>       BaseTools: Add HOST_APPLICATION module type.
>       MdePkg/Include: correct Lasa in Tpm2Acpi.
>       SecurityPkg/dsc: Add PCD for Laml, Lasa for TPM2.
>       SecurityPkg/Tcg2: Add Support Laml, Lasa for TPM2 ACPI.
>       MdePkg/Include: Add DMTF SPDM definition.
>       MdeModulePkg/Include: Add DeviceSecurity.h
>       MdeModulePkg/dec: Add EdkiiDeviceSecurityProtocolGuid.
>       MdeModulePkg/Pci: Add DeviceSecurity support.
>       SecurityPkg/Tcg2Smm: Measure the table before patch.
>       MdePkg/Spdm: fix Nonce structure error.
>       MdePkg/Tcg: Add new definition in TCG PFP spec.
>       SecurityPkg/Guid: Add TCG 800-155 event GUID definition.
>       SecurityPkg/Tcg2Dxe: Add Tcg2Dxe to support 800-155 event.
>       MdeModulePkg/Smbios: Done measure Smbios multiple times.
>       MdeModulePkg/dec: add PcdTcgPfpMeasurementRevision PCD
>       MdeModulePkg/Smbios: Add TCG PFP rev 105 support.
>       SecurityPkg/Tcg2Pei: Add TCG PFP 105 support.
>       SecurityPkg/Tcg2Dxe: Add PcdTcgPfpMeasurementRevision in SpecId event.
>       SecurityPkg/Tcg2Pei: Add missing PCRIndex in FvBlob event.
>       SecurityPkg/TcgPpi: Add TcgPpi header file.
>       SecurityPkg/dec: Add TcgPpi.
>       SecurityPkg/Tcg: Add TcgPpi
>       SecurityPkg/Tcg2: Add TcgPpi
>       SecurityPkg/PeiTpmMeasurementLib: Add PEI instance.
>       SecurityPkg/dsc: Add PeiTpmMeasurementLib.
>       IntelFsp2WrapperPkg/FspMeasurementLib: Add header file.
>       IntelFsp2WrapperPkg/FspMeasurementLib: Add BaseFspMeasurementLib.
>       IntelFsp2WraperPkg/Fsp{m|s}WrapperPeim: Add FspBin measurement.
>       IntelFsp2Wrapper/dsc: Add FspTpmMeasurementLib and PcdFspMeasurementConfig.
>
> John E Lofgren (1):
>       UefiCpuPkg/CpuExceptionHandlerLib: Fix split lock
>
> Jonathan Watt (1):
>       ShellPkg/UefiShellBcfgCommandLib: Fix '-opt' option
>
> Jordan Justen (2):
>       EmulatorPkg/build.sh: Fix missing usage of -b BUILDTARGET parameter
>       EmulatorPkg/Unix: Convert timezone from seconds to minutes
>
> Julien Grall (1):
>       Maintainers.txt: Update my e-mail address
>
> Keysound Chang (1):
>       NetworkPkg/TlsAuthConfigDxe: Use HiiPopUp() instead of CreatePopUp()
>
> Kirkendall, Garrett (4):
>       PcAtChipsetPkg: PcAtChipsetPkg.dsc add UefiCpuLib LibraryClass
>       SourceLevelDebugPkg: SourceLevelDebugPkg.dsc add UefiCpuLib LibraryClass
>       UefiCpuPkg: Move StandardSignatureIsAuthenticAMD to BaseUefiCpuLib
>       UefiCpuPkg: PiSmmCpuDxeSmm skip MSR_IA32_MISC_ENABLE manipulation on AMD
>
> KrishnadasX Veliyathuparambil Prakashan (1):
>       MdeModulePkg: Upon BootOption failure, Destroy RamDisk memory before RSC.
>
> Krzysztof Koch (56):
>       DynamicTablesPkg: Add frame number validation to GTDT generator
>       DynamicTablesPkg: Add code for finding duplicate values in arrays
>       DynamicTablesPkg: Test for duplicate UIDs in MADT generator
>       DynamicTablesPkg: Test for duplicate GT Block frame numbers
>       DynamicTablesPkg: Add ACPI 6.3 SPE support to MADT generator
>       DynamicTablesPkg: Add dynamic PPTT table generation support
>       ShellPkg: acpiview: ACPI 6.3 update for MADT parser
>       MdePkg: Add Generic Initiator Affinity Structure definitions to SRAT
>       ShellPkg: acpiview: Improve PPTT table field validation
>       ShellPkg: acpiview: Remove '/?' from valid command line flags
>       ShellPkg: acpiview: Fix '\n\n' printing in Table Checksum reporting
>       ShellPkg: acpiview: Make DBG2 output consistent with other tables
>       ShellPkg: acpiview: Allow disabling consistency checks (-q flag)
>       ShellPkg: acpiview: Remove redundant IORT node types enum
>       ShellPkg: acpiview: Remove '-v' flag from allowed command line args
>       ShellPkg: acpiview: Remove duplicate indentation in IORT parser
>       ShellPkg: acpiview: Make '-h' option not require a parameter
>       ShellPkg: acpiview: RSDP: Remove redundant forward declarations
>       ShellPkg: acpiview: FADT: Remove redundant forward declarations
>       ShellPkg: acpiview: SPCR: Remove redundant forward declaration
>       ShellPkg: acpiview: SRAT: Remove redundant forward declarations
>       ShellPkg: acpiview: MADT: Remove redundant forward declarations
>       ShellPkg: acpiview: IORT: Remove redundant forward declarations
>       ShellPkg: acpiview: GTDT: Remove redundant forward declarations
>       ShellPkg: acpiview: DBG2: Remove redundant forward declarations
>       ShellPkg: acpiview: Allow passing buffer length to DumpGasStruct()
>       ShellPkg: acpiview: XSDT: Remove redundant ParseAcpi() call
>       ShellPkg: acpiview: RSDP: Make code consistent with other parsers
>       ShellPkg: acpiview: SRAT: Minor code style enhancements
>       ShellPkg: acpiview: MADT: Split structure length validation
>       ShellPkg: acpiview: IORT: Refactor PMCG node mapping count validation
>       ShellPkg: acpiview: DBG2: Prevent buffer overruns
>       ShellPkg: acpiview: GTDT: Prevent buffer overruns
>       ShellPkg: acpiview: IORT: Prevent buffer overruns
>       ShellPkg: acpiview: MADT: Prevent buffer overruns
>       ShellPkg: acpiview: PPTT: Prevent buffer overruns
>       ShellPkg: acpiview: SRAT: Prevent buffer overruns
>       ShellPkg: acpiview: Update SRAT parser to ACPI 6.3
>       ShellPkg: acpiview: Set ItemPtr to NULL for unprocessed table fields
>       ShellPkg: acpiview: RSDP: Validate global pointer before use
>       ShellPkg: acpiview: FADT: Validate global pointer before use
>       ShellPkg: acpiview: SLIT: Validate global pointer before use
>       ShellPkg: acpiview: SLIT: Validate System Locality count
>       ShellPkg: acpiview: SRAT: Validate global pointers before use
>       ShellPkg: acpiview: MADT: Validate global pointers before use
>       ShellPkg: acpiview: PPTT: Validate global pointers before use
>       ShellPkg: acpiview: IORT: Validate global pointers before use
>       ShellPkg: acpiview: GTDT: Validate global pointers before use
>       ShellPkg: acpiview: DBG2: Validate global pointers before use
>       MdePkg: Add PCCT table signature definition
>       ShellPkg: acpiview: Remove duplicate ACPI structure size definitions
>       ShellPkg: acpiview: Validate ACPI table 'Length' field
>       ShellPkg: acpiview: Prevent infinite loop if structure length is 0
>       ShellPkg: acpiview: Add -r parameter for table requirements validation
>       ShellPkg: acpiview: Add library for SBBR ACPI requirements validation
>       ShellPkg: acpiview: Check if SBBR mandatory ACPI tables are installed
>
> Kun Qin (2):
>       UnitTestFrameworkPkg/UnitTestLib: Correct dereferred pointer
>       FmpDevicePkg/FmpDxe: Fix uninitialized pointer dereference
>
> Laszlo Ersek (164):
>       MdeModulePkg/PciBusDxe: catch unimplemented extended config space reads
>       ArmVirtPkg: handle NETWORK_TLS_ENABLE in ArmVirtQemu*
>       Revert "OvmfPkg: link SM3 support into Tcg2Pei and Tcg2Dxe"
>       Revert "SecurityPkg: set SM3 bit in TPM 2.0 hash mask by default"
>       Revert "SecurityPkg/HashLibBaseCryptoRouter: recognize the SM3 digest algorithm"
>       Revert "SecurityPkg: introduce the SM3 digest algorithm"
>       Revert "MdePkg/Protocol/Hash: introduce GUID for SM3"
>       MdePkg/BaseLib: re-specify Base64Decode(), and add temporary stub impl
>       MdePkg/BaseLib: rewrite Base64Decode()
>       MdePkg/BaseLib: Base64Decode(): don't declare variables in nested blocks
>       Maintainers.txt: split out section "ArmVirtPkg: modules used on Xen"
>       Maintainers.txt: split out section "OvmfPkg: Xen-related modules"
>       Maintainers.txt: split out section "OvmfPkg: TCG- and TPM2-related modules"
>       Maintainers.txt: split out section "OvmfPkg: CSM modules"
>       ArmPkg: list module-internal header files in INF [Sources]
>       ArmPlatformPkg: list module-internal header files in INF [Sources]
>       CryptoPkg/BaseCryptLib: list module-internal header files in INF [Sources]
>       EmbeddedPkg: list module-internal header files in INF [Sources]
>       Revert "UefiCpuPkg/PiSmmCpu: Allow SMM access-out when static paging is OFF"
>       ArmVirtPkg/PlatformBootManagerLib: unload image on EFI_SECURITY_VIOLATION
>       OvmfPkg/EnrollDefaultKeys: clean up Base64Decode() retval handling
>       EmbeddedPkg: add missing EFIAPI calling convention specifiers
>       EmbeddedPkg/AndroidFastbootTransportTcpDxe: fix DestroyChild() call
>       EmbeddedPkg/Universal/MmcDxe: "fix" CloseProtocol() call in BindingStop()
>       EmulatorPkg/DxeTimerLib: drop superfluous cast
>       EmulatorPkg: stop abusing EFI_HANDLE for keystroke notify registration
>       MdeModulePkg: fix cast in GetModuleInfoFromHandle() calls
>       MdeModulePkg/UefiHiiLib: stop using EFI_HANDLE in place of EFI_HII_HANDLE
>       MdeModulePkg: stop abusing EFI_EVENT for protocol notify registration
>       MdeModulePkg/PlatformVarCleanupLib: fix HiiConstructConfigHdr() call
>       MdeModulePkg: document workaround for EFI_RUNTIME_EVENT_ENTRY PI spec bug
>       MdeModulePkg: stop abusing EFI_HANDLE for keystroke notify registration
>       MdeModulePkg: PEI Core: clean up "AprioriFile" handling in FindFileEx()
>       MdeModulePkg: fix UninstallMultipleProtocolInterfaces() calls
>       MdeModulePkg/PiSmmCore: make type punning consistent
>       MdeModulePkg/S3SaveState: cast Position for S3BootScriptLib explicitly
>       MdePkg/DxeServicesLib: remove bogus cast
>       NetworkPkg/DxeNetLib: fix type typo in NetLibGetMacAddress()
>       NetworkPkg: fix CloseProtocol & UninstallMultipleProtocolInterfaces calls
>       NetworkPkg/Ip4Dxe: fix NetLibDestroyServiceChild() call
>       NetworkPkg/TcpDxe: fix SockFreeFoo() parameter list
>       OvmfPkg/XenBusDxe: fix UninstallMultipleProtocolInterfaces() call
>       OvmfPkg/VirtioNetDxe: fix SignalEvent() call
>       OvmfPkg/PlatformDxe: fix EFI_HII_HANDLE parameters of internal functions
>       SecurityPkg: fix UninstallMultipleProtocolInterfaces() calls
>       SecurityPkg: stop abusing EFI_EVENT for protocol notify registration
>       ShellPkg/UefiShellDriver1CommandsLib: fix parameter list typo
>       ShellPkg: stop using EFI_HANDLE in place of EFI_HII_HANDLE
>       ShellPkg: stop taking EFI_HANDLE in place of SHELL_FILE_HANDLE
>       ShellPkg/UefiShellDebug1CommandsLib: fix ShellCloseFile() call
>       ShellPkg/UefiShellLib: clarify workaround for unfixable EdkShell bug
>       StandaloneMmPkg/Core: stop abusing EFI_HANDLE for FwVolHeader tracking
>       UefiPayloadPkg/BlSupportPei: fix MMCONFIG assignment from XSDT
>       UefiPayloadPkg/BlSupportDxe: fix ReserveResourceInGcd() calls
>       UefiCpuPkg/MpInitLib: expand comment on initial AP enumeration
>       UefiCpuPkg/MpInitLib: honor the platform's boot CPU count in AP detection
>       MdeModulePkg/BdsDxe: Fix calling PlatformBootManagerWaitCallback on 0
>       CryptoPkg/Crt: turn strchr() into a function (CVE-2019-14553)
>       CryptoPkg/Crt: satisfy "inet_pton.c" dependencies (CVE-2019-14553)
>       CryptoPkg/Crt: import "inet_pton.c" (CVE-2019-14553)
>       CryptoPkg/TlsLib: TlsSetVerifyHost: parse IP address literals as such (CVE-2019-14553)
>       MdeModulePkg/VariableSmmRuntimeDxe.inf: list local header "Variable.h"
>       CryptoPkg/OpensslLib: improve INF file consistency
>       CryptoPkg/OpensslLib.inf: list OpenSSL local header "ms/uplink.h"
>       MdeModulePkg/UefiBootManagerLib: log reserved mem allocation failure
>       NetworkPkg/HttpDxe: fix 32-bit truncation in HTTPS download
>       UefiCpuPkg/PiSmmCpuDxeSmm: fix 2M->4K page splitting regression for PDEs
>       OvmfPkg/OvmfXen.dsc: remove PcdCpu* dynamic defaults
>       OvmfPkg/IndustryStandard: define macros for QEMU's CPU hotplug registers
>       OvmfPkg/PlatformPei: rewrite MaxCpuCountInitialization() for CPU hotplug
>       SecurityPkg/DxeImageVerificationHandler: simplify "VerifyStatus"
>       SecurityPkg/DxeImageVerificationHandler: remove "else" after return/break
>       SecurityPkg/DxeImageVerificationHandler: keep PE/COFF info status internal
>       SecurityPkg/DxeImageVerificationHandler: narrow down PE/COFF hash status
>       SecurityPkg/DxeImageVerificationHandler: fix retval on memalloc failure
>       SecurityPkg/DxeImageVerificationHandler: remove superfluous Status setting
>       SecurityPkg/DxeImageVerificationHandler: unnest AddImageExeInfo() call
>       SecurityPkg/DxeImageVerificationHandler: eliminate "Status" variable
>       SecurityPkg/DxeImageVerificationHandler: fix retval for (FileBuffer==NULL)
>       SecurityPkg/DxeImageVerificationHandler: fix imgexec info on memalloc fail
>       SecurityPkg/DxeImageVerificationHandler: fix "defer" vs. "deny" policies
>       BaseTools/Conf/gitattributes: fix "--function-context" for C source code
>       OvmfPkg: introduce PcdQ35SmramAtDefaultSmbase
>       OvmfPkg/IndustryStandard: increase vertical whitespace in Q35 macro defs
>       OvmfPkg/IndustryStandard: add MCH_DEFAULT_SMBASE* register macros
>       OvmfPkg/PlatformPei: factor out Q35BoardVerification()
>       OvmfPkg/PlatformPei: detect SMRAM at default SMBASE (skeleton)
>       OvmfPkg/PlatformPei: assert there's no permanent PEI RAM at default SMBASE
>       OvmfPkg/PlatformPei: reserve the SMRAM at the default SMBASE, if it exists
>       OvmfPkg/SEV: don't manage the lifecycle of the SMRAM at the default SMBASE
>       OvmfPkg/SmmAccess: close and lock SMRAM at default SMBASE
>       OvmfPkg: introduce PcdCsmEnable feature flag
>       OvmfPkg/PlatformPei: detect SMRAM at default SMBASE (for real)
>       SecurityPkg/DxeImageVerificationLib: plug Data leak in IsForbiddenByDbx() (CVE-2019-14575)
>       OvmfPkg/QemuVideoDxe: unbreak "secondary-vga" and "bochs-display" support
>       MdeModulePkg/PiSmmCore: log SMM image start failure
>       UefiCpuPkg/PiSmmCpuDxeSmm: fix S3 Resume for CPU hotplug
>       OvmfPkg: clone SmmCpuPlatformHookLib from UefiCpuPkg
>       OvmfPkg: enable SMM Monarch Election in PiSmmCpuDxeSmm
>       OvmfPkg: enable CPU hotplug support in PiSmmCpuDxeSmm
>       OvmfPkg/CpuHotplugSmm: introduce skeleton for CPU Hotplug SMM driver
>       OvmfPkg/CpuHotplugSmm: add hotplug register block helper functions
>       OvmfPkg/CpuHotplugSmm: define the QEMU_CPUHP_CMD_GET_ARCH_ID macro
>       OvmfPkg/CpuHotplugSmm: add function for collecting CPUs with events
>       OvmfPkg/CpuHotplugSmm: collect CPUs with events
>       OvmfPkg/CpuHotplugSmm: introduce Post-SMM Pen for hot-added CPUs
>       OvmfPkg/CpuHotplugSmm: introduce First SMI Handler for hot-added CPUs
>       OvmfPkg/CpuHotplugSmm: complete root MMI handler for CPU hotplug
>       OvmfPkg: clone CpuS3DataDxe from UefiCpuPkg
>       OvmfPkg/CpuS3DataDxe: superficial cleanups
>       OvmfPkg/CpuS3DataDxe: enable S3 resume after CPU hotplug
>       ArmPkg: convert LFs to CRLF, expand hard TABs
>       ArmVirtPkg: convert LFs to CRLF
>       ArmPlatformPkg: convert LFs to CRLF, expand hard TABs
>       OvmfPkg/PlatformBootManagerLib: sync Timeout with PcdPlatformBootTimeOut
>       ArmVirtPkg/PlatformBootManagerLib: sync Timeout with PcdPlatformBootTimeOut
>       OvmfPkg/X86QemuLoadImageLib: fix "unused variable" error in X64 DXE builds
>       OvmfPkg: raise DXEFV size to 12 MB
>       OvmfPkg/QemuFlashFvbServicesRuntimeDxe: drop unused PCDs
>       OvmfPkg/QemuFlashFvbServices: factor out SetPcdFlashNvStorageBaseAddresses
>       OvmfPkg: set fixed FlashNvStorage base addresses with -D SMM_REQUIRE
>       OvmfPkg: include FaultTolerantWritePei and VariablePei with -D SMM_REQUIRE
>       OvmfPkg: improve SMM comms security with adaptive MemoryTypeInformation
>       OvmfPkg/PlatformPei: explain EFI_MEMORY_TYPE_INFORMATION page counts
>       OvmfPkg: give more telling names to some FDF include files
>       NetworkPkg/UefiPxeBcDxe: handle competing DHCP servers (more) gracefully
>       OvmfPkg: supply missing lib class declarations in the DEC file
>       MdeModulePkg/NonDiscoverablePciDeviceDxe: use standard PCI_MAX_BAR macro
>       OvmfPkg/ResetSystemLib: wrap long lines
>       OvmfPkg/ResetSystemLib: clean up library dependencies
>       OvmfPkg/ResetSystemLib: improve coding style in ResetSystem()
>       OvmfPkg/ResetSystemLib: factor out ResetShutdown()
>       OvmfPkg/ResetSystemLib: rename to BaseResetSystemLib
>       OvmfPkg/ResetSystemLib: introduce the DxeResetSystemLib instance
>       OvmfPkg: introduce QemuFwCfgSimpleParserLib
>       OvmfPkg/PlatformPei: parse "X-PciMmio64Mb" with QemuFwCfgSimpleParserLib
>       OvmfPkg/PlatformPei: use QemuFwCfgParseBool in UPDATE_BOOLEAN_PCD_FROM_...
>       OvmfPkg/QemuFwCfgDxeLib: allow UEFI_DRIVER modules
>       OvmfPkg: control PXEv4 / PXEv6 boot support from the QEMU command line
>       ArmVirtPkg/QemuFwCfgLib: allow UEFI_DRIVER modules
>       ArmVirtPkg: control PXEv4 / PXEv6 boot support from the QEMU command line
>       OvmfPkg/PlatformPei: don't track BS Code/Data in default MemTypeInfo HOB
>       OvmfPkg/PlatformPei: rewrite MemTypeInfo HOB production logic
>       OvmfPkg/PlatformPei: extract memory type info defaults to PCDs
>       OvmfPkg/PlatformPei: increase memory type info defaults
>       OvmfPkg/Tcg2ConfigPei: clean up some lib class dependencies
>       OvmfPkg/Tcg2ConfigPei: factor out InternalTpm12Detect()
>       OvmfPkg/Tcg2ConfigPei: skip TPM-1.2 detection when building for ARM/AARCH64
>       Maintainers.txt: retitle "MdeModulePkg: ACPI S3 modules"
>       Maintainers.txt: restore order of OvmfPkg sections
>       Maintainers.txt: move StandaloneMmPkg to the right spot
>       OvmfPkg/Tcg2ConfigPei: generalize TPM2-only file-top comments
>       OvmfPkg/Tcg2ConfigPei: restrict BaseLib class dependency to IA32 and X64
>       OvmfPkg/X86QemuLoadImageLib: handle EFI_ACCESS_DENIED from LoadImage()
>       OvmfPkg/GenericQemuLoadImageLib: log "Not Found" at INFO level
>       Revert "OvmfPkg: use generic QEMU image loader for secure boot enabled ..."
>       UefiCpuPkg/PiSmmCpuDxeSmm: pause in WaitForSemaphore() before re-fetch
>       OvmfPkg: fix DEC spec violation introduced by Bhyve addition
>       OvmfPkg/SmmControl2Dxe: negotiate ICH9_LPC_SMI_F_CPU_HOTPLUG
>       OvmfPkg/CpuHotplugSmm: fix CPU hotplug race just before SMI broadcast
>       OvmfPkg/CpuHotplugSmm: fix CPU hotplug race just after SMI broadcast
>       SecurityPkg/DxeImageVerificationLib: extract SecDataDirEnd, SecDataDirLeft
>       SecurityPkg/DxeImageVerificationLib: assign WinCertificate after size check
>       SecurityPkg/DxeImageVerificationLib: catch alignment overflow (CVE-2019-14562)
>
> Leendert van Doorn (1):
>       ArmVirtPkg: Include NVMe support in ArmVirtQemu*
>
> Leif Lindholm (38):
>       BaseTools: add centralized location for git config files
>       BaseTools: add script to configure local git options
>       ArmPlatformPkg: use UINT32 epoch second counter
>       EmbeddedPkg: improve TimeBaseLib type safety
>       Maintainers.txt: add Leif Lindholm as Package Reviewer of ArmVirtPkg
>       BaseTools: fix FCE build when edksetup not executed
>       Maintainers.txt: update for filesystem area descriptions
>       Maintainers.txt: add wildcard path association for Arm/AArch64
>       BaseTools: add GetMaintainer.py script
>       BaseTools: use stdint.h for GCC ProcessorBind.h typedefs
>       BaseTools: add missing newlines at end of files
>       EmbeddedPkg: add missing newline at end of TemplateResetSystemLib.inf
>       NetworkPkg: add missing newline at end of file
>       EmbeddedPkg: delete outdated FdtLib README.txt
>       BaseTools: fix line endings in SetupGit.py Conf files
>       DynamicTablesPkg: fix .dsc line ending
>       ArmPkg: ArmScmiDxe - convert .h to from 8859-x to 7-bit
>       BaseTools: correct line endings for ConvertFce Python script
>       EmbeddedPkg: convert Lauterbach README.txt to 7-bit safe Readme.md
>       ArmPkg: strip trailing whitespace
>       ArmPlatformPkg: strip trailing whitespace
>       BaseTools: strip trailing whitespace
>       EmulatorPkg: strip trailing whitespace
>       MdeModulePkg: strip trailing whitespace
>       OvmfPkg: strip trailing whitespace
>       UefiCpuPkg: strip trailing whitespace
>       SignedCapsulePkg: fix AARCH64 build
>       Readme.md: remove positional references from submodule description
>       Maintainers.txt: update email address for Leif Lindholm
>       ArmVirtPkg: fix ASSERT in ArmVirtGicArchLib with virtualization=on
>       ArmPkg: rename misleading local #define in CpuDxe
>       BaseTools: add handling for 'S:' flag to GetMaintainer.py
>       ArmPkg: only attempt buildin MmCommunicationDxe for AArch64
>       BaseTools/PatchCheck.py: add exception for diff orderfile
>       BaseTools: explicitly import email.header PatchCheck.py
>       BaseTools: convert diff.order to LF-only
>       EmbeddedPkg: fix gcc build errors in AndroidBootImgLib
>       Revert "BaseTools/PatchCheck.py: Add LicenseCheck"
>
> Leo Duran (2):
>       UefiCpuPkg/MpInitLib: Skip reading PlatformId on AMD processors.
>       UefiCpuPkg/MpInitLib: Remove Executable attribute from MpLib.h
>
> Li, Aaron (1):
>       BaseTools/Capsule: Add capsule dependency support
>
> Liming Gao (51):
>       Remove IntelSiliconPkg that has been moved to edk2-platform repo
>       Maintainers.txt: update it to remove IntelSiliconPkg maintainers
>       Revert "BaseTools/FCE: Change FCE script type in PosixLike"
>       Revert "BaseTools/BfmLib: Change BfmLib script type in PosixLike"
>       Revert "BaseTools/FMMT: Change FMMT script type in PosixLike"
>       Revert "BaseTools: fix FCE build when edksetup not executed"
>       Revert "BaseTools/FMMT: Add a tool FMMT"
>       Revert "BaseTools/FCE: Add a tool FCE"
>       Revert "BaseTools/BfmLib: Add a tool BfmLib"
>       MdeModulePkg RegularExpressionDxe: Update Oniguruma from v6.9.0 to v6.9.3
>       MdeModulePkg/RegularExpressionDxe: Add two missing null pointer checks
>       Readme.md: Remove tag release from Readme
>       BaseTools: Update GenFw tool to support -e -z option together
>       SecurityPkg Tcg2Config: Move common definitions to new Tcg2Internal.h
>       MdeModulePkg SerialDxe.inf: Fix wrong FILE_GUID format
>       Revert "BaseTools: Improve GetDependencyList function"
>       MdePkg Base.h: Define STATIC_ASSERT macro as empty for EBC arch
>       NetworkPkg: Move network related header files from MdeModulePkg to NetworkPkg
>       MdeModulePkg: Remove network related guid definitions from MdeModulePkg.dec
>       NetworkPkg: Add PcdTftpBlockSize in NetworkPkg.dec
>       NetworkPkg UefiPxeBcDxe: Consume PcdTftpBlockSize defined in NetworkPkg.dec
>       MdeModulePkg: Remove PCD gEfiMdeModulePkgTokenSpaceGuid.PcdTftpBlockSize
>       NetworkPkg: Remove unnecessary MdeModulePkg/MdeModulePkg.dec dependency in INF
>       Maintainers.txt: Move ShellBin maintainers to EDK II Releases section
>       SecurityPkg Tcg2Dxe: Add Variable Arch protocol dependency
>       BaseTools tools_def.template: Remove unnecessary $(DEST_DIR_DEBUG) path
>       BaseTools tools_def: Add CLANG9 tool chain to directly generate PE image
>       BaseTools GenFw: Fix the issue to update the wrong size as SectionSize
>       MdePkg Base.h: Add definition for CLANG9 tool chain
>       MdePkg BaseIoLibIntrinsic: Remove __inline__ attribute for IO functions
>       MdeModulePkg LzmaCustomDecompressLib: Update macro to be same in CLANG tool
>       MdeModulePkg RegularExpressionDxe: Disable warning for CLANG9 tool chain
>       CryptoPkg: Append options to make CLANG9 tool chain pass build
>       CryptoPkg IntrinsicLib: Make _fltused always be used
>       EmulatorPkg: Enable CLANG9 tool chain
>       OvmfPkg: Enable CLANG9 tool chain
>       BaseTools: Rename tool chain CLANG9 to CLANGPDB
>       MdeModulePkg RegularExpressionDxe: Update tool chain name to CLANGPDB
>       CryptoPkg CryptoLib: Update tool chain name to CLANGPDB
>       OvmfPkg DSC: Update tool chain name to CLANGPDB
>       EmulatorPkg DSC and WinHost.inf: Update tool chain name to CLANGPDB
>       MdePkg Base.h: Use correct style to check the defined macro
>       MdePkg Base.h: Use correct style to check macro _MSC_VER value
>       BaseTools tools_def.template: Add back -fno-pie option in GCC49 tool chain
>       OvmfPkg: Fix build failure with VS2015 tool chain
>       MdePkg: Add EFI_RT_PROPERTIES_TABLE
>       BaseTools GenFv: Report the correct spare FV image size
>       BaseTools: Move VS2019 env setting after VS2017 env setting
>       BaseTools: Fix the issue in VS prefix setting for VS2017/VS2019
>       BaseTools: Fix the issue in VS2017/VS2019 setting
>       Maintainers.txt: Update Liming mail address
>
> Liran Alon (20):
>       OvmfPkg/PvScsiDxe: Create empty driver
>       OvmfPkg/PvScsiDxe: Install DriverBinding protocol
>       OvmfPkg/PvScsiDxe: Report name of driver
>       OvmfPkg/PvScsiDxe: Probe PCI devices and look for PvScsi
>       OvmfPkg/PvScsiDxe: Install stubbed EXT_SCSI_PASS_THRU
>       OvmfPkg/PvScsiDxe: Report the number of targets and LUNs
>       OvmfPkg/PvScsiDxe: Translate Target & LUN to/from DevicePath
>       OvmfPkg/PvScsiDxe: Open PciIo protocol for later use
>       OvmfPkg/PvScsiDxe: Backup/Restore PCI attributes on Init/UnInit
>       OvmfPkg/PvScsiDxe: Enable MMIO-Space & Bus-Mastering in PCI attributes
>       OvmfPkg/PvScsiDxe: Define device interface structures and constants
>       OvmfPkg/PvScsiDxe: Reset adapter on init
>       OvmfPkg/PvScsiDxe: Setup requests and completions rings
>       OvmfPkg/PvScsiDxe: Introduce DMA communication buffer
>       OvmfPkg/PvScsiDxe: Support sending SCSI request and receive response
>       OvmfPkg/PvScsiDxe: Reset device on ExitBootServices()
>       OvmfPkg/PvScsiDxe: Enable device 64-bit DMA addresses
>       Maintainers.txt: Add Liran and Nikita as OvmfPkg/PvScsiDxe reviewers
>       OvmfPkg/PvScsiDxe: Fix VS2019 build error because of implicit cast
>       OvmfPkg/PvScsiDxe: Refactor setup of rings to separate function
>
> Maciej Rabeda (7):
>       NetworkPkg/SnpDxe: Add PCD to remove ExitBootServices event from SNP driver.
>       Maintainers.txt: Adding new NetworkPkg reviewer.
>       NetworkPkg: Fixes to static code analysis hits
>       Maintainers.txt: Update email address and role
>       NetworkPkg/Ip6Dxe: Improve Neightbor Discovery message validation.
>       ShellPkg: Fix 'ping' command Ip4 receive flow.
>       NetworkPkg/Ip6Dxe: Fix ASSERT logic in Ip6ProcessRouterAdvertise()
>
> Maggie Chu (7):
>       SecurityPkg/OpalPassword: Add PCD to skip password prompt
>       SecurityPkg/HddPassword: Add a PCD to skip Hdd password prompt
>       MdeModulePkg: Add definitions for NVM Express Passthru PPI
>       MdeModulePkg/NvmExpressPei: Produce NVM Express PassThru PPI
>       MdeModulePkg/NvmExpressPei: Fix Opal S3 unlock issue
>       SecurityPkg/OpalPassword: Remove dependency on EFI_BLOCK_IO_PROTOCOL
>       SecurityPkg: Change default value source
>
> Marc W Chen (3):
>       OvmfPkg/QemuVideoDxe: Shouldn't assume system in VGA alias mode.
>       MdePkg: Add PI 1.5 SmramMemoryReserve HOB file
>       MdePkg: Add MmAccess and MmControl definition.
>
> Marc-André Lureau (5):
>       OvmfPkg: rename TPM2 config prefix to TPM
>       OvmfPkg: detect TPM 1.2 in Tcg2ConfigPei
>       OvmfPkg: include TcgPei module
>       OvmfPkg: include TcgDxe module
>       OvmfPkg: plug DxeTpmMeasureBootLib into SecurityStubDxe
>
> Marcin Wojtas (1):
>       MdeModulePkg/UsbBusDxe: Return error when the device is not present
>
> Marvin Häuser (8):
>       WinHost: Add SimplePointer support
>       MdePkg/UefiDebugLibConOut: Pass the correct buffer size
>       MdePkg/UefiDebugLibStdErr: Pass the correct buffer size
>       MdePkg/UefiFileHandleLib: Fix potential NULL dereference
>       MdePkg/UefiFileHandleLib: Tolerate more Root handle FileNames
>       ShellPkg/Ls: Consider UEFI timezone may not be set
>       ShellPkg/Ls: Return empty content for all empty folders
>       ShellPkg/CommandLib: Use first found UC for unsupported PlatformLang
>
> Matt DeVillier (3):
>       MdeModulePkg/Usb/EfiKey: Fix endpoint selection
>       MdeModulePkg/Usb/UsbMouse: Fix endpoint selection
>       MdeModulePkg/UsbMouseAbsolutePointer: Fix endpoint selection
>
> Matthew Carlson (2):
>       BaseTools:Added arch output to build report
>       MdePkg/SmBios.h: Add two additional DWORD for smbios 3.3.0 type17
>
> Max Knutsen (1):
>       BaseTools:Add extra debugging message
>
> Michael D Kinney (93):
>       MdeModulePkg/PiSmmCore: Use unique structure signatures
>       ShellPkg/AcpiView: Fix IA32 link error
>       ShellPkg: Add shell with all commands integrated
>       EmulatorPkg: Fix VS2015 build when VS2017 also installed
>       EmulatorPkg/Unix/Host: Fix NetworkPkg dependencies
>       EmulatorPkg/Unix/Host: Fix XCODE5 IA32/X64 build failure
>       MdePkg/X64/ProcessorBind.h: Fix EmulatorPkg X64 XCODE5
>       BaseTools/PatchCheck: Ignore blank lines in diff
>       BaseTools/PatchCheck: Add copy from/to keywords
>       BaseTools/PatchCheck: Disable text conversion in 'git show'
>       EmulatorPkg: Fix VS20xx IA32 boot failure
>       EmulatorPkg: Remove UNIX_SEC_BUILD/WIN_SEC_BUILD
>       EmulatorPkg: Add -D DISABLE_NEW_DEPRECATED_INTERFACES
>       EmulatorPkg: Add support for NOOPT target
>       EmulatorPkg/Win/Host: Fix image unload regression
>       EmulatorPkg/Win/Host: Fix SecPrint() log line endings
>       SecurityPkg: Change EFI_D_INFO to DEBUG_INFO
>       Maintainers.txt: Add continuous integration(CI) directories
>       CryptoPkg: Add YAML file for CI builds
>       FatPkg: Add YAML file for CI builds
>       FmpDevicePkg: Add YAML file for CI builds
>       MdeModulePkg: Add YAML file for CI builds
>       MdePkg: Add YAML file for CI builds
>       NetworkPkg: Add YAML file for CI builds
>       PcAtChipsetPkg: Add YAML files for CI builds
>       SecurityPkg: Add YAML files for CI builds
>       ShellPkg: Add YAML file for CI builds
>       UefiCpuPkg: Add YAML file for CI builds
>       SignedCapsulePkg: Use BaseCryptLibNull to reduce package CI time
>       .mergify: Add Mergify YML pull request rules configuration file
>       Readme.md: Add CI build status badges
>       Readme.md: Update EDK II CI build status badge and links
>       Readme.md: Update EDK II CI build branch name
>       BaseTools/Scripts/PatchCheck: Address false error conditions
>       BaseTools/Scripts/PatchCheck.py: Remove submodule false positives
>       BaseTools/DscBuildData: Fix PCD autogen include file conflict
>       CryptoPkg/BaseCryptLibNull: Add missing HkdfSha256ExtractAndExpand()
>       BaseTools/Build: Do not use Common.lib in Structured PCD app
>       CryptoPkg/BaseCryptLib: Add X509ConstructCertificateStackV().
>       CryptoPkg: Add EDK II Crypto Protocols/PPIs/PCDs
>       CryptoPkg/Driver: Add Crypto PEIM, DXE, and SMM modules
>       CryptoPkg/Library: Add BaseCryptLibOnProtocolPpi instances
>       CryptoPkg/CryptoPkg.dsc: Add build of Crypto libraries/modules
>       .pytool: Add CI support for host based unit tests with results
>       BaseTools/Plugin: Add HostBasedUnitTestRunner plugin
>       UnitTestFrameworkPkg: Add public and private interfaces
>       UnitTestFrameworkPkg/Library: Add library instances
>       UnitTestFrameworkPkg/Test: Add unit test samples
>       UnitTestFrameworkPkg: Add DSC, DSC INC, and YAML files
>       MdePkg/Test: Add SafeIntLib and BaseLib Base64 unit tests
>       MdeModulePkg: Add DxeResetSystemLib unit test
>       .azurepipelines: Enable CI for UnitTestFrameworkPkg and host tests
>       Maintainers.txt: Add UnitTestFrameworkPkg
>       UnitTestFrameworkPkg/UnitTestLib: Fix XCODE parenthesis issues
>       UnitTestFrameworkPkg: Disable EBC in DSC file
>       MdePkg: Disable EBC for unit tests in MdePkg.dsc
>       MdePkg/BaseSafeIntLib: Fix VS20xx IA32 link failures
>       MdePkg/Test/BaseLib: Add SAFE_STRING_CONSTRAINT_CHECK unit test
>       MdeModulePkg/Variable/RuntimeDxe: Fix return status from Reclaim()
>       BaseTools/Python: Allow HOST_APPLICATION to use NULL libraries
>       MdePkg/BaseCpuLibNull: Add Null version of CpuLib for host testing
>       MdePkg/BaseCacheMaintenanceLibNull: Add Null instance for host testing
>       MdePkg/BaseLib: Break out IA32/X64 GCC inline privileged functions
>       MdePkg/Library/BaseLib: Add BaseLib instance for host based unit tests
>       UnitTestFrameworkPkg: Use host libraries from MdePkg
>       UnitTestFrameworkPkg: Enable source level debug for host tests
>       UnitTestFrameworkPkg: Set host application stack size to 256KB
>       UnitTestFrameworkPkg: Change target mode DebugLib mapping
>       UnitTestFrameworkPkg/UnitTestLib: Move print log into cleanup
>       UnitTestFrameworkPkg/UnitTestLib: Fix target mode log messages
>       UnitTestFrameworkPkg/UnitTestLib: Add checks for ASSERT()
>       MdePkg/Include: Hook DebugLib _ASSERT() for unit tests
>       MdePkg/Include: Add UT_EXPECT_ASSERT_FAILURE() to UnitTestLib
>       MdePkg/Library/BaseStackCheckLib: Fix PCD type in INF
>       UnitTestFramewokPkg/SampleUnitTest: Use UT_EXPECT_ASSERT_FAILURE()
>       MdePkg/Library/UnitTestHostBaseLib: Add missing services
>       UefiCpuPkg/CpuCommonFeaturesLib: Fix spelling mistake
>       BaseTools/GenSec: Fix spelling mistake
>       MdeModulePkg/EbcDxe: Fix spelling mistake
>       MdeModulePkg/BdsDxe: Fix spelling mistake
>       BaseTools/VolInfo: Fix spelling mistake
>       EmbeddedPkg/NonCoherentIoMmuDxe: Apply BSD-2-Clause-Patent
>       MdeModulePkg/PeCoffImageEmulator.h: Apply BSD-2-Clause-Patent
>       MdePkg/BaseMemoryLibOptDxe: Apply BSD-2-Clause-Patent
>       Readme.rst: List submodules and links to licenses
>       MdeModulePkg/CapsuleApp: Fix spelling mistake
>       SecurityPkg/OpalPassword: Fix spelling mistake
>       EmulatorPkg: Fix spelling mistake for occurred
>       MdeModulePkg: Fix spelling mistake for occurred
>       MdePkg: Fix spelling mistake for occurred
>       OvmfPkg: Fix spelling mistake for occurred
>       SecurityPkg: Fix spelling mistake for occurred
>       ShellPkg: Fix spelling mistake for occurred
>
> Michael Johnson (1):
>       EmulatorPkg/TimerLib: Add missing GetTimeInNanoSecond function
>
> Michael Kubacki (54):
>       BaseTools: Fix GenMake multi-workspace failure
>       MdeModulePkg/Variable: Consolidate common parsing functions
>       MdeModulePkg/Variable: Parameterize GetNextVariableInternal () stores
>       MdeModulePkg/Variable: Parameterize VARIABLE_INFO_ENTRY buffer
>       MdeModulePkg/Variable: Parameterize auth status in VariableParsing
>       MdeModulePkg/Variable: Add a file for NV variable functions
>       MdeModulePkg VariableInfo: Always consider RT DXE and SMM stats
>       MdeModulePkg/Variable: Add RT GetVariable() cache support
>       MdeModulePkg/Variable: Add RT GetNextVariableName() cache support
>       OvmfPkg: Disable variable runtime cache
>       MdeModulePkg: Enable variable runtime cache by default
>       MdeModulePkg/Variable: Fix volatile variable RT cache update logic
>       MdeModulePkg/Variable: Initialize local variable "Variable"
>       MdeModulePkg/Variable: Initialize local variable "RtPtrTrack"
>       MdeModulePkg PeiCore: Fix typos
>       MdeModulePkg PeiCore: Improve comment semantics
>       MdeModulePkg/Variable: Fix VarErrorFlag RT cache offset calculation
>       ArmPkg/ArmPkg.dsc: Add missing components
>       ArmPlatformPkg/ArmPlatformPkg.dsc: Add missing components
>       MdeModulePkg Variable: Return GetVariable() attr if EFI_BUFFER_TOO_SMALL
>       MdeModulePkg VariablePei: Return GetVariable() attr if EFI_BUFFER_TOO_SMALL
>       Revert "TlsAuthConfigDxe: fix TlsCaCertificate attributes retrieval"
>       NetworkPkg/SnpDxe: Register SnpNotifyExitBootServices at TPL_CALLBACK
>       NetworkPkg/SnpDxe: Prevent invalid PCI BAR access
>       NetworkPkg/Ip6Dxe: Validate source data record length
>       .python/SpellCheck: Increase SpellCheck plugin max failures
>       MdeModulePkg/ReportStatusCodeRouter: Clear RSC Data buffer if Data is NULL
>       MdeModulePkg/ReportStatusCodeRouter: Revert end pointer on out of resources
>       MdeModulePkg/ReportStatusCodeRouter: Take HeaderSize into Consideration
>       MdeModulePkg/ReportStatusCodeRouter: Update RSC Data on reallocation
>       MdePkg/BaseLib: Add linked list iteration macros
>       MdeModulePkg/EhciDxe: Use BaseLib linked list iteration macros
>       MdeModulePkg/EhciPei: Use BaseLib linked list iteration macros
>       MdeModulePkg/XhciDxe: Use BaseLib linked list iteration macros
>       MdeModulePkg/UfsPassThruDxe: Use BaseLib linked list iteration macros
>       MdeModulePkg/RamDiskDxe: Use BaseLib linked list iteration macros
>       SecurityPkg/HddPassword: Use BaseLib linked list iteration macros
>       SecurityPkg: Add PCD for SW SMI Command port
>       SecurityPkg Tcg: Use SW SMI IO port PCD in Tpm.asl
>       BaseTools/Ecc: Replace deprecated function time.clock()
>       UnitTestFrameworkPkg/UnitTestResultReportLib: Use AsciiStrnCpyS()
>       MdePkg/UnitTestLib.h: Drop FrameworkHandle param from SaveFrameworkState()
>       UnitTestFrameworkPkg/UnitTestLib: Update SaveFrameworkState() signature
>       MdeModulePkg/PeiCore: Enable T-RAM evacuation in PeiCore (CVE-2019-11098)
>       UefiCpuPkg/CpuMpPei: Add GDT migration support (CVE-2019-11098)
>       UefiCpuPkg/SecMigrationPei: Add initial PEIM (CVE-2019-11098)
>       FmpDevicePkg/FmpDependencyLib: Correct ValidateDependency() documentation
>       FmpDevicePkg/FmpDependencyLib: Fix "exression" typo
>       FmpDevicePkg/FmpDependencyLib: Handle version string overflow
>       FmpDevicePkg/FmpDependencyCheckLib: Return unsatisfied on handle failure
>       FmpDevicePkg/FmpDxe: Better warn of potential ImageTypeId misconfig
>       FmpDevicePkg/FmpDxe: Indicate ESRT GUID on invalid ImageIdName
>       FmpDevicePkg/FmpDxe: Improve function parameter validation
>       FmpDevicePkg/FmpDxe: Fix Clang build error
>
> Mike Turner (1):
>       MdeModulePkg DxeCore: Fix for missing Memory Attributes Table (MAT) update
>
> Ming Tan (7):
>       EmulatorPkg/PlatformSmbiosDxe: fix a spell error of platform.
>       MdeModulePkg/StatusCodeHandler: do not output \n\r for string data
>       MdeModulePkg.dec: Change PCDs for status code.
>       EmulatorPkg/EmulatorPkg.dsc: Change PCDs type about status code
>       UefiPayloadPkg/UefiPayloadPkgIa*.dsc: Change some PCDs type
>       OvmfPkg/OvmfPkg*.dsc: Change PCDs type about status code
>       IntelFsp2Pkg/Tools/GenCfgOpt.py: Fix a bug about parse macro
>
> Nickle Wang (2):
>       MdeModulePkg/SetupBrowserDxe: Fix IsZeroGuid() ASSERT.
>       EmulatorPkg/WinHost: Enable network support.
>
> Nikita Leshenko (12):
>       OvmfPkg/MptScsiDxe: Create empty driver
>       OvmfPkg/MptScsiDxe: Install DriverBinding Protocol
>       OvmfPkg/MptScsiDxe: Report name of driver
>       OvmfPkg/MptScsiDxe: Probe PCI devices and look for MptScsi
>       OvmfPkg/MptScsiDxe: Install stubbed EXT_SCSI_PASS_THRU
>       OvmfPkg/MptScsiDxe: Report targets and one LUN
>       OvmfPkg/MptScsiDxe: Build and decode DevicePath
>       OvmfPkg/MptScsiDxe: Open PciIo protocol for later use
>       OvmfPkg/MptScsiDxe: Set and restore PCI attributes
>       OvmfPkg/MptScsiDxe: Initialize hardware
>       OvmfPkg/MptScsiDxe: Implement the PassThru method
>       OvmfPkg/MptScsiDxe: Reset device on ExitBootServices()
>
> Oleksiy Yakovlev (17):
>       MdePkg: Extend SERIAL_IO with DeviceTypeGuid
>       BaseTools: REST style formset
>       MdePkg: REST style formset
>       BaseTools: Bootable NVDIMM namespaces
>       MdePkg: Bootable NVDIMM namespaces
>       MdePkg: Add UEFI Spec Revision 2.8
>       MdePkg: UEFI JSON Capsule Support
>       MdePkg: Add new CPER Notification types
>       MdePkg: Fix OUT parameters marked as IN OUT
>       MdePkg: Add FMP Capsule Image Header extension
>       MdeModulePkg: Add FMP Capsule Image Header extension
>       SignedCapsulePkg: Add FMP Capsule Image Header extension
>       MdePkg: Add Serial Terminal Device Type Guid
>       MdePkg: Add New Memory Attributes
>       MdeModulePkg: Add New Memory Attributes
>       UefiCpuPkg: Update EFI_MEMORY_CACHETYPE_MASK definition
>       UefiCpuPkg: Add New Memory Attributes
>
> Park, Aiden (1):
>       edksetup.bat stuck on unicode locale Windows
>
> Patrick Rudolph (1):
>       UefiPayloadPkg: Make TerminalDxe build time configurable
>
> Paul Grimes (1):
>       MdePkg: Correcting EFI_ACPI_DMA_TRANSFER_TYPE_16_BIT definition
>
> Pavana.K (1):
>       CryptoPkg: Support for SHA384 & SHA512 RSA signing schemes
>
> Pete Batard (7):
>       ArmPlatformPkg: Add missing header files in INF file
>       MdeModulePkg/BdsDxe: Also call PlatformBootManagerWaitCallback on 0
>       OvmfPkg/PlatformBootManagerLib: Don't update progress if Pcd is 0
>       ArmVirtPkg/PlatformBootManagerLib: Don't update progress if Pcd is 0
>       MdePkg/Include: Add DCC and BCM2835 SPCR UART types
>       EmbeddedPkg/AcpiLib: add GICC table init macro for ACPI 6.3
>       EmbeddedPkg/TimeBaseLib: Add macros to get build year/month/day
>
> Peter Jones (1):
>       OvmfPkg: Make SOURCE_DEBUG_ENABLE actually need to be set to TRUE
>
> Philippe Mathieu-Daudé (59):
>       ArmPkg: DebugPeCoffExtraActionLib: debugger commands are not errors
>       ArmPkg: DebugPeCoffExtraActionLib: fix trivial comment typos
>       MdeModulePkg DxeCore: Fix typo in function name
>       MdeModulePkg/PiSmmCore: Fix typo in function name
>       StandaloneMmPkg/Core: Fix typo in function name
>       NetworkPkg/Ip6Dxe: Fix typo in comment
>       .pytool: Avoid "is" with a literal Python 3.8 warnings in CI plugins
>       BaseTools: Avoid "is" with a literal Python 3.8 warnings
>       .mailmap: Add a stub with documentation
>       .mailmap: Add an entry for Aaron Li
>       .mailmap: Add an entry for Antoine Coeur
>       .mailmap: Add an entry for Ard Biesheuvel
>       .mailmap: Add an entry for Ashley DeSimone
>       .mailmap: Add an entry for Baraneedharan Anbazhagan
>       .mailmap: Add an entry for Chasel Chiu
>       .mailmap: Add an entry for Christopher J Zurcher
>       .mailmap: Add an entry for Eric Dong
>       .mailmap: Add an entry for Erik Bjorge
>       .mailmap: Add an entry for Hao Wu
>       .mailmap: Add an entry for Hot Tian
>       .mailmap: Add an entry for Jiewen Yao
>       .mailmap: Add an entry for Jim Dailey
>       .mailmap: Add an entry for Laszlo Ersek
>       .mailmap: Add an entry for Liming Gao
>       .mailmap: Add an entry for Maciej Rabeda
>       .mailmap: Add an entry for Marc-Andre Lureau
>       .mailmap: Add an entry for Marvin Haeuser
>       .mailmap: Add an entry for Maurice Ma
>       .mailmap: Add an entry for Michael Kubacki
>       .mailmap: Add an entry for Ming Tan
>       .mailmap: Add an entry for Nikolai Saoukh
>       .mailmap: Add an entry for Philippe Mathieu-Daude
>       .mailmap: Add an entry for Ray Ni
>       .mailmap: Add an entry for Samer El-Haj-Mahmoud
>       .mailmap: Add an entry for Shenglei Zhang
>       .mailmap: Add an entry for Star Zeng
>       .mailmap: Add an entry for Vitaly Cheptsov
>       .mailmap: Add an entry for Vladimir Olovyannikov
>       .mailmap: Add an entry for Yonghong Zhu
>       .mailmap: Add an entry for Yu-Chen Lin
>       BaseTools/PatchCheck.py: Ignore CR and LF characters in subject length
>       BaseTools/PatchCheck.py: Extract email check code to EmailAddressCheck
>       BaseTools/PatchCheck.py: Check the committer email address
>       BaseTools/PatchCheck.py: Let EmailAddressCheck describe email checked
>       BaseTools/PatchCheck.py: Check the patch author email address
>       BaseTools/Scripts: Add log.mailmap to SetupGit.py
>       BaseTools/Scripts/PatchCheck.py: Detect emails rewritten by Groups.Io
>       BaseTools/Scripts/PatchCheck.py: Do not use mailmap
>       SecurityPkg: Fix incorrect return value when File is NULL
>       EmbeddedPkg/VirtualKeyboard: Fix a typo in EFI_INVALID_PARAMETER
>       MdeModulePkg/UsbBusDxe: Fix a typo
>       NetworkPkg: Fix a typo
>       NetworkPkg/DnsDxe: Fix a typo
>       NetworkPkg/HttpBootDxe: Fix a typo in variable name
>       OvmfPkg/Csm/LegacyBios: Fix a typo
>       OvmfPkg/Xen: Fix a typo
>       StandaloneMmPkg: Fix a typo
>       ShellPkg: Document ParseCommandLineToArgs returns EFI_INVALID_PARAMETER
>       ShellPkg: Document UpdateArgcArgv returns EFI_INVALID_PARAMETER
>
> Pierre Gondois (44):
>       ShellPkg/acpiview: GTDT updates for ACPI 6.3
>       DynamicTablesPkg: GTDT updates for ACPI 6.3
>       MdePkg: Add AML OpCode definition for ExternalOp
>       BaseTools: Script for converting .aml to .hex
>       BaseTools: Rationalise makefile generation
>       BaseTools: Remove caret in NASM_INC macro
>       MdePkg: Add AML FieldList OpCode definitions
>       ArmPkg/ArmMmuLib: Fix implicit cast
>       BaseTools: PatchCheck: Exclude bash scripts from CRLF check
>       BaseTools: Generate multiple rules when multiple output files
>       BaseTools: Rename AmlToHex script to AmlToC
>       BaseTools: Compile AML bytecode arrays into .obj file
>       BaseTools: Fix string concatenation
>       BaseTools: Add gcc flag to warn on void* pointer arithmetic
>       BaseTools: Factorize GCC flags
>       EmbeddedPkg: Fix build error for MmcDxe
>       DynamicTablesPkg: Update ASL build options
>       DynamicTablesPkg: AmlLib definitions
>       DynamicTablesPkg: AML grammar definition
>       DynamicTablesPkg: AML node definitions
>       DynamicTablesPkg: AML tree interface
>       DynamicTablesPkg: AML tree enumerator
>       DynamicTablesPkg: AML tree traversal
>       DynamicTablesPkg: AML tree iterator
>       DynamicTablesPkg: AML tree/node cloning
>       DynamicTablesPkg: AML utility interfaces
>       DynamicTablesPkg: AML and ASL string helper
>       DynamicTablesPkg: AML serialise interface
>       DynamicTablesPkg: AML debug logging
>       DynamicTablesPkg: AML ACPI Namespace interface
>       DynamicTablesPkg: AML Parser
>       DynamicTablesPkg: AML resource data helper
>       DynamicTablesPkg: AML resource data parser
>       DynamicTablesPkg: AML Method parser
>       DynamicTablesPkg: AML Field list parser
>       DynamicTablesPkg: AML Codegen
>       DynamicTablesPkg: AML Resource Data Codegen
>       DynamicTablesPkg: AML Core interface
>       DynamicTablesPkg: AmlLib APIs
>       DynamicTablesPkg: Dynamic AML: Add AmlLib library
>       DynamicTablesPkg: SSDT Serial Port Fixup library
>       DynamicTablesPkg: SSDT Serial Port generator
>       DynamicTablesPkg: Add SSDT Serial port for SPCR
>       DynamicTablesPkg: Add SSDT Serial port for DBG2
>
> Qi Zhang (8):
>       SecurityPkg/Tpm2CommandLib: add a new function
>       SecurityPkg/Tcg2Config: remove TPM2_ChangEPS if it is not supported.
>       SecurityPkg/TcgEventLogRecordLib: add new lib for firmware measurement
>       SecurityPkg/dsc: add FvEventLogRecordLib
>       SecurityPkg/Tcg2: handle PRE HASH and LOG ONLY
>       IntelFsp2WrapperPkg/dsc: add HashLib, Tpm2CommandLib and Tpm2DeviceLib
>       IntelFsp2WrapperPkg/IntelFsp2WrapperPkg.dec: add FspMeasurementLib.h
>       MdeModulePkg/Library: add PEIM and SEC module type to TpmMeasurementLibNull
>
> Ray Ni (49):
>       UefiCpuPkg/MpInitLib: increase NumApsExecuting only for ApInitConfig
>       UefiCpuPkg/MpInitLib: Decrease NumApsExecuting only for ApInitConfig
>       IntelFspPkg&IntelFspWrapperPkg: Remove them
>       UefiCpuPkg/PiSmmCpu: Change variable names and comments to follow SDM
>       MdePkg/BaseLib.h: Update IA32_CR4 structure for 5-level paging
>       UefiCpuPkg/PiSmmCpu: Enable 5 level paging when CPU supports
>       Maintainers.txt: Remove maintainer info for IntelFsp[Wrapper]Pkg
>       Revert "UefiCpuPkg/PiSmmCpu: Enable 5 level paging when CPU supports"
>       Revert "MdePkg/BaseLib.h: Update IA32_CR4 structure for 5-level paging"
>       MdePkg/BaseLib.h: Update IA32_CR4 structure for 5-level paging
>       UefiCpuPkg/PiSmmCpu: Enable 5 level paging when CPU supports
>       UefiCpuPkg/PiSmmCpu: ReclaimPages: fix incorrect operator binding
>       UefiCpuPkg/PiSmmCpu: Allow SMM access-out when static paging is OFF
>       UefiCpuPkg/MpInitLib: Enable 5-level paging for AP when BSP's enabled
>       UefiCpuPkg/CpuDxe: Remove unnecessary macros
>       UefiCpuPkg/CpuDxe: Support parsing 5-level page table
>       MdeModulePkg/DxeIpl: Introduce PCD PcdUse5LevelPageTable
>       MdePkg/Cpuid.h: Move Cpuid.h from UefiCpuPkg to MdePkg
>       MdeModulePkg/DxeIpl: Create 5-level page table for long mode
>       UefiCpuPkg|MdePkg: Move Register/ folder to MdePkg/Include/
>       UefiCpuPkg: Update code to include register definitions from MdePkg
>       UefiCpuPkg: Add PcdCpuSmmRestrictedMemoryAccess
>       UefiCpuPkg/PiSmmCpu: Use new PCD PcdCpuSmmRestrictedMemoryAccess
>       UefiCpuPkg/PiSmmCpu: Restrict access per PcdCpuSmmRestrictedMemoryAccess
>       UefiCpuPkg: Explain relationship between several SMM PCDs
>       PcAtChipsetPkg: add PcdRealTimeClockUpdateTimeout
>       MdeModulePkg: Remove PcdRealTimeClockUpdateTimeout
>       IntelFsp2Pkg/FspSecCore: Remove unneeded MdeModulePkg dependency
>       IntelFsp2WrapperPkg: Remove unneeded MdeModulePkg dependency
>       MdePkg/BluetoothLeConfig.h: Add type EfiBluetoothSmpPeerAddressList
>       UefiCpuPkg/PiSmmCpu: Enable 5L paging only when phy addr line > 48
>       UefiCpuPkg: Remove PcdCpuSmmStaticPageTable
>       UefiCpuPkg/MpInitLib: Set X2ApicEnable flag from BSP
>       UefiCpuPkg/MpInitLib: Remove global variable X2ApicEnable
>       BaseTools: Fix build failure when using python38
>       UefiCpuPkg/CpuCommonFeaturesLib: Remove XD enable/disable logic
>       UefiCpuPkg/RegisterCpuFeature: Remove CPU_FEATURE_XD macro
>       UefiCpuPkg/RegisterCpuFeaturesLib: Delete CPU_FEATURE_[BEFORE|AFTER]
>       UefiCpuPkg/RegisterCpuFeaturesLib: Rename [Before|After]FeatureBitMask
>       UefiCpuPkg/CpuFeature: Introduce First to indicate 1st unit.
>       UefiCpuPkg/PiSmmCpuDxeSmm: Improve the performance of GetFreeToken()
>       UefiCpuPkg/MpService: GetProcessorInfo returns 6-level topology
>       MdePkg/PciSegmentInfoLib: Add missing EFIAPI to GetPciSegmentInfo()
>       UefiPayloadPkg/Pci: Use the PCIE Base Addr stored in AcpiBoardInfo HOB
>       UefiCpuPkg/MtrrLib: Remove unnecessary API MtrrGetVariableMtrr()
>       UefiCpuPkg/MtrrLib: Remove unnecessary API MtrrSetVariableMtrr()
>       UefiCpuPkg/MtrrLib: Remove unnecessary API MtrrSetFixedMtrr()
>       UefiCpuPkg/MtrrLib/UnitTest: Add host based unit test
>       UefiCpuPkg/MtrrLibUnitTest: Change to use static array for CI test
>
> Rebecca Cran (21):
>       Fix indentation in edksetup.sh SetupPython3
>       edksetup.sh: Use bash variable $PWD instead of executing pwd command
>       edksetup.sh: Use $SCRIPTNAME consistently instead of 'edksetup.sh'
>       edksetup.sh: when executing arithmetic commands, $ isn't needed
>       edksetup.sh: remove redundant -?, -h and --help in options parsing
>       OvmfPkg/build.sh: enable multitheaded build by default
>       OvmfPkg/build.sh: remove literal carriage return
>       OvmfPkg/build.sh: remove $ADD_QEMU_HDA
>       OvmfPkg/build.sh: use newer '-drive if=pflash' syntax when running qemu
>       OvmfPkg: replace old EFI_D_ debug levels with new DEBUG_ ones
>       OvmfPkg: Add bhyve support into AcpiTimerLib
>       OvmfPkg: Add VBE2 mode info structure to LegacyVgaBios.h
>       OvmfPkg: Add QemuFwCfgLibNull
>       OvmfPkg: Add BaseResetSystemLibBhyve
>       BaseTools: add repo name option to SetupGit.py
>       ShellPkg: smbiosview - print field values as unsigned integers
>       BaseTools: Update ReadMe.txt to match current functionality
>       BaseTools: rename ReadMe.txt to ReadMe.rst
>       Add BhyvePkg, to support the bhyve hypervisor
>       Maintainers.txt: Add bhyve reviewers
>       OvmfPkg/Bhyve: rename files to remove 'Pkg' infix
>
> Robert Phelps (4):
>       MdePkg: New Status Codes
>       MdePkg: Updates to PI 1.7 Revision numbers
>       MdePkg: Added header file for Delayed Dispatch PPI
>       MdePkg: Update structures for MpServices Protocol
>
> Rodriguez, Christian (3):
>       BaseTools: Add a checking for Sources section in INF file
>       BaseTools: Refactor hash tracking after checking for Sources section
>       BaseTools: Fix checking for Sources section in INF file
>
> Roman Bolshakov (1):
>       OvmfPkg: Skip initrd command on Xcode toolchain
>
> Samer El-Haj-Mahmoud (3):
>       MdeModulePkg: PcdAcpiExposedTableVersions default for Arm64 platforms
>       ArmVirtPkg/ArmVirtQemu: Revert "limit ACPI support to v5.0 and higher"
>       ShellPkg: smbiosview - Change some type 17 field values format
>
> Sami Mujawar (35):
>       DynamicTablesPkg: Fix line endings in dsc file
>       DynamicTablesPkg: Disable deprecated APIs
>       DynamicTablesPkg: Arm SRAT Table Generator
>       StandaloneMmPkg: Fix build failure - Bug 2253
>       ShellPkg: acpiview: Add support for parsing FACS
>       ShellPkg: acpiview: IORT Spec Rev D updates
>       ArmPkg: Dispatch deferred images after EndOfDxe
>       DynamicTablesPkg: Update FADT generator to ACPI 6.3
>       DynamicTablesPkg: Fix entry point param definition
>       DynamicTablesPkg: Fix missing local header warning
>       DynamicTablesPkg: Remove struct CM_ARM_CPU_INFO
>       DynamicTablesPkg: Fix serial port subtype warning
>       DynamicTablesPkg: Fix Proc node length assignment
>       DynamicTablesPkg: Fix GT Block length assignment
>       DynamicTablesPkg: Fix Boot arch flag width
>       DynamicTablesPkg: Fix ACPI table rev field width
>       DynamicTablesPkg: Fix unaligned pointers usage
>       DynamicTablesPkg: Serial debug port initialisation
>       DynamicTablesPkg: Remove redundant frame count check
>       DynamicTablesPkg: Fix IORT node length assignment
>       DynamicTablesPkg: IORT: Fix uninitialized memory usage
>       DynamicTablesPkg: PPTT: Fix uninitialized memory usage
>       DynamicTablesPkg: Remove erroneous use of EFIAPI
>       DynamicTablesPkg: Option for VS2017 static code analysis
>       DynamicTablesPkg: SRAT: Fix entry points
>       DynamicTablesPkg: SRAT: Fix uninitialized memory usage
>       BaseTools: Remove deprecated Visual Studio Option
>       DynamicTablesPkg: Fix issues reported by EDKII CI
>       DynamicTablesPkg: Add EDK2 Core CI support
>       DynamicTablesPkg: Update release build flags
>       DynamicTablesPkg: Introduction to Dynamic AML
>       DynamicTablesPkg: AML stream interface
>       DynamicTablesPkg: Add AsciiFromHex helper function
>       .pytool: CI Settings to support DynamicTablesPkg
>       .azurepipelines: Add DynamicTablesPkg to CI matrix
>
> Sean Brogan (35):
>       BaseTools:replace the chinese quotation mark with unicode "
>       BaseTools/Capsule: Add WindowsCapsuleSupportHelper
>       MdePkg: Add UefiFileHandleLib to DSC file
>       FatPkg: Fix spelling errors
>       PcAtChipsetPkg: Fix spelling errors
>       FmpDevicePkg: Fix spelling errors
>       SecurityPkg: Fix spelling errors
>       CryptoPkg: Add missing components to CryptoPkg.dsc
>       CryptoPkg: Add Null instance of the TlsLib class
>       UefiCpuPkg: Add missing components to UefiCpuPkg.dsc
>       CryptoPkg: Add Null instance of the BaseCryptLib class
>       NetworkPkg: Add missing components to DSC file
>       .gitignore: Ignore python compiled files, extdeps, and vscode
>       pip-requirements.txt: Add python pip requirements file
>       BaseTools: Add RC_PATH define for VS2017/2019
>       BaseTools: Add YAML files with path env and tool extdeps
>       BaseTools: Add BaseTools plugins to support CI
>       .pytool/Plugin: Add CI plugins
>       .pytool: Add CISettings.py and Readme.md
>       .azurepipelines: Add Azure Pipelines YML configuration files
>       MdeModulePkg/NvmExpressDxe: Fix wrong queue size for async IO queues
>       BaseTools/WindowsVsToolChain: Clean up Python source formatting
>       BaseTools/WindowsVsToolChain: Setup VS2017/VS2019 env
>       BaseTools/PcdValueCommon: Fix 64-bit host compiler error
>       BaseTools: Update Edk2ToolsBuild.py to use multiple threads on Linux
>       .azurepipelines: Update CI steps
>       .azurepipelines: Add Platform CI template
>       ArmVirtPkg: Add Platform CI and configuration for Core CI
>       EmulatorPkg: Add Platform CI and configuration for Core CI
>       OvmfPkg: Add Platform CI and configuration for Core CI
>       .pytool: Update CI Settings to support Emulator, ArmVirt, and Ovmf packages
>       .azurepipelines: Update Core CI build matrix to include platforms
>       ReadMe: Convert to rst and add Platform CI Status
>       .pytool/CISettings: Remove Windows only scope for host based unit tests
>       BaseTools/Plugin: Update HostBasedUnitTestRunner to support Linux
>
> Shenglei Zhang (103):
>       SecurityPkg/DxeDeferImageLoadLib: Remove DxeDeferImageLoadLib
>       SecurityPkg: Remove DxeDeferImageLoadLib in DSC
>       BaseTools/BfmLib: Add a tool BfmLib
>       BaseTools/FCE: Add a tool FCE
>       BaseTools/FMMT: Add a tool FMMT
>       BaseTools/FMMT: Change FMMT script type in PosixLike
>       BaseTools/BfmLib: Change BfmLib script type in PosixLike
>       BaseTools/FCE: Change FCE script type in PosixLike
>       MdeModulePkg: Fix typos and add periods
>       SecurityPkg/FvReportPei: Change HashAlgoId to HashAlgId
>       UefiCpuPkg/PiSmmCpuDxeSmm: Keep function comment and declaration adjacent
>       SecurityPkg/SecurityPkg.dec: Remove trailing white space
>       MdeModulePkg: Remove S3Lib.h and PeiS3LibNull
>       MdeModulePkg: Remove RecoveryLib.h and PeiRecoveryLibNull
>       UefiCpuPkg/PiSmmCpuDxeSmm: Add check for pointer Pml5Entry
>       UefiCpuPkg/PiSmmCpuDxeSmm: Make code consistent with comments
>       MdeModulePkg/DxeCapsuleLibFmp: Add missing description for parameter
>       MdeModulePkg: Add missing header files in INF files
>       MdePkg/BaseUefiDecompressLib: Add missing description for parameter
>       ShellPkg/UefiShellAcpiViewCommandLib: Add missing header files in INF
>       IntelFsp2Pkg/FspSecCore: Add missing header file in INF file
>       UefiCpuPkg/PiSmmCpuDxeSmm: Fix coding style
>       MdeModulePkg/DxeIplPeim: Relocate operation of PageMapLevel5Entry++
>       ShellPkg/UefiShellAcpiViewCommandLib: Remove the variable "Index"
>       NetworkPkg: Add Dpc protocol
>       NetworkPkg: Move Dpc.h from MdeModulePkg to NetworkPkg
>       MdeModulePkg/MdeModulePkg.dec: Remove gEfiDpcProtocolGuid
>       MdeModulePkg/DxeIplPeim: Initialize pointer PageMapLevel5Entry
>       CryptoPkg/OpensslLib: Add missing header files in INF file
>       ShellPkg/UefiShellAcpiViewCommandLib: Initialize local variables
>       UefiCpuPkg/Cpuid: Add description for parameter LeafFunction
>       CryptoPkg: Fix coding style
>       ShellPkg/UefiShellAcpiViewCommandLib: Replace shift logical left
>       MdePkg/MdePkg.dec: Update PciSegmentLib.h to S3PciSegmentLib.h
>       SecurityPkg/SecurityPkg.dec: Update TcgPpVendorLib.h to Tcg2PpVendorLib.h
>       EmulatorPkg/PeiEmuSerialPortLib: Update the INF file Guid
>       MdeModulePkg/SerialDxe: Update the file Guid in SerialDxe.inf
>       BaseTools/LzmaCompress: Add two switches
>       BaseTools/LzmaCompress: Fix the option "d" dictionary size
>       CryptoPkg/OpensslLib: Update process_files.pl to generate .h files
>       MdeModulePkg/Oniguruma: Remove redundant IF statement
>       MdeModulePkg/Variable/Pei: Update the condition in if statement
>       MdeModulePkg/HiiDatabaseDxe: ASSERT "Private->Attribute >> 4"
>       MdeModulePkg/SdBlockIoPei: Add check for DeviceIndex
>       MdeModulePkg/EhciPei: Initialize the variable Map
>       MdeModulePkg/UhciPei: Initialize the variable RequestMap
>       MdeModulePkg/Mem: Initialize the variable MapMemory
>       CryptoPkg: Upgrade OpenSSL to 1.1.1d
>       ShellPkg/Shell/FileHandleWrappers.c: Add check for MemFile->Buffer
>       MdeModulePkg/HiiDatabaseDxe: ASSERT StringPtr
>       MdeModulePkg/EsrtDxe: Add check for EsrtRepository
>       MdeModulePkg/SetupBrowserDxe: ASSERT GetBufferForValue(&Value)
>       MdeModulePkg/EbcDebugger: Add check for Entry and RetEntry
>       MdePkg: Update the comments of IsLanguageSupported
>       MdeModulePkg/MdeModulePkg.uni: Add missing strings for PCD
>       NetworkPkg/NetworkPkg.uni: Add missing strings for PCD
>       UefiCpuPkg/UefiCpuPkg.uni: Add missing strings for PCD
>       UefiCpuPkg: Update the coding styles
>       MdeModulePkg/RegularExpressionDxe: Make oniguruma a submodule in edk2.
>       pip-requirements.txt: Update extensions min version to 0.13.3
>       .azurepiplines/pr-gate-steps.yml: Update python to 3.8.x for ci build
>       BaseTools/WindowsVsToolChain.py: Update toolchain plugin
>       MdeModulePkg/BrotliCustomDecompressLib: Make brotli a submodule
>       BaseTools: Make brotli a submodule
>       NetworkPkg/IScsiDxe: Enhance the check for array boundary
>       .gitmodules: ignore untracked files in brotli
>       MdeModulePkg/RegularExpressionDxe: Optimize the code infrastructure
>       NetworkPkg/DxeNetLib: Change the order of conditions in IF statement
>       BaseTools/PatchCheck.py: Add LicenseCheck
>       BaseTools/PatchCheck.py: Skip length check for user name in xxx-by
>       .pytool/Plugin: Add a plugin LicenseCheck
>       FatPkg/FatPkg.ci.yaml: Add configuration for LicenseCheck
>       ArmVirtPkg/ArmVirtPkg.ci.yaml: Add configuration for LicenseCheck
>       CryptoPkg/CryptoPkg.ci.yaml: Add configuration for LicenseCheck
>       EmulatorPkg/EmulatorPkg.ci.yaml: Add configuration for LicenseCheck
>       FmpDevicePkg/FmpDevicePkg.ci.yaml: Add configuration for LicenseCheck
>       MdeModulePkg/MdeModulePkg.ci.yaml: Add configuration for LicenseCheck
>       MdePkg/MdePkg.ci.yaml: Add configuration for LicenseCheck
>       NetworkPkg/NetworkPkg.ci.yaml: Add configuration for LicenseCheck
>       OvmfPkg/OvmfPkg.ci.yaml: Add configuration for LicenseCheck
>       PcAtChipsetPkg/PcAtChipsetPkg.ci.yaml: Add configuration for LicenseCheck
>       SecurityPkg/SecurityPkg.ci.yaml: Add configuration for LicenseCheck
>       ShellPkg/ShellPkg.ci.yaml: Add configuration for LicenseCheck
>       UefiCpuPkg/UefiCpuPkg.ci.yaml: Add configuration for LicenseCheck
>       UnitTestFrameworkPkg: Add configuration for LicenseCheck in yaml file
>       pip-requirements.txt: Add Ecc required lib
>       .pytool/Plugin: Add a plugin EccCheck
>       MdeModulePkg/MdeModulePkg.ci.yaml: Add configuration for Ecc check
>       ArmVirtPkg/ArmVirtPkg.ci.yaml: Add configuration for Ecc check
>       CryptoPkg/CryptoPkg.ci.yaml: Add configuration for Ecc check
>       EmulatorPkg/EmulatorPkg.ci.yaml: Add configuration for Ecc check
>       FatPkg/FatPkg.ci.yaml: Add configuration for Ecc check
>       FmpDevicePkg/FmpDevicePkg.ci.yaml: Add configuration for Ecc check
>       MdePkg/MdePkg.ci.yaml: Add configuration for Ecc check
>       NetworkPkg/NetworkPkg.ci.yaml: Add configuration for Ecc check
>       OvmfPkg/OvmfPkg.ci.yaml: Add configuration for Ecc check
>       PcAtChipsetPkg/PcAtChipsetPkg.ci.yaml: Add configuration for Ecc check
>       SecurityPkg/SecurityPkg.ci.yaml: Add configuration for Ecc check
>       ShellPkg/ShellPkg.ci.yaml: Add configuration for Ecc check
>       UefiCpuPkg/UefiCpuPkg.ci.yaml: Add configuration for Ecc check
>       UnitTestFrameworkPkg: Add configuration for Ecc check in yaml file
>       .pytool/EccCheck: Disable Ecc error code 10014 for open CI
>       Revert ".pytool/EccCheck: Disable Ecc error code 10014 for open CI"
>
> Siyuan Fu (10):
>       Maintainers.txt: Change NetworkPkg maintainer role.
>       NetworkPkg/SnpDxe: Use PcdGetBool() instead of FixedPcdGetBool in Snp.c
>       UefiCpuPkg: Remove alignment check when calculate microcode size.
>       UefiCpuPkg: Always load microcode patch on AP processor.
>       MdePkg: Add header file for Firmware Interface Table specification.
>       UefiCpuPkg: Shadow microcode patch according to FIT microcode entry.
>       MdeModulePkg/Capsule: Remove RT restriction in UpdateCapsule service.
>       UefiCpuPkg: Remove FIT based microcode shadow logic from MpInitLib.
>       MdePkg: Remove FIT table industry standard header file.
>       NetworkPkg/ArpDxe: Recycle invalid ARP packets (CVE-2019-14559)
>
> Star Zeng (11):
>       UefiCpuPkg CpuCommFeaturesLib: Disable TraceEn at the beginning
>       UefiCpuPkg CpuCommFeaturesLib: Fix GP fault issue about ProcTrace
>       UefiCpuPkg CpuCommFeaturesLib: Fix ASSERT if LMCE is supported
>       UefiCpuPkg CpuCommFeaturesLib: Reduce to set MSR_IA32_CLOCK_MODULATION
>       UefiCpuPkg RegisterCpuFeaturesLib.h: Fix typo 'STRICK' to 'STRIKE'
>       MdeModulePkg SmbiosMeasurementDxe: Add Type4 Voltage field to blacklist
>       UefiCpuPkg RegisterCpuFeaturesLib: Fix an ASSERTION issue
>       UefiCpuPkg CpuCommonFeaturesLib: Enhance Ppin code
>       UefiCpuPkg DxeRegisterCpuFeaturesLib: Fix VS2012 build failure
>       SourceLevelDebugPkg DebugCommLibUsb3: Address NULL ptr dereference case
>       UefiCpuPkg RegisterCpuFeaturesLib: Match data type and format specifier
>
> Stephano Cetola (1):
>       EmulatorPkg: update HOST_TOOLS to xcode5
>
> Steven Shi (17):
>       BaseTools:Build cache cannot store the cache files for library package
>       BaseTools:Build Cache output notification message
>       BaseTools: Cannot store library cache of different arch together
>       BaseTools:Introduce CopyFileOnChange() function to copy cache files
>       BaseTools: Improve the cache hit in the edk2 build cache
>       BaseTools: Print first cache missing file for build cachle
>       BaseTools: Change the [Arch][Name] module key in Build cache
>       BaseTools: Add GenFds multi-thread support in build cache
>       BaseTools: Improve the file saving and copying reliability
>       BaseTools: Support long file path in windows for misc functions
>       BaseTools: Support more file types in build cache
>       BaseTools: Add more parameter checking for CopyFileOnChange()
>       BaseTools: store more complete output files in binary cache
>       BaseTools: enhance the CacheCopyFile method arg names
>       BaseTools: Leverage compiler output to optimize binary cache
>       BaseTools: Remove redundant binary cache file
>       BaseTools: Enhance call stack unwindability for CLANGPDB x64 binary
>
> Sunny Wang (1):
>       MdeModulePkg/BdsDxe: Fix PlatformRecovery issue
>
> Tom Lendacky (50):
>       UefiCpuPkg/CpuExceptionHandler: Make XCODE5 changes toolchain specific
>       OvmfPkg: Use toolchain appropriate CpuExceptionHandlerLib
>       UefiCpuPkg/CpuExceptionHandler: Revert CpuExceptionHandler binary patching
>       MdeModulePkg: Create PCDs to be used in support of SEV-ES
>       UefiCpuPkg: Create PCD to be used in support of SEV-ES
>       MdePkg: Add the MSR definition for the GHCB register
>       MdePkg: Add a structure definition for the GHCB
>       MdeModulePkg/DxeIplPeim: Support GHCB pages when creating page tables
>       MdePkg/BaseLib: Add support for the XGETBV instruction
>       MdePkg/BaseLib: Add support for the VMGEXIT instruction
>       UefiCpuPkg: Implement library support for VMGEXIT
>       OvmfPkg: Prepare OvmfPkg to use the VmgExitLib library
>       UefiPayloadPkg: Prepare UefiPayloadPkg to use the VmgExitLib library
>       UefiCpuPkg/CpuExceptionHandler: Add base support for the #VC exception
>       OvmfPkg/VmgExitLib: Implement library support for VmgExitLib in OVMF
>       OvmfPkg/VmgExitLib: Add support for IOIO_PROT NAE events
>       OvmfPkg/VmgExitLib: Support string IO for IOIO_PROT NAE events
>       OvmfPkg/VmgExitLib: Add support for CPUID NAE events
>       OvmfPkg/VmgExitLib: Add support for MSR_PROT NAE events
>       OvmfPkg/VmgExitLib: Add support for NPF NAE events (MMIO)
>       OvmfPkg/VmgExitLib: Add support for WBINVD NAE events
>       OvmfPkg/VmgExitLib: Add support for RDTSC NAE events
>       OvmfPkg/VmgExitLib: Add support for RDPMC NAE events
>       OvmfPkg/VmgExitLib: Add support for INVD NAE events
>       OvmfPkg/VmgExitLib: Add support for VMMCALL NAE events
>       OvmfPkg/VmgExitLib: Add support for RDTSCP NAE events
>       OvmfPkg/VmgExitLib: Add support for MONITOR/MONITORX NAE events
>       OvmfPkg/VmgExitLib: Add support for MWAIT/MWAITX NAE events
>       OvmfPkg/VmgExitLib: Add support for DR7 Read/Write NAE events
>       OvmfPkg/MemEncryptSevLib: Add an SEV-ES guest indicator function
>       OvmfPkg: Add support to perform SEV-ES initialization
>       OvmfPkg: Create a GHCB page for use during Sec phase
>       OvmfPkg/PlatformPei: Reserve GHCB-related areas if S3 is supported
>       OvmfPkg: Create GHCB pages for use during Pei and Dxe phase
>       OvmfPkg/PlatformPei: Move early GDT into ram when SEV-ES is enabled
>       UefiCpuPkg: Create an SEV-ES workarea PCD
>       OvmfPkg: Reserve a page in memory for the SEV-ES usage
>       OvmfPkg/PlatformPei: Reserve SEV-ES work area if S3 is supported
>       OvmfPkg/ResetVector: Add support for a 32-bit SEV check
>       OvmfPkg/Sec: Add #VC exception handling for Sec phase
>       OvmfPkg/Sec: Enable cache early to speed up booting
>       OvmfPkg/QemuFlashFvbServicesRuntimeDxe: Bypass flash detection with SEV-ES
>       UefiCpuPkg: Add a 16-bit protected mode code segment descriptor
>       UefiCpuPkg/MpInitLib: Add CPU MP data flag to indicate if SEV-ES is enabled
>       UefiCpuPkg: Allow AP booting under SEV-ES
>       OvmfPkg: Use the SEV-ES work area for the SEV-ES AP reset vector
>       OvmfPkg: Move the GHCB allocations into reserved memory
>       UefiCpuPkg/MpInitLib: Prepare SEV-ES guest APs for OS use
>       Maintainers.txt: Add reviewers for the OvmfPkg SEV-related files
>       UefiCpuPkg/MpInitLib: Always initialize the DoDecrement variable
>
> Tom Zhao (1):
>       MdePkg: UefiLib: Add a function to check if a language is supported
>
> Tomas Pilar (7):
>       ShellPkg/AcpiView: Move log reset to main method
>       ShellPkg/AcpiView: Refactor configuration
>       ShellPkg/AcpiView: Move table count reset
>       ShellPkg/AcpiView: Move parameter parsing
>       ShellPkg/AcpiView: Refactor DumpAcpiTableToFile
>       ShellPkg: Add AcpiViewCommandLib
>       ShellPkg/AcpiView: Add application wrapper
>
> Vijayenthiran Subramaniam (1):
>       ArmPkg/ArmSvcLib: prevent speculative execution beyond svc
>
> Vin Xue (1):
>       SignedCapsulePkg: Address NULL pointer dereference case.
>
> Vitaly Cheptsov (10):
>       MdePkg: Add STATIC_ASSERT macro
>       MdeModulePkg/ResetUtilityLib: Use STATIC_ASSERT macro
>       MdePkg: Use STATIC_ASSERT macro
>       MdePkg: Drop VERIFY_SIZE_OF in favour of STATIC_ASSERT
>       BaseTools: Do not call sys.setdefaultencoding with python 3
>       MdePkg: Do not use CreateEventEx unless required
>       BaseTools: Switch to GNU mode for CLANGPDB
>       OvmfPkg: Fix SMM/RT driver section alignment for XCODE5/CLANGPDB
>       BaseTools: Use SEH exceptions in CLANGPDB for IA32
>       MdePkg: Fix SafeString performing assertions on runtime checks
>
> Vladimir Olovyannikov (1):
>       MdePkg: UefiFileHandleLib: fix buffer overrun in FileHandleReadLine()
>
> Walon Li (1):
>       MdeModulePkg/SetupBrowserDxe: Do not reconnect driver with form-update
>
> Wasim Khan (1):
>       MdePkg: Include Acpi header file
>
> Wei6 Xu (29):
>       MdeModulePkg: Add Capsule On Disk related definition.
>       MdeModulePkg/CapsuleApp: Enhance Capsule-On-Disk related functions.
>       MdeModulePkg/BdsDxe: Support Capsule On Disk.
>       MdeModulePkg/CapsuleRuntimeDxe: Introduce PCD to control this feature.
>       MdeModulePkg/DxeIpl: Support Capsule On Disk.
>       MdeModulePkg: Add Capsule On Disk APIs into CapsuleLib.
>       MdeModulePkg: Add CapsuleOnDiskLoadPei PEIM.
>       MdeModulePkg/CapsuleApp: Enhance Capsule-On-Disk related functions.
>       MdeModulePkg: Add Capsule On Disk related definition.
>       MdeModulePkg/BdsDxe: Support Capsule On Disk.
>       MdeModulePkg/CapsuleRuntimeDxe: Introduce PCD to control this feature.
>       MdeModulePkg/DxeIpl: Support Capsule On Disk.
>       MdeModulePkg: Add Capsule On Disk APIs into CapsuleLib.
>       MdeModulePkg: Add CapsuleOnDiskLoadPei PEIM.
>       MdeModulePkg/DxeCapsuleLibFmp: Add missing NULL pointer check.
>       MdePkg/UefiDebugLibConOut: Add destructor to CloseEvent
>       MdePkg/UefiDebugLibDebugPortProtocol: Add destructor to CloseEvent
>       MdePkg/UefiDebugLibStdErr: Add destructor to CloseEvent
>       MdeModulePkg/CapsuleApp: Improve comparisons in CapsuleOnDisk.c
>       MdeModulePkg/DxeCapsuleLibFmp: Improve comparisons in CapsuleOnDisk.c
>       MdePkg: Add definition for Fmp Capsule Dependency.
>       MdeModulePkg/CapsuleApp: Enhance CapsuleApp for Fmp Capsule Dependency
>       FmdDevicePkg/FmpDxe: Support Fmp Capsule Dependency.
>       FmpDevicePkg: Add FmpDependency library class and BASE instance
>       FmpDevicePkg/Test: Add FmpDependencyLib unit test
>       FmpDevicePkg: Add FmpDependencyCheck library class and instances
>       FmpDevicePkg: Add FmpDependencyDevice library class and NULL instance
>       FmpDevicePkg/FmpDxe: Use new Fmp dependency libraries
>       Maintainers.txt: Add reviewer for FmpDevicePkg.
>
> XiaoyuX Lu (4):
>       CryptoPkg/BaseCryptLib: Wrap OpenSSL SM3 algorithm
>       CryptoPkg/OpensslLib: Fix CR/LF issue
>       CryptoPkg/OpensslLib: disable autoload-config for OpenSSL
>       CryptoPkg/OpensslLib: Exclude err_all.c in process_files.pl
>
> Ye Ting (1):
>       Change package reviewer of CryptoPkg.
>
> Yonghong Zhu (1):
>       Maintainers.txt: Remove Yonghong from BaseTools Reviewer
>
> Yuwei Chen (2):
>       BaseTools: Add Guid name support in GenFfs.
>       Maintainers.txt: Add 'Yuwei Chen' for BaseTools review
>
> Zhang, Chao B (2):
>       Revert "Capsule-on-Disk entire Patch
>       Maintainers.txt: Change SecurityPkg Maintainer Role
>
> Zhichao Gao (50):
>       MdeModulePkg/GraphicsConsoleDxe: Initialize the output mode
>       MdeMoudlePkg/CapsulePei: Fix coding style issue
>       MdeMoudlePkg/CapsulePei: Optimize AreCapsulesStaged
>       MdeMoudlePkg/CapsulePei: Optimize GetScatterGatherHeadEntries
>       MdeMoudlePkg/CapsulePei: No need to remain space for null-terminate
>       MdeModulePkg/CapsulePei: Add memory pointer check
>       UefiCpuPkg/MpInitLib: MicrocodeDetect: Ensure checked range is valid
>       MdeModulePkg/BdsDxe: Use a pcd to control PlatformRecovery
>       ShellPkg/Type.c: Add value check before (LoopVar - 1)
>       CryptoPkg/BaseCryptLib: Use cmp-operator for non-Boolean comparisons
>       ShellPkg/UefiShellLevel2CommansLib: Pointer Resonse should be checked
>       ShellPkg/UefiShellDriver1CommandsLib: Make array big enough
>       ShellPkg/Pci.c: Update supported link speed to PCI5.0
>       MdeModulePkg: Extend the support keyboard type of Terminal console
>       MdeModulePkg/TerminalDxe: Extend the terminal console support types
>       MdeModulePkg/BM_UI: Add the new terminal types to related menu
>       MdeModulePkg/TerminalDxe: Enhance the arrow keys support
>       MdePkg/SmBios.h: SMBIOS 3.3.0 add PCI gen4 values for type 9
>       MdePkg/SmBios.h: SMBIOS 3.3.0 add support for CXL Flexbus
>       MdePkg/SmBios.h: SMBIOS 3.3.0 Add value HBM and Die for type 17
>       MdePkg/SmBios.h: SMBIOS 3.3.0 Update Intel Persistent Memory string
>       ShellPkg/SmbiosView: SMBIOS 3.3.0 add PCI gen4 values for type 9
>       ShellPkg/SmbiosView: SMBIOS 3.3.0 add support for CXL Flexbus
>       ShellPkg/SmbiosView: SMBIOS 3.3.0 Add value HBM and Die for type 17
>       ShellPkg/SmbiosView: SMBIOS 3.3.0 Update "Intel persistent memory"
>       ShellPkg/UefiHandleParsingLib: Fix error allocate pool
>       ShellPkg/ShellProtocol: Return error code while fail parsing cmd-line
>       SecurityPkg/TcgPhysicalPresenceLib: Replace the ASSERT with error code
>       CryptoPkg/CryptoDxe: Add function to indicate the deprecated algorithm
>       CryptoPkg/BaseCrpytLib: Retire MD4 algorithm
>       CryptoPkg/OpensslLib: Set MD4 disable in OpensslLib
>       CryptoPkg/BaseCryptLib: Retire ARC4 algorithm
>       CryptoPkg/OpensslLib: Set ARC4 disable in OpensslLib
>       CryptoPkg/BaseCryptLib: Retire the TDES algorithm
>       CryptoPkg/OpensslLib: Set TDES disable in OpensslLib
>       CryptoPkg/BaseCryptLib: Retire Aes Ecb mode algorithm
>       CryptoPkg/OpensslLib: Remove the Aes Ecb file in the OpensslLib
>       CryptoPkg/BaseCryptLib: Retire HMAC MD5 algorithm
>       CryptoPkg/BaseCryptLib: Retire HMAC SHA1 algorithm
>       CryptoPkg/opensslconf.h: Covert the file ending to dos format
>       CryptoPkg/Crypto.h: Update the version of Crypto Driver
>       CryptoPkg/BaseCryptLib: Add MARCO to disable the deprecated MD5
>       CryptoPkg/BaseCryptLib: Add MARCO to disable the deprecated SHA1
>       MdeModulePkg/PartitionDxe: Correct the MBR last block value
>       MdeModulePkg/PartitionDxe: Skip the MBR that add for CD-ROM
>       MdeModulePkg/PartitionDxe: Add already start check for child hanldes
>       Maintainers.txt: Add reviewer for serial, disk and SMBIOS
>       MdeModulePkg/PartitionDxe: Put the UDF check ahead of MBR
>       MdeModulePkg/PartitionDxe: Revert changes for the special MBR
>       MdeModulePkg/PartitionDxe: Fix the incorrect LBA size in child hander
>
> Zhiguang Liu (14):
>       BaseTools: Add map file parsing support for CLANG9
>       BaseTools: Add support for parseing map files generated by CLANG9 in GenFv
>       MdeModulePkg: Unify the definitions of size_t
>       MdeModulePkg: LzmaCustomDecompressLib.inf don't support EBC anymore
>       MdeModulePkg: Add ARM/Aarch64 support which were missing
>       edksetup.bat: Simplify the step to use CLANGPDB
>       BaseTools: append -DNO_MSABI_VA_FUNCS option in CLANGPDB tool chain
>       MdePkg: Avoid using __clang__ to specify CLANGPDB
>       BaseTools: remove -DNO_MSABI_VA_FUNCS option in CLANGPDB tool chain
>       MdePkg DebugLib: Enable FILE NAME as DEBUG ASSERT for CLANG
>       MdePkg: add definitions for ACPI NVDIMM Device Path
>       Using LLVM compiler set to build BaseTools in Linux
>       Maintainers.txt: Add 'Zhiguang Liu' for MdePkg review
>       SecurityPkg: Initailize variable Status before it is consumed.
>
> Zhijux Fan (27):
>       BaseTools:Make BaseTools support new rules to generate RAW FFS FILE
>       BaseTools:Add import in FvImageSection
>       BaseTools:Add DetectNotUsedItem.py to Edk2\BaseTools\Scripts
>       BaseTools:Remove unused Edk2\BuildNotes2.txt
>       BaseTools:Linux changes the way the latest version is judged
>       BaseTools:Add the Judgment Method of "--exclude"
>       BaseTools: Update incorrect variable name 'DataPile'
>       BaseTools:Ecc handle another copyright format
>       BaseTools:ECC need to handle lower case 'static'
>       BaseTools:Replace PlatformInfo with PlatformAutoGen for Moudle
>       BaseTools:change some incorrect parameter defaults
>       BaseTools:Fix the issue that build report failed
>       BaseTools:"--exclude" don't apply if parameter ends with separator
>       BaseTools:Add [packages] section in dsc file
>       BaseTools:fix regression issue for platform .map file
>       BaseTools:Enhance the way to handling included dsc file
>       BaseTools:replaces the two offending quotes by ascii quotes
>       BaseTools:Change the case rules for ECC check pointer names
>       BaseTools:Fix GenFds issue for BuildOption replace GenFdsOption
>       BaseTools:fix Ecc tool issue for check StructPcd
>       BaseTools: Fixed build failure when using python38
>       BaseTools:build failure in CLANGPDB tool chain
>       BaseTools:copy the common PcdValueCommon.c to output directory
>       BaseTools:fix issue for decode the stdout/stderr byte arrays
>       BaseTools:Fix build tools print traceback info issue
>       BaseTools:GuidedSectionTools.txt is not generated correctly
>       BaseTools:Add the spare space FV image size checker

Cc: Philippe Mathieu-Daudé <philmd@redhat.com>
Ref: https://bugs.launchpad.net/qemu/+bug/1852196
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Tested-by: Philippe Mathieu-Daude <philmd@redhat.com>
Message-Id: <20200908072939.30178-6-lersek@redhat.com>
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
2020-09-13 23:03:15 +02:00
Laszlo Ersek
504fffb9e5 roms/Makefile.edk2: prepare for replacing TPM2*_ENABLE macros
Ekd2 commit 07952a962a40 ("OvmfPkg: rename TPM2 config prefix to TPM",
2020-03-04), part of edk2-stable202005, renamed OVMF's TPM2*_ENABLE build
flags to TPM*_ENABLE. Going forward, the TPM*_ENABLE flags would activate
both TPM1.2 and TPM2.0 support.

In order to build OVMF at edk2-stable202008 without losing currently
enabled functionality, insert the new flags as no-ops now. We'll remove
the old flags after advancing with the edk2 submodule.

Cc: Philippe Mathieu-Daudé <philmd@redhat.com>
Ref: https://bugs.launchpad.net/qemu/+bug/1852196
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20200908072939.30178-4-lersek@redhat.com>
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
2020-09-13 23:03:15 +02:00
Laszlo Ersek
ec87b5daca roms/efirom, tests/uefi-test-tools: update edk2's own submodules first
In edk2 commit 06033f5abad3 ("BaseTools: Make brotli a submodule",
2020-04-16), part of edk2-stable202005, the Brotli compressor /
decompressor source code that edk2 had flattened into BaseTools was
replaced with a git submodule.

This means we have to initialize edk2's own submodules before building
BaseTools not just in "roms/Makefile.edk2", but in "roms/Makefile" (for
the sake of the "efirom" target) and "tests/uefi-test-tools/Makefile" as
well.

Right now this patch is effectively a no-op; it will become meaningful
after we move the edk2 submodule to edk2-stable202008.

Cc: Philippe Mathieu-Daudé <philmd@redhat.com>
Ref: https://bugs.launchpad.net/qemu/+bug/1852196
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20200908072939.30178-3-lersek@redhat.com>
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
2020-09-13 23:03:14 +02:00
Peter Maydell
9435a8b3dd ipxe: update to aug 2020 snapshot.
-----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2.0.22 (GNU/Linux)
 
 iQIcBAABCgAGBQJfVyAWAAoJEEy22O7T6HE4biYQAM7a0u092/zyN3cL5KZu0Ri3
 lfNJZrDukZMLcl8J9IHx0EPcAd1wZXrGoBx0R4TRSb+dh06WZ7KI0k7PyTRz6knE
 MECT7C+TSB3Fh7FR7foKd83kB2HSsOfMMZ/cCXs6NFcghkLN+yx3EYB/35TguHCY
 tKSvtdqnigiW7UNI3pL1RKuBLfzAZbDPNtZNIXY0ol3W0U+fvFDhc9UfZ5Pa8anA
 hVs2ctW3y0hR7JKU2Hdhd5LYkuSc9tgoIWQulonGPs+rG6+DWHAV/0Usn3wU0VEt
 moT/lb7BjjKxliL1H0AWTPNpWe7DE4nVN1mdcyOLwzZeaBmcJBzc/P1COvuihwqK
 BDO020e+ob4ksnOywSyCnvsmEu/KCurAubDTtBfPqOlqDCYnaCUYJ/7jTwIuRbnq
 7Dh4WnTUbrxXAr3OZjbVjD8g4io0QYXo7PJAywDJd1BgB6zOhbbpkS6rRcDxpMqb
 HqD0gN7foM9pSs6hF3O9iAD3iqkkvvCzK4DlM8RJNz+HgRtvbRCHr1NNeR5buCYU
 OB5UYblTWyl2YUl+WqVYQ1mARfEXlxd7HfFJsrHZC0F0jsVwTVdPcKXyabZ5fSho
 ogFKuiD65SVo1qM8oPXXgwlrh6W/ck2Fw8JD93ukLWfQkNaVz6P60UIokUD9yy60
 lusFO/lPO478aUMywcg1
 =s4+N
 -----END PGP SIGNATURE-----

Merge remote-tracking branch 'remotes/kraxel/tags/sirius/ipxe-20200908-pull-request' into staging

ipxe: update to aug 2020 snapshot.

# gpg: Signature made Tue 08 Sep 2020 07:09:26 BST
# gpg:                using RSA key 4CB6D8EED3E87138
# gpg: Good signature from "Gerd Hoffmann (work) <kraxel@redhat.com>" [full]
# gpg:                 aka "Gerd Hoffmann <gerd@kraxel.org>" [full]
# gpg:                 aka "Gerd Hoffmann (private) <kraxel@gmail.com>" [full]
# Primary key fingerprint: A032 8CFF B93A 17A7 9901  FE7D 4CB6 D8EE D3E8 7138

* remotes/kraxel/tags/sirius/ipxe-20200908-pull-request:
  ipxe: update binaries
  ipxe: drop ia32 efi roms
  ipxe: update submodule

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2020-09-08 21:21:13 +01:00
Gerd Hoffmann
9ed02fbb84 ipxe: drop ia32 efi roms
UEFI on ia32 never really took off.  Basically the BIOS -> UEFI shift
came too late, x64 was widespread already, so vendors went from BIOS
straight to UEFI on x64.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2020-09-08 08:08:30 +02:00
Gerd Hoffmann
ad3d53b16b ipxe: update submodule
master snapshot, most recent commit from Aug 23th

shortlog
========

Andrew Grasso (1):
      [intel] Add INTEL_NO_PHY_RST for I218LM

Ben Bleything (1):
      [intel] Set INTEL_NO_PHY_RST on i218v

Bobby Lockwood (1):
      [libgcc] Change __divmoddi4 from int64 [unknown] to int64_t

Bruce Rogers (1):
      [build] Be explicit about -fcommon compiler directive

Christian Nilsson (1):
      [intel] Add PCI ID for I219-V and -LM 6 to 9

Daniel Johnson (1):
      [deflate] Fix typo in comment describing length codes

David Decotigny (2):
      [pcbios] Fix "out of memory" detection when expanding bottom area
      [pcbios] Take alignment into account when checking for available space

Dentcho Ludmilov Bankov (1):
      [comboot] Fix stack pointer retrieval after COM32 binary returns

Ignat Korchagin (3):
      [snp] Try promiscuous multicast receive filter if the regular one fails
      [snp] Set EFI_SIMPLE_NETWORK_RECEIVE_MULTICAST bit as per UEFI spec
      [efi] Check the status code from AllocatePool()

Joe Groocock (1):
      [cmdline] Add "--timeout" parameter to "ifconf" command

Joseph Wong (1):
      [bnxt] Add driver support for Broadcom NetXtreme-E Adapters

LaDerrick H (1):
      [sfc] Add PCI ID for Solarflare SFC9120 and Solarflare SFC9140

Michael Brown (105):
      [init] Show startup and shutdown function names in debug messages
      [efi] Blacklist the Dell Ip4ConfigDxe driver
      [tls] Support stateful session resumption
      [tls] Fix incorrectly duplicated error number
      [tls] Support stateless session resumption
      [crypto] Use x509_name() in validator debug messages
      [tls] Display cross-certificate and OCSP status messages
      [tls] Display validator messages only while validation is in progress
      [tcp] Display "connecting" status until connection is established
      [ocsp] Accept response certID with missing hashAlgorithm parameters
      [pci] Add support for PCI MSI-X interrupts
      [vlan] Provide vlan_netdev_rx() and vlan_netdev_rx_err()
      [intelxl] Use VLAN tag in receive descriptor if present
      [intelxl] Allow for virtual function admin queue register maps
      [intelxl] Use one admin queue buffer per admin queue descriptor
      [intelxl] Allow admin queues to be reinitialised
      [intelxl] Allow admin cookie to hold extended opcode and return code
      [intelxl] Provide a mechanism for handling "send to VF" events
      [intelxl] Use 32-byte receive descriptors
      [intelxl] Allow for arbitrary placement of ring tail registers
      [intelxl] Split out ring creation from context programming
      [intelxl] Allow for arbitrary placement of interrupt control register
      [intelxl] Expose functions required by virtual function driver
      [intelxl] Choose to operate in non-PXE mode
      [intelxl] Add driver for Intel 40 Gigabit Ethernet NIC virtual functions
      [build] Fix use of inline assembly on GCC 8 ARM64 builds
      [arm] Provide dummy implementations for {in,out}[s]{b,w,l}
      [efi] Return only registered EFI devices from efidev_parent()
      [fdt] Add ability to parse a MAC address from a flattened device tree
      [efi] Register a device tree if provided by the platform firmware
      [smsc95xx] Fetch MAC from device tree for Raspberry Pi
      [build] Add named configuration for Raspberry Pi
      [smscusb] Fetch MAC from device tree for Raspberry Pi Model B+
      [build] Do not apply WORKAROUND_CFLAGS for host compiler
      [build] Move predefined all-drivers build shortcut to Makefile
      [build] Add predefined shortcut for Raspberry Pi builds
      [process] Add PROC_INIT() for initialising static processes
      [peerdist] Start block download timers from within opener methods
      [peerdist] Limit number of concurrent raw block downloads
      [tls] Add missing call to tls_tx_resume() when restarting negotiation
      [crypto] Drag in configured digestInfo prefixes for any use of RSA
      [crypto] Profile the various stages of modular multiplication
      [coverity] Override assumptions about wcrtomb() and hmac_init()
      [ethernet] Avoid false positive Coverity warning
      [golan] Fix address-of-pointer bug for multicast attach/detach
      [efi] Report failed control transfers as expected by the USB core
      [efi] Do not attempt EFI_USB_IO_PROTOCOL transfers during shutdown
      [lan78xx] Always enable automatic speed and duplex detection
      [peerdist] Allow PeerDist to be globally enabled or disabled
      [peerdist] Allow for the use of a hosted cache server
      [build] Construct full version number automatically from git revision
      [travis] Ensure that most recent tag is always available
      [tftp] Eliminate unnecessary variable-length stack allocation
      [infiniband] Eliminate variable-length stack allocation
      [slam] Eliminate variable-length stack allocation
      [slam] Allow for the possibility of IPv6 multicast addresses
      [settings] Eliminate variable-length stack allocation
      [iscsi] Eliminate variable-length stack allocations in CHAP handlers
      [iscsi] Eliminate variable-length stack allocation in URI parsing
      [bios] Define macros for constructing partition table entries
      [int13con] Create log partition only when CONSOLE_INT13 is enabled
      [efi] Disambiguate errors returned by ConnectController
      [png] Fix potential integer overflow
      [efi] Work around UEFI specification bug in LoadImage
      [efi] Work around UEFI specification bug in LoadImage for SAN boot
      [uri] Avoid appearing to access final byte of a potentially empty string
      [efi] Attempt to connect our driver directly if ConnectController fails
      [tls] Allow a minimum TLS protocol version to be specified
      [tls] Default to supporting only TLSv1.1 or above
      [crypto] Allow algorithms to be included without being OID-identifiable
      [crypto] Ensure that test code drags in required ASN.1 object identifiers
      [crypto] Disable MD5 as an OID-identifiable algorithm by default
      [snp] Retry initialisation if link is reported as down
      [util] Treat empty integer strings as invalid
      [parseopt] Treat empty integer strings in user input as invalid
      [efi] Enable stack protection where possible
      [ocsp] Accept SHA1 certID responses even if SHA1 is not enabled
      [intel] Avoid spurious compiler warning on GCC 10
      [golan] Add explicit type casts for nodnic_queue_pair_type
      [build] Disable position-independent code for ARM64 EFI builds
      [efi] Detect and disable seriously broken EFI_RNG_PROTOCOL implementations
      [efi] Raise TPL during driver entry point
      [axge] Handle non-gigabit link speeds
      [usb] Clear device endpoint halt before resetting host endpoint
      [usb] Add missing usb_recycle() for completed hub interrupt transfers
      [usb] Do not attempt to disable USB3 hub ports
      [xhci] Set link state to RxDetect after disabling USB3 root hub port
      [usb] Avoid unnecessary calls to usb_hub_set_drvdata()
      [xhci] Increase link state settling delay to 100ms
      [axge] Reapply USB device configuration when opening network device
      [usb] Leave port enabled after a failed device registration
      [crypto] Avoid temporarily setting direction flag in bigint_is_geq()
      [libc] Provide an unoptimised generic_memcpy_reverse()
      [efi] Avoid setting direction flag on EFI platforms
      [libc] Add bit-rotation functions for unsigned long values
      [efi] Distribute available entropy within stack cookie
      [efi] Ensure NUL byte is at lowest address within stack cookie
      [efi] Claim SNP devices early in efi_download_start()
      [xfer] Remove address family from definition of a socket opener
      [dns] Use all configured DNS servers
      [wpa] Fix erroneous debug message in wpa_derive_ptk
      [efi] Match EDK2 numbering for USB ports
      [efi] Use device path to locate filesystem from which we were loaded
      [efi] Attempt NII initialisation both with and without cable detection
      [build] Fix building on older versions of gcc

Michael J. Bazzinotti (1):
      [libc] Fix memcmp() to return proper values

Mohammed (1):
      [golan] Add various new PCI device IDs

Rob Taglang (1):
      [intelx] Added PCI_ROM entry for Intel x553/x557-AT and x553 (SFP+) NICs

Tobias Kortkamp (1):
      [build] Fix a GNUism that FreeBSD's sed(1) cannot deal with

Valentine Barshak (2):
      [build] Fix "'%s' directive argument is null" error
      [build] Workaround compilation error with gcc 9.1

bit (1):
      [build] Fix default target in sdsk image

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2020-09-08 08:08:22 +02:00
Helge Deller
009673edd9 seabios-hppa: Update SeaBIOS to hppa-qemu-5.2-2 tag
Changes:
* If only one bootable device is available, boot from it.
* Silence PDC warnings with HP-UX 11.11
* Inform Linux about fw_cfg port addresses
* Make power switch button configurable from qemu
* Clear screen on machine reset
* Add fw_cfg option to enable runtime debug info
* Fix panic on OpenBSD/6.7 regarding STI console
* Set text planes and used_bits in STI fields
* Fix mon_tbl entries
* Convert sti_region_list to an initialized struct

Signed-off-by: Helge Deller <deller@gmx.de>
2020-09-01 18:29:59 +02:00
Peter Maydell
8e49197ca5 artist out of bounds fixes
-----BEGIN PGP SIGNATURE-----
 
 iHUEABYIAB0WIQS86RI+GtKfB8BJu973ErUQojoPXwUCX0bPowAKCRD3ErUQojoP
 X43sAPwP4Prb0NQTw68l5oSwOoIcuWb4GZBjxOPecDis/0K2ogD/WswDJ8qk3RAQ
 7XYGY8LuMdhwfcsx15TsuB/HAUie3QM=
 =wIGS
 -----END PGP SIGNATURE-----

Merge remote-tracking branch 'remotes/hdeller/tags/target-hppa-v3-pull-request' into staging

artist out of bounds fixes

# gpg: Signature made Wed 26 Aug 2020 22:09:55 BST
# gpg:                using EDDSA key BCE9123E1AD29F07C049BBDEF712B510A23A0F5F
# gpg: Good signature from "Helge Deller <deller@gmx.de>" [unknown]
# gpg:                 aka "Helge Deller <deller@kernel.org>" [unknown]
# gpg: WARNING: This key is not certified with a trusted signature!
# gpg:          There is no indication that the signature belongs to the owner.
# Primary key fingerprint: 4544 8228 2CD9 10DB EF3D  25F8 3E5F 3D04 A7A2 4603
#      Subkey fingerprint: BCE9 123E 1AD2 9F07 C049  BBDE F712 B510 A23A 0F5F

* remotes/hdeller/tags/target-hppa-v3-pull-request:
  hw/display/artist: Fix invalidation of lines near screen border
  hw/display/artist: Fix invalidation of lines in artist_draw_line()
  hw/display/artist: Unbreak size mismatch memory accesses
  hw/display/artist: Prevent out of VRAM buffer accesses
  Revert "hw/display/artist: Avoid drawing line when nothing to display"
  hw/display/artist: Refactor artist_rop8() to avoid buffer over-run
  hw/display/artist: Check offset in draw_line to avoid buffer over-run
  hw/hppa/lasi: Don't abort on invalid IMR value
  hw/display/artist.c: fix out of bounds check
  hw/hppa: Implement proper SeaBIOS version check
  seabios-hppa: Update to SeaBIOS hppa version 1
  hw/hppa: Sync hppa_hardware.h file with SeaBIOS sources

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2020-08-26 22:23:53 +01:00
Peter Maydell
152be6de91 The first RISC-V PR for the 5.2 window.
This includes:
  - NaNBox fixes
  - Vector extension improvements
  - a L2 cache controller
  - PMP fixes
  - Upgrade to OpenSBI v0.8 and the generic platform
  - Fixes for the Ibex PLIC
 -----BEGIN PGP SIGNATURE-----
 
 iQEzBAABCAAdFiEE9sSsRtSTSGjTuM6PIeENKd+XcFQFAl9Ar0oACgkQIeENKd+X
 cFSxZQgAohfo4YEv8i74anCsArSMacyRcZj7gPb3CyHaJcKXgBjSvyWtAbtMVX6n
 sVXLPE1u7jSgLqEYDqZHgqnTY5CRIkEF1F8h8l+Sz9W7InDLfYchbkNHTQ2FYaXj
 MnGBCHlkoOXawWKmubQIpVSrb3qMw3lzO+sglAwyut+eqao4uGBf8C4aBDRBs9Ks
 FLq4cKajAnzH7LjkQuj4YH2N3bj2WsBm1yt/B8NaYHBYwoyV/NJGfK/3yjBnqfGb
 mZWLXncNiikoVR1cJXTz+mTfRs7UMtsSUkdBSsyMUTDPBqfQrR7ABxxu0SzKd3+N
 xF9DS9qPk9aQlsAvqNP4N14rnS1I+g==
 =RJ3z
 -----END PGP SIGNATURE-----

Merge remote-tracking branch 'remotes/alistair/tags/pull-riscv-to-apply-20200821-1' into staging

The first RISC-V PR for the 5.2 window.

This includes:
 - NaNBox fixes
 - Vector extension improvements
 - a L2 cache controller
 - PMP fixes
 - Upgrade to OpenSBI v0.8 and the generic platform
 - Fixes for the Ibex PLIC

# gpg: Signature made Sat 22 Aug 2020 06:38:18 BST
# gpg:                using RSA key F6C4AC46D4934868D3B8CE8F21E10D29DF977054
# gpg: Good signature from "Alistair Francis <alistair@alistair23.me>" [full]
# Primary key fingerprint: F6C4 AC46 D493 4868 D3B8  CE8F 21E1 0D29 DF97 7054

* remotes/alistair/tags/pull-riscv-to-apply-20200821-1:
  hw/intc: ibex_plic: Honour source priorities
  hw/intc: ibex_plic: Don't allow repeat interrupts on claimed lines
  hw/intc: ibex_plic: Update the pending irqs
  target/riscv: Change the TLB page size depends on PMP entries.
  target/riscv: Fix the translation of physical address
  gitlab-ci/opensbi: Update GitLab CI to build generic platform
  hw/riscv: spike: Change the default bios to use generic platform image
  hw/riscv: Use pre-built bios image of generic platform for virt & sifive_u
  roms/Makefile: Build the generic platform for RISC-V OpenSBI firmware
  roms/opensbi: Upgrade from v0.7 to v0.8
  configure: Create symbolic links for pc-bios/*.elf files
  riscv: Fix bug in setting pmpcfg CSR for RISCV64
  hw/riscv: sifive_u: Add a dummy L2 cache controller device
  target/riscv: check before allocating TCG temps
  target/riscv: Clean up fmv.w.x
  target/riscv: Check nanboxed inputs in trans_rvf.inc.c
  target/riscv: Check nanboxed inputs to fp helpers
  target/riscv: Generate nanboxed results from trans_rvf.inc.c
  target/riscv: Generalize gen_nanbox_fpr to gen_nanbox_s
  target/riscv: Generate nanboxed results from fp helpers

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2020-08-23 11:38:52 +01:00
Bin Meng
00db05fbed roms/Makefile: Build the generic platform for RISC-V OpenSBI firmware
The RISC-V generic platform is a flattened device tree (FDT) based
platform where all platform specific functionality is provided based
on FDT passed by previous booting stage. The support was added in
the upstream OpenSBI v0.8 release recently.

Update our Makefile to build the generic platform instead of building
virt and sifive_u separately for RISC-V OpenSBI firmware, and change
to use fw_dynamic type images as well.

Signed-off-by: Bin Meng <bin.meng@windriver.com>
Reviewed-by: Anup Patel <anup@brainfault.org>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Message-Id: <1596439832-29238-4-git-send-email-bmeng.cn@gmail.com>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
2020-08-21 22:37:55 -07:00
Bin Meng
8ebde78620 roms/opensbi: Upgrade from v0.7 to v0.8
Upgrade OpenSBI from v0.7 to v0.8.

The v0.8 release includes the following commits:

1bb00ab lib: No need to provide default PMP region using platform callbacks
a9eac67 include: sbi_platform: Combine reboot and shutdown into one callback
6585fab lib: utils: Add SiFive test device
4781545 platform: Add Nuclei UX600 platform
3a326af scripts: adapt binary archive script for Nuclei UX600
5bdf022 firmware: fw_base: Remove CSR_MTVEC update check
e6c1345 lib: utils/serial: Skip baudrate config if input frequency is zero
01a8c8e lib: utils: Improve fdt_parse_uart8250() API
0a0093b lib: utils: Add fdt_parse_uart8250_node() function
243b0d0 lib: utils: Remove redundant clint_ipi_sync() declaration
e3ad7c1 lib: utils: Rename fdt_parse_clint() to fdt_parse_compat_addr()
a39cd6f lib: utils: Add FDT match table based node lookup
dd33b9e lib: utils: Make fdt_get_node_addr_size() public function
66185b3 lib: utils: Add fdt_parse_sifive_uart_node() function
19e966b lib: utils: Add fdt_parse_hart_id() function
44dd7be lib: utils: Add fdt_parse_max_hart_id() API
f0eb503 lib: utils: Add fdt_parse_plic_node() function
1ac794c include: Add array_size() macro
8ff2b94 lib: utils: Add simple FDT timer framework
76f0f81 lib: utils: Add simple FDT ipi framework
75322a6 lib: utils: Add simple FDT irqchip framework
76a8940 lib: utils: Add simple FDT serial framework
7cc6fa4 lib: utils: Add simple FDT reset framework
4d06353 firmware: fw_base: Introduce optional fw_platform_init()
f1aa9e5 platform: Add generic FDT based platform support
1f21b99 lib: sbi: Print platform hart count at boot time
2ba7087 scripts: Add generic platform to create-binary-archive.sh
4f18c6e platform: generic: Add Sifive FU540 TLB flush range limit override
13717a8 platform: Remove qemu/virt directory
65c06b0 platform: Remove spike directory
d626037 docs: Add missing links in platform.md
7993ca2 include: sbi: Remove redundant page table related defines
5338679 lib: sbi_tlb: Fix remote TLB HFENCE VVMA implementation
dc38929 lib: sbi: Improve misa_string() implementation
433bac7 docs: platform/generic: Add details about stdout-path DT property
b4efa70 docs: platform/generic: Add details about IPI and timer expectations
dfd9dd6 docs: Add platform requirements document
c2286b6 docs: Fix ordering of pages in table of contents
7be75f5 docs: Don't use italic text in page title
63a513e lib: Rename unprivileged trap handler
aef9a60 lib: Add csr detect support
13ca20d lib: Create a separate math helper function file
79d0fad lib: utils: Update reserved memory fdt node even if PMP is not present
6a053f6 lib: Add support for hart specific features
b2df751 platform: Move platform features to hart
4938024 platform: fpga: Remove redundant platform specific features
ec0d2a7 lib: timer: Provide a hart based timer feature
1f235ec lib: Add platform features in boot time print
22c4334 lib: Add hart features in boot time print
36833ab lib: Optimize inline assembly for unprivilege access functions
38a4b54 firmware: Correct spelling mistakes
28b4052 lib: sbi: detect features before everything else in sbi_hart_init()
4984183 lib: sbi: Improve get_feature_str() implementation and usage
3aa1036 lib: sbi: Remove extra spaces from boot time prints
3a8fc81 lib: sbi: Print platform HART count just before boot HART id
63b0f5f include: sbi: Use scratch pointer as parmeter in HART feature APIs
2966510 lib: sbi: Few cosmetic improvements to HART feature detection
a38bea9 lib: sbi_hart: Detect number of supported PMP regions
89ba634 include: sbi: Add firmware extension constants
73d6ef3 lib: utils: Remove redundant parameters from PLIC init functions
446a9c6 lib: utils: Allow PLIC functions to be used for multiple PLICs
2c685c2 lib: utils: Extend fdt_find_match() Implementation
d30bb68 lib: utils/irqchip: Initialize all matching irqchip DT nodes
a9a9751 lib: utils: Allow CLINT functions to be used for multiple CLINTs
569dd64 lib: utils: Add fdt_parse_clint_node() function
6956e83 lib: utils/ipi: Initialize all matching ipi DT nodes
a63f05f lib: utils/timer: Initialize all matching timer DT nodes
30b6040 Makefile: Fix builtin DTB compilation for out-of-tree platforms
64f1408 firmware: fw_base: Make builtin DTB available to fw_platform_init()
4ce6b7a firmware: fw_base: Don't OR forced FW_OPTIONS
86ec534 firmware: Allow fw_platform_init() to return updated FDT location
c6c65ee Makefile: Preprocess builtin DTS
4e3876d Makefile: Add mechanism for platforms to have multiple builtin DTBs
72019ee platform: kendryte/k210: Use new mechanism of builtin DTB
51f0e4a firmware: Remove FW_PAYLOAD_FDT and related documentation
1b8c012 lib: Add RISC-V hypervisor v0.6.1 support
79bfd67 docs: Use doxygen config to mark the main page
106b888 docs: Remove redundant documentation about combined payload use case
9802906 platform: Add AE350 platform specific SBI handler
32f87e5 platform: Add AE350 cache control SBIs
e2c3f01 lib: Fix __sbi_hfence_gvma_vmid_gpa() and __sbi_hfence_vvma_asid_va()
6966ad0 platform/lib: Allow the OS to map the regions that are protected by PMP
518e85c platform: Update Nuclei ux600 platform support
d5725c2 lib: Don't print delegation CSRs if there is no S-Mode
637b348 lib: Fix the SBI_HART_HAS_MCOUNTEREN feature check
db56ef3 platform: Add support for Shakti C-class SoC from IIT-M
9bd5f8f lib: sbi: Fix 32/64 bits variable compatibility
2314101 lib: Don't return any invalid error from SBI ecall
a98258d include: Bump-up version to 0.8

Signed-off-by: Bin Meng <bin.meng@windriver.com>
Reviewed-by: Anup Patel <anup@brainfault.org>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Message-Id: <1596439832-29238-3-git-send-email-bmeng.cn@gmail.com>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
2020-08-21 22:37:55 -07:00
Gerd Hoffmann
c180ff4c79 seabios: update to 1.14-final
Due to 1.14 release being delayed it missed qemu 5.1.
The last snapshot has all code changes though, so this
changes only the version string in the binaries.

shortlog
========

Kevin O'Connor (1):
      docs: Note v1.14.0 release

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2020-08-19 08:35:24 +02:00
Helge Deller
6d9c524da2 seabios-hppa: Update to SeaBIOS hppa version 1
Changes include:
* gcc-10 compile fix
* NetBSD boot fix due to wrong power button address
* Fix endian bug in romfile_loadint()
* Introduce SeaBIOS firmware version check
* Implement QEMU fw_cfg interface support

Required for proper version checking and gcc-10 update on Debian.

Signed-off-by: Helge Deller <deller@gmx.de>
2020-08-04 15:52:34 +02:00
Gerd Hoffmann
1f42e24699 seabios: update to master snapshot
seabios master branch got a few bugfixes, so update
to a newer snapshot to pick them up for 5.1-rc3.

shortlog
========

Kevin O'Connor (2):
      vgabios: Fix preserve memory flag in handle_1000
      ldnoexec: Add script to remove ET_EXEC flag from intermediate build objects

Paul Menzel (1):
      nvme: Increase `nvme_cmd_readwrite()` message log level from 3 to 5

Stefan Reiter (1):
      virtio-scsi: fix boot prio detection by using correct lun

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2020-08-03 07:01:02 +02:00
Mark Cave-Ayland
54414d0fb1 Update OpenBIOS images to 7f28286f built from submodule.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
Cc: qemu-stable@nongnu.org
2020-07-27 16:08:24 +01:00
Alexey Kardashevskiy
b25fbd6a13 pseries: Update SLOF firmware image
This adds tcgbios (this was posted earlier [1] but got lost)
and fixes FDT update at ibm,client-architecture-support
for huge guests.

The full list of changes:

Alexey Kardashevskiy (4):
      make: Define default rule for .c when V=1 or V=2
      version: update to 20200513
      fdt: Avoid recursion when traversing tree
      version: update to 20200717

Gustavo Romero (1):
      board-qemu: Fix comment about SLOF start address

Stefan Berger (6):
      tcgbios: Only write logs for PCRs that are allocated
      tcgbios: Fix the vendorInfoSize to be of type uint8_t
      tcgbios: Add support for SHA3 type of algorithms
      elf: Implement elf_get_file_size to determine size of an ELF image
      tcgbios: Implement tpm_hash_log_extend_event_buffer
      tcgbios: Measure the bootloader file read from disk

[1] https://patchwork.ozlabs.org/project/qemu-devel/patch/20200513024355.121476-1-aik@ozlabs.ru/

Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
2020-07-20 09:21:39 +10:00
Mark Cave-Ayland
1e04092fee Update OpenBIOS images to 75fbb41d built from submodule.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
2020-07-07 21:54:37 +01:00
Gerd Hoffmann
4879d1bbc6 seabios: update 128k config
Turn off some options to keep size below 128k.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2020-07-02 16:20:08 +02:00
Gerd Hoffmann
de15df5ead seabios: update submodule to pre-1.14 master snapshot
seabios 1.14 release is planned for end of july,
early enough to make it into qemu 5.1-rc2 if
everything goes as planned.

Update seabios to a master snapshot now, so it'll get
test coverage during the freeze and the update to the
final version is much smaller (and should have bugfixes
only).

seabios git shortlog
--------------------

Alexey Kirillov (2):
      boot: Detect strict boot order (HALT record) in function
      virtio: Do not init non-bootable devices

Christian Ehrhardt (1):
      build: use -fcf-protection=none when available

Gerd Hoffmann (25):
      boot: cache HALT priority
      virtio-scsi: skip initializing non-bootable devices
      nvme: skip initializing non-bootable devices
      timer: add tsctimer_setfreq()
      kvm: detect unconditionally
      kvm: add support for reading tsc frequency via cpuid.
      kvm: add support for reading tsc frequency from kvmclock
      sercon: vbe modeset is int 10h function 4f02 not 4f00
      pci: factor out ioconfig_cmd()
      pci: add mmconfig support
      qemu: factor out qemu_cfg_detect()
      qemu: rework e820 detection
      qemu: check rtc presence before reading cpu count from cmos
      virtio-mmio: device probing and initialization.
      virtio-mmio: add support to vp_*() functions
      virtio-mmio: add support for scsi devices.
      virtio-mmio: add support for block devices.
      virtio-mmio: print device type
      acpi: add xsdt support
      acpi: add dsdt parser
      acpi: skip kbd init if not present
      acpi: find and register virtio-mmio devices
      rewrap Makefile lines.
      pci: fix mmconfig support
      vga: fix cirrus bios

Jason Andryuk (1):
      serialio: Preserve Xen DebugOutputPort

Kevin O'Connor (3):
      usb-hid: Improve max packet size checking
      Revert "ps2port: adjust init routine to fix PS/2 keyboard issues"
      boot: Fixup check for only one item in boot list

Matt DeVillier (4):
      hw/usb-hid: Don't abort if setting key repeat rate fails
      Skip boot menu and timeout with only one boot device
      ps2port: adjust init routine to fix PS/2 keyboard issues
      boot: Fix logic for boot menu display

Paul Menzel (4):
      std/tcg: Replace zero-length array with flexible-array member
      boot: Extend `etc/show-boot-menu` to configure skipping boot menu with only one device
      boot: Log, if boot menu is skipped
      cdrom: Demote `scsi_is_ready` return print to debug level

Roman Bolshakov (1):
      timer: Handle decrements of PIT counter

Stefan Berger (3):
      tcgbios: Only write logs for PCRs that are in active PCR banks
      tcgbios: Fix the vendorInfoSize to be of type u8
      tcgbios: Add support for SHA3 type of algorithms

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2020-07-02 15:28:58 +02:00
Mark Cave-Ayland
e70626551a Update OpenBIOS images to 4704d9eb built from submodule.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
2020-05-21 21:00:39 +01:00
Bin Meng
0b2f78e524 roms: opensbi: Upgrade from v0.6 to v0.7
Upgrade OpenSBI from v0.6 to v0.7 and the pre-built bios images.

The v0.7 release includes the following commits:

f64f4b9 lib: Add a new platform feature to bringup secondary harts
b677a9b lib: Implement hart hotplug
5b48240 lib: Add possible hart status values
e3f69fc lib: Implement Hart State Management (HSM) SBI extension
6704216 lib: Check MSIP bit after returning from WFI
82ae8e8 makefile: Do setup of the install target more flexible
e1a5b73 platform: sifive: fu540: allow sv32 as an mmu-type
8c83fb2 lib: Fix return type of sbi_hsm_hart_started()
00d332b include: Move bits related defines and macros to sbi_bitops.h
a148996 include: sbi_bitops: More useful bit operations
4a603eb platform: kendryte/k210: Set per-HART stack size to 8KB
678c3c3 include: sbi_scratch: Set per-HART scratch size to 4KB
2abc55b lib: Sort build objects in alphabetical order
6e87507 platform: ae350: Sort build objects in alphabetical order
650c0e5 lib: sbi: Fix coding style issues
078686d lib: serial: Fix coding style issues
3226bd9 lib: Simple bitmap library
c741abc include: Simple hartmask library
d6d7e18 lib: sbi_init: Don't allow HARTID greater than SBI_HARTMASK_MAX_BITS
a4a6a81 lib: Introduce SBI_TLB_INFO_INIT() helper macro
d963164 lib: sbi_tlb: Use sbi_hartmask in sbi_tlb_info
71d2b83 lib: Move all coldboot wait APIs to sbi_init.c
2b945fc lib: sbi_init: Use hartmask for coldboot wait
44ce5b9 include: Remove disabled_hart_mask from sbi_platform
2db381f lib: Introduce sbi_hsm_hart_started_mask() API
61f7768 lib: sbi_ecall_legacy: Use sbi_hsm_hart_started_mask() API
466fecb lib: sbi_system: Use sbi_hsm_hart_started_mask() API
9aad831 lib: sbi_ipi: Use sbi_hsm_hart_started_mask() API
eede1aa lib: sbi_hart: Remove HART available mask and related APIs
757bb44 docs: Remove out-of-date documentation
86d37bb lib: sbi: Fix misaligned trap handling
ffdc858 platform: ariane-fpga: Change license for ariane-fpga from GPL-2.0 to BSD-2
4b2f594 sbi: Add definitions for true/false
0cfe49a libfdt: Add INT32_MAX and UINT32_MAX in libfdt_env.h
baac7e0 libfdt: Upgrade to v1.5.1 release
f92147c include: Make sbi_hart_id_to_scratch() as macro
eeae3d9 firmware: fw_base: Optimize _hartid_to_scratch() implementation
16e7071 lib: sbi_hsm: Optimize sbi_hsm_hart_get_state() implementation
823345e include: Make sbi_current_hartid() as macro in riscv_asm.h
9aabba2 Makefile: Fix distclean make target
9275ed3 platform: ariane-fpga: Set per-HART stack size to 8KB
2343efd platform: Set per-HART stack size to 8KB in the template platform codes
72a0628 platform: Use one unified per-HART stack size macro for all platforms
327ba36 scripts: Cover sifive/fu540 in the 32-bit build
5fbcd62 lib: sbi: Update pmp_get() to return decoded size directly
dce8846 libfdt: Compile fdt_addresses.c
fcb1ded lib: utils: Add a fdt_reserved_memory_fixup() helper
666be6d platform: Clean up include header files
6af5576 lib: utils: Move PLIC DT fix up codes to fdt_helper.c
e846ce1 platform: andes/ae350: Fix up DT for reserved memory
8135520 platform: ariane-fpga: Fix up DT for reserved memory
c9a5268 platform: qemu/virt: Fix up DT for reserved memory
6f9bb83 platform: sifive/fu540: Fix up DT for reserved memory
1071f05 platform: sifive/fu540: Remove "stdout-path" fix-up
dd9439f lib: utils: Add a fdt_cpu_fixup() helper
3f1c847 platform: sifive/fu540: Replace cpu0 node fix-up with the new helper
db6a2b5 lib: utils: Add a general device tree fix-up helper
3f8d754 platform: Update to call general DT fix-up helper
87a7ef7 lib: sbi_scratch: Introduce HART id to scratch table
e23d3ba include: Simplify HART id to scratch macro
19bd531 lib: sbi_hsm: Simplify hart_get_state() and hart_started() APIs
3ebfe0e lib: sbi_tlb: Simplify sbi_tlb_entry_process() function
209134d lib: Handle failure of sbi_hartid_to_scratch() API
bd6ef02 include: sbi_platform: Improve sbi_platform_hart_disabled() API
c9f60fc lib: sbi_scratch: Don't set hartid_to_scratch table for disabled HART
680b098 lib: sbi_hsm: Don't use sbi_platform_hart_count() API
db187d6 lib: sbi_hsm: Remove scratch parameter from hart_started_mask() API
814f38d lib: sbi_hsm: Don't use sbi_platform_hart_disabled() API
75eec9d lib: Don't use sbi_platform_hart_count() API
c51f02c include: sbi_platform: Introduce HART index to HART id table
315a877 platform: sifive/fu540: Remove FU540_ENABLED_HART_MASK option
a0c88dd lib: Fix sbi_ecall_register_extension to prevent extension IDs overlap
9a74a64 lib: Check MSIP bit after returning from WFI
5968894 platform: Move ariane standalone fpga project to its own project
ed265b4 platform: fpga/ariane: Remove redundant plic address macros
fb84879 platform: Add OpenPiton platform support
d1d6560 platform: fpga/common: Add a fdt parsing helper functions
040e4e2 lib: utils: Move fdt fixup helper routines to a different file
4c37451 platform: openpiton: Read the device configurations from device tree
4d93586 lib: prevent coldboot_lottery from overflowing
550ba88 scripts: Extend create-binary-archive.sh for unified binary tar ball
160c885 lib: utils: Improve fdt_cpu_fixup() implementation
1de66d1 lib: Optimize unpriv load/store implementation
626467c lib: Remove scratch parameter from unpriv load/store functions
cb78a48 lib: sbi_trap: Remove scratch parameter from sbi_trap_redirect()
d11c79c lib: sbi_emulate_csr: Remove scratch and hartid parameter
5a7bd0c lib: sbi_illegal_insn: Remove mcause, scratch and hartid parameters
fe37d7d lib: sbi_misaligned_ldst: Remove mcause, scratch and hartid parameters
7487116 lib: sbi_ecall: Remove mcause, scratch and hartid parameters
40b221b lib: sbi_trap: Simplify sbi_trap_handler() API
7b211ff include: sbi_platform: Remove priv parameter from hart_start() callback
5b6957e include: Use more consistent name for atomic xchg() and cmpxchg()
dd0f21c lib: sbi_scratch: Introduce sbi_scratch_last_hartid() API
54b2779 include: sbi_tlb: Remove scratch parameter from sbi_tlb_request()
9e52a45 include: sbi_ipi: Remove scratch parameter from most functions
ec0d80f include: sbi_system: Remove scratch parameter and redundant functions
0a28ea5 include: sbi_timer: Remove scratch parameter from most funcitons
648507a include: sbi_console: Remove scratch parameter from sbi_dprintf()
e5a7f55 platform: thead/c910: Use HSM extension to boot secondary cores
f281de8 lib: irqchip/plic: Fix maximum priority threshold value
6c7922e lib: Support vector extension
615587c docs: Update README about supported SBI versions
66d0184 lib: Allow overriding SBI implementation ID
9f1b72c include: Bump-up version to 0.7

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
2020-04-29 13:16:38 -07:00
Alexey Kardashevskiy
a872e4328b pseries: Update SLOF firmware image
This is a single regression fix for for 5.0:

Greg Kurz (1):
      slof: Only close stdout for virtio-serial devices

Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
2020-04-07 08:55:11 +10:00
Peter Maydell
b319df5537 ppc patch queue 2020-03-17
Here's my final pull request for the qemu-5.0 soft freeze.  Sorry this
 is just under the wire - I hit some last minute problems that took a
 while to fix up and retest.
 
 Highlights are:
  * Numerous fixes for the FWNMI feature
  * A handful of cleanups to the device tree construction code
  * Numerous fixes for the spapr-vscsi device
  * A number of fixes and cleanups for real mode (MMU off) softmmu
    handling
  * Fixes for handling of the PAPR RMA
  * Better handling of hotplug/unplug events during boot
  * Assorted other fixes
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEdfRlhq5hpmzETofcbDjKyiDZs5IFAl5wnnsACgkQbDjKyiDZ
 s5JdpQ//eY/AOTs09UhvKxt8DN7lC2WyHGxYSncb2Tj2zaJyPPX9p296IDBMw+KX
 Cafr6LzwLjpcpOyf/EWzg7qYGbNYoYgRWoOkHI/9pHsrIH3ZvhmnyTVQI5CffeEb
 EDDXJUQo/2sFpAGeODr5zz+zAQUGzt6ZZUxAiQAF9RYc9ohUGD2x5c86Asx6ZTZo
 /14bd3qnrcy1x+TxDetb1idFxFr2DsdYqpHAi88zHm+UaWzxYrb7kakd+YbqI24N
 tYryf5SdtGrWAAdF/7nq2PQJFzskx+t0QearU+ruovRydxYbUtBpkr5HauoVuQXR
 LiV270sDYDS/D1vvQQKzLxkUuvWmbZ0rB+2BAtS1rwq2sOKqYyQEAkTWfGtSXcf8
 7fuZm2i1G78MuYGTOLCrF1u0owUB3QYHvt1NUW09GyWS8X3mahtj2fRe1RtPV/5d
 NL217bcd32fkMoGCg/lFvK9sCQzR6zJGKkJvOGMVW4ahHCLixpjIWabWtdXjfguT
 UahRPvlX7fzeVT+DISfjqyxwL+THnTvB3CTMWG2cktf0K1ke4SXcQ0mPyksN1NuC
 QocfPCr1TN2ri8g9dAPwQmOkojnNs9izpIWRYSl3avTJFNseNPxuHQALXj2Y3Y/O
 EoYxLN+cqPukQ1O3GxEj5QMKe8V/0986mxWnuS/dMohQOoy+zV4=
 =BPnR
 -----END PGP SIGNATURE-----

Merge remote-tracking branch 'remotes/dgibson/tags/ppc-for-5.0-20200317' into staging

ppc patch queue 2020-03-17

Here's my final pull request for the qemu-5.0 soft freeze.  Sorry this
is just under the wire - I hit some last minute problems that took a
while to fix up and retest.

Highlights are:
 * Numerous fixes for the FWNMI feature
 * A handful of cleanups to the device tree construction code
 * Numerous fixes for the spapr-vscsi device
 * A number of fixes and cleanups for real mode (MMU off) softmmu
   handling
 * Fixes for handling of the PAPR RMA
 * Better handling of hotplug/unplug events during boot
 * Assorted other fixes

# gpg: Signature made Tue 17 Mar 2020 09:55:07 GMT
# gpg:                using RSA key 75F46586AE61A66CC44E87DC6C38CACA20D9B392
# gpg: Good signature from "David Gibson <david@gibson.dropbear.id.au>" [full]
# gpg:                 aka "David Gibson (Red Hat) <dgibson@redhat.com>" [full]
# gpg:                 aka "David Gibson (ozlabs.org) <dgibson@ozlabs.org>" [full]
# gpg:                 aka "David Gibson (kernel.org) <dwg@kernel.org>" [unknown]
# Primary key fingerprint: 75F4 6586 AE61 A66C C44E  87DC 6C38 CACA 20D9 B392

* remotes/dgibson/tags/ppc-for-5.0-20200317: (45 commits)
  pseries: Update SLOF firmware image
  ppc/spapr: Ignore common "ibm,nmi-interlock" Linux bug
  ppc/spapr: Implement FWNMI System Reset delivery
  target/ppc: allow ppc_cpu_do_system_reset to take an alternate vector
  ppc/spapr: Allow FWNMI on TCG
  ppc/spapr: Fix FWNMI machine check interrupt delivery
  ppc/spapr: Add FWNMI System Reset state
  ppc/spapr: Change FWNMI names
  ppc/spapr: Fix FWNMI machine check failure handling
  spapr: Rename DT functions to newer naming convention
  spapr: Move creation of ibm,architecture-vec-5 property
  spapr: Move creation of ibm,dynamic-reconfiguration-memory dt node
  spapr/rtas: Reserve space for RTAS blob and log
  pseries: Update SLOF firmware image
  ppc/spapr: Move GPRs setup to one place
  target/ppc: Fix rlwinm on ppc64
  spapr/xive: use SPAPR_IRQ_IPI to define IPI ranges exposed to the guest
  hw/scsi/spapr_vscsi: Convert debug fprintf() to trace event
  hw/scsi/spapr_vscsi: Prevent buffer overflow
  hw/scsi/spapr_vscsi: Do not mix SRP IU size with DMA buffer size
  ...

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2020-03-18 15:07:57 +00:00
Alexey Kardashevskiy
6961eae79f pseries: Update SLOF firmware image
The only change here is moving the decision about rtas-size
to QEMU.

Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
2020-03-17 17:00:22 +11:00
Alexey Kardashevskiy
eeea9f9d13 pseries: Update SLOF firmware image
This mainly fixes virtio-serial with and without
enabled iommu-platform.

The full list of changes is:

Alexey Kardashevskiy (3):
      llfw: Fix debug printf warnings
      virtio-serial: Close device completely
      version: update to 20200312

Cédric Le Goater (1):
      virtio: Fix typo in virtio_serial_init()

Greg Kurz (2):
      virtio-serial: Don't override some words
      virtio-serial: Rework shutdown sequence

Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
2020-03-17 15:08:50 +11:00
Bin Meng
a6fcc80bea
roms: opensbi: Add 32-bit firmware image for sifive_u machine
Although the real world SiFive HiFive Unleashed board is a 64-bit
hardware configuration, with QEMU it is possible to test 32-bit
configuration with the same hardware features.

This updates the roms Makefile to add the build rules for creating
the 32-bit OpenSBI firmware image for sifive_u machine. A pre-built
OpenSBI v0.6 image has been added as the default bios for 32-bit
sifive_u machine.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Palmer Dabbelt <palmerdabbelt@google.com>
2020-03-16 17:03:48 -07:00
Bin Meng
bfd05e8127
roms: opensbi: Upgrade from v0.5 to v0.6
Upgrade OpenSBI from v0.5 to v0.6 and the pre-built bios images.

The v0.6 release includes the following commits:

dd8ef28 firmware: Fix compile error for FW_PAYLOAD with latest GCC binutils
98f4a20 firmware: Introduce relocation lottery
f728a0b include: Sync-up encoding with priv v1.12-draft and hypervisor v0.5-draft
18897aa include: Use _UL() and _ULL() for defines in riscv_encoding.h
7a13beb firmware: Add preferred boot HART field in struct fw_dynamic_info
215421c lib: Remove date and time from init message
838657c include: Remove ilen member of struct unpriv_trap
b1d8c98 lib: No need to set VSSTATUS.MXR bit in get_insn()
0e1322b lib: Better naming of unpriv APIs for wider use
75f903d lib: Simplify trap parameters in sbi_ecall functions
c96cc03 lib: Fix CPU capabilities detection function
ab14f94 lib: Fix probe extension
813f7f4 lib: Add error detection for misa_extension
dc40042 include: sbi_platform: fix compilation for GCC-9
bd732ae include: Add guest external interrupt related defines
6590a7d lib: Delegate guest page faults to HS-mode
4370f18 include: Extend struct sbi_trap_info for mtval2 and mtinst
086dbdf lib: Fix sbi_get_insn() for load guest page fault
2be424b lib: Extend trap redirection for hypervisor v0.5 spec
7219477 lib: Use MTINST CSR in misaligned load/store emulation
b8732fe lib: Add replacement extension and function ids
aa0ed1d lib: Remove redundant IPI types
1092663 lib: Add TIME extension in SBI
9777aee lib: Add IPI extension in SBI
9407202 lib: Add hfence instruction encoding
331ff6a lib: Support stage1 and stage2 tlb flushing
86a31f5 lib: Implement RFENCE extension
c7d1b12 firmware: Return real DTB address when FW_xyz_FDT_ADDR is not defined
9beb573 firmware: Improve comments for fw_prev_arg1() and fw_next_arg1()
fc6bd90 docs: Improve docs for FDT address passing
46a90d9 lib: utils: Support CLINT with 32bit MMIO access on RV64 system
c0849cd platform: Add T-head C910 initial support
e746673 lib: Remove unnecessary checks from init_coldboot() and init_warmboot()
c3e406f lib: Add initial sbi_exit() API
55e191e lib: Add system early_exit and final_exit APIs
6469ed1 lib: Add timer exit API
b325f6b lib: Add ipi exit API
1993182 lib: Add irqchip exit API
2aa43a1 lib: save/restore MIE CSR in sbi_hart_wait_for_coldboot()
b0c9787 lib: do sbi_exit() upon halt IPI
15ed1e7 lib: improve system reboot and shutdown implementation
73c19e6 lib: zero-out memory allocated using sbi_scratch_alloc_offset()
a67fd68 lib: Add sbi_init_count() API
049ad0b build: Use -ffreestanding
e340bbf include: Add OPENSBI_EXTERNAL_SBI_TYPES in sbi_types.h
b28b8ac docs: Add description of using OPENSBI_EXTERNAL_SBI_TYPES
adf8b73 platform: thead/c910: Remove SBI_PLATFORM_HAS_PMP
f95dd39 docs: platform: Update SiFive FU540 doc as-per U-Boot v2020.01
6ffe1be firmware: Fix placement of .align directives
7daccae platform: thead/c910: Don't enable L2 cache in warm boot
a73d45c platform: thead/c910: Don't set plic/clint address in warm boot
30cdf00 scripts: Add C910 to platform list in the binary archive script
0492c5d include: Typo fix in comment for SBI_SCRATCH_SIZE define
046cc16 lib: Move struct sbi_ipi_data definition to sbi_ipi.c
3d2aaac lib: Introduce sbi_ipi_send_smode() API
da9b76b lib: Introduce sbi_ipi_send_halt() API
a8b4b83 lib: Introduce sbi_tlb_fifo_request() API
5f762d1 lib: Introduce sbi_ipi_event_create/destroy() APIs
817d50d lib: Drop _fifo from the name of various sbi_tlb_fifo_xyz() functions
84cd4fc lib: Initialize TLB management directly from coldboot/warmboot path
0a411bf include: Add generic and simple list handling APIs
37923c4 lib: Add dynamic registration of SBI extensions
7668502 lib: Factor-out SBI legacy extension
161b348 lib: Factor-out SBI replacement extensions
43ac621 lib: Factor-out SBI vendor extension
021b9e7 lib: Factor-out SBI base extension
85647a1 platform: template: typo fix in system reboot/shutdown names
ac1c229 platform: Update UART base addresses for qemu/sifve_u
d79173b platform: Add an platform ops to return platform specific tlb flush limit
2c2bbe7 platform: sifive/fu540: Set tlb range flush limit to zero
5ff1ab0 makefile: add support for building on macOS
6d0b4c5 platform: Drop qemu/sifive_u support
9a717ec platform: sifive: fu540: Add platform specific 'make run' cmd
d6fa7f9 doc: sifive: fu540: Update QEMU instruction when using U-Boot as the payload
179edde lib: sbi_scratch: use bitwise ops in sbi_scratch_alloc_offset()
897b8fb lib: Use __builtin_ctzl() in pmp_get()
1a8ca08 lib: Initialize out value in SBI calls
c2bfa2b lib: irqchip/plic: Disable all contexts and IRQs
c2f23cc platform: Add Spike initial support
a062200 platform: Remove stale options from config.mk files
c03c8a1 scripts: Add Spike to platform list of binary archive script
29bb2a6 docs: platform: Add documentation for Spike platform
48b06ad ThirdPartyNotices: Fix doc styles
892e879 doc: coreboot: Fix doc styles
fdfb533 doc: payload_linux: Fix doc styles
44d1296 doc: andes-ae350: Fix doc styles
a8ef0b5 doc: ariane-fpga: Fix doc styles
82fd42f doc: qemu_virt: Fix doc styles
f8ce996 doc: sifive_fu540: Fix doc styles
27a5c7f doc: thead-c910: Fix doc styles
0b41453 Revert "lib: Use __builtin_ctzl() in pmp_get()"
c66543d lib: utils: htif: Fix 32-bit build
bc874e3 lib: Don't check MIDELEG and MEDELEG at end of delegate_traps()
24c3082 lib: Print interrupt and exception delegation in boot prints
66fb729 platform: sifive: fu540: Add 32-bit specific fdt/payload addresses
3e7d666 platform: qemu: virt: Correct the typo in config.mk
c3b3b8f lib: Fix typo in atomic exchange functions
3936243 lib: Use available hart mask for correct hbase value
f8b3bb8 lib: Simplify the for-loop in sbi_ipi_send_many()
ac5e821 include: Bump-up version to 0.6

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Palmer Dabbelt <palmerdabbelt@google.com>
2020-03-16 17:03:47 -07:00
Alexey Kardashevskiy
f350d78f10 pseries: Update SLOF firmware image
This adds vTPM support, full-FDT-rebuild-on-CAS fixes and
basic ext4 support.

The full changelog is:

Alexey Kardashevskiy (10):
      disk-label: Prepare for extenting
      disk-label: Support Linux GPT partition type
      ext2: Prepare for extending
      ext2: Rename group-desc-size
      ext2: Read size of group descriptors
      ext2: Read all 64bit of inode number
      ext2/4: Add basic extent tree support
      elf64: Add LE64 ABIv1/2 support for loading images to given address
      fdt: Fix creating new nodes at H_CAS
      version: update to 20200221

Greg Kurz (2):
      fdt: Fix update of "interrupt-controller" node at CAS
      fdt: Delete nodes of devices removed between boot and CAS

Stefan Berger (8):
      slof: Implement SLOF_get_keystroke() and SLOF_reset()
      slof: Make linker script variables accessible
      qemu: Make print_version variable accessible
      tpm: Add TPM CRQ driver implementation
      tpm: Add sha256 implementation
      tcgbios: Add TPM 2.0 support and firmware API
      tcgbios: Implement menu to clear TPM 2 and activate its PCR banks
      tcgbios: Measure the GPT table

Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
2020-03-17 09:41:14 +11:00
Thomas Huth
b2ce76a073 hw/ppc/prep: Remove the deprecated "prep" machine and the OpenHackware BIOS
It's been deprecated since QEMU v3.1. The 40p machine should be
used nowadays instead.

Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Acked-by: Hervé Poussineau <hpoussin@reactos.org>
Signed-off-by: Thomas Huth <thuth@redhat.com>
Message-Id: <20200114114617.28854-1-thuth@redhat.com>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
2020-02-02 14:07:57 +11:00
Sven Schnelle
346e78f6d6 seabios-hppa: update to latest version
Helge Deller (13):
      Add PDC_MEM_MAP and ENTRY_INIT_SRCH_FRST for OSF/MkLinux
      Return non-existant BTLB for PDC_BLOCK_TLB
      Add serial, parallel and LAN port support of  LASI chip
      Implement ENTRY_IO_BBLOCK_IN IODC function
      Do not print \r on parisc SeaBIOS
      Fix serial ports and add PDC_MODEL functions for special instructions enablement
      Implement SeaBIOS returning additional addresses. Fixes HP-UX boot.
      Fix mod_pgs (number of pages) for graphic cards
      Merge pull request #3 from svenschnelle/sti
      Merge pull request #4 from svenschnelle/parisc-qemu-4.1.0
      parisc: Implement PDC rendenzvous
      parisc: Improve soft power button emulation
      parisc: Fix line wrapping in STI console code

Sven Schnelle (7):
      parisc: fix PDC info for graphics adapter
      parisc: add missing header guard to hppa.h
      parisc: add LASI PS/2 emulation.
      parisc: Add STI support
      parisc: wire up graphics console
      parisc: Add support for setting STI screen resolution
      parisc: support LASI RTC register

Required for STI and LASI support. Also adds a few Bugfixes.

Signed-off-by: Sven Schnelle <svens@stackframe.org>
Message-Id: <20191220211512.3289-7-svens@stackframe.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
2020-01-27 10:49:51 -08:00
Philippe Mathieu-Daudé
47fee64be6 roms/edk2-funcs: Force softfloat ARM toolchain prefix on Debian
The Debian (based) distributions currently provides 2 ARM
toolchains, documented as [1]:

* The ARM EABI (armel) port targets a range of older 32-bit ARM
  devices, particularly those used in NAS hardware and a variety
  of *plug computers.
* The newer ARM hard-float (armhf) port supports newer, more
  powerful 32-bit devices using version 7 of the ARM architecture
  specification.

For various reasons documented in [2], the EDK2 project suggests
to use the softfloat toolchain (named 'armel' by Debian).

Force the softfloat cross toolchain prefix on Debian distributions.

[1] https://www.debian.org/ports/arm/#status
[2] https://github.com/tianocore/edk2/commit/41203b9a

Reviewed-by: Laszlo Ersek <lersek@redhat.com>
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
2020-01-21 14:15:48 +01:00
Gerd Hoffmann
db211f245b seabios: update to 1.13.0 final
Update to the final 1.13 release.  No code changes.

git shortlog
============

Kevin O'Connor (1):
      docs: Note v1.13.0 release

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2019-12-20 07:06:39 +01:00
Alexey Kardashevskiy
a363e9ed87 pseries: Update SLOF firmware image
This fixes PCI bridges support regression.

This enables IOMMU support in virtio drivers.

The full list of changes is:

Alexey Kardashevskiy (12):
      allocator: Fix format strings for DEBUG
      virtio: Make virtio_set_qaddr static
      client: Load initramdisk location
      sloffs: Fix -Wunused-result gcc warnings in read/write
      pci-phb: Reimplement dma-map-in/out
      virtio: Store queue descriptors in virtio_device
      virtio-net: Init queues after features negotiation
      virtio: Enable IOMMU
      ibm,client-architecture-support: Fix stack handling
      fdt: Fix updating the tree at H_CAS
      version: update to 20191206
      version: update to 20191217

Michael Roth (1):
      dma: Define default dma methods for using by client/package instances

Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
2019-12-17 11:40:23 +11:00
Alexey Kardashevskiy
a2fad86497 pseries: Update SLOF firmware image
This fixes PCI bridge regression.

Alexey Kardashevskiy (3):
      ibm,client-architecture-support: Fix stack handling
      fdt: Fix updating the tree at H_CAS
      version: update to 20191209

Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
2019-12-09 12:16:26 +11:00
Peter Maydell
1bd0f1c9c1 seabios: update to pre-1.13 snapshot again (lchs fixed)
-----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2.0.22 (GNU/Linux)
 
 iQIcBAABAgAGBQJd0ql2AAoJEEy22O7T6HE45DIQAJg92aPypzIW0XdnDDrSUKPA
 xkXqk8I0HJlA3fy6MIsJ5Vleb7LBoO7x5RKettLG/OMrYD1T7vqFlDMwzypxc9hX
 gxUvzKlyyAyoNoZmBV8S4IP6NxCl12BFBF76Vr/Ejxlnf0+fXIXGbKPBgwcmgibB
 U/OD4w7eG9FUHbPJlLNTb4acbDv4/6Ipr8aAZBoVIF3qMDCxN55ST25I4Cr7NUz1
 ZOaNVPssFhApnzFs07en+p1hPzE4lyrLhMwTHeb7myjOG56tQhmoB83D/iD4Fsse
 mLgMtFXa8ubgBrI02/SQTXiKdlQqP/GpYb85SkxOwERkiftF6n9/9oFWyiTiddcH
 tFfT8stnIa8enqn3gT8HTxjqRdta+VVrz3tMTJ76fw52+e52R30qw2e/s4sbOotE
 5yb0UN8m4Khl5rtQCzo6VHLz9clhMUDLMad20zFff+nQ5OkY84PQ2lBsR1V6FiBS
 SLUXMR3WmBiftMcNef3mbXOAFYt8+BynIxbdTOU5/ldFuIa/OnHWCgGgSGQGQHtw
 iTUe7HZdgvE8148z5he2tbmY26PiC7oq3W9kimu8s4iLVpuM/dyYOdKrQ78NEuZP
 2HRi3+82hsqu4DpeY+BAJW+QW/ra0xF+RH8fbbAVM5nBubyP+OAUnqmCwKIbeQos
 G6jJ1fdgQDvbIwpUVCnO
 =cjqc
 -----END PGP SIGNATURE-----

Merge remote-tracking branch 'remotes/kraxel/tags/seabios-20191118-pull-request' into staging

seabios: update to pre-1.13 snapshot again (lchs fixed)

# gpg: Signature made Mon 18 Nov 2019 14:23:50 GMT
# gpg:                using RSA key 4CB6D8EED3E87138
# gpg: Good signature from "Gerd Hoffmann (work) <kraxel@redhat.com>" [full]
# gpg:                 aka "Gerd Hoffmann <gerd@kraxel.org>" [full]
# gpg:                 aka "Gerd Hoffmann (private) <kraxel@gmail.com>" [full]
# Primary key fingerprint: A032 8CFF B93A 17A7 9901  FE7D 4CB6 D8EE D3E8 7138

* remotes/kraxel/tags/seabios-20191118-pull-request:
  seabios: update to pre-1.13 snapshot again

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2019-11-18 14:30:24 +00:00
Gerd Hoffmann
0285747737 seabios: update to pre-1.13 snapshot again
Due to lchs support merge in upstream seabios gone wrong (applied v3
instead of v4) here is another seabios snapshot update with the
mis-merge fixed up, so lchs support should actually work in -rc2.

Also picked up two tpm bugfixes.

git shortlog from previous snapshot
===================================

Gerd Hoffmann (4):
      Revert "geometry: Apply LCHS values for boot devices"
      Revert "config: Add toggle for bootdevice information"
      Revert "geometry: Add boot_lchs_find_*() utility functions"
      Revert "geometry: Read LCHS from fw_cfg"

Sam Eiderman (4):
      geometry: Read LCHS from fw_cfg
      boot: Build ata and scsi paths in function
      geometry: Add boot_lchs_find_*() utility functions
      geometry: Apply LCHS values for boot devices

Stefan Berger (2):
      tpm: Require a response to have minimum size of a valid response header
      tcgbios: Check for enough bytes returned from TPM2_GetCapability

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2019-11-18 15:04:19 +01:00
Peter Maydell
19bef037fe RISC-V Fixes for 4.2-rc2
This contains a handful of patches that I'd like to target for 4.2:
 
 * OpenSBI upgrade to 0.5
 * Increase in the flash size of the virt board.
 * A non-functional cleanup.
 * A cleanup to our MIP handling that avoids atomics.
 
 This passes "make check" and boots OpenEmbedded for me.
 -----BEGIN PGP SIGNATURE-----
 
 iQJHBAABCgAxFiEEAM520YNJYN/OiG3470yhUCzLq0EFAl3Nn18THHBhbG1lckBk
 YWJiZWx0LmNvbQAKCRDvTKFQLMurQQYxEACVIdVobMaddZC1tUhzyY9Ef2AzRqca
 GyyHIyMlmVzOhHOD0Rig4HQWGzvxSxmzrNNYc0N0kh7IsnVUkOLyROv5tvSpMLpb
 hyLwMcIWTNWVLraAZ/e/TTwkzKenXB2gvl5ny00LhUW4Lt0lwkFgB6SMtL1R5K+r
 HYYeiWPXbMfUnft/zpdTN0mT4Y8+gUai6XK83QOuwZohsAepBvKDVJD5uORZ6gZK
 hQfaWZ/FzMDDC0BeQtt7NN6ElLJjilzESxgoDoLrcpq2BfmSWMo4XKH/k9DzNTbi
 iWqel1q/lirxclglqjYFDuqhb37gfHYtPqQG+jZ5+7YVuyVhB6+dRIIGbzp5Jrv5
 0DcKmmI51ngKpiWcos70AJh+inM5fRgEhW024IntInwn0Y8aEpTo4YAAXUIMQleF
 3An9CSjXuxHSdtJItIJtLLGhaV7i2k5xRWIM+hgpUcW2sYqUdfB0URp+pEg2Y/4k
 1btPXfWLbd0AGlXMwVv6QYdaKKhFE+0XcIK+HqsIec0qQlJ0lksdNJyNQTsxqCfP
 mQugcBwZJp/4RoMrT14RMFhPfAZjZAEZuh3IKBCMoKui4RS51YF6MNXevR2J5VYK
 BNotdb2+ceEtLOnaKReqYzXtl6MuSzLmPWKZrrA3l/CdtKXkAd6IUhjNvrNz5Nie
 cZyV3qhagZ3P3Q==
 =vwgx
 -----END PGP SIGNATURE-----

Merge remote-tracking branch 'remotes/palmer/tags/riscv-for-master-4.2-rc2' into staging

RISC-V Fixes for 4.2-rc2

This contains a handful of patches that I'd like to target for 4.2:

* OpenSBI upgrade to 0.5
* Increase in the flash size of the virt board.
* A non-functional cleanup.
* A cleanup to our MIP handling that avoids atomics.

This passes "make check" and boots OpenEmbedded for me.

# gpg: Signature made Thu 14 Nov 2019 18:39:27 GMT
# gpg:                using RSA key 00CE76D1834960DFCE886DF8EF4CA1502CCBAB41
# gpg:                issuer "palmer@dabbelt.com"
# gpg: Good signature from "Palmer Dabbelt <palmer@dabbelt.com>" [unknown]
# gpg:                 aka "Palmer Dabbelt <palmer@sifive.com>" [unknown]
# gpg: WARNING: This key is not certified with a trusted signature!
# gpg:          There is no indication that the signature belongs to the owner.
# Primary key fingerprint: 00CE 76D1 8349 60DF CE88  6DF8 EF4C A150 2CCB AB41

* remotes/palmer/tags/riscv-for-master-4.2-rc2:
  riscv/virt: Increase flash size
  opensbi: Upgrade from v0.4 to v0.5
  target/riscv: Remove atomic accesses to MIP CSR
  remove unnecessary ifdef TARGET_RISCV64

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2019-11-15 11:22:33 +00:00
Alistair Francis
3158add2bd opensbi: Upgrade from v0.4 to v0.5
This release has:
    Lot of critical fixes
    Hypervisor extension support
    SBI v0.2 base extension support
    Debug prints support
    Handle traps when doing unpriv load/store
    Allow compiling without FP support
    Use git describe to generate boot-time banner
    Andes AE350 platform support

ShortLog:

Anup Patel (14):
      platform: sifive/fu540: Move FDT further up
      lib: Allow compiling without FP support
      lib: Introduce sbi_dprintf() API
      lib: Use sbi_dprintf() for invalid CSRs
      lib: Handle traps when doing unpriv load/store in get_insn()
      lib: Delegate supervisor ecall to HS-mode when H extension available
      lib: Extend sbi_hart_switch_mode() to support hypervisor extension
      lib: Extend sbi_trap_redirect() for hypervisor extension
      lib: Redirect WFI trapped from VS/VU mode to HS-mode
      include: Extend get_insn() to read instruction from VS/VU mode
      lib: Emulate HTIMEDELTA CSR for platforms not having TIME CSR
      Makefile: Minor fix in OPENSBI_VERSION_GIT
      lib: Fix coldboot race condition observed on emulators/simulators
      include: Bump-up version to 0.5

Atish Patra (16):
      lib: Provide an atomic exchange function unsigned long
      lib: Fix race conditions in tlb fifo access.
      platform: Remove the ipi_sync method from all platforms.
      lib: Fix timer for 32 bit
      lib: Support atomic swap instructions
      lib: Upgrade to full flush if size is at least threshold
      docs: Update the fu540 platform guide as per U-Boot documents.
      lib: Change tlb range flush threshold to 4k page instead of 1G
      lib: provide a platform specific tlb range flush threshold
      lib: Fix tlb flush range limit value
      Test: Move test payload related code out of interface header
      lib: Align error codes as per SBI specification.
      lib: Rename existing SBI implementation as 0.1.
      lib: Remove redundant variable assignment
      lib: Implement SBI v0.2
      lib: Provide a platform hook to implement vendor specific SBI extensions.

Bin Meng (6):
      platform: sifive: fu540: Use standard value string for cpu node status
      README: Document 32-bit / 64-bit images build
      treewide: Use conventional names for 32-bit and 64-bit
      platform: sifive: fu540: Expand FDT size before any patching
      firmware: Use macro instead of magic number for boot status
      docs: platform: Update descriptions for qemu/sifive_u support

Damien Le Moal (4):
      kendryte/k210: Use sifive UART driver
      kendryte/k210: remove sysctl code
      README: Update license information
      kendryte/k210: remove unused file

Georg Kotheimer (1):
      utils: Use cpu_to_fdt32() when writing to fdt

Jacob Garber (4):
      lib: Use bitwise & instead of boolean &&
      lib: Use correct type for return value
      lib: Prevent unintended sign extensions
      lib: Correct null pointer check

Lukas Auer (1):
      firmware: do not use relocated _boot_status before it is valid

Nylon Chen (3):
      firmware: Fix the loop condition of _wait_relocate_copy_done section
      platform: Add Andes AE350 initial support
      scripts: Add AE350 to platform list in the binary archive script

Palmer Dabbelt (1):
      Include `git describe` in OpenSBI

Zong Li (1):
      Write MSIP by using memory-mapped control register

Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
Reviewed-by: Palmer Dabbelt <palmer@sifive.com>
Signed-off-by: Palmer Dabbelt <palmer@sifive.com>
Signed-off-by: Palmer Dabbelt <palmer@dabbelt.com>
2019-11-14 09:53:28 -08:00
Gerd Hoffmann
0221d73ce6 seabios: update to pre-1.13 snapshot
seabios 1.13 will be released later this month.  This patch updates the
seabios submodule and binaries in qemu to a snapshot of git master.
That will increase the test coverage of the upcoming seabios release and
will also make the number of changes smaller when we update to the final
1.13 release during qemu code freeze for 4.2.

v3: add ahci bugfix
v2: build binaries with gcc 4.8.5 instead of gcc 8.3.1 (rhel7).

git shortlog rel-1.12.1..
=========================

David Woodhouse (2):
      csm: Sanitise alignment constraint in Legacy16GetTableAddress
      csm: Fix boot priority translation

Denis Plotnikov (1):
      virtio: extend virtio queue size to 256

Gerd Hoffmann (21):
      vga: move modelist from bochsvga.c to new svgamodes.c
      vga: make memcpy_high() public
      vga: add atiext driver
      vga: add ati bios tables
      vbe: add edid support.
      ati: add edid support.
      bochsvga: add edid support.
      bochsdisplay: add edid support.
      bochsdisplay: parse resolution from edid.
      add get_keystroke_full() helper
      bootmenu: add support for more than 9 entries
      optionrom: disallow int19 redirect for pnp roms.
      ati-vga: make less verbose
      ati-vga: fix ati_read()
      ati-vga: make i2c register and bits configurable
      ati-vga: try vga ddc first
      ati-vga: add rage128 edid support
      bochsdisplay: add copyright and license to bochsdisplay.c
      ramfb: add copyright and license to ramfb.c
      cp437: add license to cp437.c
      ahci: zero-initialize port struct

Joseph Pacheco-Corwin (1):
      bootsplash: Added support for 16/24/32bpp in one function

Kevin O'Connor (10):
      output: Avoid thunking to 16bit mode in printf() if no vgabios
      docs: Update mailing list archive links
      docs: Fix cut-and-paste error in Mailinglist.md archive link
      usb-ehci: Clear pipe token on pipe reallocate
      pciinit: Use %pP shorthand for printing device ids in intel_igd_setup()
      virtio-pci: Use %pP format in dprintf() calls
      Makefile: Build with -Wno-address-of-packed-member
      svgamodes: Add copyright notice to vgasrc/svgamodes.c
      docs: Add developer-certificate-of-origin
      docs: Note release date for v1.12.1

Liran Alon (1):
      pvscsi: ring_desc do not have to be page aligned

Sam Eiderman (6):
      smbios: Add missing zero byte to Type 0
      geometry: Read LCHS from fw_cfg
      boot: Reorder functions in boot.c
      geometry: Add boot_lchs_find_*() utility functions
      config: Add toggle for bootdevice information
      geometry: Apply LCHS values for boot devices

Stefan Berger (2):
      tcgbios: Use table to convert hash to buffer size
      tcgbios: Implement TPM 2.0 menu item to activate and deactivate PCR banks

Stefano Garzarella (1):
      qemu: avoid debug prints if debugcon is not enabled

Stephen Douthit (1):
      tpm: Check for TPM related ACPI tables before attempting hw probe

Uwe Kleine-König (3):
      cbvga: reuse svga modes definitions from svgamodes.c
      Add additional resolutions for 16:9 displays: 1600x900 and 2560x1440
      Remove dos line endings introduced in the last two commits

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2019-11-13 15:02:21 +01:00
Mark Cave-Ayland
9505edece7 Update OpenBIOS images to 7e5b89e4 built from submodule.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
2019-10-28 17:11:50 +00:00
Paolo Bonzini
673652a785 Merge commit 'df84f17' into HEAD
This merge fixes a semantic conflict with the trivial tree.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2019-10-26 15:38:02 +02:00
Alexey Kardashevskiy
cb97526aa4 pseries: Update SLOF firmware image
This aims v4.2 and fixes:
1. full FDT rendering;
2. gcc9 -Waddress-of-packed-member.

Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
2019-10-24 09:36:55 +11:00
Sergio Lopez
0d5fae3e52 roms: add microvm-bios (qboot) as binary and git submodule
qboot is a minimalist x86 firmware for booting Linux kernels. It does
the mininum amount of work required for the task, and it's able to
boot both PVH images and bzImages without relying on option roms.

This characteristics make it an ideal companion for the microvm
machine type.

Signed-off-by: Sergio Lopez <slp@redhat.com>
Reviewed-by: Stefano Garzarella <sgarzare@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
2019-10-22 09:39:54 +02:00
Mark Cave-Ayland
25bf1811cf Update OpenBIOS images to f28e16f9 built from submodule.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
2019-10-12 10:18:18 +01:00
Peter Maydell
14d40ab1d5 Improve scripts relying on the EDK2 submodule,
drop Python2 dependency in EDK2 build scripts.
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEicHnj2Ae6GyGdJXLoqP9bt6twN4FAl2bPjoACgkQoqP9bt6t
 wN6fOhAAzJm5IDx6w8HFqLyMhdgfBh0q/6xCNKCpbiVIpkmZeetUPb8WsKizCQQ+
 uhsl6KcKErrGTorBLPUcSDaeCdaCCPOoLEZqxbCYQ1xNDjiK6pXStm+7Ztyp9KBG
 e92qQEXZMjKel0toWMNMLlVVR3yY6zNkKTqBXmIYIBb+qVGFoZdwCo/9f/8KlGv1
 iyN1Bl4hGRaIw/qQ9ptjctuWeE1dOm1UawXdvAi7yBUs4kuJ1nLk7MaBEueOKZHh
 3KdcroJw55N5kTbHiUonRbmGHikjxicOlmpKGi7x415iec4o3pGiXR5AGcQuoJNX
 lhopEG/+Eiq2IzmVUp6mYFDmvCKzt4sTnFGFkPWVuPDmJ8ym8x+D12ESrCn/tbwj
 eaYBPhSi2BcEkaIblk4pj7Bma7RntVt5ga2q/2chqhSWI5X85rmW/avMgBj9y4Xo
 hQVhyWKIqTuw2cFdigL9OQFzRxhPaltFQO6e/5iyjbwNZnFKwzN1OoZ2PAOK1BtZ
 veoyDWsD/6YjhcOogABVlUI13rSj+M9soR++fjmMe/n+DTqpvfjPUOOmZ6PvWS9Q
 zodyctKkKZau0ecq5ZoE3JfMLMSPO0XIKk46bO/cRphn5VoxC4bnEjqQ+rMbnEp+
 1arIEW3m7e3Ngmvb6zUrHIL7dTtvzri9kq4vFkAskwrg8t2R0Kg=
 =BE2l
 -----END PGP SIGNATURE-----

Merge remote-tracking branch 'remotes/philmd-gitlab/tags/edk2-next-20191007' into staging

Improve scripts relying on the EDK2 submodule,
drop Python2 dependency in EDK2 build scripts.

# gpg: Signature made Mon 07 Oct 2019 14:31:38 BST
# gpg:                using RSA key 89C1E78F601EE86C867495CBA2A3FD6EDEADC0DE
# gpg: Good signature from "Philippe Mathieu-Daudé (Phil) <philmd@redhat.com>" [marginal]
# gpg: WARNING: This key is not certified with sufficiently trusted signatures!
# gpg:          It is not certain that the signature belongs to the owner.
# Primary key fingerprint: 89C1 E78F 601E E86C 8674  95CB A2A3 FD6E DEAD C0DE

* remotes/philmd-gitlab/tags/edk2-next-20191007:
  edk2 build scripts: work around TianoCore#1607 without forcing Python 2
  edk2 build scripts: honor external BaseTools flags with uefi-test-tools
  roms: Add a 'make help' target alias
  roms/Makefile.edk2: don't pull in submodules when building from tarball
  make-release: pull in edk2 submodules so we can build it from tarballs

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2019-10-08 12:30:13 +01:00
Laszlo Ersek
037973bb0d edk2 build scripts: work around TianoCore#1607 without forcing Python 2
It turns out that forcing python2 for running the edk2 "build" utility is
neither necessary nor sufficient.

Forcing python2 is not sufficient for two reasons:

- QEMU is moving away from python2, with python2 nearing EOL,

- according to my most recent testing, the lacking dependency information
  in the makefiles that are generated by edk2's "build" utility can cause
  parallel build failures even when "build" is executed by python2.

And forcing python2 is not necessary because we can still return to the
original idea of filtering out jobserver-related options from MAKEFLAGS.
So do that.

While at it, cut short edk2's auto-detection of the python3.* minor
version, by setting PYTHON_COMMAND to "python3" (which we expect to be
available wherever we intend to build edk2).

With this patch, the guest UEFI binaries that are used as part of the BIOS
tables test, and the OVMF and ArmVirtQemu platform firmwares, will be
built strictly in a single job, regardless of an outermost "-jN" make
option. Alas, there appears to be no reliable way to build edk2 in an
(outer make, inner make) environment, with a jobserver enabled.

Cc: Eduardo Habkost <ehabkost@redhat.com>
Cc: John Snow <jsnow@redhat.com>
Cc: Philippe Mathieu-Daudé <philmd@redhat.com>
Reported-by: John Snow <jsnow@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Reviewed-by: John Snow <jsnow@redhat.com>
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Message-Id: <20190920083808.21399-3-lersek@redhat.com>
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
2019-10-07 15:14:15 +02:00
Philippe Mathieu-Daudé
6f8a70f62f roms: Add a 'make help' target alias
Various C projects provide a 'make help' target. Our root directory
does so. The roms/ directory lacks a such rule, but already displays
a help output when the default target is called.
Add a 'help' target aliased to the default one, to avoid:

  $ make -C roms help
  make: *** No rule to make target 'help'.  Stop.

Reviewed-by: John Snow <jsnow@redhat.com>
Reviewed-by: Laszlo Ersek <lersek@redhat.com>
Message-Id: <20190920171159.18633-1-philmd@redhat.com>
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
2019-10-07 14:56:22 +02:00
Michael Roth
f3e330e3c3 roms/Makefile.edk2: don't pull in submodules when building from tarball
Currently the `make efi` target pulls submodules nested under the
roms/edk2 submodule as dependencies. However, when we attempt to build
from a tarball this fails since we are no longer in a git tree.

A preceding patch will pre-populate these submodules in the tarball,
so assume this build dependency is only needed when building from a
git tree.

Cc: Laszlo Ersek <lersek@redhat.com>
Cc: Bruce Rogers <brogers@suse.com>
Cc: qemu-stable@nongnu.org # v4.1.0
Reported-by: Bruce Rogers <brogers@suse.com>
Reviewed-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
Message-Id: <20190912231202.12327-3-mdroth@linux.vnet.ibm.com>
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
2019-10-07 14:54:48 +02:00
Alexey Kardashevskiy
85164ad4ed pseries: Update SLOF firmware image
This fixes USB host bus adapter name in the device tree to match QEMU's
one.

Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
2019-10-04 19:08:09 +10:00
Bin Meng
6c141fb7dd
riscv: roms: Update default bios for sifive_u machine
With the support of heterogeneous harts and PRCI model, it's now
possible to use the OpenSBI image (PLATFORM=sifive/fu540) built
for the real hardware.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Palmer Dabbelt <palmer@sifive.com>
2019-09-17 08:42:49 -07:00
Alexey Kardashevskiy
00eaad2e29 pseries: Update SLOF firmware image
This allocates space for FWNMI log in RTAS and fixes phandles at
the ibm,client-architecture-support stage.

The full list is:
 * libnet: Fix the check of the argument lengths of the "ping" command
 * fdt: Update phandles after H_CAS
 * rtas: Reserve space for FWNMI log

Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
2019-08-29 09:46:07 +10:00
Joel Stanley
892609056d ppc/pnv: update skiboot to v6.4
Currently we fail to boot a qemu powernv machine with a Power9
processor:

 PLAT: Detected generic platform
 PLAT: Detected BMC platform generic
 CPU: All 1 processors called in...
 CHIPTOD: Unknown TOD type !
 CHIPTOD: Failed ChipTOD detection !
 Aborting!

With v6.4 we can boot both a Power8 and Power9 powernv machine.

Built from submodule with powerpc64le-linux-gnu-gcc (Debian 8.3.0-2).

Signed-off-by: Joel Stanley <joel@jms.id.au>
Message-Id: <20190718054218.9581-1-joel@jms.id.au>
Reviewed-by: Cédric Le Goater <clg@kaod.org>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
2019-08-29 09:45:18 +10:00
Alexey Kardashevskiy
316f239c29 pseries: Update SLOF firmware image
The only change that SLOF does not rely on QEMU providing an RTAS blob
and provides one itself:
https://git.qemu.org/?p=SLOF.git;a=commitdiff;h=5e4ed1fd0f39e

Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
2019-08-21 17:17:26 +10:00
Bin Meng
02db1be1d0 riscv: roms: Fix make rules for building sifive_u bios
Currently the make rules are wrongly using qemu/virt opensbi image
for sifive_u machine. Correct it.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Chih-Min Chao <chihmin.chao@sifive.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Message-id: 1564812484-20385-1-git-send-email-bmeng.cn@gmail.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2019-08-13 12:46:24 +01:00
Alistair Francis
91f3a2f0ce
roms: Add OpenSBI version 0.4
Add OpenSBI version 0.4 as a git submodule and as a prebult binary.

OpenSBI (https://github.com/riscv/opensbi) aims to provide an open-source
reference implementation of the RISC-V Supervisor Binary Interface (SBI)
specifications for platform-specific firmwares executing in M-mode. For all
supported platforms, OpenSBI provides several runtime firmware examples.
These example firmwares can be used to replace the legacy riscv-pk bootloader
and enable the use of well-known bootloaders such as U-Boot.

OpenSBI is distributed under the terms of the BSD 2-clause license
("Simplified BSD License" or "FreeBSD License", SPDX: BSD-2-Clause). OpenSBI
source code also contains code reused from other projects desribed here:
https://github.com/riscv/opensbi/blob/master/ThirdPartyNotices.md.

In this case all of the code we are using from OpenSBI is BSD 2-clause
as we aren't using the Kendryte code (Apache-2.0) with QEMU and libfdt
is dual licensed as BSD 2-clause (and GPL-2.0+). OpenSBI isn't being
linked with QEMU either it is just being included with QEMU.

Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Guenter Roeck <linux@roeck-us.net>
Tested-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Palmer Dabbelt <palmer@sifive.com>
2019-07-18 14:18:43 -07:00
Alexey Kardashevskiy
4493d430d0 pseries: Update SLOF firmware image
This only has a fix for ipv4-after-ipv6 booting problem.

Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
2019-07-12 15:49:46 +10:00