hw/s390x: Add the possibility to specify the netboot image on the command line

The file name of the netboot binary is currently hard-coded to
"s390-netboot.img", without a possibility for the user to select
an alternative firmware image here. That's unfortunate, especially
since the basics are already there: The filename is a property of
the s390-ipl device. So we just have to add a check whether the user
already provided the property and only set the default if the string
is still empty. Now it is possible to select a different firmware
image with "-global s390-ipl.netboot_fw=/path/to/s390-netboot.img".

Signed-off-by: Thomas Huth <thuth@redhat.com>
Message-Id: <1519731154-3127-1-git-send-email-thuth@redhat.com>
Signed-off-by: Cornelia Huck <cohuck@redhat.com>
This commit is contained in:
Thomas Huth 2018-02-27 12:32:34 +01:00 committed by Cornelia Huck
parent adab99be66
commit 3c4e9baacf

View File

@ -254,8 +254,10 @@ static void s390_init_ipl_dev(const char *kernel_filename,
} }
qdev_prop_set_string(dev, "cmdline", kernel_cmdline); qdev_prop_set_string(dev, "cmdline", kernel_cmdline);
qdev_prop_set_string(dev, "firmware", firmware); qdev_prop_set_string(dev, "firmware", firmware);
qdev_prop_set_string(dev, "netboot_fw", netboot_fw);
qdev_prop_set_bit(dev, "enforce_bios", enforce_bios); qdev_prop_set_bit(dev, "enforce_bios", enforce_bios);
if (!strlen(object_property_get_str(new, "netboot_fw", &error_abort))) {
qdev_prop_set_string(dev, "netboot_fw", netboot_fw);
}
object_property_add_child(qdev_get_machine(), TYPE_S390_IPL, object_property_add_child(qdev_get_machine(), TYPE_S390_IPL,
new, NULL); new, NULL);
object_unref(new); object_unref(new);