s390x/ipl: Extend S390IPLState to support network boot
Add new field to S390IPLState to store the name of the network boot loader. Signed-off-by: Farhan Ali <alifm@linux.vnet.ibm.com> Reviewed-by: Christian Borntraeger <borntraeger@de.ibm.com> Reviewed-by: Cornelia Huck <cornelia.huck@de.ibm.com> Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com> Reviewed-by: Thomas Huth <thuth@redhat.com>
This commit is contained in:
parent
34f1b23f8a
commit
5f31ade055
@ -209,6 +209,7 @@ static Property s390_ipl_properties[] = {
|
|||||||
DEFINE_PROP_STRING("initrd", S390IPLState, initrd),
|
DEFINE_PROP_STRING("initrd", S390IPLState, initrd),
|
||||||
DEFINE_PROP_STRING("cmdline", S390IPLState, cmdline),
|
DEFINE_PROP_STRING("cmdline", S390IPLState, cmdline),
|
||||||
DEFINE_PROP_STRING("firmware", S390IPLState, firmware),
|
DEFINE_PROP_STRING("firmware", S390IPLState, firmware),
|
||||||
|
DEFINE_PROP_STRING("netboot_fw", S390IPLState, netboot_fw),
|
||||||
DEFINE_PROP_BOOL("enforce_bios", S390IPLState, enforce_bios, false),
|
DEFINE_PROP_BOOL("enforce_bios", S390IPLState, enforce_bios, false),
|
||||||
DEFINE_PROP_BOOL("iplbext_migration", S390IPLState, iplbext_migration,
|
DEFINE_PROP_BOOL("iplbext_migration", S390IPLState, iplbext_migration,
|
||||||
true),
|
true),
|
||||||
|
@ -106,6 +106,7 @@ struct S390IPLState {
|
|||||||
char *initrd;
|
char *initrd;
|
||||||
char *cmdline;
|
char *cmdline;
|
||||||
char *firmware;
|
char *firmware;
|
||||||
|
char *netboot_fw;
|
||||||
uint8_t cssid;
|
uint8_t cssid;
|
||||||
uint8_t ssid;
|
uint8_t ssid;
|
||||||
uint16_t devno;
|
uint16_t devno;
|
||||||
|
@ -116,7 +116,8 @@ static void ccw_init(MachineState *machine)
|
|||||||
/* get a BUS */
|
/* get a BUS */
|
||||||
css_bus = virtual_css_bus_init();
|
css_bus = virtual_css_bus_init();
|
||||||
s390_init_ipl_dev(machine->kernel_filename, machine->kernel_cmdline,
|
s390_init_ipl_dev(machine->kernel_filename, machine->kernel_cmdline,
|
||||||
machine->initrd_filename, "s390-ccw.img", true);
|
machine->initrd_filename, "s390-ccw.img",
|
||||||
|
"s390-netboot.img", true);
|
||||||
s390_flic_init();
|
s390_flic_init();
|
||||||
|
|
||||||
dev = qdev_create(NULL, TYPE_S390_PCI_HOST_BRIDGE);
|
dev = qdev_create(NULL, TYPE_S390_PCI_HOST_BRIDGE);
|
||||||
|
@ -65,6 +65,7 @@ void s390_init_ipl_dev(const char *kernel_filename,
|
|||||||
const char *kernel_cmdline,
|
const char *kernel_cmdline,
|
||||||
const char *initrd_filename,
|
const char *initrd_filename,
|
||||||
const char *firmware,
|
const char *firmware,
|
||||||
|
const char *netboot_fw,
|
||||||
bool enforce_bios)
|
bool enforce_bios)
|
||||||
{
|
{
|
||||||
Object *new = object_new(TYPE_S390_IPL);
|
Object *new = object_new(TYPE_S390_IPL);
|
||||||
@ -78,6 +79,7 @@ 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);
|
||||||
object_property_add_child(qdev_get_machine(), TYPE_S390_IPL,
|
object_property_add_child(qdev_get_machine(), TYPE_S390_IPL,
|
||||||
new, NULL);
|
new, NULL);
|
||||||
|
@ -24,6 +24,7 @@ void s390_init_ipl_dev(const char *kernel_filename,
|
|||||||
const char *kernel_cmdline,
|
const char *kernel_cmdline,
|
||||||
const char *initrd_filename,
|
const char *initrd_filename,
|
||||||
const char *firmware,
|
const char *firmware,
|
||||||
|
const char *netboot_fw,
|
||||||
bool enforce_bios);
|
bool enforce_bios);
|
||||||
void s390_create_virtio_net(BusState *bus, const char *name);
|
void s390_create_virtio_net(BusState *bus, const char *name);
|
||||||
void s390_nmi(NMIState *n, int cpu_index, Error **errp);
|
void s390_nmi(NMIState *n, int cpu_index, Error **errp);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user