Skip to content

Commit f73a576

Browse files
abhaychirania2411Varun Tripathi
authored andcommitted
Updates for backward compatible release 11_01_07_00
Signed-off-by: Abhay Chirania <a-chirania@ti.com>
1 parent 28a75b0 commit f73a576

File tree

5 files changed

+69
-12
lines changed

5 files changed

+69
-12
lines changed

docs/update_target.md

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,43 @@ cd ../
4848
- Compile the models on X86_PC using the latest tidl-tools and copy over the artifacts to target device file system at ./edgeai-tidl-tools/
4949
- Execute below to run inference on target device with both Python and CPP APIs
5050

51+
```
52+
# scp -r <pc>/edgeai-tidl-tools/model-artifacts/ <dev board>/edgeai-tidl-tool/
53+
# scp -r <pc>/edgeai-tidl-tools/models/ <dev board>/edgeai-tidl-tool/
54+
python3 ./scripts/gen_test_report.py
55+
```
56+
- The execution of above step will generate output images at ```./edgeai-tidl-tools/output_images```.
57+
58+
## SDK 9.2
59+
### Example usage for updating OSRT components and C7x firmwares
60+
**Run the following on target device**
61+
> **_NOTE:_**
62+
> Backward compatibility for 9.2 SDK is only available for AM69A ADAS SDK
63+
64+
```
65+
export SDK_VERSION=9_2
66+
export SOC=am69a
67+
export TISDK_IMAGE=adas
68+
./update_target.sh
69+
```
70+
71+
> **_NOTE:_**
72+
> Make sure you reboot the EVM after the update for the new firmware to be loaded
73+
74+
### Compilation and validation
75+
- Once the setup is done, follow the steps below to build CPP application on EVM
76+
77+
**Run the following on target device**
78+
```
79+
mkdir build
80+
cd build
81+
cmake ../examples -DENABLE_SDK_9_2_COMPATIBILITY=1
82+
make -j2
83+
cd ../
84+
```
85+
- Compile the models on X86_PC using the latest tidl-tools and copy over the artifacts to target device file system at ./edgeai-tidl-tools/
86+
- Execute below to run inference on target device with both Python and CPP APIs
87+
5188
```
5289
# scp -r <pc>/edgeai-tidl-tools/model-artifacts/ <dev board>/edgeai-tidl-tool/
5390
# scp -r <pc>/edgeai-tidl-tools/models/ <dev board>/edgeai-tidl-tool/

docs/version_compatibility_table.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313

1414
|EdgeAI TIDL Tools Version | Notes | AM62A | AM68A/J721S2 (TDA4AL, TDA4VL) | AM68PA/J721E (TDA4VM)| AM69A/J784S4(TDA4AP, TDA4VP,TDA4AH, TDA4VH)| AM67A (J722S)| AM62|
1515
| ---------------------------- |:--------------:|:---------------:|:--------------:|:--------------:|:-------------:|:-------------:|:-------------:|
16+
| 11_01_07_00 | This release is backward compatible with SDK 11.0 for all targets except AM62A and AM62. The firmware and libraries can be directly updated on the target by following the steps [here](./update_target.md) | NOT AVAILABLE | Processor SDK LINUX 11.00.00.08<br /> Processor SDK RTOS 11.00.00.06 | Processor SDK LINUX 11.00.00.08<br /> Processor SDK RTOS 11.00.00.06 | Processor SDK LINUX 11.00.00.08<br /> Processor SDK RTOS 11.00.00.06 | Processor SDK LINUX 11.00.00.08<br /> Processor SDK RTOS 11.00.00.06 | NOT AVAILABLE|
1617
| 11_01_06_00 | | Processor SDK LINUX: 11.01.07.05 | Processor SDK LINUX 11.01.00.03<br /> Processor SDK RTOS 11.01.00.04 | Processor SDK LINUX 11.01.00.03<br /> Processor SDK RTOS 11.01.00.04 |Processor SDK LINUX 11.01.00.03<br /> Processor SDK RTOS 11.01.00.04 | Processor SDK LINUX 11.01.00.03<br /> Processor SDK RTOS 11.01.00.04 | 11_01_05_03 |
1718
| 11_01_05_00 | This release is backward compatible with SDK 11.0 for all targets except AM62A and AM62. The firmware and libraries can be directly updated on the target checking out to tag **11_01_05_00** and following the steps in **docs/update_target.md** | NOT AVAILABLE | Processor SDK LINUX 11.00.00.08<br /> Processor SDK RTOS 11.00.00.06 | Processor SDK LINUX 11.00.00.08<br /> Processor SDK RTOS 11.00.00.06 | Processor SDK LINUX 11.00.00.08<br /> Processor SDK RTOS 11.00.00.06 | Processor SDK LINUX 11.00.00.08<br /> Processor SDK RTOS 11.00.00.06 | NOT AVAILABLE|
1819
| 11_00_08_00 | An additional C7x firmware patch is needed to leverage some additional features mentioned as part of the release notes. The firmware and libraries can be directly updated on the target by following the steps [here](update_target.md). Make sure that models are compiled with the appropriate [c7x_firmware_version](../examples/osrt_python/README.md#advanced-miscellaneous-options) compilation option (Set to 11_00_08_00) | NOT AVAILABLE | Processor SDK LINUX 11.00.00.08<br /> Processor SDK RTOS 11.00.00.06 | Processor SDK LINUX 11.00.00.08<br /> Processor SDK RTOS 11.00.00.06 | Processor SDK LINUX 11.00.00.08<br /> Processor SDK RTOS 11.00.00.06 | Processor SDK LINUX 11.00.00.08<br /> Processor SDK RTOS 11.00.00.06 | NOT AVAILABLE|

examples/osrt_python/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -227,7 +227,7 @@ Please refer [Quantization](../../docs/tidl_fsg_quantization.md) for more detail
227227
| advanced_options:high_resolution_optimization | This option enables performance optimization for high resolution models | 0 - disable, <br> 1 enable | 0 | Model compilation | |
228228
| advanced_options:add_data_convert_ops | This option embeds input and output format conversions (layout, data type, etc.) as part of model and performs the same in DSP instead of ARM | 0 - disable, <br> 1 - Input format conversion <br> 2 - output format conversion <br> 3 - Input and output format conversion | 0 | Model compilation | This is currently an experimental feature |
229229
| advanced_options:network_name | This option allows the user to set the network name (used for the name of the subgraph being delegated to C7x/MMA). If your model contains a network name, it will get used by default | String | "Subgraph" | Model compilation | |
230-
| advanced_options:c7x_firmware_version | Refer to [**Release version convention**](../../docs/version_compatibility_table.md). In case you are using firmware released as part of processor SDK RTOS, this field can be ignored. If you are using TIDL firmware release with a new patch release of the same "release line" then it is essential to use c7x_firmware_version explicitly | String | "11_01_06_00" | Model compilation | Possible values are "11_01_06_00" |
230+
| advanced_options:c7x_firmware_version | Refer to [**Release version convention**](../../docs/version_compatibility_table.md). In case you are using firmware released as part of processor SDK RTOS, this field can be ignored. If you are using TIDL firmware release with a new patch release of the same "release line" then it is essential to use c7x_firmware_version explicitly | String | "11_01_07_00" | Model compilation | Possible values are "11_01_07_00" |
231231
| advanced_options:partial_init_during_compile | This option allows the user to enable partial initialization of handles during model compilation to reduce the runtime initialization time | 0 - disable, 1 - enable | 0 | Model compilation | - |
232232
| advanced_options:batch_mode | This option allows the user to enable batch stitching | 0 - disable, 1 - enable | 0 | Model compilation | - |
233233
| advanced_options:log_file_name | This option allows the user to redirect the output logs to a file | String | "" | Model compilation | |

setup.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ cp_osrt_lib()
7575

7676

7777
SCRIPTDIR=`pwd`
78-
REL=11_01_06_00
78+
REL=11_01_07_00
7979
skip_cpp_deps=0
8080
skip_arm_gcc_download=0
8181
skip_x86_python_install=0

update_target.sh

Lines changed: 29 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@
3232
SCRIPTDIR=`pwd`
3333
TARGET_FS_PATH=/
3434

35-
REL="11_01_06_00"
35+
REL="11_01_07_00"
3636
SOC=${SOC:-'null'}
3737
TISDK_IMAGE=${TISDK_IMAGE:-'null'}
3838
SDK_VERSION=${SDK_VERSION:-'null'}
@@ -54,7 +54,7 @@ if [ `arch` != "aarch64" ]; then
5454
fi
5555

5656
verify_env() {
57-
if [ "$REL" != "11_01_05_00" ]; then
57+
if [ "$REL" != "11_01_07_00" ]; then
5858
echo "Cannot invoke this script with version $REL. This is not a backward compatible release."
5959
fi
6060

@@ -82,13 +82,21 @@ verify_env() {
8282
return 1
8383
fi
8484

85-
if [ "$SDK_VERSION" != "11_0" ]; then
85+
if [ "$SDK_VERSION" != "11_0" ] && [ "$SDK_VERSION" != "9_2" ]; then
8686
echo
8787
echo "Incorrect SDK_VERSION defined: $SDK_VERSION"
88-
echo "Allowed values for SDK_VERSION is 11_0"
88+
echo "Allowed values for SDK_VERSION is 11_0 or 9_2"
8989
return 1
9090
fi
9191

92+
if [ "$SDK_VERSION" == "9_2" ] && [ "$UPDATE_FIRMWARE_AND_LIB" == "1" ]; then
93+
if [ "$SOC" != "am69a" ] || [ "$TISDK_IMAGE" != "adas" ]; then
94+
echo
95+
echo "Backward compatibility for 9.2 SDK is only enabled for AM69A ADAS IMAGES"
96+
return 1
97+
fi
98+
fi
99+
92100
if [ "$SOC" == "am62a" ] && [ "$TISDK_IMAGE" == "adas" ]; then
93101
echo
94102
echo "AM62A does not have ADAS Image. Using EDGEAI"
@@ -115,9 +123,11 @@ update_osrt_components() {
115123
# Updating DLR
116124
cd $TARGET_FS_PATH/$HOME/arago_j7_pywhl
117125

118-
echo "==================== Updating dlr runtime wheel ===================="
119-
wget --proxy off https://software-dl.ti.com/jacinto7/esd/tidl-tools/$REL/OSRT_TOOLS/ARM_LINUX/ARAGO/$SDK_VERSION/dlr-1.13.0-py3-none-any.whl
120-
pip3 install --upgrade --force-reinstall dlr-1.13.0-py3-none-any.whl --disable-pip-version-check
126+
if [ "$SDK_VERSION" != "9_2" ]; then
127+
echo "==================== Updating dlr runtime wheel ===================="
128+
wget --proxy off https://software-dl.ti.com/jacinto7/esd/tidl-tools/$REL/OSRT_TOOLS/ARM_LINUX/ARAGO/$SDK_VERSION/dlr-1.13.0-py3-none-any.whl
129+
pip3 install --upgrade --force-reinstall dlr-1.13.0-py3-none-any.whl --disable-pip-version-check
130+
fi
121131

122132
echo "==================== Updating arm-tidl headers ===================="
123133
cd $TARGET_FS_PATH/$HOME/required_libs
@@ -143,8 +153,13 @@ update_osrt_components() {
143153

144154
echo "==================== Updating onnxruntime wheel ===================="
145155

146-
onnx_wheel=onnxruntime_tidl-1.15.0-cp312-cp312-linux_aarch64.whl
147-
onnx_tar=onnx_1.15.0_aragoj7
156+
if [ "$SDK_VERSION" == "9_2" ]; then
157+
onnx_wheel=onnxruntime_tidl-1.15.0-cp310-cp310-linux_aarch64.whl
158+
onnx_tar=onnx_1.15.0_aragoj7_cp310
159+
else
160+
onnx_wheel=onnxruntime_tidl-1.15.0-cp312-cp312-linux_aarch64.whl
161+
onnx_tar=onnx_1.15.0_aragoj7
162+
fi
148163

149164
wget --proxy off https://software-dl.ti.com/jacinto7/esd/tidl-tools/$REL/OSRT_TOOLS/ARM_LINUX/ARAGO/$SDK_VERSION/$onnx_wheel
150165
pip3 install $onnx_wheel --disable-pip-version-check
@@ -179,7 +194,11 @@ update_osrt_components() {
179194

180195
echo "==================== Updating tflite wheel ===================="
181196

182-
tfl_wheel=tflite_runtime-2.12.0-cp312-cp312-linux_aarch64.whl
197+
if [ "$SDK_VERSION" == "9_2" ]; then
198+
tfl_wheel=tflite_runtime-2.12.0-cp310-cp310-linux_aarch64.whl
199+
else
200+
tfl_wheel=tflite_runtime-2.12.0-cp312-cp312-linux_aarch64.whl
201+
fi
183202

184203
wget --proxy off https://software-dl.ti.com/jacinto7/esd/tidl-tools/$REL/OSRT_TOOLS/ARM_LINUX/ARAGO/$SDK_VERSION/$tfl_wheel
185204
pip3 install --upgrade --force-reinstall $tfl_wheel --disable-pip-version-check

0 commit comments

Comments
 (0)