s390: sclp ascii console support
authorHeinz Graalfs <graalfs@linux.vnet.ibm.com>
Mon, 29 Oct 2012 02:13:25 +0000 (02:13 +0000)
committerAlexander Graf <agraf@suse.de>
Mon, 29 Oct 2012 18:41:56 +0000 (19:41 +0100)
commit130c57c036fdc2eba8936da1b1dad39e78d5ea32
tree4427834c76ee65dae92cf77a491466a10b21e2db
parentab9074b559823a22822db9e299198c53169c34ea
s390: sclp ascii console support

This code adds console support  by implementing SCLP's ASCII Console
Data event. This is the same console as LPARs ASCII console or z/VMs
sysascii.

The console can be specified manually with something like
-chardev stdio,id=charconsole0 -device sclpconsole,chardev=charconsole0,id=console0

Newer kernels will autodetect that console and prefer that over virtio
console.

When data is received from the character layer it creates a service
interrupt to trigger a Read Event Data command from the guest that will
pick up the received character byte-stream.
When characters are echo'ed by the linux guest a Write Event Data occurs
which is forwarded by the Event Facility to the console that supports
a corresponding mask value.
Console resizing is not supported.
The character layer byte-stream is buffered using a fixed size iov
buffer.

Signed-off-by: Heinz Graalfs <graalfs@linux.vnet.ibm.com>
Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
Signed-off-by: Jens Freimann <jfrei@linux.vnet.ibm.com>
Signed-off-by: Alexander Graf <agraf@suse.de>
hw/s390x/Makefile.objs
hw/s390x/sclpconsole.c [new file with mode: 0644]