[RFC 0/2] sandbox: add gpio support with libftdi1
antonynpavlov at gmail.com
Thu Feb 16 00:28:35 PST 2017
On Thu, 16 Feb 2017 08:34:30 +0100
Sascha Hauer <s.hauer at pengutronix.de> wrote:
> Hi Antony,
> On Wed, Feb 15, 2017 at 10:12:25AM +0300, Antony Pavlov wrote:
> > This patch series makes it possible to use FT2232H ACBUS[7:0]
> > pins as gpio pins from sandbox barebox.
> > I have tested output gpio functionality by connecting
> > a LED to ACBUS and lightening it with gpio_direction_output
> > and gpio_set_value barebox commands.
> > Also I have performed input test with ACBUS -> ACBUS loopback.
> > The main goal of adding gpio functionality to sandbox barebox
> > is using it for connecting real i2c and spi devices to sandbox barebox
> > (not tested yet).
> I just read that the FT2232H can even do native I2C and SPI, so no gpio
> bitbanging would be necessary.
I suppose that gpio support itself is valuable.
> Would it be possible to use this mode instead?
Yes, FT2232H has MPSSE acellerator.
Using MPSSE one can increase FT2232 I2C/SPI performance dramatically.
I have compared two FT2232 I2C realizations (bitbang and libmpsse,
on reading of 8 KiB data block from I2C eeprom. libmpsse's bandwidth is 6 KiB per second,
bitbang's bandwidth is only 73 bytes per second (nearly 100 times worse).
Alas, I have no time to realize ftdi fast i2c/spi support for barebox in the nearest future
> Otherwise I think there should be a possibility to specify which, if
> any, FT2232H chip barebox uses.
I'll add cmdline options to select FT2232H chips on USB bus in v2 patchseries.
Also I'll check i2c bitbang support. I can connect ds1307 rtc or at24 eeprom).
More information about the barebox