static void ipoctal_close(struct tty_struct *tty, struct file *filp) { struct ipoctal_channel *channel = tty->driver_data; tty_port_close(&channel->tty_port, tty, filp); ipoctal_free_channel(channel); }
/* * Amazingly, if ehv_bc_tty_open() returns an error code, the tty layer will * still call this function to close the tty device. So we can't assume that * the tty port has been initialized. */ static void ehv_bc_tty_close(struct tty_struct *ttys, struct file *filp) { struct ehv_bc_data *bc = &bcs[ttys->index]; if (bc->dev) tty_port_close(&bc->port, ttys, filp); }
static void smbsim_serial_close(struct tty_struct *tty, struct file *filp) { SMBSIM_SERIAL_DEV *dev = smbsim_serial_devs + tty->index; TRACE_MSG(TRACE_LEVEL_INFO, TRACE_FLAG_DEFAULT, "0x%p\n", dev); tty_port_close(&dev->tty_port, tty, filp); }
static void kgdb_nmi_tty_close(struct tty_struct *tty, struct file *file) { struct kgdb_nmi_tty_priv *priv = tty->driver_data; unsigned int mode = file->f_flags & O_ACCMODE; if (mode == O_RDONLY || mode == O_RDWR) atomic_dec(&kgdb_nmi_num_readers); tty_port_close(&priv->port, tty, file); }
static void tpk_close(struct tty_struct *tty, struct file *filp) { struct ttyprintk_port *tpkp = tty->driver_data; mutex_lock(&tpkp->port_write_mutex); tpk_printk(NULL, 0); mutex_unlock(&tpkp->port_write_mutex); tty_port_close(&tpkp->port, tty, filp); }
/* * TTY operations close function. */ static void tpk_close(struct tty_struct *tty, struct file *filp) { struct ttyprintk_port *tpkp = tty->driver_data; mutex_lock(&tpkp->port_write_mutex); /* flush tpk_printk buffer */ #ifdef CONFIG_DEBUG_PRINTK tpk_printk(NULL, 0); #else tpk_; #endif mutex_unlock(&tpkp->port_write_mutex); tty_port_close(&tpkp->port, tty, filp); }
static void ntty_close(struct tty_struct *tty, struct file *filp) { struct port *port = tty->driver_data; if (port) tty_port_close(&port->port, tty, filp); }
static void acm_tty_close(struct tty_struct *tty, struct file *filp) { struct acm *acm = tty->driver_data; dev_dbg(&acm->control->dev, "%s\n", __func__); tty_port_close(&acm->port, tty, filp); }
static void rs_close(struct tty_struct *tty, struct file * filp) { struct serial_state *info = tty->driver_data; tty_port_close(&info->port, tty, filp); }
static void goldfish_tty_close(struct tty_struct *tty, struct file *filp) { tty_port_close(tty->port, tty, filp); }
static void smd_tty_close(struct tty_struct *tty, struct file *f) { struct smd_tty_info *info = tty->driver_data; tty_port_close(&info->port, tty, f); }
static void rpmsgtty_close(struct tty_struct *tty, struct file *filp) { return tty_port_close(tty->port, tty, filp); }
static void gdm_tty_close(struct tty_struct *tty, struct file *filp) { struct gdm *gdm = tty->driver_data; tty_port_close(&gdm->port, tty, filp); }
static void ram_console_tty_close(struct tty_struct *tty, struct file *filp) { struct ram_console_port *rcp = tty->driver_data; tty_port_close(&rcp->port, tty, filp); }