On Thu, Dec 28, 2023 at 12:50:08PM +0100, Christina Quast wrote: > Hi everyone! > > On 12/18/23 10:31, Christina Quast wrote: > > Adds the serial driver for FT260 USB HID devices, providing direct and > > simplified access to UART functionality without the need for FT260 HID > > report format knowledge. > > > > This chip implements an UART and I2C interface, but only the latter was > > previously supported with a kernel driver. For the UART interface, only > > FTDI example code using hidraw from userspace was available. > > > > This commit adds a serial interface /dev/ttyFTx (FT as in FT260), which > > implements tty serial driver ops, facilitating baudrate configuration, > > data transmission and reception, termios settings. > > > > Signed-off-by: Daniel Beer <daniel.beer@xxxxxxxxxxxxxxxxx> > > Signed-off-by: Christina Quast <contact@xxxxxxxxxxxxxxxxxx> > > Reviewed-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> > > Reviewed-by: David Lamparter <equinox@xxxxxxxxxx> > > Is this already queued for 6.8? > > Cheers and happy new year! > > Christina > Thanks for this work! I am adding Jiri Kosina, the maintainer of the HID subsystem. The FTDI FT260 chip implements three functionalities: USB to I2C, UART, and GPIO bridges through two USB HID class interfaces. I use the https://github.com/MichaelZaidman/hid-ft260 repository for FT260 driver development. The I2C support has been upstreamed since 5.13. The code is mature enough and is I2C performance-tuned. The initial GPIO support was developed and committed into the mainline https://patchwork.kernel.org/project/linux-input/cover/20230211115752.26276-1-michael.zaidman@xxxxxxxxx/. Two versions of the initial UART support were around for some time, and now they are unified in this commit. I am going to test it with I2C traffic to exclude a suspect of possible impact on the I2C performance and will provide feedback in a week or two. --Michael > > --- > > > > V1 -> V2: Adressed review comments, added power saving mode quirk > > V2 -> V3: Added return 0 in ft260_i2c_probe function > > V3 -> V4: > > - Adressed review comments > > - Added get_icount > > - Fixed tty port lifetime bug > > > > drivers/hid/hid-ft260.c | 833 +++++++++++++++++++++++++++++++++++++--- > > 1 file changed, 781 insertions(+), 52 deletions(-)