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"
29 /* This one seems to be a re-branded ZyXEL device */
53 .description = "ZyXEL - omni.net lcd plus usb",
76 * oh_xxx Bit-mapped, related to handshaking and status info.
104 /* We need only the second bulk-out for our single-port device. */ in omninet_calc_num_ports()
105 epds->bulk_out[0] = epds->bulk_out[1]; in omninet_calc_num_ports()
106 epds->num_bulk_out = 1; in omninet_calc_num_ports()
117 return -ENOMEM; in omninet_port_probe()
136 #define OMNINET_PAYLOADSIZE (OMNINET_BULKOUTSIZE - OMNINET_HEADERLEN)
140 struct usb_serial_port *port = urb->context; in omninet_process_read_urb()
141 const struct omninet_header *hdr = urb->transfer_buffer; in omninet_process_read_urb()
145 if (urb->actual_length <= OMNINET_HEADERLEN || !hdr->oh_len) in omninet_process_read_urb()
148 data = (char *)urb->transfer_buffer + OMNINET_HEADERLEN; in omninet_process_read_urb()
149 data_len = min_t(size_t, urb->actual_length - OMNINET_HEADERLEN, in omninet_process_read_urb()
150 hdr->oh_len); in omninet_process_read_urb()
151 tty_insert_flip_string(&port->port, data, data_len); in omninet_process_read_urb()
152 tty_flip_buffer_push(&port->port); in omninet_process_read_urb()
163 count = kfifo_out_locked(&port->write_fifo, buf + OMNINET_HEADERLEN, in omninet_prepare_write_buffer()
164 count, &port->lock); in omninet_prepare_write_buffer()
166 header->oh_seq = od->od_outseq++; in omninet_prepare_write_buffer()
167 header->oh_len = count; in omninet_prepare_write_buffer()
168 header->oh_xxx = 0x03; in omninet_prepare_write_buffer()
169 header->oh_pad = 0x00; in omninet_prepare_write_buffer()