Part Number: PROCESSOR-SDK-AM437X
I am running the QSPI_BasicExample_idkAM437x_armExampleProject on a Sitara AM437x IDK. I am using SDK version 184.108.40.206.
We are planning to create a custom board derived from the AM437x IDK and as a first action we would like to implement a UART boot process. I am currently trying to simulate the UART boot on the IDK, which is not natively possible on the IDK due to the SYSBOOT pin selection on the board.
The processor SDK RTOS Software Developer’s Guide indicated a workaround how to put the Sitara on the IDK into UART boot mode (see chapter “220.127.116.11.8.3. Booting Via UART”):
1) I first write the value 0x19 to the last byte of the memory address 0x44e10040.
2) Afterwards I press the “Warm Reset” button on the IDK.
Now the Sitara is in UART boot mode since the processor prints out the letter C on the UART.
As a next stage I have to send the SBL (secondary boot loader) to the Sitara via XMODEM protocol. The problem is, that I just find the boot-loaders for the EVM board but not for the IDK:
And I also find no option to build this SBL in the Processor SDK RTOS Software Developer’s Guide:
Nevertheless, I tried to perform the UART download on the IDK with the following EVM SBL:
Afterwards I downloaded a self-compiled example binary:
What I see is:
The application does not seem to run at the end of the download process, but when I flash the application software with JTAG I see:
Is it possible that the SBL is wrong for that IDK? Or why is the application not started?
Once you had the SBL and the application binary, what were the exact steps that you took to boot over UART?
We are glad that we were able to resolve this issue, and will now proceed to close this thread.
If you have further questions related to this thread, you may click "Ask a related question" below. The newly created question will be automatically linked to this question.
In reply to Dillon Frank:
I will give you a step by step instruction.
First of all connect a serial terminal program (I use Tera Term as suggested by TI) with the settings 115200 8-N-1.
As I wrote above, with the IDK it is not possible to boot over UART except with a nice workaround explained inside the Processor SDK Software Developer's Guide.
This is what I did:
Step 1: Connect to the target
Step 2: Open the memory browser
Step 3: Enter address 0x44E10040 in the memory browser
Step 4: Modify the last significant byte of that address to be 0x19
Step 5: Press "Warm Reset" button on the IDK
Step 6: Now you see the UART boot-loader being active in Tera Term
Step 7: Send first SBL and afterwards the application image via "Tera Term"
As you know from my other posts, I am currently working on the QSPI NOR Flash example project QSPI_BasicExample_idkAM437x_armExampleProject and therefore I simply downloaded this example, since I have it compiled on my hard disk...
In reply to inno:
The initial problem that I mentioned in this post is, that I am missing the secondary boot-loader (SBL) binaries for the AM437x Industrial Development Kit (IDK). Specifically the UART boot-loader, but in general I see no folder called "idkAM437x" that holds the SBL.
I was wondering if there is something else missing to support the IDK. So I decided to search for the MLO file (for supporting a boot process from SD card) inside the whole SDK. But the only MLO file I found was inside a folder of the EVM (also here I am missing a folder "idkAM437x"or "that holds equivalent files):
Afterwards I read a bit about the process how to prepare the QSPI flash in a way, that booting from QSPI is possible. I understood that you need to use the SD-card and place 3 files on that card called "boot", "app" and "config". Afterwards you need to load and run a certain pre-compiled CCS binary, which programs the QSPI flash via the SD card interface and the 3 files located on that card in a way, that upon a following power-cycle a QSPI boot is being performed. Also here I found only the CCS binaries, which supports the EVM (so again no folder "idkAM437x" or "am43xx-idk"):
It seems that the SDK support for the Industrial Development Kit in terms of tools for booting is totally missing. Can you please look also on your side?
All content and materials on this site are provided "as is". TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with regard to these materials, including but not limited to all implied warranties and conditions of merchantability, fitness for a particular purpose, title and non-infringement of any third party intellectual property right. No license, either express or implied, by estoppel or otherwise, is granted by TI. Use of the information on this site may require a license from a third party, or a license from TI.
TI is a global semiconductor design and manufacturing company. Innovate with 100,000+ analog ICs andembedded processors, along with software, tools and the industry’s largest sales/support staff.