Re: [Qemu-devel] [PATCH v2 00/12] bundle edk2 platform firmware with QEMU

2019-03-20 Thread Laszlo Ersek
On 03/15/19 17:42, Philippe Mathieu-Daudé wrote:
> Hi,
> 
> From my previous experience with the tests/ patches, I understood we
> could still send PR that improve testing after soft freeze.
> This series doesn't modify the QEMU binaries, it add EDK2 firmware blobs
> in roms/ and rules to rebuild these roms.
> These roms are useful for the ACPI tests introduced in commits
> 09a274d82f and 503bb0b975a on the arm/virt board.
> 
> There is 1 direct change:
> 
> 1/ in the root Makefile, the 'make install' rule installs one new file:
>- edk2-licenses.txt
> 
> And there are 2 other changes which require user specific action:
> 
> 2/ Set the environment variable 'INSTALL_BLOBS', the 'make install' rule
> will install the firmware blobs and the firmware JSON descriptors

(commenting only on the technical note, not the scheduling / PULL,
because I see other (younger) emails in my INBOX about those:)

"INSTALL_BLOBS" is not a new environment variable or Makefile macro --
the context in the affected patch [1] may not show it, but INSTALL_BLOBS
is preexistent, and some of the hunks modify source code that already
falls under INSTALL_BLOBS's scope (e.g., the mention of the
"edk2-licenses.txt" file).

[1] "Makefile: install the edk2 firmware images and their descriptors"

In fact the commit message refers to "--disable-blobs":

Decompress and install the edk2 firmware blobs as part of "make
install", unless blob installation was disabled with configure's
"--disable-blobs" option.

That's what controls INSTALL_BLOBS. (I was intrigued myself, and had
tracked it down for the commit message.)

Thanks,
Laszlo

> 
> 3/ a new 'efi' target rule in roms/Makefile
> 
> I'm planning to send a PR for this series but I want to check first if
> there is any issue with the current policy/rules.
> 
> Thanks,
> 
> Phil.
> 
> On 3/13/19 10:00 PM, Laszlo Ersek wrote:
>> Repo:   https://github.com/lersek/qemu.git
>> Branch: edk2_build_v2
>>
>> Version 1, that is:
>>   [Qemu-devel] [PATCH 00/10] bundle edk2 platform firmware with QEMU
>>
>> was posted at:
>>   https://lists.gnu.org/archive/html/qemu-devel/2019-03/msg02846.html
>>   http://mid.mail-archive.com/20190309004826.9027-1-lersek@redhat.com
>>
>> Updates in v2 are noted on each patch individually, in the Notes
>> section.
>>
> [...]
>>>  .gitignore|   1 +
>>>  MAINTAINERS   |  12 
>>>  Makefile  |  22 +++---
>>>  configure |   1 +
>>>  pc-bios/README|   2 +-
>>>  pc-bios/edk2-aarch64-code.fd  | Bin 67108864 -> 0 bytes
>>>  pc-bios/edk2-aarch64-code.fd.xz   | Bin 0 -> 1146804 bytes
>>>  pc-bios/edk2-arm-code.fd  | Bin 67108864 -> 0 bytes
>>>  pc-bios/edk2-arm-code.fd.xz   | Bin 0 -> 1147852 bytes
>>>  pc-bios/edk2-arm-vars.fd  | Bin 67108864 -> 0 bytes
>>>  pc-bios/edk2-arm-vars.fd.xz   | Bin 0 -> 10008 bytes
>>>  pc-bios/edk2-i386-code.fd | Bin 3653632 -> 0 bytes
>>>  pc-bios/edk2-i386-code.fd.xz  | Bin 0 -> 1674764 bytes
>>>  pc-bios/edk2-i386-secure-code.fd  | Bin 3653632 -> 0 bytes
>>>  pc-bios/edk2-i386-secure-code.fd.xz   | Bin 0 -> 1870024 bytes
>>>  pc-bios/edk2-i386-vars.fd | Bin 540672 -> 0 bytes
>>>  pc-bios/edk2-i386-vars.fd.xz  | Bin 0 -> 320 bytes
>>>  pc-bios/edk2-x86_64-code.fd   | Bin 3653632 -> 0 bytes
>>>  pc-bios/edk2-x86_64-code.fd.xz| Bin 0 -> 1655276 bytes
>>>  pc-bios/edk2-x86_64-secure-code.fd| Bin 3653632 -> 0 bytes
>>>  pc-bios/edk2-x86_64-secure-code.fd.xz | Bin 0 -> 1889024 bytes
>>>  roms/Makefile.edk2|  32 +---
>>>  roms/edk2-build.sh|   2 +-
>>>  roms/edk2-funcs.sh|   4 +--
>>>  tests/Makefile.include|   2 +-
>>>  25 files changed, 57 insertions(+), 21 deletions(-)




