[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[qemu-s390x] [RFC 00/15] s390: vfio-ccw dasd ipl support
From: |
Jason J. Herne |
Subject: |
[qemu-s390x] [RFC 00/15] s390: vfio-ccw dasd ipl support |
Date: |
Thu, 5 Jul 2018 13:25:28 -0400 |
This is to support booting from vfio-ccw dasd devices. We basically implement
the real hardware ipl procedure. This allows for booting Linux guests on
vfio-ccw devices.
vfio-ccw's channel program prefetch algorithm complicates ipl because most ipl
channel programs dynamically modify themselves. Details on the ipl process and
how we worked around this issue can be found in docs/devel/s390-dasd-ipl.txt.
Jason J. Herne (15):
s390 vfio-ccw: Add bootindex property and IPLB data
s390-bios: decouple cio setup from virtio
s390-bios: decouple common boot logic from virtio
s390-bios: Extend find_dev() for non-virtio devices
s390-bios: Factor finding boot device out of virtio code path
s390-bios: Clean up cio.h
s390-bios: Decouple channel i/o logic from virtio
s390-bios: Map low core memory
s390-bios: ptr2u32 and u32toptr
s390-bios: Support for running format-0/1 channel programs
s390-bios: Refactor virtio to run channel programs via cio
s390-bios: Use control unit type to determine boot method
s390-bios: Add channel command codes/structs needed for dasd-ipl
s390-bios: Support booting from real dasd device
s390-bios: Use sense ccw to ensure consistent device state at boot
time
docs/devel/s390-dasd-ipl.txt | 132 +++++++++++++++++++++
hw/s390x/ipl.c | 15 +++
hw/s390x/s390-ccw.c | 9 ++
hw/vfio/ccw.c | 13 +-
hw/vfio/ccw.h | 38 ++++++
include/hw/s390x/s390-ccw.h | 1 +
pc-bios/s390-ccw/Makefile | 2 +-
pc-bios/s390-ccw/cio.c | 181 ++++++++++++++++++++++++++++
pc-bios/s390-ccw/cio.h | 150 ++++++++++++++++-------
pc-bios/s390-ccw/dasd-ipl.c | 249 +++++++++++++++++++++++++++++++++++++++
pc-bios/s390-ccw/dasd-ipl.h | 16 +++
pc-bios/s390-ccw/libc.h | 12 ++
pc-bios/s390-ccw/main.c | 162 ++++++++++++++++---------
pc-bios/s390-ccw/netmain.c | 1 +
pc-bios/s390-ccw/s390-arch.h | 113 ++++++++++++++++++
pc-bios/s390-ccw/s390-ccw.h | 9 --
pc-bios/s390-ccw/virtio-blkdev.c | 1 +
pc-bios/s390-ccw/virtio.c | 46 +-------
18 files changed, 986 insertions(+), 164 deletions(-)
create mode 100644 docs/devel/s390-dasd-ipl.txt
create mode 100644 hw/vfio/ccw.h
create mode 100644 pc-bios/s390-ccw/cio.c
create mode 100644 pc-bios/s390-ccw/dasd-ipl.c
create mode 100644 pc-bios/s390-ccw/dasd-ipl.h
create mode 100644 pc-bios/s390-ccw/s390-arch.h
--
2.7.4
- [qemu-s390x] [RFC 00/15] s390: vfio-ccw dasd ipl support,
Jason J. Herne <=
- [qemu-s390x] [RFC 02/15] s390-bios: decouple cio setup from virtio, Jason J. Herne, 2018/07/05
- [qemu-s390x] [RFC 08/15] s390-bios: Map low core memory, Jason J. Herne, 2018/07/05
- [qemu-s390x] [RFC 09/15] s390-bios: ptr2u32 and u32toptr, Jason J. Herne, 2018/07/05
- [qemu-s390x] [RFC 13/15] s390-bios: Add channel command codes/structs needed for dasd-ipl, Jason J. Herne, 2018/07/05
- [qemu-s390x] [RFC 15/15] s390-bios: Use sense ccw to ensure consistent device state at boot time, Jason J. Herne, 2018/07/05