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).
448 * hvc_iucv_put_chars() - HVC put_chars operation.
449 * @vtermno: HVC virtual terminal number.
453 * The HVC thread calls this method to write characters to the back-end.
478 * hvc_iucv_notifier_add() - HVC notifier for opening a TTY for the first time.
479 * @hp: Pointer to the HVC device (struct hvc_struct)
504 * hvc_iucv_cleanup() - Clean up and reset a z/VM IUCV HVC instance.
557 * hvc_iucv_hangup() - Sever IUCV path and schedule hvc tty hang up
561 * up the underlying HVC terminal device.
565 * The IUCV HVC hang-up is separated into two steps:
568 * 2. Later, when the HVC thread calls hvc_iucv_get_chars(), the
569 * IUCV_SEVERED state causes the tty hang-up in the HVC layer.
574 * the HVC layer to hang up the tty and, if so, wake up the HVC thread
577 * Special notes on hanging up a HVC terminal instantiated as console:
580 * => no hangup notifier is called by HVC (default)
618 * hvc_iucv_notifier_hangup() - HVC notifier for TTY hangups.
619 * @hp: Pointer to the HVC device (struct hvc_struct)
623 * This routine notifies the HVC back-end that a tty hangup (carrier loss,
625 * The z/VM IUCV HVC device driver ignores virtual hangups (vhangup())
660 * hvc_iucv_dtr_rts() - HVC notifier for handling DTR/RTS
661 * @hp: Pointer the HVC device (struct hvc_struct)
664 * This routine notifies the HVC back-end to raise or lower DTR/RTS
703 * hvc_iucv_notifier_del() - HVC notifier for closing a TTY for the last time.
704 * @hp: Pointer to the HVC device (struct hvc_struct)
708 * This routine notifies the HVC back-end that the last tty device fd has been
879 * respective IUCV HVC terminal.
931 hvc_kick(); /* wake up hvc thread */ in hvc_iucv_msg_pending()
1011 /* HVC operations */
1021 /* IUCV HVC device attributes */
1073 /* allocate hvc device */ in hvc_iucv_alloc()
1074 priv->hvc = hvc_alloc(id, /* PAGE_SIZE */ in hvc_iucv_alloc()
1076 if (IS_ERR(priv->hvc)) { in hvc_iucv_alloc()
1077 rc = PTR_ERR(priv->hvc); in hvc_iucv_alloc()
1081 /* notify HVC thread instead of using polling */ in hvc_iucv_alloc()
1082 priv->hvc->irq_requested = 1; in hvc_iucv_alloc()
1105 hvc_remove(priv->hvc); in hvc_iucv_alloc()
1118 hvc_remove(priv->hvc); in hvc_iucv_destroy()
1300 * hvc_iucv_init() - z/VM IUCV HVC device driver initialization
1311 pr_notice("The z/VM IUCV HVC device driver cannot " in hvc_iucv_init()
1366 * (must be done before allocating hvc terminal devices) */ in hvc_iucv_init()
1369 pr_err("Registering HVC terminal device as " in hvc_iucv_init()
1378 pr_err("Creating a new HVC terminal device " in hvc_iucv_init()