Hi all,
I am developing for the TMDXEVM6678L. My goal is to make a program that boots from ethernet and uses sockets to read a .out and then execute it in another core.
By now, I have succesfully tested the HUA demo and the ethernet boot example (separately).
So, now I am trying to mix them. That is, booting the HUA demo (C:\Program Files\Texas Instruments\mcsdk_2_00_07_19\demos\hua\evmc6678l\Release\hua_evmc6678l.out) from Ethernet.
What I ahve done is taking the ethernet boot sample and change it to use hua_evmc6678l.out instead of simple.out
My file simple.rmd contains this:
hua_evmc6678l.out
-a
-boot
-e _c_int00
-order L
ROMS
{
ROM1: org = 0x0400, length = 0x0080, memwidth = 32, romwidth = 32
files = { simple.btbl }
}
which is the same as simple.rmd (from C:\Program Files\Texas Instruments\mcsdk_2_00_07_19\tools\boot_loader\examples\ethernet\simple).
However, when I run hex6x simple.rmd I get some warnings of the type "warning: boot table falls in unconfigured memory at 0480h"
and the command bconvert64x -le simple.btbl simple.le.btbl fails.
I suppose that the problem is that, hua_evmc6678l.out size is 5.54 MB and I am specifying org = 0x0400, length = 0x0080 for ROM1. So, it does not fit.
Therefore, I have changed these parameters so that the program can fit. For example:
org = 0x0400, length = 0x1000080
This way, I get no warnings and I can run without problems
bconvert64x -le simple.btbl simple.le.btbl
bootpacket simple.le.btbl simple.eth
to get a simple.eth file (3.12 MB) which I then send to the board via ethernet (like I did with the original simple.eth).
However, this does not work. When I try to connect the browser to the board (like I did to test the basic HUA demo) I get no response from the board.
So I have some doubts:
-can I put the length that I need in the rmd file? I think that using 0x1000080 as I did, I may be overwriting memory that I shouldn't :(
-are there any restrictions on the program that can be booted via Ethernet? (maximum size, libraries that can or cannot be used...)
-for a program that uses NDK like the HUA demo, which entry point should I specify? (_c_int00, main...)
-which is the relationship between the memory map on the cmd file and the one on the rmd file? are both referred to the same memory map? can/cannot they overlap? should the be on a specific memory block?
In addition to this, I have seen in the documentation (spruh58, p.16), that the org address for the ROM1 section of the example corresponds to Local L2 RAM.
Do I have to put there the bootable program, or can I use any section? (like DDR3, for example, since it is much bigger).
Some advice would be great!
Alejandro