Re: [Qemu-devel] [PATCH v2 00/12] bundle edk2 platform firmware with QEMU

2019-03-20 Thread Laszlo Ersek
Hi Michael,

On 03/16/19 15:56, Michael Tokarev wrote:
> 14.03.2019 0:00, Laszlo Ersek wrote:
>> Repo:   https://github.com/lersek/qemu.git
>> Branch: edk2_build_v2
>>
>> Version 1, that is:
>>    [Qemu-devel] [PATCH 00/10] bundle edk2 platform firmware with QEMU
> ...
> 
> Hmm. Why to do so? Isn't the goal was to REMOVE current
> ROM sources from qemu in favor of external projects?

I had learned about this goal (from Dan) first when I was fairly deep
into this work already. The motives for the bundling are:

(1) ACPI regression tests need an easily available (distro-independent)
set of UEFI firmware binaries, and "quickly" was preferred to "slowly",

(2) it's been a long time user need (although perhaps not a very strong
one) to get UEFI guest firmware right from QEMU, not just non-UEFI guest
firmware (which is basically synonymous with "BIOS" for x86).

In short, I didn't mean to ignore the goal you mention -- I didn't know
about it, while (1) was perceived as urgent.

Thanks
Laszlo



Re: [Qemu-devel] [PATCH v2 00/12] bundle edk2 platform firmware with QEMU

2019-03-16 Thread Michael Tokarev

14.03.2019 0:00, Laszlo Ersek wrote:

Repo:   https://github.com/lersek/qemu.git
Branch: edk2_build_v2

Version 1, that is:
   [Qemu-devel] [PATCH 00/10] bundle edk2 platform firmware with QEMU

...

Hmm. Why to do so? Isn't the goal was to REMOVE current
ROM sources from qemu in favor of external projects?

Thanks,

/mjt



Re: [Qemu-devel] [PATCH v2 00/12] bundle edk2 platform firmware with QEMU

2019-03-15 Thread Eric Blake
On 3/15/19 11:42 AM, Philippe Mathieu-Daudé wrote:
> Hi,
> 
>>From my previous experience with the tests/ patches, I understood we
> could still send PR that improve testing after soft freeze.
> This series doesn't modify the QEMU binaries, it add EDK2 firmware blobs
> in roms/ and rules to rebuild these roms.
> These roms are useful for the ACPI tests introduced in commits
> 09a274d82f and 503bb0b975a on the arm/virt board.
> 
> There is 1 direct change:
> 
> 1/ in the root Makefile, the 'make install' rule installs one new file:
>- edk2-licenses.txt
> 
> And there are 2 other changes which require user specific action:
> 
> 2/ Set the environment variable 'INSTALL_BLOBS', the 'make install' rule
> will install the firmware blobs and the firmware JSON descriptors
> 
> 3/ a new 'efi' target rule in roms/Makefile
> 
> I'm planning to send a PR for this series but I want to check first if
> there is any issue with the current policy/rules.
> 

If this were during -rc2 or -rc3, our goal would be minimizing churn,
and I would lean towards deferral. But for mere softfreeze before -rc0,
and with your justification that this helps downstreams while provably
being independent enough of the main binaries to be low risk, I agree
with the idea of a PR.

-- 
Eric Blake, Principal Software Engineer
Red Hat, Inc.   +1-919-301-3226
Virtualization:  qemu.org | libvirt.org



signature.asc
Description: OpenPGP digital signature


Re: [Qemu-devel] [PATCH v2 00/12] bundle edk2 platform firmware with QEMU

2019-03-15 Thread Philippe Mathieu-Daudé
Hi,

