Re: [PATCH v4 RESEND] hid-ft260: Add serial driver

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Jan 16, 2024 at 11:34:32PM +0200, Michael Zaidman wrote:
> > +/* The FT260 has a "power saving mode" that causes the device to switch
> > + * to a 30 kHz oscillator if there's no activity for 5 seconds.
> > + * Unfortunately this mode can only be disabled by reprogramming
> > + * internal fuses, which requires an additional programming voltage.
> > + *
> > + * One effect of this mode is to cause data loss on a fast UART that
> > + * transmits after being idle for longer than 5 seconds. We work around
> > + * this by sending a dummy report at least once per 4 seconds if the
> > + * UART is in use.
> > + */
> 
> For I2C, we addressed a similar issue in
> https://lore.kernel.org/all/20221105211151.7094-8-michael.zaidman@xxxxxxxxx/
> commit. But we did it per IO synchronously when the distance between this and
> the previous IO exceeded 5 seconds. In this way, the chip can still sleep
> between the IOs. On the contrary, the suggested workaround prevents the chip
> from entering the power saving mode during active TTY sessions regardless of
> the traffic intensity on the UART bus.
> 
> I cannot reproduce the issue with 1K Tx bursts at 921600 baud rate sent every
> 10 seconds with the disabled chip wakeup workaround.
> 
> Can you guide me on how to reproduce the data loss you observed?

Hi Michael,

This was my comment originally. It's been a long time (at least a year),
but from memory I had an FT260 attached to a UART console on an MCU dev
kit, which would print messages at 115200.

If the MCU sat idle for more than 5 seconds and then printed a message,
the first few characters of the line would be missing in picocom. If the
MCU kept busy, printing more frequently than once every 5 seconds, the
problem did not occur.

Cheers,
Daniel

-- 
Daniel Beer
Firmware Engineer at Igor Institute
daniel.beer@xxxxxxxxxxxxxxxxx or +64-27-420-8101
Offices in Seattle, San Francisco, and Vancouver BC or (206) 494-3312




[Index of Archives]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux PPP]     [Linux FS]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Linmodem]     [Device Mapper]     [Linux Kernel for ARM]

  Powered by Linux