Part Number: TDA2EVM5777
Other Parts Discussed in Thread: TDA2
Tool/software: Linux
Hello !
I try to use the remoteproc feature of the TI-kernel which comes with
visual SDK_2_12_02_00 (patched linux 4.4.45). I've backported sysfs support to monitor remoteproc.
My board is XC5777x with TDA2.
I build a simple programm which counts up a variable and let it run using my XDS200 JTAG debugger under CCS.
That works great, no problems (except linux is running... than the debugger got no access to the JTAG chain... but thats another problem I've almost pubished.)
Now the next step would be: Building a release... done. Copying as dra7-ipu1-fw.xem4 to lib/firmware... unbind and bind 58820000.ipu ... nothing happen, no error message in dmesg.
A cat of /sys/class/remoteproc/remoteproc0/state shows: "OFFLINE".
OK... try to start... echo "start" to the state... and I got the error message:
sh: write error: Cannot allocate memory
Something went wrong building the elf file. I've tried out the TI-Toolchain and the linaro-Toolchain delivered with the CCS. I've used no linker-script and the ones which comes with the SDK (starterpack)...
No success at all! The memory map matches the data sheet and the stuff defined in devicetree.
What I have to do is to generate a remoteproc "ELF" file... at the end of the day without using TI-middleware or bootloader and therefore I need the following stuff which I was not able to seperate out of the starterpack or SDK:
- a working linker description file for TDA2-EVM5777x board. (Maybe I got them already, but I am not shure, so just to be on the safe side...)
- a simple example of "really bare metal" boot-up-code WITHOUT (!) usage of TI-Library or bootloader or RTOS...
==> if needed?! How I have to configure the peripheral of OTHER CPUs then MPU? (EVEN via devicetree, too? Do you have prepared stuff? Any kind of how to?) - a recipe how to build a ELF file which is compatible with the TI remoteproc mechanism in linux.
This failed every time, no matter what I've tried out.
The only working example: "linux/targetfs/lib/firmware/ipc/ti_platforms_evmDRA7XX_ipu1/messageq_single.xem4" which is able to be loaded and after "bind" IPU1 the IPU1 begins to run, cat of state: running...
.... so: In principle it works!
I must have forgotten something important... but what?
So I need the simplest possibility (a skelleton) to run a GCC compiled Ansi-C code on M4, DSP, EVE of the TDA2 using the remoteproc mechanism.
(No CCS projects, no libraries or universal linker script and build environments, which are too complex to show how it works in principle... a simple Makefile GCC project without bootloader, OS, lib-stuff...)
Thank you, Marco.