Lines Matching refs:serial
170 static int pl2303_vendor_read(struct usb_serial *serial, u16 value, in pl2303_vendor_read() argument
173 struct device *dev = &serial->interface->dev; in pl2303_vendor_read()
176 res = usb_control_msg(serial->dev, usb_rcvctrlpipe(serial->dev, 0), in pl2303_vendor_read()
193 static int pl2303_vendor_write(struct usb_serial *serial, u16 value, u16 index) in pl2303_vendor_write() argument
195 struct device *dev = &serial->interface->dev; in pl2303_vendor_write()
200 res = usb_control_msg(serial->dev, usb_sndctrlpipe(serial->dev, 0), in pl2303_vendor_write()
212 static int pl2303_probe(struct usb_serial *serial, in pl2303_probe() argument
215 usb_set_serial_data(serial, (void *)id->driver_info); in pl2303_probe()
220 static int pl2303_startup(struct usb_serial *serial) in pl2303_startup() argument
236 if (serial->dev->descriptor.bDeviceClass == 0x02) in pl2303_startup()
238 else if (serial->dev->descriptor.bMaxPacketSize0 == 0x40) in pl2303_startup()
240 else if (serial->dev->descriptor.bDeviceClass == 0x00) in pl2303_startup()
242 else if (serial->dev->descriptor.bDeviceClass == 0xFF) in pl2303_startup()
244 dev_dbg(&serial->interface->dev, "device type: %d\n", type); in pl2303_startup()
247 spriv->quirks = (unsigned long)usb_get_serial_data(serial); in pl2303_startup()
250 usb_set_serial_data(serial, spriv); in pl2303_startup()
252 pl2303_vendor_read(serial, 0x8484, buf); in pl2303_startup()
253 pl2303_vendor_write(serial, 0x0404, 0); in pl2303_startup()
254 pl2303_vendor_read(serial, 0x8484, buf); in pl2303_startup()
255 pl2303_vendor_read(serial, 0x8383, buf); in pl2303_startup()
256 pl2303_vendor_read(serial, 0x8484, buf); in pl2303_startup()
257 pl2303_vendor_write(serial, 0x0404, 1); in pl2303_startup()
258 pl2303_vendor_read(serial, 0x8484, buf); in pl2303_startup()
259 pl2303_vendor_read(serial, 0x8383, buf); in pl2303_startup()
260 pl2303_vendor_write(serial, 0, 1); in pl2303_startup()
261 pl2303_vendor_write(serial, 1, 0); in pl2303_startup()
263 pl2303_vendor_write(serial, 2, 0x24); in pl2303_startup()
265 pl2303_vendor_write(serial, 2, 0x44); in pl2303_startup()
272 static void pl2303_release(struct usb_serial *serial) in pl2303_release() argument
274 struct pl2303_serial_private *spriv = usb_get_serial_data(serial); in pl2303_release()
307 struct usb_device *dev = port->serial->dev; in pl2303_set_control_lines()
405 struct usb_serial *serial = port->serial; in pl2303_encode_baud_rate() local
406 struct pl2303_serial_private *spriv = usb_get_serial_data(serial); in pl2303_encode_baud_rate()
435 struct usb_device *udev = port->serial->dev; in pl2303_get_line_request()
458 struct usb_device *udev = port->serial->dev; in pl2303_set_line_request()
481 struct usb_serial *serial = port->serial; in pl2303_set_termios() local
482 struct pl2303_serial_private *spriv = usb_get_serial_data(serial); in pl2303_set_termios()
604 pl2303_vendor_write(serial, 0x0, 0x41); in pl2303_set_termios()
606 pl2303_vendor_write(serial, 0x0, 0x61); in pl2303_set_termios()
608 pl2303_vendor_write(serial, 0x0, 0x0); in pl2303_set_termios()
640 struct usb_serial *serial = port->serial; in pl2303_open() local
641 struct pl2303_serial_private *spriv = usb_get_serial_data(serial); in pl2303_open()
645 usb_clear_halt(serial->dev, port->write_urb->pipe); in pl2303_open()
646 usb_clear_halt(serial->dev, port->read_urb->pipe); in pl2303_open()
649 pl2303_vendor_write(serial, 8, 0); in pl2303_open()
650 pl2303_vendor_write(serial, 9, 0); in pl2303_open()
764 struct usb_serial *serial = port->serial; in pl2303_set_break() local
776 result = usb_control_msg(serial->dev, usb_sndctrlpipe(serial->dev, 0), in pl2303_set_break()
794 struct usb_serial *serial = port->serial; in pl2303_update_line_status() local
795 struct pl2303_serial_private *spriv = usb_get_serial_data(serial); in pl2303_update_line_status()