Re: [PATCH] USB: serial: cp210x: Make the CP210x driver work with GPIOs

From: Johan Hovold
Date: Tue Feb 23 2021 - 05:15:00 EST


On Tue, Feb 23, 2021 at 10:02:08AM +0000, Pho Tran wrote:
> Similar to other CP210x devices, GPIO interfaces (gpiochip) should be supported for CP2108.
>
> CP2108 has 4 serial interfaces but only 1 set of GPIO pins are shared to all of those interfaces.
> So, just need to initialize GPIOs of CP2108 with only one interface (I use interface 0).
> It means just only 1 gpiochip device file will be created for CP2108.
>
> CP2108 has 16 GPIOs, So data types of several variables need to be is u16
> instead of u8(in struct cp210x_serial_private). This doesn't affect other CP210x devices.
>
> Because CP2108 has 16 GPIO pins, the parameter which is passed by CP210x functions
> will be different from other CP210x devices. So need to check part number of the device
> to use correct data format before sending commands to devices.
>
> Like CP2104, CP2108 have GPIO pins with configurable options. Therefore, in cp2108_gpio_init() function,
> Should be mask all pins which are not in GPIO mode.
>
> Signed-off-by: Pho Tran <pho.tran@xxxxxxxxxx<mailto:pho.tran@xxxxxxxxxx>>
> ---
> drivers/usb/serial/cp210x.c | 199 +++++++++++++++++++++++++++++++-----
> 1 file changed, 172 insertions(+), 27 deletions(-)

You sent this patch twice, and I'm afraid both have been white-space
corrupted (e.g. by your mailer).

Try sending the patch to yourself first and make sure you can apply it
using git-am (and run checkpatch.pl on it without any obvious errors).

Johan