This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TUSB3410: how to control GPIOs in Linux

Part Number: TUSB3410


Hi Guys,

we want to use the TUSB3410 in our next  product linux based.

Our BSP is based on Linux 4.14.78.

I saw that driver is present in mainline as "ti_usb_3410_5052.c" and it requires a firmware "ti_3410.fw" (we don't want to use the eeprom to program device).

This driver seems to support only the RS-485 feature but not the GPIO.

We need to use and control the GPIOs present on the device but from some posts on the community  these seems to be not supported.

Is there a way to control the TUSB3410 gpios on linux?

Best regards,

Antonio

  • The driver does not support this.

    It would be necessary to duplicate its ti_write_byte() function, using TI_RW_DATA_ADDR_GPIO instead of TI_RW_DATA_ADDR_XDATA, and to wire it up to be accessible from userspace.

  • Hi Clemens,

    many thanks for your answer.

    In other posts in the community i read that feature is not supported ad firmware level.

    We have to decide if use or not the TUSB3410 for our next project. Now we are completing the board schematics but for us it is mandatory the use of thet gpios feature. If not we have to switch to an other device.

    Do you have a patch for the driver?

    How gpios can be accessed from user-space? How are they mapped in linux?

    Best Regards,

    Antonio

  • Hmm, that TI_RW_DATA_ADDR_GPIO symbol in the driver looked as if the firmware has such a mechanism. But if TI employees say that it isn't implemented in the firmware either, then you would have to customize the firmware, too.

    It looks as if the TUSB3410 is not a good solution for you.

  • Hi Antonio,

    TUSB3410 RS-485 FW does not allow user to control GPIOs through driver.