Re: [PATCH] USB: serial: ftdi_sio: add ftdi serial to gpiochip label

From: Stan Bertrand
Date: Mon Jan 01 2024 - 21:00:45 EST


On Friday, December 15, 2023 2:10:15 AM PST Johan Hovold wrote:
> On Mon, Oct 02, 2023 at 05:11:35PM -0700, Stan Bertrand wrote:
> > From: Stanislas Bertrand <stanislasbertrand@xxxxxxxxx>
> >
> > Use ftdi serial number on gpiochip label.
> > Allows to interface with gpiod utils using the serial number:
> >
> > $ gpiodetect
> > gpiochip5 [ftdi-cbus-FTRelay2] (4 lines)
> > gpiochip6 [ftdi-cbus] (4 lines)
> > gpiochip7 [ftdi-cbus-A106TPEC] (4 lines)
> >
> > $ gpioget ftdi-cbus-FTRelay2 2
> > 0
>
> I don't think this is a good idea, for example, as not all devices have
> a unique serial string.

The goal is to identify the gpiochip corresponding to a known FTDI device.
If serials are not unique, it can still differentiate others.
A device serial can be set (FT Prog, Python lib, ...) for direct of access.

> Looks like the naming of gpiochips are all over the place, and ideally
> this should not have been something that was left up to individual
> driver to decide.
>
> I see several drivers using the name of the corresponding platform
> device as label, which works in most cases, but not always either. The
> only unique and always available identifier is the gpiochip's place in
> the device tree itself.
>
> For USB, we already encode the bus topology in the USB device names
> (e.g. 1-11.5.1) and we could possibly consider using that. But we
> already have USB serial devices with multiple GPIO chips so also that
> would require some further thought (e.g. using the interface name
> instead).

The aim is identification while being platform agnostic, device tree or x86.
The FTDI serial allows device identification regardless of the system topology.

> Johan

Thanks,
Stan