Re: usb: thoughts of adding more support for FT232H
- Date: Wed, 5 Dec 2018 16:39:14 +0100
- From: Johan Hovold <johan@xxxxxxxxxx>
- Subject: Re: usb: thoughts of adding more support for FT232H
On Wed, Dec 05, 2018 at 04:17:18PM +0100, Anatolij Gustschin wrote:
> On Wed, 5 Dec 2018 22:10:40 +0800
> Song Qiang songqiang1304521@xxxxxxxxx wrote:
> >I've been developing some iio device drivers and found that some people
> >would like to test their devices with a qemu system which requires an
> >i2c or spi port on our development hosts. Usually this is achieved with
> >a DLN-2 adapter, while this is a bit difficult for me because it costs
> >~175$ in my country. Then I found that FTDI's FT232H supports both these
> >two modes and costs only less than 5$ but without full support in kernel.
> >The ftdi-sio driver supports FT232H only as a serial converter.
> >So I'm planning to write a mfd driver for it supports both these three
> >modes, here are my thoughts:
> There already has been a discussion  about adding an MFD driver for
> FT232H, since the operating modes are mutually exclusive (and bus pins
> shared between different modes), the MFD approach doesn't seem to be
> a good fit.
> > - This device cannot support these three modes together because they
> > share some common pins, so I'm planning to add a sysfs entry
> > 'current_mode' for selecting which mode the device should be working
> > on.
> > - This device is in uart mode on reset, so default mode would be reset,
> > too. This also helps for people only want to use this as a serial
> > converter feels nothing has happened (compatible).
> > - I was trying to reuse the ftdi-sio driver but it seems like mfd can
> > only register platform devices, while this is a usb driver. I may
> > have to copy some functions from this driver.
> >Would you share any ideas? I'd appreciate it.
> There is a patch series  adding an interface driver for FT232H-
> based adapter devices, it already supports adding custom MPSSE based
> SPI busses with SPI slaves for a custom USB PID. It already supports
> adding custom CBUS-/MPSSE-GPIO adapters for user-defined USB PID.
> Adding I2C driver/adapter support should be easy, too. Maybe you can
> re-use it.
>  https://patchwork.kernel.org/patch/9828985
>  https://patchwork.kernel.org/project/linux-usb/list/?series=48255
I was going to refer to these series, but Anatolij beat me to it
(haven't looked at  myself yet, though).