Skip to content

Possible bug in support.c:gpio_write #29

@reggie-mcmurtrey

Description

@reggie-mcmurtrey

retval = set_bits_low(mpsse, mpsse->pstart);

I think the above line of code has a bug. I think it should be "retval = set_bits_low(mpsse, mpsse->pidle);".

By using pstart you are forcing the bus to a start condition when toggling the GPIO's after a stop condition. For example what if you are controlling a reset pin with one of the GPIOL signals. When you go to de-assert reset you would force a start condition on the bus. Many hardware devices have a time requirement from reset de-assertion to the start of any bus transfers. However if you use pidle, you keep the bus in the idle state it's already in since you can only use gpio_write after a stop condition when in I2C or SPI modes.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions