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.
Hello!
We have designed a custom board with TPS65981 Type-C controller and AT26DF161 16-megabit SPI flash for its firmware. Unfortunately we don't have the Aardvark for flash programming and we use a Tiva-C launchpad to program a binary file to the spi flash. The binary file we get from Application Customization Tool, then program it to the flash at the adress 0x000000h and verify. But after flash programming TPS65981 doesn't boot correctly, the Mode register contains "Boot". We try to observe Spi pins using a logic analyzer and we have found out, that TPS65981 reads correct values of RPTR and AOFF for region 1, then for region 2 and then stop reading from spi.
Below is a sequence of commands between TPS65981 and SPI flash that we observe:
Please, can someone tell me where the problem is? Is it possible to program spi flash in a correct way without Aardvark?
Regards, Alex
Hi Alex,
I do not see anything obvious that is incorrect with your method. We typically use the FTDI board that is included with the TPS65981EVM to flash our boards. I would recommend ordering a TPS65981EVM if you do not have one to help with your system development. This would give you a good working point of reference when debugging issues. To answer your other question, yes it is possible to program the spi flash without an Aardvark.
If this answers your question, PLEASE select This resolved my issue
Thank you,
Eric
Hi, Eric
Thank you for your response!
Ok, we will try to obtain TPS65981EVM but it will take time. While we will be waiting for this board I am going to make some more experiments with our custom board. Can you assume why boot doesn't start? Can TPS65981 decide that RPTR and AOFF have bad values?
Although another question about spi communication. In TPS65981 datasheet I have found such words:
"The clock phase is defined such that data (on the SPI_MISO and SPI_MOSI pins) is shifted out on the falling edge of the clock (SPI_CLK pin) and data is sampled on the rising edge of the clock"
So if I understand it correctly, data on miso must be stable during clock rising edge and must be changed during clock falling edge. But in the same datasheet I although have found this figure, where data on miso pin must be stable during clock falling edge:
So which way is correct? May be here is my problem?
Regars, Alex