>From my previous experience with the tests/ patches, I understood we
could still send PR that improve testing after soft freeze.
This series doesn't modify the QEMU binaries, it add EDK2 firmware blobs
in roms/ and rules to rebuild these roms.
These roms are useful for the ACPI tests introduced in commits
09a274d82f and 503bb0b975a on the arm/virt board.

There is 1 direct change:

1/ in the root Makefile, the 'make install' rule installs one new file:
   - edk2-licenses.txt

And there are 2 other changes which require user specific action:

2/ Set the environment variable 'INSTALL_BLOBS', the 'make install' rule
will install the firmware blobs and the firmware JSON descriptors

3/ a new 'efi' target rule in roms/Makefile

I'm planning to send a PR for this series but I want to check first if
there is any issue with the current policy/rules.

Thanks,

Phil.

On 3/13/19 10:00 PM, Laszlo Ersek wrote:
> Repo:   https://github.com/lersek/qemu.git
> Branch: edk2_build_v2
> 
> Version 1, that is:
>   [Qemu-devel] [PATCH 00/10] bundle edk2 platform firmware with QEMU
> 
> was posted at:
>   https://lists.gnu.org/archive/html/qemu-devel/2019-03/msg02846.html
>   20190309004826.9027-1-lersek@redhat.com">http://mid.mail-archive.com/20190309004826.9027-1-lersek@redhat.com
> 
> Updates in v2 are noted on each patch individually, in the Notes
> section.
> 
[...]
>>  .gitignore|   1 +
>>  MAINTAINERS   |  12 
>>  Makefile  |  22 +++---
>>  configure |   1 +
>>  pc-bios/README|   2 +-
>>  pc-bios/edk2-aarch64-code.fd  | Bin 67108864 -> 0 bytes
>>  pc-bios/edk2-aarch64-code.fd.xz   | Bin 0 -> 1146804 bytes
>>  pc-bios/edk2-arm-code.fd  | Bin 67108864 -> 0 bytes
>>  pc-bios/edk2-arm-code.fd.xz   | Bin 0 -> 1147852 bytes
>>  pc-bios/edk2-arm-vars.fd  | Bin 67108864 -> 0 bytes
>>  pc-bios/edk2-arm-vars.fd.xz   | Bin 0 -> 10008 bytes
>>  pc-bios/edk2-i386-code.fd | Bin 3653632 -> 0 bytes
>>  pc-bios/edk2-i386-code.fd.xz  | Bin 0 -> 1674764 bytes
>>  pc-bios/edk2-i386-secure-code.fd  | Bin 3653632 -> 0 bytes
>>  pc-bios/edk2-i386-secure-code.fd.xz   | Bin 0 -> 1870024 bytes
>>  pc-bios/edk2-i386-vars.fd | Bin 540672 -> 0 bytes
>>  pc-bios/edk2-i386-vars.fd.xz  | Bin 0 -> 320 bytes
>>  pc-bios/edk2-x86_64-code.fd   | Bin 3653632 -> 0 bytes
>>  pc-bios/edk2-x86_64-code.fd.xz| Bin 0 -> 1655276 bytes
>>  pc-bios/edk2-x86_64-secure-code.fd| Bin 3653632 -> 0 bytes
>>  pc-bios/edk2-x86_64-secure-code.fd.xz | Bin 0 -> 1889024 bytes
>>  roms/Makefile.edk2|  32 +---
>>  roms/edk2-build.sh|   2 +-
>>  roms/edk2-funcs.sh|   4 +--
>>  tests/Makefile.include|   2 +-
>>  25 files changed, 57 insertions(+), 21 deletions(-)



Re: [Qemu-devel] [PATCH v2 00/12] bundle edk2 platform firmware with QEMU

2019-03-14 Thread Michael S. Tsirkin
On Wed, Mar 13, 2019 at 10:00:45PM +0100, Laszlo Ersek wrote:
> Repo:   https://github.com/lersek/qemu.git
> Branch: edk2_build_v2
> 
> Version 1, that is:
>   [Qemu-devel] [PATCH 00/10] bundle edk2 platform firmware with QEMU
> 
> was posted at:
>   https://lists.gnu.org/archive/html/qemu-devel/2019-03/msg02846.html
>   20190309004826.9027-1-lersek@redhat.com">http://mid.mail-archive.com/20190309004826.9027-1-lersek@redhat.com
> 
> Updates in v2 are noted on each patch individually, in the Notes
> section.
> 
> I'm pasting a cumulative diffstat, and diff, between v1 and v2 below.
> Note that a normal diffstat for this v2 series is at the bottom of the
> cover letter, as usual.

