Lines Matching full:hvc

3  * z/VM IUCV hypervisor console (HVC) device driver
5 * This HVC device driver provides terminal access using
65 struct hvc_struct *hvc; /* HVC struct reference */ member
101 /* Array of allocated hvc iucv tty lines... */
127 * @num: The HVC virtual terminal number (vtermno)
130 * to the HVC virtual terminal number specified as parameter @num.
200 * hvc_iucv_write() - Receive IUCV message & write data to HVC buffer.
202 * @buf: HVC buffer for writing received terminal data.
203 * @count: HVC buffer size.
217 * hang up (that is issued by the HVC layer).
231 * HVC layer to hang up the tty device. */ in hvc_iucv_write()
282 /* The caller must ensure that the hvc is locked, which in hvc_iucv_write()
284 __hvc_resize(priv->hvc, *((struct winsize *) rb->mbuf->data)); in hvc_iucv_write()
303 * hvc_iucv_get_chars() - HVC get_chars operation.
304 * @vtermno: HVC virtual terminal number.
308 * The HVC thread calls this method to read characters from the back-end.
354 * (that can be passed to HVC layer to cause a tty hangup).
450 * hvc_iucv_put_chars() - HVC put_chars operation.
451 * @vtermno: HVC virtual terminal number.
455 * The HVC thread calls this method to write characters to the back-end.
480 * hvc_iucv_notifier_add() - HVC notifier for opening a TTY for the first time.
481 * @hp: Pointer to the HVC device (struct hvc_struct)
506 * hvc_iucv_cleanup() - Clean up and reset a z/VM IUCV HVC instance.
559 * hvc_iucv_hangup() - Sever IUCV path and schedule hvc tty hang up
563 * up the underlying HVC terminal device.
567 * The IUCV HVC hang-up is separated into two steps:
570 * 2. Later, when the HVC thread calls hvc_iucv_get_chars(), the
571 * IUCV_SEVERED state causes the tty hang-up in the HVC layer.
576 * the HVC layer to hang up the tty and, if so, wake up the HVC thread
579 * Special notes on hanging up a HVC terminal instantiated as console:
582 * => no hangup notifier is called by HVC (default)
620 * hvc_iucv_notifier_hangup() - HVC notifier for TTY hangups.
621 * @hp: Pointer to the HVC device (struct hvc_struct)
625 * This routine notifies the HVC back-end that a tty hangup (carrier loss,
627 * The z/VM IUCV HVC device driver ignores virtual hangups (vhangup())
662 * hvc_iucv_dtr_rts() - HVC notifier for handling DTR/RTS
663 * @hp: Pointer the HVC device (struct hvc_struct)
666 * This routine notifies the HVC back-end to raise or lower DTR/RTS
705 * hvc_iucv_notifier_del() - HVC notifier for closing a TTY for the last time.
706 * @hp: Pointer to the HVC device (struct hvc_struct)
710 * This routine notifies the HVC back-end that the last tty device fd has been
881 * respective IUCV HVC terminal.
933 hvc_kick(); /* wake up hvc thread */ in hvc_iucv_msg_pending()
971 * @dev: IUVC HVC terminal device
974 * trigger a hang-up of the underlying HVC terminal.
989 * @dev: IUVC HVC terminal device
991 * Wake up the HVC thread to trigger hang-up and respective
992 * HVC back-end notifier invocations.
1044 /* HVC operations */
1061 /* IUCV HVC device driver */
1068 /* IUCV HVC device attributes */
1121 /* allocate hvc device */ in hvc_iucv_alloc()
1122 priv->hvc = hvc_alloc(HVC_IUCV_MAGIC + id, /* PAGE_SIZE */ in hvc_iucv_alloc()
1124 if (IS_ERR(priv->hvc)) { in hvc_iucv_alloc()
1125 rc = PTR_ERR(priv->hvc); in hvc_iucv_alloc()
1129 /* notify HVC thread instead of using polling */ in hvc_iucv_alloc()
1130 priv->hvc->irq_requested = 1; in hvc_iucv_alloc()
1160 hvc_remove(priv->hvc); in hvc_iucv_alloc()
1173 hvc_remove(priv->hvc); in hvc_iucv_destroy()
1355 * hvc_iucv_init() - z/VM IUCV HVC device driver initialization
1366 pr_notice("The z/VM IUCV HVC device driver cannot " in hvc_iucv_init()
1379 /* register IUCV HVC device driver */ in hvc_iucv_init()
1426 * (must be done before allocating hvc terminal devices) */ in hvc_iucv_init()
1429 pr_err("Registering HVC terminal device as " in hvc_iucv_init()
1438 pr_err("Creating a new HVC terminal device " in hvc_iucv_init()