/* Locking: The method gets called under an irqsave() spinlock; and locks struct hvc_iucv_private->lock.  */
static int hvc_iucv_put_chars(uint32_t vtermno, const char *buf, int count)
/* Locking: The method gets called under an irqsave() spinlock; and locks struct hvc_iucv_private->lock.  */
static int hvc_iucv_put_chars(uint32_t vtermno, const char *buf, int count)
{
	struct hvc_iucv_private *priv = hvc_iucv_get_private(vtermno);
	int queued;
	if (count <= 0)
		return 0;
	if (!priv)
		return -ENODEV;
	spin_lock(&priv->lock);
	queued = hvc_iucv_queue(priv, buf, count);
	spin_unlock(&priv->lock);
	return queued;
}