linux-usb.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] Support FlashPro5 serial ports
@ 2025-10-30 21:49 Andreas Messer
  2025-10-31 13:40 ` Johan Hovold
  0 siblings, 1 reply; 3+ messages in thread
From: Andreas Messer @ 2025-10-30 21:49 UTC (permalink / raw)
  To: Johan Hovold, Greg Kroah-Hartman, linux-usb

[-- Attachment #1: Type: text/plain, Size: 2588 bytes --]

Hello,

I'm currently working with a Microchip Polarfire Discovery Kit. It has
integrated a FTDI USB Converter IC connected to JTAG and 3x UART of the
SoC in the kit. It identifies itself on USB as "Microsemi Embedded FlashPro5"

Only one of the UART ports is working with the current ftdio_sio driver. 
I found a device id entry for Microsemi Arrow SF2+ Board 
which has same Vendor & Product ID like my board but enables only one UART.

I have added more entries to the device list to make all UART Channels
working with my board. However it will make these UARTS show up with SF2+
Board too. I found at least four different device which have the 
same Vendor/Product ID, but I assume there are more:

- Trenz SMF2000: FT2232H
  Channel A -> JTAG, Channel B -> UART

- Microchip Polarfire Discovery Kit: FT4232H
  Channel A -> JTAG, Channel B/C/D -> UART

- Microsemi/Microchip FlashPro5: FT4232H
  Channel A -> JTAG
  
- Arrow SF2+ Development Kit:
  Channel A -> JTAG, Channel C -> UART

Not sure what would be the proper solution, attached my changes.

Best regards,
Andreas


---
 drivers/usb/serial/ftdi_sio.c     | 4 +++-
 drivers/usb/serial/ftdi_sio_ids.h | 2 +-
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/drivers/usb/serial/ftdi_sio.c b/drivers/usb/serial/ftdi_sio.c
index 49666c33b41f..44f35aeb0b04 100644
--- a/drivers/usb/serial/ftdi_sio.c
+++ b/drivers/usb/serial/ftdi_sio.c
@@ -908,7 +908,9 @@ static const struct usb_device_id id_table_combined[] = {
 	{ USB_DEVICE_AND_INTERFACE_INFO(MICROCHIP_VID, MICROCHIP_USB_BOARD_PID,
 					USB_CLASS_VENDOR_SPEC,
 					USB_SUBCLASS_VENDOR_SPEC, 0x00) },
-	{ USB_DEVICE_INTERFACE_NUMBER(ACTEL_VID, MICROSEMI_ARROW_SF2PLUS_BOARD_PID, 2) },
+	{ USB_DEVICE_INTERFACE_NUMBER(ACTEL_VID, MICROSEMI_FLASHPRO5_PID, 1) },
+	{ USB_DEVICE_INTERFACE_NUMBER(ACTEL_VID, MICROSEMI_FLASHPRO5_PID, 2) },
+	{ USB_DEVICE_INTERFACE_NUMBER(ACTEL_VID, MICROSEMI_FLASHPRO5_PID, 3) },
 	{ USB_DEVICE(JETI_VID, JETI_SPC1201_PID) },
 	{ USB_DEVICE(MARVELL_VID, MARVELL_SHEEVAPLUG_PID),
 		.driver_info = (kernel_ulong_t)&ftdi_jtag_quirk },
diff --git a/drivers/usb/serial/ftdi_sio_ids.h b/drivers/usb/serial/ftdi_sio_ids.h
index 4cc1fae8acb9..7e4eb4c3295b 100644
--- a/drivers/usb/serial/ftdi_sio_ids.h
+++ b/drivers/usb/serial/ftdi_sio_ids.h
@@ -929,7 +929,7 @@
  * Actel / Microsemi
  */
 #define ACTEL_VID				0x1514
-#define MICROSEMI_ARROW_SF2PLUS_BOARD_PID	0x2008
+#define MICROSEMI_FLASHPRO5_PID	0x2008
 
 /* Olimex */
 #define OLIMEX_VID			0x15BA
-- 
2.47.3



[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 195 bytes --]

^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2025-10-31 17:45 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-10-30 21:49 [PATCH] Support FlashPro5 serial ports Andreas Messer
2025-10-31 13:40 ` Johan Hovold
2025-10-31 17:45   ` Andreas Messer

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).