Hi Bryan!
On 08/01/25 19:46, Bryan Brattlof wrote:
Hi Beleswar!
On January 8, 2025 thus sayeth Beleswar Padhi:
Include k3_rproc.env to access rproc boot commands and specify rproc
firmware names for adding remoteproc support in J722S SoCs.
Signed-off-by: Beleswar Padhi <[email protected]>
---
This patch is independent and puts the environment in place to boot remote
processors at U-Boot stage.
However, for successfully loading the firmwares into remote cores, rproc
DT node definitions are required. These DT changes have been merged into
Linux and available with v6.12 tag[0]. Once the DT Sync happens in U-Boot,
remote processors can be probed and booted with the help of env commands
enabled with this patch.
Sample Boot Test logs after manually adding DT nodes in U-Boot:
https://gist.github.com/3V3RYONE/0b5c7df5b5c88d2a2f273b6a04a3dd46
[0]: https://lore.kernel.org/all/[email protected]/
Thanks,
Beleswar
board/ti/j722s/j722s.env | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/board/ti/j722s/j722s.env b/board/ti/j722s/j722s.env
index f8b6aff2c2f..10d62034e1a 100644
--- a/board/ti/j722s/j722s.env
+++ b/board/ti/j722s/j722s.env
@@ -1,6 +1,10 @@
#include <env/ti/ti_common.env>
#include <env/ti/mmc.env>
+#if CONFIG_CMD_REMOTEPROC
+#include <env/ti/k3_rproc.env>
+#endif
+
name_kern=Image
console=ttyS2,115200n8
args_all=setenv optargs ${optargs} earlycon=ns16550a,mmio32,0x02800000
@@ -13,3 +17,5 @@ mmcdev=1
bootpart=1:2
bootdir=/boot
rd_spec=-
+
+rproc_fw_binaries= 0 /lib/firmware/j722s-mcu-r5f0_0-fw 2
/lib/firmware/j722s-main-r5f0_0-fw 3 /lib/firmware/j722s-c71_0-fw 4
/lib/firmware/j722s-c71_1-fw
For SE devices do these firmware have that *-sig suffix?
Yes, for all K3 SE devices, the "*-sec" suffix is appended to the
existing firmware paths[0].
My thinking is
this seems fairly specific to yocto with other distributions like debian
or QNX will have different names or paths. Should this be put in the env
that yocto builds?
Debian currently uses the same firmware names like Yocto. But yes,
thinking about multi-distro, we can leave the default firmware paths as
empty, and leave it to the user to override these paths according to
their distro. That will have to be done for all K3 devices, as currently
all those define Yocto based firmware paths in the U-Boot board environment.
However, if we leave the default `rproc_fw_binaries` as empty, rproc
boot will fail silently without complaining, which could be confusing to
the user. Whereas, if we have Yocto (or any other distro's) firmware
paths as default, rproc boot will complain "No such file or directory"
and fail when using with a different distro. What are your thoughts?
[0]:
https://source.denx.de/u-boot/u-boot/-/blob/master/include/env/ti/k3_rproc.env?ref_type=heads#L18
Thanks,
Beleswar
~Bryan