ipoctal.c (69851e4ab8feeb369119a44ddca430c0ee15f0d8) ipoctal.c (95713967ba52389f7cea75704d0cf048080ec218)
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 */

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

453 spin_unlock_irqrestore(&channel->lock, flags);
454 } else {
455 break;
456 }
457 }
458 return i;
459}
460
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 */

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

453 spin_unlock_irqrestore(&channel->lock, flags);
454 } else {
455 break;
456 }
457 }
458 return i;
459}
460
461static int ipoctal_write_tty(struct tty_struct *tty, const u8 *buf, int count)
461static ssize_t ipoctal_write_tty(struct tty_struct *tty, const u8 *buf,
462 size_t count)
462{
463 struct ipoctal_channel *channel = tty->driver_data;
464 unsigned int char_copied;
465
466 char_copied = ipoctal_copy_write_buffer(channel, buf, count);
467
468 /* As the IP-OCTAL 485 only supports half duplex, do it manually */
469 if (channel->board_id == IPACK1_DEVICE_ID_SBS_OCTAL_485) {

--- 304 unchanged lines hidden ---
463{
464 struct ipoctal_channel *channel = tty->driver_data;
465 unsigned int char_copied;
466
467 char_copied = ipoctal_copy_write_buffer(channel, buf, count);
468
469 /* As the IP-OCTAL 485 only supports half duplex, do it manually */
470 if (channel->board_id == IPACK1_DEVICE_ID_SBS_OCTAL_485) {

--- 304 unchanged lines hidden ---