ipoctal.c (4f2c0a4acffbec01079c28f839422e64ddeff004) ipoctal.c (515be7baeddb04d786e3a7f4072791087c25bb04)
1// SPDX-License-Identifier: GPL-2.0-only
2/*
3 * driver for the GE IP-OCTAL boards
4 *
5 * Copyright (C) 2009-2012 CERN (www.cern.ch)
6 * Author: Nicolas Serafini, EIC2 SA
7 * Author: Samuel Iglesias Gonsalvez <siglesias@igalia.com>
8 */

--- 633 unchanged lines hidden (view full) ---

642 channel->nb_bytes = 0;
643 channel->pointer_read = 0;
644 channel->pointer_write = 0;
645 spin_unlock_irqrestore(&channel->lock, flags);
646
647 tty_port_hangup(&channel->tty_port);
648
649 ipoctal_reset_channel(channel);
1// SPDX-License-Identifier: GPL-2.0-only
2/*
3 * driver for the GE IP-OCTAL boards
4 *
5 * Copyright (C) 2009-2012 CERN (www.cern.ch)
6 * Author: Nicolas Serafini, EIC2 SA
7 * Author: Samuel Iglesias Gonsalvez <siglesias@igalia.com>
8 */

--- 633 unchanged lines hidden (view full) ---

642 channel->nb_bytes = 0;
643 channel->pointer_read = 0;
644 channel->pointer_write = 0;
645 spin_unlock_irqrestore(&channel->lock, flags);
646
647 tty_port_hangup(&channel->tty_port);
648
649 ipoctal_reset_channel(channel);
650 tty_port_set_initialized(&channel->tty_port, 0);
650 tty_port_set_initialized(&channel->tty_port, false);
651 wake_up_interruptible(&channel->tty_port.open_wait);
652}
653
654static void ipoctal_shutdown(struct tty_struct *tty)
655{
656 struct ipoctal_channel *channel = tty->driver_data;
657
658 if (channel == NULL)
659 return;
660
661 ipoctal_reset_channel(channel);
651 wake_up_interruptible(&channel->tty_port.open_wait);
652}
653
654static void ipoctal_shutdown(struct tty_struct *tty)
655{
656 struct ipoctal_channel *channel = tty->driver_data;
657
658 if (channel == NULL)
659 return;
660
661 ipoctal_reset_channel(channel);
662 tty_port_set_initialized(&channel->tty_port, 0);
662 tty_port_set_initialized(&channel->tty_port, false);
663}
664
665static void ipoctal_cleanup(struct tty_struct *tty)
666{
667 struct ipoctal_channel *channel = tty->driver_data;
668 struct ipoctal *ipoctal = chan_to_ipoctal(channel, tty->index);
669
670 /* release the carrier driver */

--- 105 unchanged lines hidden ---
663}
664
665static void ipoctal_cleanup(struct tty_struct *tty)
666{
667 struct ipoctal_channel *channel = tty->driver_data;
668 struct ipoctal *ipoctal = chan_to_ipoctal(channel, tty->index);
669
670 /* release the carrier driver */

--- 105 unchanged lines hidden ---