Lines Matching +full:lcd +full:- +full:rst
1 // SPDX-License-Identifier: GPL-2.0
3 * USB ZyXEL omni.net LCD PLUS driver
7 * See Documentation/usb/usb-serial.rst for more information on using this
25 #define DRIVER_DESC "USB ZyXEL omni.net LCD PLUS Driver"
30 /* This one seems to be a re-branded ZyXEL device */
55 .description = "ZyXEL - omni.net lcd plus usb",
78 * oh_xxx Bit-mapped, related to handshaking and status info.
106 /* We need only the second bulk-out for our single-port device. */ in omninet_calc_num_ports()
107 epds->bulk_out[0] = epds->bulk_out[1]; in omninet_calc_num_ports()
108 epds->num_bulk_out = 1; in omninet_calc_num_ports()
119 return -ENOMEM; in omninet_port_probe()
138 #define OMNINET_PAYLOADSIZE (OMNINET_BULKOUTSIZE - OMNINET_HEADERLEN)
142 struct usb_serial_port *port = urb->context; in omninet_process_read_urb()
143 const struct omninet_header *hdr = urb->transfer_buffer; in omninet_process_read_urb()
147 if (urb->actual_length <= OMNINET_HEADERLEN || !hdr->oh_len) in omninet_process_read_urb()
150 data = (char *)urb->transfer_buffer + OMNINET_HEADERLEN; in omninet_process_read_urb()
151 data_len = min_t(size_t, urb->actual_length - OMNINET_HEADERLEN, in omninet_process_read_urb()
152 hdr->oh_len); in omninet_process_read_urb()
153 tty_insert_flip_string(&port->port, data, data_len); in omninet_process_read_urb()
154 tty_flip_buffer_push(&port->port); in omninet_process_read_urb()
165 count = kfifo_out_locked(&port->write_fifo, buf + OMNINET_HEADERLEN, in omninet_prepare_write_buffer()
166 count, &port->lock); in omninet_prepare_write_buffer()
168 header->oh_seq = od->od_outseq++; in omninet_prepare_write_buffer()
169 header->oh_len = count; in omninet_prepare_write_buffer()
170 header->oh_xxx = 0x03; in omninet_prepare_write_buffer()
171 header->oh_pad = 0x00; in omninet_prepare_write_buffer()