Lines Matching refs:serial
103 struct usb_serial *serial; member
263 return send_cmd(port->serial->dev, in purge_port()
335 static int read_boot_mem(struct edgeport_serial *serial, in read_boot_mem() argument
342 status = ti_vread_sync(serial->serial->dev, in read_boot_mem()
343 UMPC_MEMORY_READ, serial->TI_I2C_Type, in read_boot_mem()
346 dev_dbg(&serial->serial->dev->dev, "%s - ERROR %x\n", __func__, status); in read_boot_mem()
351 dev_dbg(&serial->serial->dev->dev, "%s - start_address = %x, length = %d\n", in read_boot_mem()
353 usb_serial_debug_data(&serial->serial->dev->dev, __func__, length, buffer); in read_boot_mem()
355 serial->TiReadI2C = 1; in read_boot_mem()
361 static int write_boot_mem(struct edgeport_serial *serial, in write_boot_mem() argument
369 if (!serial->TiReadI2C) { in write_boot_mem()
374 status = read_boot_mem(serial, 0, 1, temp); in write_boot_mem()
381 status = ti_vsend_sync(serial->serial->dev, in write_boot_mem()
388 …dev_dbg(&serial->serial->dev->dev, "%s - start_sddr = %x, length = %d\n", __func__, start_address,… in write_boot_mem()
389 usb_serial_debug_data(&serial->serial->dev->dev, __func__, length, buffer); in write_boot_mem()
396 static int write_i2c_mem(struct edgeport_serial *serial, in write_i2c_mem() argument
399 struct device *dev = &serial->serial->dev->dev; in write_i2c_mem()
424 status = ti_vsend_sync(serial->serial->dev, in write_i2c_mem()
456 status = ti_vsend_sync(serial->serial->dev, UMPC_MEMORY_WRITE, in write_i2c_mem()
497 status = read_ram(port->port->serial->dev, port->dma_address, in tx_active()
505 status = read_ram(port->port->serial->dev, in tx_active()
550 static int read_rom(struct edgeport_serial *serial, in read_rom() argument
555 if (serial->product_info.TiMode == TI_MODE_DOWNLOAD) { in read_rom()
556 status = read_download_mem(serial->serial->dev, in read_rom()
559 serial->TI_I2C_Type, in read_rom()
562 status = read_boot_mem(serial, start_address, length, in read_rom()
568 static int write_rom(struct edgeport_serial *serial, int start_address, in write_rom() argument
571 if (serial->product_info.TiMode == TI_MODE_BOOT) in write_rom()
572 return write_boot_mem(serial, start_address, length, in write_rom()
575 if (serial->product_info.TiMode == TI_MODE_DOWNLOAD) in write_rom()
576 return write_i2c_mem(serial, start_address, length, in write_rom()
577 serial->TI_I2C_Type, buffer); in write_rom()
584 static int get_descriptor_addr(struct edgeport_serial *serial, in get_descriptor_addr() argument
593 status = read_rom(serial, in get_descriptor_addr()
628 static int check_i2c_image(struct edgeport_serial *serial) in check_i2c_image() argument
630 struct device *dev = &serial->serial->dev->dev; in check_i2c_image()
648 status = read_rom(serial, 0, 1, buffer); in check_i2c_image()
660 status = read_rom(serial, in check_i2c_image()
681 status = read_rom(serial, start_address + in check_i2c_image()
708 static int get_manuf_info(struct edgeport_serial *serial, __u8 *buffer) in get_manuf_info() argument
714 struct device *dev = &serial->serial->dev->dev; in get_manuf_info()
720 start_address = get_descriptor_addr(serial, I2C_DESC_TYPE_ION, in get_manuf_info()
730 status = read_rom(serial, start_address+sizeof(struct ti_i2c_desc), in get_manuf_info()
833 static int i2c_type_bootmode(struct edgeport_serial *serial) in i2c_type_bootmode() argument
835 struct device *dev = &serial->serial->dev->dev; in i2c_type_bootmode()
844 status = ti_vread_sync(serial->serial->dev, UMPC_MEMORY_READ, in i2c_type_bootmode()
852 serial->TI_I2C_Type = DTK_ADDR_SPACE_I2C_TYPE_II; in i2c_type_bootmode()
857 status = ti_vread_sync(serial->serial->dev, UMPC_MEMORY_READ, in i2c_type_bootmode()
865 serial->TI_I2C_Type = DTK_ADDR_SPACE_I2C_TYPE_III; in i2c_type_bootmode()
870 serial->TI_I2C_Type = DTK_ADDR_SPACE_I2C_TYPE_II; in i2c_type_bootmode()
877 static int bulk_xfer(struct usb_serial *serial, void *buffer, in bulk_xfer() argument
882 status = usb_bulk_msg(serial->dev, in bulk_xfer()
883 usb_sndbulkpipe(serial->dev, in bulk_xfer()
884 serial->port[0]->bulk_out_endpointAddress), in bulk_xfer()
890 static int download_code(struct edgeport_serial *serial, __u8 *image, in download_code() argument
906 status = bulk_xfer(serial->serial, &image[pos], in download_code()
934 static int download_fw(struct edgeport_serial *serial) in download_fw() argument
936 struct device *dev = &serial->serial->dev->dev; in download_fw()
948 serial->product_info.hardware_type = HARDWARE_TYPE_TIUMP; in download_fw()
951 serial->TI_I2C_Type = DTK_ADDR_SPACE_I2C_TYPE_II; in download_fw()
953 status = choose_config(serial->serial->dev); in download_fw()
957 interface = &serial->serial->interface->cur_altsetting->desc; in download_fw()
969 serial->product_info.TiMode = TI_MODE_DOWNLOAD; in download_fw()
972 serial->product_info.TiMode = TI_MODE_CONFIGURING; in download_fw()
977 if (serial->product_info.TiMode == TI_MODE_DOWNLOAD) { in download_fw()
982 status = check_i2c_image(serial); in download_fw()
995 status = get_manuf_info(serial, (__u8 *)ti_manuf_desc); in download_fw()
1016 start_address = get_descriptor_addr(serial, in download_fw()
1035 status = read_rom(serial, start_address + in download_fw()
1092 status = write_rom(serial, start_address, in download_fw()
1106 status = read_rom(serial, in download_fw()
1130 status = ti_vsend_sync(serial->serial->dev, in download_fw()
1146 …else if ((start_address = get_descriptor_addr(serial, I2C_DESC_TYPE_FIRMWARE_BLANK, rom_desc)) != … in download_fw()
1191 status = write_rom(serial, in download_fw()
1205 status = read_rom(serial, start_address, in download_fw()
1231 status = ti_vsend_sync(serial->serial->dev, in download_fw()
1257 status = config_boot_dev(serial->serial->dev); in download_fw()
1261 if (le16_to_cpu(serial->serial->dev->descriptor.idVendor) in download_fw()
1264 le16_to_cpu(serial->serial->dev->descriptor.idVendor)); in download_fw()
1265 serial->TI_I2C_Type = DTK_ADDR_SPACE_I2C_TYPE_II; in download_fw()
1271 if (i2c_type_bootmode(serial)) in download_fw()
1275 if (!check_i2c_image(serial)) { in download_fw()
1292 status = get_manuf_info(serial, (__u8 *)ti_manuf_desc); in download_fw()
1356 status = download_code(serial, buffer, buffer_size); in download_fw()
1366 serial->product_info.TiMode = TI_MODE_TRANSITIONING; in download_fw()
1377 serial->product_info.TiMode = TI_MODE_BOOT; in download_fw()
1388 return send_cmd(port->port->serial->dev, in ti_do_config()
1537 dev = &edge_serial->serial->dev->dev; in edge_interrupt_callback()
1549 port = edge_serial->serial->port[port_number]; in edge_interrupt_callback()
1722 dev = port->serial->dev; in edge_open()
1800 urb = edge_serial->serial->port[0]->interrupt_in_urb; in edge_open()
1849 usb_kill_urb(port->serial->port[0]->interrupt_in_urb); in edge_open()
1859 struct usb_serial *serial = port->serial; in edge_close() local
1863 edge_serial = usb_get_serial_data(port->serial); in edge_close()
1881 send_cmd(serial->dev, UMPC_CLOSE_PORT, in edge_close()
1888 usb_kill_urb(port->serial->port[0]->interrupt_in_urb); in edge_close()
2230 status = send_cmd(edge_port->port->serial->dev, UMPC_SET_CONFIG, in change_port_settings()
2376 static int edge_startup(struct usb_serial *serial) in edge_startup() argument
2387 edge_serial->serial = serial; in edge_startup()
2388 usb_set_serial_data(serial, edge_serial); in edge_startup()
2399 static void edge_disconnect(struct usb_serial *serial) in edge_disconnect() argument
2403 static void edge_release(struct usb_serial *serial) in edge_release() argument
2405 kfree(usb_get_serial_data(serial)); in edge_release()
2419 edge_port->edge_serial = usb_get_serial_data(port->serial); in edge_port_probe()