USB: ftdi_sio: add ST Micro Connect Lite uart support
on ST Micro Connect Lite we have 4 port Part A and B for the JTAG Port C Uart Port D for PIO Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com> Cc: stable <stable@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
parent
c25f6b1591
commit
6ec2f46c4b
|
@ -100,6 +100,7 @@ struct ftdi_sio_quirk {
|
|||
static int ftdi_jtag_probe(struct usb_serial *serial);
|
||||
static int ftdi_mtxorb_hack_setup(struct usb_serial *serial);
|
||||
static int ftdi_NDI_device_setup(struct usb_serial *serial);
|
||||
static int ftdi_stmclite_probe(struct usb_serial *serial);
|
||||
static void ftdi_USB_UIRT_setup(struct ftdi_private *priv);
|
||||
static void ftdi_HE_TIRA1_setup(struct ftdi_private *priv);
|
||||
|
||||
|
@ -123,6 +124,10 @@ static struct ftdi_sio_quirk ftdi_HE_TIRA1_quirk = {
|
|||
.port_probe = ftdi_HE_TIRA1_setup,
|
||||
};
|
||||
|
||||
static struct ftdi_sio_quirk ftdi_stmclite_quirk = {
|
||||
.probe = ftdi_stmclite_probe,
|
||||
};
|
||||
|
||||
/*
|
||||
* The 8U232AM has the same API as the sio except for:
|
||||
* - it can support MUCH higher baudrates; up to:
|
||||
|
@ -810,6 +815,8 @@ static struct usb_device_id id_table_combined [] = {
|
|||
{ USB_DEVICE(FTDI_VID, FTDI_DOTEC_PID) },
|
||||
{ USB_DEVICE(QIHARDWARE_VID, MILKYMISTONE_JTAGSERIAL_PID),
|
||||
.driver_info = (kernel_ulong_t)&ftdi_jtag_quirk },
|
||||
{ USB_DEVICE(ST_VID, ST_STMCLT1030_PID),
|
||||
.driver_info = (kernel_ulong_t)&ftdi_stmclite_quirk },
|
||||
{ }, /* Optional parameter entry */
|
||||
{ } /* Terminating entry */
|
||||
};
|
||||
|
@ -1708,6 +1715,25 @@ static int ftdi_jtag_probe(struct usb_serial *serial)
|
|||
return 0;
|
||||
}
|
||||
|
||||
/*
|
||||
* First and second port on STMCLiteadaptors is reserved for JTAG interface
|
||||
* and the forth port for pio
|
||||
*/
|
||||
static int ftdi_stmclite_probe(struct usb_serial *serial)
|
||||
{
|
||||
struct usb_device *udev = serial->dev;
|
||||
struct usb_interface *interface = serial->interface;
|
||||
|
||||
dbg("%s", __func__);
|
||||
|
||||
if (interface == udev->actconfig->interface[2])
|
||||
return 0;
|
||||
|
||||
dev_info(&udev->dev, "Ignoring serial port reserved for JTAG\n");
|
||||
|
||||
return -ENODEV;
|
||||
}
|
||||
|
||||
/*
|
||||
* The Matrix Orbital VK204-25-USB has an invalid IN endpoint.
|
||||
* We have to correct it if we want to read from it.
|
||||
|
|
|
@ -1033,6 +1033,12 @@
|
|||
#define STB_PID 0x0001 /* Sensor Terminal Board */
|
||||
#define WHT_PID 0x0004 /* Wireless Handheld Terminal */
|
||||
|
||||
/*
|
||||
* STMicroelectonics
|
||||
*/
|
||||
#define ST_VID 0x0483
|
||||
#define ST_STMCLT1030_PID 0x3747 /* ST Micro Connect Lite STMCLT1030 */
|
||||
|
||||
/*
|
||||
* Papouch products (http://www.papouch.com/)
|
||||
* Submitted by Folkert van Heusden
|
||||
|
|
Loading…
Reference in a new issue