diff options
Diffstat (limited to 'include/linux/virtio_console.h')
| -rw-r--r-- | include/linux/virtio_console.h | 23 | 
1 files changed, 23 insertions, 0 deletions
diff --git a/include/linux/virtio_console.h b/include/linux/virtio_console.h index 92228a8fbcb..ae4f039515b 100644 --- a/include/linux/virtio_console.h +++ b/include/linux/virtio_console.h @@ -12,14 +12,37 @@  /* Feature bits */  #define VIRTIO_CONSOLE_F_SIZE	0	/* Does host provide console size? */ +#define VIRTIO_CONSOLE_F_MULTIPORT 1	/* Does host provide multiple ports? */  struct virtio_console_config {  	/* colums of the screens */  	__u16 cols;  	/* rows of the screens */  	__u16 rows; +	/* max. number of ports this device can hold */ +	__u32 max_nr_ports; +	/* number of ports added so far */ +	__u32 nr_ports;  } __attribute__((packed)); +/* + * A message that's passed between the Host and the Guest for a + * particular port. + */ +struct virtio_console_control { +	__u32 id;		/* Port number */ +	__u16 event;		/* The kind of control event (see below) */ +	__u16 value;		/* Extra information for the key */ +}; + +/* Some events for control messages */ +#define VIRTIO_CONSOLE_PORT_READY	0 +#define VIRTIO_CONSOLE_CONSOLE_PORT	1 +#define VIRTIO_CONSOLE_RESIZE		2 +#define VIRTIO_CONSOLE_PORT_OPEN	3 +#define VIRTIO_CONSOLE_PORT_NAME	4 +#define VIRTIO_CONSOLE_PORT_REMOVE	5 +  #ifdef __KERNEL__  int __init virtio_cons_early_init(int (*put_chars)(u32, const char *, int));  #endif /* __KERNEL__ */  |