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.

TPS65988: Production programming of SPI FLASH

Part Number: TPS65988

Dear TI Representative -

We're building a program and test fixture for our board which uses eight TPS65988's with W25X05CLSNIG as the SPI flash.  To date we've only used the TPS65988 config tool from texas instruments, which is limited for our needs as we can only program one FLASH at a time and I'm not aware of any discrete signaling I can use to step through all eight ICs.  We're looking at using one Aardvark pod and a mux for the chip selects so that we have a way to flash the SPI EEPROMs on the board.  I'm not aware of a good utility that will help us automate the programming step and we're hoping to avoid pushing this onto the test tech if possible.  Do you have any recommendations for how we should proceed? 

On a related note - when using the TPS6598X config tool to flash the binary - is anything happening between the POD and the Charging chip we need to account for?  I'm considering that it might be best to use a different tool to write the binary files because the tools I'm used to are limited.  The problem there is that we're trying to achieve in circuit programming and I'm not sure if I would need to hold the TPS65988 in reset while writing the FLASH - or if something more advanced needs to be accounted for.

Thanks very much,

Adam

  • Hi Adam,

    I am sure there is a discrete way to do it, however this is not something we will be able to support. I believe a mux could potentially work or using GPIO Events/ or MCU to form a discrete 'mux' could also be an option. Howevr, this is NOT something we will support. For 8 individual PD's you will need to flash one at a time individually.

    I am assuming by the charging chip you are refering to the PD? The PD and EEPROM will have unique individual slave address, therefore when using an Ardvark to flash, you flash to the EEPROM slave address (0x50). Then you will need to power cycle the PD, in order for it to through bootup steps to load the EEPROM patch and configuration.

    Very Respectfully,

    Brandon Beader

  • Hi Brandon,

    Sorry for the delayed response - I am considering your suggestions, thanks for your help. 

    One related thing we're working toward is securing the EEPROMs pre-programmed.  Does the application customization tool do anything special to the binary file when it programs the EEPROM?  Is it sufficient to send the distributor the binary file we use when programming through the application customization tool? 

    I'd like to send you our application.bin file to review before I send it to a distributor to flash these.  What is the best way to send it to you?  (Uploading it isn't working out.)  It's not formatted in s-record style which leaves me a little hesitant to send it and go.  Is there a specific export from the application customization program that pushes out a flashable binary file if this is formatted properly for a distributor to pre-program the EEPROM?

    Thanks,

    Adam

  • Hi Adam,

    My personal suggestion would be to not pre-program the EEPROMs since any future FW releases made to patch bugs or add functionality will have to be patched in and therefore defeats the purpose of having pre-programmed EEPROMs. Most EEPROM's typically have a way in itself to make read-only after you flash binary with some hardware changes FYI.

    Nonetheless, you can export the binary file from the GUI that has the FW patch as well as your configuration. Or you can just download the FW patch if that is what you are looking for, see steps below for how to do some from GUI:

    Click binary on the upper header:

    Select 'Save Binary' and you will get a pop up that looks like this:

    Here, you can save the low region or the full flash image, whichever you are looking for.

    For sending me the binary, I can do some prelim tests to see if binary is working as intended on one of our EVM's but can not fully guarantee operation. I will send you a friend request on how to contact me offline and send the binary. Please mark this thread as resolved and we can move this discussion offline!

    Very Respectfully,

    Brandon Beader