Lines Matching refs:serial
13 * for all serial port TX and 1 endpoint bulk-in for all serial port read in
16 * Write URB is fixed with 512bytes, per serial port used 128Bytes.
19 * Read URB is 512Bytes max, per serial port used 128Bytes.
28 #include <linux/usb/serial.h>
193 static int f81534_logic_to_phy_port(struct usb_serial *serial,
197 usb_get_serial_data(port->serial);
214 static int f81534_set_register(struct usb_serial *serial, u16 reg, u8 data)
216 struct usb_interface *interface = serial->interface;
217 struct usb_device *dev = serial->dev;
255 static int f81534_get_register(struct usb_serial *serial, u16 reg, u8 *data)
257 struct usb_interface *interface = serial->interface;
258 struct usb_device *dev = serial->dev;
298 static int f81534_set_mask_register(struct usb_serial *serial, u16 reg,
304 status = f81534_get_register(serial, reg, &tmp);
311 return f81534_set_register(serial, reg, tmp);
314 static int f81534_set_phy_port_register(struct usb_serial *serial, int phy,
317 return f81534_set_register(serial, reg + F81534_UART_OFFSET * phy,
321 static int f81534_get_phy_port_register(struct usb_serial *serial, int phy,
324 return f81534_get_register(serial, reg + F81534_UART_OFFSET * phy,
333 return f81534_set_register(port->serial,
342 return f81534_get_register(port->serial,
350 static int f81534_wait_for_spi_idle(struct usb_serial *serial)
357 status = f81534_get_register(serial, F81534_BUS_REG_STATUS,
371 dev_err(&serial->interface->dev,
377 return f81534_set_register(serial, F81534_BUS_REG_STATUS,
381 static int f81534_get_spi_register(struct usb_serial *serial, u16 reg,
386 status = f81534_get_register(serial, reg, data);
390 return f81534_wait_for_spi_idle(serial);
393 static int f81534_set_spi_register(struct usb_serial *serial, u16 reg, u8 data)
397 status = f81534_set_register(serial, reg, data);
401 return f81534_wait_for_spi_idle(serial);
404 static int f81534_read_flash(struct usb_serial *serial, u32 address,
415 status = f81534_set_spi_register(serial, F81534_BUS_REG_START,
420 status = f81534_set_spi_register(serial, F81534_BUS_REG_START,
425 status = f81534_set_spi_register(serial, F81534_BUS_REG_START,
430 status = f81534_set_spi_register(serial, F81534_BUS_REG_START,
451 status = f81534_set_spi_register(serial, reg_tmp,
456 status = f81534_get_spi_register(serial,
484 * index 2: serial TX out length
486 * index 4~127: serial out data block
733 static int f81534_find_config_idx(struct usb_serial *serial, u8 *index)
738 status = f81534_read_flash(serial, F81534_CUSTOM_ADDRESS_START, 1,
741 dev_err(&serial->interface->dev, "%s: read failed: %d\n",
756 * The F81532/534 will not report serial port to USB serial subsystem when
762 static bool f81534_check_port_hw_disabled(struct usb_serial *serial, int phy)
772 status = f81534_get_phy_port_register(serial, phy,
780 status = f81534_set_phy_port_register(serial, phy,
786 status = f81534_get_phy_port_register(serial, phy,
791 status = f81534_set_phy_port_register(serial, phy,
796 status = f81534_set_phy_port_register(serial, phy,
803 status = f81534_get_phy_port_register(serial, phy,
808 status = f81534_set_phy_port_register(serial, phy,
837 static int f81534_calc_num_ports(struct usb_serial *serial,
841 struct device *dev = &serial->interface->dev;
855 serial_priv = devm_kzalloc(&serial->interface->dev,
860 usb_set_serial_data(serial, serial_priv);
864 status = f81534_find_config_idx(serial, &serial_priv->setting_idx);
866 dev_err(&serial->interface->dev, "%s: find idx failed: %d\n",
876 status = f81534_read_flash(serial,
882 dev_err(&serial->interface->dev,
888 dev_dbg(&serial->interface->dev,
893 status = f81534_read_flash(serial,
898 dev_err(&serial->interface->dev,
904 dev_dbg(&serial->interface->dev, "%s: read default config\n",
910 if (f81534_check_port_hw_disabled(serial, i))
920 dev_warn(&serial->interface->dev,
931 dev_dbg(&serial->interface->dev,
1011 static int f81534_submit_read_urb(struct usb_serial *serial, gfp_t flags)
1013 return usb_serial_generic_submit_read_urbs(serial->port[0], flags);
1083 usb_get_serial_data(port->serial);
1107 status = f81534_submit_read_urb(port->serial, GFP_KERNEL);
1124 usb_get_serial_data(port->serial);
1125 struct usb_serial_port *port0 = port->serial->port[0];
1180 * index 2: serial in size (data+lsr, must be even)
1183 * index 4~127: serial in data block (data+lsr, must be even)
1258 struct usb_serial *serial;
1270 serial = port->serial;
1272 serial_priv = usb_get_serial_data(serial);
1284 port = serial->port[tty_port_num];
1334 struct usb_serial *serial;
1341 serial = port->serial;
1342 serial_priv = usb_get_serial_data(serial);
1361 status = f81534_set_mask_register(serial,
1379 serial_priv = usb_get_serial_data(port->serial);
1395 ret = f81534_logic_to_phy_port(port->serial, port);
1516 static int f81534_resume(struct usb_serial *serial)
1519 usb_get_serial_data(serial);
1532 status = f81534_submit_read_urb(serial, GFP_NOIO);
1541 for (i = 0; i < serial->num_ports; i++) {
1542 port = serial->port[i];