|
| 1 | +Load and Boot Firmwares |
| 2 | +================================================================== |
| 3 | + |
| 4 | +You might need to load Firmwares which are not packaged out of the box |
| 5 | +in the SDK. U-boot and Linux rproc drivers expect a particular name as |
| 6 | +soft link pointing to the intended executable FW files in target filesystem |
| 7 | +for it to load and boot the firmware. |
| 8 | + |
| 9 | +Generally on a target file system below files are soft linked |
| 10 | +to the intended executable FW files |
| 11 | + |
| 12 | +.. ifconfig:: CONFIG_part_variant in ('J784S4') |
| 13 | + |
| 14 | + .. code-block:: console |
| 15 | +
|
| 16 | + root@j784s4-evm:~# ls -l /lib/firmware/ |
| 17 | + lrwxrwxrwx 1 root root 66 Mar 9 2025 j784s4-c71_0-fw -> /lib/firmware/ti-ipc/j784s4/ipc_echo_test_c7x_1_release_strip.xe71 |
| 18 | + lrwxrwxrwx 1 root root 66 Mar 9 2025 j784s4-c71_1-fw -> /lib/firmware/ti-ipc/j784s4/ipc_echo_test_c7x_2_release_strip.xe71 |
| 19 | + lrwxrwxrwx 1 root root 66 Mar 9 2025 j784s4-c71_2-fw -> /lib/firmware/ti-ipc/j784s4/ipc_echo_test_c7x_3_release_strip.xe71 |
| 20 | + lrwxrwxrwx 1 root root 66 Mar 9 2025 j784s4-c71_3-fw -> /lib/firmware/ti-ipc/j784s4/ipc_echo_test_c7x_4_release_strip.xe71 |
| 21 | + lrwxrwxrwx 1 root root 68 Mar 9 2025 j784s4-main-r5f0_0-fw -> /lib/firmware/ti-ipc/j784s4/ipc_echo_test_mcu2_0_release_strip.xer5f |
| 22 | + lrwxrwxrwx 1 root root 68 Mar 9 2025 j784s4-main-r5f0_1-fw -> /lib/firmware/ti-ipc/j784s4/ipc_echo_test_mcu2_1_release_strip.xer5f |
| 23 | + lrwxrwxrwx 1 root root 68 Mar 9 2025 j784s4-main-r5f1_0-fw -> /lib/firmware/ti-ipc/j784s4/ipc_echo_test_mcu3_0_release_strip.xer5f |
| 24 | + lrwxrwxrwx 1 root root 68 Mar 9 2025 j784s4-main-r5f1_1-fw -> /lib/firmware/ti-ipc/j784s4/ipc_echo_test_mcu3_1_release_strip.xer5f |
| 25 | + lrwxrwxrwx 1 root root 68 Mar 9 2025 j784s4-main-r5f2_0-fw -> /lib/firmware/ti-ipc/j784s4/ipc_echo_test_mcu4_0_release_strip.xer5f |
| 26 | + lrwxrwxrwx 1 root root 68 Mar 9 2025 j784s4-main-r5f2_1-fw -> /lib/firmware/ti-ipc/j784s4/ipc_echo_test_mcu4_1_release_strip.xer5f |
| 27 | + lrwxrwxrwx 1 root root 66 Mar 9 2025 j784s4-mcu-r5f0_0-fw -> /lib/firmware/ti-eth/j784s4/app_remoteswitchcfg_server_strip.xer5f |
| 28 | + lrwxrwxrwx 1 root root 73 Mar 9 2025 j784s4-mcu-r5f0_0-fw-sec -> /lib/firmware/ti-eth/j784s4/app_remoteswitchcfg_server_strip.xer5f.signed |
| 29 | + lrwxrwxrwx 1 root root 68 Mar 9 2025 j784s4-mcu-r5f0_1-fw -> /lib/firmware/ti-ipc/j784s4/ipc_echo_test_mcu1_1_release_strip.xer5f |
| 30 | +
|
| 31 | +.. ifconfig:: CONFIG_part_variant in ('J742S2') |
| 32 | + |
| 33 | + .. code-block:: console |
| 34 | +
|
| 35 | + root@j742s2-evm:~# ls -l /lib/firmware/ |
| 36 | + lrwxrwxrwx 1 root root 66 Mar 9 2025 j742s2-c71_0-fw -> /lib/firmware/ti-ipc/j742s2/ipc_echo_test_c7x_1_release_strip.xe71 |
| 37 | + lrwxrwxrwx 1 root root 66 Mar 9 2025 j742s2-c71_1-fw -> /lib/firmware/ti-ipc/j742s2/ipc_echo_test_c7x_2_release_strip.xe71 |
| 38 | + lrwxrwxrwx 1 root root 66 Mar 9 2025 j742s2-c71_2-fw -> /lib/firmware/ti-ipc/j742s2/ipc_echo_test_c7x_3_release_strip.xe71 |
| 39 | + lrwxrwxrwx 1 root root 68 Mar 9 2025 j742s2-main-r5f0_0-fw -> /lib/firmware/ti-ipc/j742s2/ipc_echo_test_mcu2_0_release_strip.xer5f |
| 40 | + lrwxrwxrwx 1 root root 68 Mar 9 2025 j742s2-main-r5f0_1-fw -> /lib/firmware/ti-ipc/j742s2/ipc_echo_test_mcu2_1_release_strip.xer5f |
| 41 | + lrwxrwxrwx 1 root root 68 Mar 9 2025 j742s2-main-r5f1_0-fw -> /lib/firmware/ti-ipc/j742s2/ipc_echo_test_mcu3_0_release_strip.xer5f |
| 42 | + lrwxrwxrwx 1 root root 68 Mar 9 2025 j742s2-main-r5f1_1-fw -> /lib/firmware/ti-ipc/j742s2/ipc_echo_test_mcu3_1_release_strip.xer5f |
| 43 | + lrwxrwxrwx 1 root root 68 Mar 9 2025 j742s2-main-r5f2_0-fw -> /lib/firmware/ti-ipc/j742s2/ipc_echo_test_mcu4_0_release_strip.xer5f |
| 44 | + lrwxrwxrwx 1 root root 68 Mar 9 2025 j742s2-main-r5f2_1-fw -> /lib/firmware/ti-ipc/j742s2/ipc_echo_test_mcu4_1_release_strip.xer5f |
| 45 | + lrwxrwxrwx 1 root root 66 Mar 9 2025 j742s2-mcu-r5f0_0-fw -> /lib/firmware/ti-eth/j742s2/app_remoteswitchcfg_server_strip.xer5f |
| 46 | + lrwxrwxrwx 1 root root 73 Mar 9 2025 j742s2-mcu-r5f0_0-fw-sec -> /lib/firmware/ti-eth/j742s2/app_remoteswitchcfg_server_strip.xer5f.signed |
| 47 | + lrwxrwxrwx 1 root root 68 Mar 9 2025 j742s2-mcu-r5f0_1-fw -> /lib/firmware/ti-ipc/j742s2/ipc_echo_test_mcu1_1_release_strip.xer5f |
| 48 | +
|
| 49 | +.. ifconfig:: CONFIG_part_variant in ('J722S') |
| 50 | + |
| 51 | + .. code-block:: console |
| 52 | +
|
| 53 | + root@j722s-evm::~# ls -l /lib/firmware/ |
| 54 | + lrwxrwxrwx 1 root root 72 Dec 7 15:36 j722s-main-r5f0_0-fw -> /lib/firmware/ti-ipc/j722s/ipc_echo_test_mcu3_0_release_strip.xer5f |
| 55 | + lrwxrwxrwx 1 root root 67 Dec 7 15:37 j722s-mcu-r5f0_0-fw -> /lib/firmware/ti-ipc/j722s/ipc_echo_test_mcu2_0_release_strip.xer5f |
| 56 | + lrwxrwxrwx 1 root root 65 Dec 7 15:39 j722s-c71_0-fw -> /lib/firmware/ti-ipc/j722s/ipc_echo_test_c7x_1_release_strip.xe71 |
| 57 | + lrwxrwxrwx 1 root root 65 Dec 7 15:40 j722s-c71_1-fw -> /lib/firmware/ti-ipc/j722s/ipc_echo_test_c7x_2_release_strip.xe71 |
| 58 | +
|
| 59 | +.. ifconfig:: CONFIG_part_variant in ('J721E') |
| 60 | + |
| 61 | + .. code-block:: console |
| 62 | +
|
| 63 | + root@j721e-evm:~# ls -l /lib/firmware/ |
| 64 | + lrwxrwxrwx 1 root root 69 Mar 9 2025 j7-c66_0-fw -> /lib/firmware/ti-ipc/j721e/ipc_echo_test_c66xdsp_1_release_strip.xe66 |
| 65 | + lrwxrwxrwx 1 root root 76 Mar 9 2025 j7-c66_0-fw-sec -> /lib/firmware/ti-ipc/j721e/ipc_echo_test_c66xdsp_1_release_strip.xe66.signed |
| 66 | + lrwxrwxrwx 1 root root 69 Mar 9 2025 j7-c66_1-fw -> /lib/firmware/ti-ipc/j721e/ipc_echo_test_c66xdsp_2_release_strip.xe66 |
| 67 | + lrwxrwxrwx 1 root root 76 Mar 9 2025 j7-c66_1-fw-sec -> /lib/firmware/ti-ipc/j721e/ipc_echo_test_c66xdsp_2_release_strip.xe66.signed |
| 68 | + lrwxrwxrwx 1 root root 65 Mar 9 2025 j7-c71_0-fw -> /lib/firmware/ti-ipc/j721e/ipc_echo_test_c7x_1_release_strip.xe71 |
| 69 | + lrwxrwxrwx 1 root root 72 Mar 9 2025 j7-c71_0-fw-sec -> /lib/firmware/ti-ipc/j721e/ipc_echo_test_c7x_1_release_strip.xe71.signed |
| 70 | + lrwxrwxrwx 1 root root 65 Mar 9 2025 j7-main-r5f0_0-fw -> /lib/firmware/ti-eth/j721e/app_remoteswitchcfg_server_strip.xer5f |
| 71 | + lrwxrwxrwx 1 root root 72 Mar 9 2025 j7-main-r5f0_0-fw-sec -> /lib/firmware/ti-eth/j721e/app_remoteswitchcfg_server_strip.xer5f.signed |
| 72 | + lrwxrwxrwx 1 root root 67 Mar 9 2025 j7-main-r5f0_1-fw -> /lib/firmware/ti-ipc/j721e/ipc_echo_test_mcu2_1_release_strip.xer5f |
| 73 | + lrwxrwxrwx 1 root root 74 Mar 9 2025 j7-main-r5f0_1-fw-sec -> /lib/firmware/ti-ipc/j721e/ipc_echo_test_mcu2_1_release_strip.xer5f.signed |
| 74 | + lrwxrwxrwx 1 root root 67 Mar 9 2025 j7-main-r5f1_0-fw -> /lib/firmware/ti-ipc/j721e/ipc_echo_test_mcu3_0_release_strip.xer5f |
| 75 | + lrwxrwxrwx 1 root root 74 Mar 9 2025 j7-main-r5f1_0-fw-sec -> /lib/firmware/ti-ipc/j721e/ipc_echo_test_mcu3_0_release_strip.xer5f.signed |
| 76 | + lrwxrwxrwx 1 root root 67 Mar 9 2025 j7-main-r5f1_1-fw -> /lib/firmware/ti-ipc/j721e/ipc_echo_test_mcu3_1_release_strip.xer5f |
| 77 | + lrwxrwxrwx 1 root root 74 Mar 9 2025 j7-main-r5f1_1-fw-sec -> /lib/firmware/ti-ipc/j721e/ipc_echo_test_mcu3_1_release_strip.xer5f.signed |
| 78 | + lrwxrwxrwx 1 root root 67 Mar 9 2025 j7-mcu-r5f0_0-fw -> /lib/firmware/ti-ipc/j721e/ipc_echo_testb_mcu1_0_release_strip.xer5f |
| 79 | + lrwxrwxrwx 1 root root 67 Mar 9 2025 j7-mcu-r5f0_1-fw -> /lib/firmware/ti-ipc/j721e/ipc_echo_test_mcu1_1_release_strip.xer5f |
| 80 | +
|
| 81 | +.. ifconfig:: CONFIG_part_variant in ('J721S2') |
| 82 | + |
| 83 | + .. code-block:: console |
| 84 | +
|
| 85 | + root@j721s2-evm:~# ls -l /lib/firmware/ |
| 86 | + lrwxrwxrwx 1 root root 60 Feb 24 2025 j721s2-c71_0-fw -> /lib/firmware/ti-ipc/j721s2/ipc_echo_test_c7x_1_release_strip.xe71 |
| 87 | + lrwxrwxrwx 1 root root 60 Feb 24 2025 j721s2-c71_1-fw -> /lib/firmware/ti-ipc/j721s2/ipc_echo_test_c7x_2_release_strip.xe71 |
| 88 | + lrwxrwxrwx 1 root root 62 Feb 24 2025 j721s2-main-r5f0_0-fw -> /lib/firmware/ti-ipc/j721s2/ipc_echo_test_mcu2_0_release_strip.xer5f |
| 89 | + lrwxrwxrwx 1 root root 62 Feb 24 2025 j721s2-main-r5f0_1-fw -> /lib/firmware/ti-ipc/j721s2/ipc_echo_test_mcu2_1_release_strip.xer5f |
| 90 | + lrwxrwxrwx 1 root root 62 Feb 24 2025 j721s2-main-r5f1_0-fw -> /lib/firmware/ti-ipc/j721s2/ipc_echo_test_mcu3_0_release_strip.xer5f |
| 91 | + lrwxrwxrwx 1 root root 62 Feb 24 2025 j721s2-main-r5f1_1-fw -> /lib/firmware/ti-ipc/j721s2/ipc_echo_test_mcu3_1_release_strip.xer5f |
| 92 | + lrwxrwxrwx 1 root root 63 Feb 24 2025 j721s2-mcu-r5f0_0-fw -> /lib/firmware/ti-ipc/j721s2/ipc_echo_testb_mcu1_0_release_strip.xer5f |
| 93 | + lrwxrwxrwx 1 root root 62 Feb 24 2025 j721s2-mcu-r5f0_1-fw -> /lib/firmware/ti-ipc/j721s2/ipc_echo_test_mcu1_1_release_strip.xer5f |
| 94 | +
|
| 95 | +
|
| 96 | +You should be creating a soft-link for the firmware you need to boot and |
| 97 | +reboot the EVM to see the changes in effect |
| 98 | + |
| 99 | +You can create a symbolic link to the Firmware using below command as a reference |
| 100 | + |
| 101 | +:: |
| 102 | + |
| 103 | + ln -sf /lib/firmware/ti-ipc/j721s2/ipc_echo_test_c7x_1_release_strip.xe71 j721s2-c71_0-fw |
| 104 | + |
0 commit comments