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.
Hi, Ti's experts:
SDK: ti-processor-sdk-linux-adas-j721s2-evm-09_00_00_08, ti-processor-sdk-rtos-j721s2-evm-09_00_00_02
Development board: Using J72S2SOM on top of J7X Common processor board of TI.
I am studying the ipc_echo_test demo, and run vision apps on EVM in Linux+RTOS mode via SD card boot.
According to the follow uart log, the demo running ok.
root@j721s2-evm:~# modprobe rpmsg_client_sample count=1 [ 76.893017] rpmsg_client_sample virtio1.ti.ipc4.ping-pong.-1.13: new channel: 0x401 -> 0xd! [ 76.902431] rpmsg_client_sample virtio4.ti.ipc4.ping-pong.-1.14: new channel: 0x402 -> 0xe! [ 76.910930] rpmsg_client_sample virtio0.ti.ipc4.ping-pong.-1.14: new channel: 0x402 -> 0xe! [ 76.911386] rpmsg_client_sample virtio4.ti.ipc4.ping-pong.-1.14: incoming msg 1 (src: 0xe) [ 76.919366] rpmsg_client_sample virtio2.ti.ipc4.ping-pong.-1.14: new channel: 0x402 -> 0xe! [ 76.928013] rpmsg_client_sample virtio4.ti.ipc4.ping-pong.-1.14: goodbye! [ 76.943631] rpmsg_client_sample virtio3.ti.ipc4.ping-pong.-1.14: new channel: 0x402 -> 0xe! [ 76.947461] rpmsg_client_sample virtio0.ti.ipc4.ping-pong.-1.14: incoming msg 1 (src: 0xe) [ 76.961675] rpmsg_client_sample virtio0.ti.ipc4.ping-pong.-1.14: goodbye! [ 76.968599] rpmsg_client_sample virtio2.ti.ipc4.ping-pong.-1.14: incoming msg 1 (src: 0xe) [ 76.976881] rpmsg_client_sample virtio2.ti.ipc4.ping-pong.-1.14: goodbye! [ 76.983747] rpmsg_client_sample virtio3.ti.ipc4.ping-pong.-1.14: incoming msg 1 (src: 0xe) root@j721s2-evm:~# [ 76.992032] rpmsg_client_sample virtio3.ti.ipc4.ping-pong.-1.14: goodbye! [ 77.155940] rpmsg_client_sample virtio1.ti.ipc4.ping-pong.-1.13: incoming msg 1 (src: 0xd) [ 77.164196] rpmsg_client_sample virtio1.ti.ipc4.ping-pong.-1.13: goodbye!
And I can find the source code "rpmsg_client_sample.c" at /home/hduser/ti-processor-sdk-linux-adas-j721s2-evm-09_00_00_08/board-support/linux-6.1.33+gitAUTOINC+8f7f371be2-g8f7f371be2/samples/rpmsg.
According to "rpmsg_client_sample.c", the MPU1_0 send "hello world" to other cores, my question is that if I want to send other message,for example, "I'm FengShuai!" to instead of "hello world", how could I do?
How to rebuild? After rebuild, what and where the related profiles should to copy to the SD card?
I try to use the command "hduser@J721S2:~/ti-processor-sdk-linux-adas-j721s2-evm-09_00_00_08$ make ARCH=arm64 CROSS_COMPILE=aarch64-none-linux-gnu- -j8" to build, but failed.
hduser@J721S2:~/ti-processor-sdk-linux-adas-j721s2-evm-09_00_00_08$ make ARCH=arm64 CROSS_COMPILE=aarch64-none-linux-gnu- -j8 ============================= Building ARM Benchmarks ============================= make -C /home/hduser/ti-processor-sdk-linux-adas-j721s2-evm-09_00_00_08/example-applications/arm-benchmarks-1.3 CC="aarch64-none-linux-gnu-gcc --sysroot=/home/hduser/ti-processor-sdk-linux-adas-j721s2-evm-09_00_00_08/linux-devkit/sysroots/aarch64-oe-linux/" make[1]: 进入目录“/home/hduser/ti-processor-sdk-linux-adas-j721s2-evm-09_00_00_08/example-applications/arm-benchmarks-1.3” for dir in dhrystone whetstone linpack; do \ make -C $dir debug; \ done for dir in dhrystone whetstone linpack; do \ make -C $dir release; \ done make[2]: 进入目录“/home/hduser/ti-processor-sdk-linux-adas-j721s2-evm-09_00_00_08/example-applications/arm-benchmarks-1.3” make[2]: 警告: jobserver 不可用: 正使用 -j1。添加 “+” 到父 make 的规则。 make[2]: 进入目录“/home/hduser/ti-processor-sdk-linux-adas-j721s2-evm-09_00_00_08/example-applications/arm-benchmarks-1.3” make[2]: 警告: jobserver 不可用: 正使用 -j1。添加 “+” 到父 make 的规则。 aarch64-none-linux-gnu-gcc --sysroot=/home/hduser/ti-processor-sdk-linux-adas-j721s2-evm-09_00_00_08/linux-devkit/sysroots/aarch64-oe-linux/ -DTIME -O3 -c -oRelease/dhry_1.o dhry_1.c aarch64-none-linux-gnu-gcc --sysroot=/home/hduser/ti-processor-sdk-linux-adas-j721s2-evm-09_00_00_08/linux-devkit/sysroots/aarch64-oe-linux/ -g3 -gdwarf-2 -DTIME -c -oDebug/dhry_1.o dhry_1.c In file included from dhry_1.c:56: dhry.h:432:10: 致命错误: stdio.h:没有那个文件或目录 432 | #include <stdio.h> | ^~~~~~~~~ 编译中断。 In file included from dhry_1.c:56: dhry.h:432:10: 致命错误: stdio.h:没有那个文件或目录 432 | #include <stdio.h> | ^~~~~~~~~ 编译中断。 Makefile:114: recipe for target 'Release/dhry_1.o' failed make[2]: *** [Release/dhry_1.o] Error 1 make[2]: 离开目录“/home/hduser/ti-processor-sdk-linux-adas-j721s2-evm-09_00_00_08/example-applications/arm-benchmarks-1.3/dhrystone” Makefile:100: recipe for target 'Debug/dhry_1.o' failed make[2]: *** [Debug/dhry_1.o] Error 1 make[2]: 离开目录“/home/hduser/ti-processor-sdk-linux-adas-j721s2-evm-09_00_00_08/example-applications/arm-benchmarks-1.3/dhrystone” make[2]: 进入目录“/home/hduser/ti-processor-sdk-linux-adas-j721s2-evm-09_00_00_08/example-applications/arm-benchmarks-1.3” make[2]: 警告: jobserver 不可用: 正使用 -j1。添加 “+” 到父 make 的规则。 make[2]: 进入目录“/home/hduser/ti-processor-sdk-linux-adas-j721s2-evm-09_00_00_08/example-applications/arm-benchmarks-1.3” make[2]: 警告: jobserver 不可用: 正使用 -j1。添加 “+” 到父 make 的规则。 aarch64-none-linux-gnu-gcc --sysroot=/home/hduser/ti-processor-sdk-linux-adas-j721s2-evm-09_00_00_08/linux-devkit/sysroots/aarch64-oe-linux/ -g3 -gdwarf-2 -fmessage-length=0 -Wall -c -oDebug/whetstone.o whetstone.c aarch64-none-linux-gnu-gcc --sysroot=/home/hduser/ti-processor-sdk-linux-adas-j721s2-evm-09_00_00_08/linux-devkit/sysroots/aarch64-oe-linux/ -O3 -fmessage-length=0 -Wall -c -oRelease/whetstone.o whetstone.c whetstone.c:93:10: 致命错误: stdlib.h:没有那个文件或目录 93 | #include <stdlib.h> | ^~~~~~~~~~ 编译中断。 Makefile:102: recipe for target 'Debug/whetstone.o' failed make[2]: *** [Debug/whetstone.o] Error 1 make[2]: 离开目录“/home/hduser/ti-processor-sdk-linux-adas-j721s2-evm-09_00_00_08/example-applications/arm-benchmarks-1.3/whetstone” whetstone.c:93:10: 致命错误: stdlib.h:没有那个文件或目录 93 | #include <stdlib.h> | ^~~~~~~~~~ 编译中断。 make[2]: 进入目录“/home/hduser/ti-processor-sdk-linux-adas-j721s2-evm-09_00_00_08/example-applications/arm-benchmarks-1.3” make[2]: 警告: jobserver 不可用: 正使用 -j1。添加 “+” 到父 make 的规则。 Makefile:116: recipe for target 'Release/whetstone.o' failed make[2]: *** [Release/whetstone.o] Error 1 make[2]: 离开目录“/home/hduser/ti-processor-sdk-linux-adas-j721s2-evm-09_00_00_08/example-applications/arm-benchmarks-1.3/whetstone” make[2]: 进入目录“/home/hduser/ti-processor-sdk-linux-adas-j721s2-evm-09_00_00_08/example-applications/arm-benchmarks-1.3” make[2]: 警告: jobserver 不可用: 正使用 -j1。添加 “+” 到父 make 的规则。 aarch64-none-linux-gnu-gcc --sysroot=/home/hduser/ti-processor-sdk-linux-adas-j721s2-evm-09_00_00_08/linux-devkit/sysroots/aarch64-oe-linux/ -g3 -gdwarf-2 -DUNROLL -DSP -fmessage-length=0 -c -oDebug/linpack.o linpack.c aarch64-none-linux-gnu-gcc --sysroot=/home/hduser/ti-processor-sdk-linux-adas-j721s2-evm-09_00_00_08/linux-devkit/sysroots/aarch64-oe-linux/ -DUNROLL -DSP -O3 -fmessage-length=0 -c -oRelease/linpack.o linpack.c linpack.c:89:10: 致命错误: stdio.h:没有那个文件或目录 89 | #include <stdio.h> | ^~~~~~~~~ 编译中断。 Makefile:102: recipe for target 'Debug/linpack.o' failed make[2]: *** [Debug/linpack.o] Error 1 make[2]: 离开目录“/home/hduser/ti-processor-sdk-linux-adas-j721s2-evm-09_00_00_08/example-applications/arm-benchmarks-1.3/linpack” Makefile:7: recipe for target 'debug' failed make[1]: *** [debug] Error 2 make[1]: *** 正在等待未完成的任务.... linpack.c:89:10: 致命错误: stdio.h:没有那个文件或目录 89 | #include <stdio.h> | ^~~~~~~~~ 编译中断。 Makefile:116: recipe for target 'Release/linpack.o' failed make[2]: *** [Release/linpack.o] Error 1 make[2]: 离开目录“/home/hduser/ti-processor-sdk-linux-adas-j721s2-evm-09_00_00_08/example-applications/arm-benchmarks-1.3/linpack” Makefile:12: recipe for target 'release' failed make[1]: *** [release] Error 2 make[1]: 离开目录“/home/hduser/ti-processor-sdk-linux-adas-j721s2-evm-09_00_00_08/example-applications/arm-benchmarks-1.3” makerules/Makefile_arm-benchmarks:3: recipe for target 'arm-benchmarks' failed make: *** [arm-benchmarks] Error 2 hduser@J721S2:~/ti-processor-sdk-linux-adas-j721s2-evm-09_00_00_08$
Please show me the detaild steps, thank you very much.
Best Regards,
Feng Shuai
Hello,
In Linux sdk rpmsg_client_sample.c file has MSG macro defined as hello world by default, you can modify it as required and come to home directory of linux sdk and give
"make linux" command which builds the kernel file changes done.
Later,in linux sdk home directory you can see "Rules.make" file,
In that file you can modify DESTDIR to your SD card respective address
#root of the target file system for installing applications
DESTDIR = /media/a0504159/rootfs
Here DESTDIR , i have provided my SD card rootfs path as example (which is already partitioned) after saving this file
You can give "make linux_install" which copies the respective built files into your SD card.
I hope this is helpful in understanding the procedure to do changes.
Regards
Tarun Mukesh