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.

TPS65986: Initial firmware configuration in SPI flash

Part Number: TPS65986

We have a custom board using the TPS65986.  It is connected to a Winbond W25Q80DVUXIE SPI flash per the datasheet recommendations.  The TPS65986 main I2C bus is connected to our host processor, and is available for external debugging.  I've also tied into the SPI connection with temporary modwires for external debugging.

I am attempting to flash initial application firmware for the TPS65986 -- the flash is currently blank.  Using the I2C port and an external FTDI-based interface, I can connect to the TPS65986 with the TPS6598x Host Interface Tools GUI version 2.3.  I have attempted to use the Host Interface FW Update utility, which takes several minutes but eventually claims that it completed successfully.  However, this is not the case -- using a logic analyzer, I don't see any SPI activity, and the SPI flash remains blank.

I am confident in the connectivity of the SPI signals -- I can talk to the flash using an external SPI debugger (bus pirate), and I can see the TPS65986 attempt to read the flash on boot using a logic analyzer (it reads back blank flash and fails).  

Is it possible to use the I2C-based host interface FW update capability for an initial firmware load, or does this feature only work for "updating" already-existing firmware?

Is there another way to 'indirectly' load the flash initially?  My current board design has no easy way to directly connect to the flash chip for initial firmware loading, I was assuming it could be done through the TPS65986.

I do have access to the SWD_CLK and SWD_DATA pins, although I haven't seen documentation of what tools these are compatible with.

Thanks,

  • Hi Jonny,

    You can only update an existing firmware in SPI flash, you can't program a blank SPI flash over I2C based firmware update mechanism.

    You can use the FTDI board and use the SPI FW update of TI's Host interface tool to update the blank SPI flash on your board.

    We don't recommend to use SWD lines, those are only meant for internal debug and development.

    Thanks,
    Rahul
  • Hi Rahul,

      Thank you!  We will include direct access to SPI for initial configuration in our board respin.

      Is there any way to program a blank SPI flash through the TPS65986, without direct access to the SPI signals?  We have a few boards built already with no external access to SPI, and I'd like to salvage them if possible.

      Thanks,

      Jonny

  • Hi Jonny,

    Unfortunately there's no way you can use TPs65986 to program a blank flash.

    The best option would be to use Dediprog, they come with a clip which can be mounted on the top of the SPI flash, without soldering a single wire.

    Please have a look at these links:

    https://www.dediprog.com/pd
    www.dediprog.com/.../EM-TC-8

    Thanks,
    Rahul