qemu-patch-raspberry4/hw/i386
Markus Armbruster fc3b32958a smbios: Make multiple -smbios type= accumulate sanely
Currently, -smbios type=T,NAME=VAL,... adds one field (T,NAME) with
value VAL to fw_cfg for each unique NAME.  If NAME occurs multiple
times, the last one's VAL is used (before the QemuOpts conversion, the
first one was used).

Multiple -smbios can add multiple fields with the same (T, NAME).
SeaBIOS reads all of them from fw_cfg, but uses only the first field
(T, NAME).  The others are ignored.

"First one wins, subsequent ones get ignored silently" isn't nice.  We
commonly let the last option win.  Useful, because it lets you
-readconfig first, then selectively override with command line
options.

Clean up -smbios to work the common way.  Accumulate the settings,
with later ones overwriting earlier ones.  Put the result into fw_cfg
(no more useless duplicates).

Bonus cleanup: qemu_uuid_parse() no longer sets SMBIOS system uuid by
side effect.

Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
2013-09-28 23:49:39 +03:00
..
kvm cpu: Use QTAILQ for CPU list 2013-09-03 12:25:55 +02:00
kvmvapic.c cpu: Use QTAILQ for CPU list 2013-09-03 12:25:55 +02:00
Makefile.objs pc_sysfw: do not make it a device anymore 2013-08-12 09:31:14 -05:00
multiboot.c multiboot: Calculate upper_mem in the ROM 2013-06-28 14:01:52 -05:00
multiboot.h refer to FWCfgState explicitly 2013-06-02 18:14:02 +03:00
pc.c cpu: Use QTAILQ for CPU list 2013-09-03 12:25:55 +02:00
pc_piix.c Merge remote-tracking branch 'sstabellini/xen-2013-09-09' into staging 2013-09-11 14:45:57 -05:00
pc_q35.c Merge remote-tracking branch 'sstabellini/xen-2013-09-09' into staging 2013-09-11 14:45:57 -05:00
pc_sysfw.c pc_sysfw: do not make it a device anymore 2013-08-12 09:31:14 -05:00
smbios.c smbios: Make multiple -smbios type= accumulate sanely 2013-09-28 23:49:39 +03:00
xen_domainbuild.c aio / timers: Switch entire codebase to the new timer API 2013-08-22 19:14:24 +02:00
xen_domainbuild.h hw: move private headers to hw/ subdirectories. 2013-04-08 18:13:16 +02:00
xen_machine_pv.c hw: Clean up bogus default boot order 2013-08-28 10:16:47 +03:00