Lines Matching refs:serial

8  *	Supports the following Moxa USB to serial converters:
19 #include <linux/serial.h>
27 #include <linux/usb/serial.h>
105 /* Definitions for serial event type */
212 static int mxuport_recv_ctrl_urb(struct usb_serial *serial,
218 status = usb_control_msg(serial->dev,
219 usb_rcvctrlpipe(serial->dev, 0),
226 dev_err(&serial->interface->dev,
233 dev_err(&serial->interface->dev,
243 static int mxuport_send_ctrl_data_urb(struct usb_serial *serial,
250 status = usb_control_msg(serial->dev,
251 usb_sndctrlpipe(serial->dev, 0),
258 dev_err(&serial->interface->dev,
268 static int mxuport_send_ctrl_urb(struct usb_serial *serial,
271 return mxuport_send_ctrl_data_urb(serial, request, value, index,
287 struct usb_serial *serial = port->serial;
291 mxuport_send_ctrl_urb(serial, RQ_VENDOR_SET_RX_HOST_EN,
306 struct usb_serial *serial = port->serial;
310 mxuport_send_ctrl_urb(serial, RQ_VENDOR_SET_RX_HOST_EN,
466 struct usb_serial *serial = port->serial;
482 if (rcv_port >= serial->num_ports) {
488 demux_port = serial->port[rcv_port];
513 struct usb_serial *serial = port->serial;
529 if (rcv_port >= serial->num_ports) {
535 demux_port = serial->port[rcv_port];
552 * contain serial data or events.
557 struct usb_serial *serial = port->serial;
559 if (port == serial->port[0])
562 if (port == serial->port[1])
572 struct usb_serial *serial = port->serial;
582 err = mxuport_recv_ctrl_urb(serial, RQ_VENDOR_GET_OUTQUEUE, 0,
600 struct usb_serial *serial = port->serial;
605 err = mxuport_send_ctrl_urb(serial, RQ_VENDOR_SET_MCR,
616 struct usb_serial *serial = port->serial;
621 err = mxuport_send_ctrl_urb(serial, RQ_VENDOR_SET_DTR,
638 struct usb_serial *serial = port->serial;
666 err = mxuport_send_ctrl_urb(serial, RQ_VENDOR_SET_RTS,
765 struct usb_serial *serial)
784 err = mxuport_send_ctrl_data_urb(serial, RQ_VENDOR_SET_CHARS,
796 err = mxuport_send_ctrl_urb(serial, RQ_VENDOR_SET_XONXOFF,
839 struct usb_serial *serial = port->serial;
903 err = mxuport_send_ctrl_data_urb(serial, RQ_VENDOR_SET_LINE,
908 err = mxuport_set_termios_flow(tty, old_termios, port, serial);
919 err = mxuport_send_ctrl_data_urb(serial, RQ_VENDOR_SET_BAUD,
938 static int mxuport_calc_num_ports(struct usb_serial *serial,
941 unsigned long features = (unsigned long)usb_get_serial_data(serial);
954 dev_warn(&serial->interface->dev,
974 static int mxuport_get_fw_version(struct usb_serial *serial, u32 *version)
984 err = mxuport_recv_ctrl_urb(serial, RQ_VENDOR_GET_VERSION, 0, 0,
999 static int mxuport_download_fw(struct usb_serial *serial,
1011 dev_dbg(&serial->interface->dev, "Starting firmware download...\n");
1012 err = mxuport_send_ctrl_urb(serial, RQ_VENDOR_START_FW_DOWN, 0, 0);
1021 err = mxuport_send_ctrl_data_urb(serial, RQ_VENDOR_FW_DATA,
1024 mxuport_send_ctrl_urb(serial, RQ_VENDOR_STOP_FW_DOWN,
1035 err = mxuport_send_ctrl_urb(serial, RQ_VENDOR_STOP_FW_DOWN, 0, 0);
1040 err = mxuport_send_ctrl_urb(serial, RQ_VENDOR_QUERY_FW_READY, 0, 0);
1047 static int mxuport_probe(struct usb_serial *serial,
1050 u16 productid = le16_to_cpu(serial->dev->descriptor.idProduct);
1058 err = mxuport_send_ctrl_urb(serial, RQ_VENDOR_QUERY_FW_CONFIG, 0, 0);
1060 mxuport_send_ctrl_urb(serial, RQ_VENDOR_RESET_DEVICE, 0, 0);
1064 err = mxuport_get_fw_version(serial, &version);
1068 dev_dbg(&serial->interface->dev, "Device firmware version v%x.%x.%x\n",
1075 err = request_firmware(&fw_p, buf, &serial->interface->dev);
1077 dev_warn(&serial->interface->dev, "Firmware %s not found\n",
1086 dev_dbg(&serial->interface->dev,
1091 err = mxuport_download_fw(serial, fw_p);
1094 err = mxuport_get_fw_version(serial, &version);
1100 dev_info(&serial->interface->dev,
1110 usb_set_serial_data(serial, (void *)id->driver_info);
1120 struct usb_serial *serial = port->serial;
1136 err = mxuport_send_ctrl_urb(serial, RQ_VENDOR_SET_FIFO_DISABLE,
1142 err = mxuport_send_ctrl_urb(serial, RQ_VENDOR_SET_HIGH_PERFOR,
1148 return mxuport_send_ctrl_urb(serial, RQ_VENDOR_SET_INTERFACE,
1153 static int mxuport_attach(struct usb_serial *serial)
1155 struct usb_serial_port *port0 = serial->port[0];
1156 struct usb_serial_port *port1 = serial->port[1];
1179 static void mxuport_release(struct usb_serial *serial)
1181 struct usb_serial_port *port0 = serial->port[0];
1182 struct usb_serial_port *port1 = serial->port[1];
1191 struct usb_serial *serial = port->serial;
1195 err = mxuport_send_ctrl_urb(serial, RQ_VENDOR_SET_RX_HOST_EN,
1200 err = mxuport_send_ctrl_urb(serial, RQ_VENDOR_SET_OPEN,
1203 mxuport_send_ctrl_urb(serial, RQ_VENDOR_SET_RX_HOST_EN,
1223 struct usb_serial *serial = port->serial;
1225 mxuport_send_ctrl_urb(serial, RQ_VENDOR_SET_OPEN, 0,
1228 mxuport_send_ctrl_urb(serial, RQ_VENDOR_SET_RX_HOST_EN, 0,
1236 struct usb_serial *serial = port->serial;
1247 return mxuport_send_ctrl_urb(serial, RQ_VENDOR_SET_BREAK,
1251 static int mxuport_resume(struct usb_serial *serial)
1259 port = serial->port[i];
1266 for (i = 0; i < serial->num_ports; i++) {
1267 port = serial->port[i];