qemu/pc-bios/s390-ccw
Collin L. Walling 118ee80f79 s390-ccw: move auxiliary IPL data to separate location
The s390-ccw firmware needs some information in support of the
boot process which is not available on the native machine.
Examples are the netboot firmware load address and now the
boot menu parameters.

While storing that data in unused fields of the IPL parameter block
works, that approach could create problems if the parameter block
definition should change in the future. Because then a guest could
overwrite these fields using the set IPLB diagnose.

In fact the data in question is of more global nature and not really
tied to an IPL device, so separating it is rather logical.

This commit introduces a new structure to hold firmware relevant
IPL parameters set by QEMU. The data is stored at location 204 (dec)
and can contain up to 7 32-bit words. This area is available to
programming in the z/Architecture Principles of Operation and
can thus safely be used by the firmware until the IPL has completed.

Signed-off-by: Viktor Mihajlovski <mihajlov@linux.vnet.ibm.com>
Signed-off-by: Collin L. Walling <walling@linux.vnet.ibm.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Acked-by: Christian Borntraeger <borntraeger@de.ibm.com>
[thuth: fixed "4 + 8 * n" comment]
Signed-off-by: Thomas Huth <thuth@redhat.com>
2018-02-26 07:56:54 +01:00
..
bootmap.c s390-ccw: update libc 2018-02-26 07:56:54 +01:00
bootmap.h s390-ccw: update libc 2018-02-26 07:56:54 +01:00
bswap.h pc-bios/s390-ccw: Move byteswap functions to a separate header 2017-07-14 12:29:48 +02:00
cio.h s390-ccw: Fix alignment for CCW1 2017-08-30 18:23:26 +02:00
iplb.h s390-ccw: move auxiliary IPL data to separate location 2018-02-26 07:56:54 +01:00
libc.c s390-ccw: update libc 2018-02-26 07:56:54 +01:00
libc.h s390-ccw: update libc 2018-02-26 07:56:54 +01:00
main.c s390-ccw: move auxiliary IPL data to separate location 2018-02-26 07:56:54 +01:00
Makefile s390-ccw: update libc 2018-02-26 07:56:54 +01:00
netboot.mak s390: set DHCP client architecure id for netboot 2017-09-19 18:21:33 +02:00
netmain.c pc-bios/s390-ccw: Link libnet into the netboot image and do the TFTP load 2017-07-14 12:29:48 +02:00
s390-ccw.h pc-bios/s390-ccw: Add code for virtio feature negotiation 2017-07-14 12:29:48 +02:00
sclp.c s390-ccw: update libc 2018-02-26 07:56:54 +01:00
sclp.h pc-bios/s390-ccw: get LOADPARM stored in SCP Read Info 2017-05-02 15:08:54 +02:00
scsi.h pc-bios/s390-ccw: Get Block Limits VPD device data 2017-05-19 12:29:01 +02:00
start.S pc-bios/s390-ccw: zero out bss section 2017-12-14 17:56:54 +01:00
virtio-blkdev.c pc-bios/s390-ccw: Move virtio-block related functions into a separate file 2017-07-14 12:29:48 +02:00
virtio-net.c pc-bios/s390-ccw: Add virtio-net driver code 2017-07-14 12:29:48 +02:00
virtio-scsi.c pc-bios/s390-ccw: Fix problem with invalid virtio-scsi LUN when rebooting 2017-11-20 10:35:12 +01:00
virtio-scsi.h pc-bios/s390-ccw: Build a reasonable max_sectors limit 2017-05-19 12:29:01 +02:00
virtio.c pc-bios/s390-ccw: Add virtio-net driver code 2017-07-14 12:29:48 +02:00
virtio.h pc-bios/s390-ccw: Add virtio-net driver code 2017-07-14 12:29:48 +02:00