Reviewed-by: Michael S. Tsirkin 


> >  .gitignore|   1 +
> >  MAINTAINERS   |  12 
> >  Makefile  |  22 +++---
> >  configure |   1 +
> >  pc-bios/README|   2 +-
> >  pc-bios/edk2-aarch64-code.fd  | Bin 67108864 -> 0 bytes
> >  pc-bios/edk2-aarch64-code.fd.xz   | Bin 0 -> 1146804 bytes
> >  pc-bios/edk2-arm-code.fd  | Bin 67108864 -> 0 bytes
> >  pc-bios/edk2-arm-code.fd.xz   | Bin 0 -> 1147852 bytes
> >  pc-bios/edk2-arm-vars.fd  | Bin 67108864 -> 0 bytes
> >  pc-bios/edk2-arm-vars.fd.xz   | Bin 0 -> 10008 bytes
> >  pc-bios/edk2-i386-code.fd | Bin 3653632 -> 0 bytes
> >  pc-bios/edk2-i386-code.fd.xz  | Bin 0 -> 1674764 bytes
> >  pc-bios/edk2-i386-secure-code.fd  | Bin 3653632 -> 0 bytes
> >  pc-bios/edk2-i386-secure-code.fd.xz   | Bin 0 -> 1870024 bytes
> >  pc-bios/edk2-i386-vars.fd | Bin 540672 -> 0 bytes
> >  pc-bios/edk2-i386-vars.fd.xz  | Bin 0 -> 320 bytes
> >  pc-bios/edk2-x86_64-code.fd   | Bin 3653632 -> 0 bytes
> >  pc-bios/edk2-x86_64-code.fd.xz| Bin 0 -> 1655276 bytes
> >  pc-bios/edk2-x86_64-secure-code.fd| Bin 3653632 -> 0 bytes
> >  pc-bios/edk2-x86_64-secure-code.fd.xz | Bin 0 -> 1889024 bytes
> >  roms/Makefile.edk2|  32 +---
> >  roms/edk2-build.sh|   2 +-
> >  roms/edk2-funcs.sh|   4 +--
> >  tests/Makefile.include|   2 +-
> >  25 files changed, 57 insertions(+), 21 deletions(-)
> 
> > diff --git a/configure b/configure
> > index cab830a4c920..a8e5c14899d6 100755
> > --- a/configure
> > +++ b/configure
> > @@ -7770,6 +7770,7 @@ for bios_file in \
> >  $source_path/pc-bios/*.img \
> >  $source_path/pc-bios/openbios-* \
> >  $source_path/pc-bios/u-boot.* \
> > +$source_path/pc-bios/edk2-*.fd.xz \
> >  $source_path/pc-bios/palcode-*
> >  do
> >  LINKS="$LINKS pc-bios/$(basename $bios_file)"
> > diff --git a/Makefile b/Makefile
> > index b98567ee0f83..4b325052005e 100644
> > --- a/Makefile
> > +++ b/Makefile
> > @@ -296,6 +296,10 @@ ui/input-keymap-%.c: $(KEYCODEMAP_GEN) 
> > $(KEYCODEMAP_CSV) $(SRC_PATH)/ui/Makefile
> >  $(KEYCODEMAP_GEN): .git-submodule-status
> >  $(KEYCODEMAP_CSV): .git-submodule-status
> >
> > +edk2-decompressed = $(basename $(wildcard pc-bios/edk2-*.fd.xz))
> > +pc-bios/edk2-%.fd: pc-bios/edk2-%.fd.xz
> > +   $(call quiet-command,xz -d -c $< > $@,"UNXZ",$<)
> > +
> >  # Don't try to regenerate Makefile or configure
> >  # We don't generate any of them
> >  Makefile: ;
> > @@ -444,6 +448,7 @@ $(SOFTMMU_SUBDIR_RULES): $(block-obj-y)
> >  $(SOFTMMU_SUBDIR_RULES): $(crypto-obj-y)
> >  $(SOFTMMU_SUBDIR_RULES): $(io-obj-y)
> >  $(SOFTMMU_SUBDIR_RULES): config-all-devices.mak
> > +$(SOFTMMU_SUBDIR_RULES): $(edk2-decompressed)
> >
> >  subdir-%:
> > $(call quiet-command,$(MAKE) $(SUBDIR_MAKEFLAGS) -C $* V="$(V)" 
> > TARGET_DIR="$*/" all,)
> > @@ -632,6 +637,7 @@ clean:
> > ! -path ./roms/edk2/ArmPkg/Library/GccLto/liblto-arm.a \
> > ! -path ./roms/edk2/BaseTools/Source/Python/UPT/Dll/sqlite3.dll 
> > \
> > -exec rm {} +
> > +   rm -f $(edk2-decompressed)
> > rm -f $(filter-out %.tlb,$(TOOLS)) $(HELPERS-y) qemu-ga TAGS cscope.* 
> > *.pod *~ */*~
> > rm -f fsdev/*.pod scsi/*.pod
> > rm -f qemu-img-cmds.h
> > @@ -722,10 +728,8 @@ spapr-rtas.bin slof.bin skiboot.lid \
> >  palcode-clipper \
> >  u-boot.e500 u-boot-sam460-20100605.bin \
> >  qemu_vga.ndrv \
> > -hppa-firmware.img \
> > -edk2-aarch64-code.fd edk2-arm-code.fd edk2-i386-code.fd \
> > -edk2-i386-secure-code.fd edk2-x86_64-code.fd edk2-x86_64-secure-code.fd \
> > -edk2-arm-vars.fd edk2-i386-vars.fd edk2-licenses.txt
> > +edk2-licenses.txt \
> > +hppa-firmware.img
> >
> >  DESCS=50-edk2-i386-secure.json 50-edk2-x86_64-secure.json \
> >  60-edk2-aarch64.json 60-edk2-arm.json 60-edk2-i386.json 60-edk2-x86_64.json
> > @@ -792,7 +796,8 @@ endif
> >
> >  ICON_SIZES=16x16 24x24 32x32 48x48 64x64 128x128 256x256 512x512
> >
> > -install: all $(if $(BUILD_DOCS),install-doc) install-datadir 
> > install-localstatedir
> > 

Re: [Qemu-devel] [PATCH v2 00/12] bundle edk2 platform firmware with QEMU

2019-03-14 Thread Igor Mammedov
On Wed, 13 Mar 2019 22:00:45 +0100
Laszlo Ersek  wrote:

> Repo:   https://github.com/lersek/qemu.git
> Branch: edk2_build_v2
> 
> Version 1, that is:
>   [Qemu-devel] [PATCH 00/10] bundle edk2 platform firmware with QEMU
> 
> was posted at:
>   https://lists.gnu.org/archive/html/qemu-devel/2019-03/msg02846.html
>   20190309004826.9027-1-lersek@redhat.com">http://mid.mail-archive.com/20190309004826.9027-1-lersek@redhat.com
> 
> Updates in v2 are noted on each patch individually, in the Notes
> section.
> 


Tested-by: Igor Mammedov 

> I'm pasting a cumulative diffstat, and diff, between v1 and v2 below.
> Note that a normal diffstat for this v2 series is at the bottom of the
> cover letter, as usual.
> 
> >  .gitignore|   1 +
> >  MAINTAINERS   |  12 
> >  Makefile  |  22 +++---
> >  configure |   1 +
> >  pc-bios/README|   2 +-
> >  pc-bios/edk2-aarch64-code.fd  | Bin 67108864 -> 0 bytes
> >  pc-bios/edk2-aarch64-code.fd.xz   | Bin 0 -> 1146804 bytes
> >  pc-bios/edk2-arm-code.fd  | Bin 67108864 -> 0 bytes
> >  pc-bios/edk2-arm-code.fd.xz   | Bin 0 -> 1147852 bytes
> >  pc-bios/edk2-arm-vars.fd  | Bin 67108864 -> 0 bytes
> >  pc-bios/edk2-arm-vars.fd.xz   | Bin 0 -> 10008 bytes
> >  pc-bios/edk2-i386-code.fd | Bin 3653632 -> 0 bytes
> >  pc-bios/edk2-i386-code.fd.xz  | Bin 0 -> 1674764 bytes
> >  pc-bios/edk2-i386-secure-code.fd  | Bin 3653632 -> 0 bytes
> >  pc-bios/edk2-i386-secure-code.fd.xz   | Bin 0 -> 1870024 bytes
> >  pc-bios/edk2-i386-vars.fd | Bin 540672 -> 0 bytes
> >  pc-bios/edk2-i386-vars.fd.xz  | Bin 0 -> 320 bytes
> >  pc-bios/edk2-x86_64-code.fd   | Bin 3653632 -> 0 bytes
> >  pc-bios/edk2-x86_64-code.fd.xz| Bin 0 -> 1655276 bytes
> >  pc-bios/edk2-x86_64-secure-code.fd| Bin 3653632 -> 0 bytes
> >  pc-bios/edk2-x86_64-secure-code.fd.xz | Bin 0 -> 1889024 bytes
> >  roms/Makefile.edk2|  32 +---
> >  roms/edk2-build.sh|   2 +-
> >  roms/edk2-funcs.sh|   4 +--
> >  tests/Makefile.include|   2 +-
> >  25 files changed, 57 insertions(+), 21 deletions(-)  
> 
> > diff --git a/configure b/configure
> > index cab830a4c920..a8e5c14899d6 100755
> > --- a/configure
> > +++ b/configure
> > @@ -7770,6 +7770,7 @@ for bios_file in \
> >  $source_path/pc-bios/*.img \
> >  $source_path/pc-bios/openbios-* \
> >  $source_path/pc-bios/u-boot.* \
> > +$source_path/pc-bios/edk2-*.fd.xz \
> >  $source_path/pc-bios/palcode-*
> >  do
> >  LINKS="$LINKS pc-bios/$(basename $bios_file)"
> > diff --git a/Makefile b/Makefile
> > index b98567ee0f83..4b325052005e 100644
> > --- a/Makefile
> > +++ b/Makefile
> > @@ -296,6 +296,10 @@ ui/input-keymap-%.c: $(KEYCODEMAP_GEN) 
> > $(KEYCODEMAP_CSV) $(SRC_PATH)/ui/Makefile
> >  $(KEYCODEMAP_GEN): .git-submodule-status
> >  $(KEYCODEMAP_CSV): .git-submodule-status
> >
> > +edk2-decompressed = $(basename $(wildcard pc-bios/edk2-*.fd.xz))
> > +pc-bios/edk2-%.fd: pc-bios/edk2-%.fd.xz
> > +   $(call quiet-command,xz -d -c $< > $@,"UNXZ",$<)
> > +
> >  # Don't try to regenerate Makefile or configure
> >  # We don't generate any of them
> >  Makefile: ;
> > @@ -444,6 +448,7 @@ $(SOFTMMU_SUBDIR_RULES): $(block-obj-y)
> >  $(SOFTMMU_SUBDIR_RULES): $(crypto-obj-y)
> >  $(SOFTMMU_SUBDIR_RULES): $(io-obj-y)
> >  $(SOFTMMU_SUBDIR_RULES): config-all-devices.mak
> > +$(SOFTMMU_SUBDIR_RULES): $(edk2-decompressed)
> >
> >  subdir-%:
> > $(call quiet-command,$(MAKE) $(SUBDIR_MAKEFLAGS) -C $* V="$(V)" 
> > TARGET_DIR="$*/" all,)
> > @@ -632,6 +637,7 @@ clean:
> > ! -path ./roms/edk2/ArmPkg/Library/GccLto/liblto-arm.a \
> > ! -path ./roms/edk2/BaseTools/Source/Python/UPT/Dll/sqlite3.dll 
> > \
> > -exec rm {} +
> > +   rm -f $(edk2-decompressed)
> > rm -f $(filter-out %.tlb,$(TOOLS)) $(HELPERS-y) qemu-ga TAGS cscope.* 
> > *.pod *~ */*~
> > rm -f fsdev/*.pod scsi/*.pod
> > rm -f qemu-img-cmds.h
> > @@ -722,10 +728,8 @@ spapr-rtas.bin slof.bin skiboot.lid \
> >  palcode-clipper \
> >  u-boot.e500 u-boot-sam460-20100605.bin \
> >  qemu_vga.ndrv \
> > -hppa-firmware.img \
> > -edk2-aarch64-code.fd edk2-arm-code.fd edk2-i386-code.fd \
> > -edk2-i386-secure-code.fd edk2-x86_64-code.fd edk2-x86_64-secure-code.fd \
> > -edk2-arm-vars.fd edk2-i386-vars.fd edk2-licenses.txt
> > +edk2-licenses.txt \
> > +hppa-firmware.img
> >
> >  DESCS=50-edk2-i386-secure.json 50-edk2-x86_64-secure.json \
> >  60-edk2-aarch64.json 60-edk2-arm.json 60-edk2-i386.json 60-edk2-x86_64.json
> > @@ -792,7 +796,8 @@ endif
> >
> >  ICON_SIZES=16x16 24x24 32x32 48x48 64x64 128x128 256x256 512x512
> >
> > -install: all $(if $(BUILD_DOCS),install-doc) install-datadir 
> > install-localstatedir
> > +install: 

[Qemu-devel] [PATCH v2 00/12] bundle edk2 platform firmware with QEMU

2019-03-13 Thread Laszlo Ersek
Repo:   https://github.com/lersek/qemu.git
Branch: edk2_build_v2

Version 1, that is:
  [Qemu-devel] [PATCH 00/10] bundle edk2 platform firmware with QEMU

was posted at:
  https://lists.gnu.org/archive/html/qemu-devel/2019-03/msg02846.html
  20190309004826.9027-1-lersek@redhat.com">http://mid.mail-archive.com/20190309004826.9027-1-lersek@redhat.com

Updates in v2 are noted on each patch individually, in the Notes
section.

I'm pasting a cumulative diffstat, and diff, between v1 and v2 below.
Note that a normal diffstat for this v2 series is at the bottom of the
cover letter, as usual.

>  .gitignore|   1 +
>  MAINTAINERS   |  12 
>  Makefile  |  22 +++---
>  configure |   1 +
>  pc-bios/README|   2 +-
>  pc-bios/edk2-aarch64-code.fd  | Bin 67108864 -> 0 bytes
>  pc-bios/edk2-aarch64-code.fd.xz   | Bin 0 -> 1146804 bytes
>  pc-bios/edk2-arm-code.fd  | Bin 67108864 -> 0 bytes
>  pc-bios/edk2-arm-code.fd.xz   | Bin 0 -> 1147852 bytes
>  pc-bios/edk2-arm-vars.fd  | Bin 67108864 -> 0 bytes
>  pc-bios/edk2-arm-vars.fd.xz   | Bin 0 -> 10008 bytes
>  pc-bios/edk2-i386-code.fd | Bin 3653632 -> 0 bytes
>  pc-bios/edk2-i386-code.fd.xz  | Bin 0 -> 1674764 bytes
>  pc-bios/edk2-i386-secure-code.fd  | Bin 3653632 -> 0 bytes
>  pc-bios/edk2-i386-secure-code.fd.xz   | Bin 0 -> 1870024 bytes
>  pc-bios/edk2-i386-vars.fd | Bin 540672 -> 0 bytes
>  pc-bios/edk2-i386-vars.fd.xz  | Bin 0 -> 320 bytes
>  pc-bios/edk2-x86_64-code.fd   | Bin 3653632 -> 0 bytes
>  pc-bios/edk2-x86_64-code.fd.xz| Bin 0 -> 1655276 bytes
>  pc-bios/edk2-x86_64-secure-code.fd| Bin 3653632 -> 0 bytes
>  pc-bios/edk2-x86_64-secure-code.fd.xz | Bin 0 -> 1889024 bytes
>  roms/Makefile.edk2|  32 +---
>  roms/edk2-build.sh|   2 +-
>  roms/edk2-funcs.sh|   4 +--
>  tests/Makefile.include|   2 +-
>  25 files changed, 57 insertions(+), 21 deletions(-)

> diff --git a/configure b/configure
> index cab830a4c920..a8e5c14899d6 100755
> --- a/configure
> +++ b/configure
> @@ -7770,6 +7770,7 @@ for bios_file in \
>  $source_path/pc-bios/*.img \
>  $source_path/pc-bios/openbios-* \
>  $source_path/pc-bios/u-boot.* \
> +$source_path/pc-bios/edk2-*.fd.xz \
>  $source_path/pc-bios/palcode-*
>  do
>  LINKS="$LINKS pc-bios/$(basename $bios_file)"
> diff --git a/Makefile b/Makefile
> index b98567ee0f83..4b325052005e 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -296,6 +296,10 @@ ui/input-keymap-%.c: $(KEYCODEMAP_GEN) $(KEYCODEMAP_CSV) 
> $(SRC_PATH)/ui/Makefile
>  $(KEYCODEMAP_GEN): .git-submodule-status
>  $(KEYCODEMAP_CSV): .git-submodule-status
>
> +edk2-decompressed = $(basename $(wildcard pc-bios/edk2-*.fd.xz))
> +pc-bios/edk2-%.fd: pc-bios/edk2-%.fd.xz
> + $(call quiet-command,xz -d -c $< > $@,"UNXZ",$<)
> +
>  # Don't try to regenerate Makefile or configure
>  # We don't generate any of them
>  Makefile: ;
> @@ -444,6 +448,7 @@ $(SOFTMMU_SUBDIR_RULES): $(block-obj-y)
>  $(SOFTMMU_SUBDIR_RULES): $(crypto-obj-y)
>  $(SOFTMMU_SUBDIR_RULES): $(io-obj-y)
>  $(SOFTMMU_SUBDIR_RULES): config-all-devices.mak
> +$(SOFTMMU_SUBDIR_RULES): $(edk2-decompressed)
>
>  subdir-%:
>   $(call quiet-command,$(MAKE) $(SUBDIR_MAKEFLAGS) -C $* V="$(V)" 
> TARGET_DIR="$*/" all,)
> @@ -632,6 +637,7 @@ clean:
>   ! -path ./roms/edk2/ArmPkg/Library/GccLto/liblto-arm.a \
>   ! -path ./roms/edk2/BaseTools/Source/Python/UPT/Dll/sqlite3.dll 
> \
>   -exec rm {} +
> + rm -f $(edk2-decompressed)
>   rm -f $(filter-out %.tlb,$(TOOLS)) $(HELPERS-y) qemu-ga TAGS cscope.* 
> *.pod *~ */*~
>   rm -f fsdev/*.pod scsi/*.pod
>   rm -f qemu-img-cmds.h
> @@ -722,10 +728,8 @@ spapr-rtas.bin slof.bin skiboot.lid \
>  palcode-clipper \
>  u-boot.e500 u-boot-sam460-20100605.bin \
>  qemu_vga.ndrv \
> -hppa-firmware.img \
> -edk2-aarch64-code.fd edk2-arm-code.fd edk2-i386-code.fd \
> -edk2-i386-secure-code.fd edk2-x86_64-code.fd edk2-x86_64-secure-code.fd \
> -edk2-arm-vars.fd edk2-i386-vars.fd edk2-licenses.txt
> +edk2-licenses.txt \
> +hppa-firmware.img
>
>  DESCS=50-edk2-i386-secure.json 50-edk2-x86_64-secure.json \
>  60-edk2-aarch64.json 60-edk2-arm.json 60-edk2-i386.json 60-edk2-x86_64.json
> @@ -792,7 +796,8 @@ endif
>
>  ICON_SIZES=16x16 24x24 32x32 48x48 64x64 128x128 256x256 512x512
>
> -install: all $(if $(BUILD_DOCS),install-doc) install-datadir 
> install-localstatedir
> +install: all $(if $(BUILD_DOCS),install-doc) install-datadir 
> install-localstatedir \
> + $(if $(INSTALL_BLOBS),$(edk2-decompressed))
>  ifneq ($(TOOLS),)
>   $(call install-prog,$(subst 
> qemu-ga,qemu-ga$(EXESUF),$(TOOLS)),$(DESTDIR)$(bindir))
>  endif
> @@ -814,6 +819,13 @@ ifneq