- Mar 14, 2024
-
-
Starting bootloader printed by BL2. Corstone-300 and 310 starting the BL2 first, than do the provisioning part. Corstone-315 do the provisioning first, because of the BL1 ROM bootloader, therefore the log messages comes swapped from this platform. We have deleted the Starting bootloader line to unify the pass output file. Signed-off-by:
Dávid Házi <david.hazi@arm.com>
-
The HDLCD helper adds 3 predefined display formats to the project, RGB565, RGB32 and A2R10G10B10. Signed-off-by:
Gabor Abonyi <gabor.abonyi@arm.com>
-
The tools has been added to convert images to .FRM format, which can be fed into the Corstone-315 FVP's "camera" input. Signed-off-by:
Gabor Abonyi <gabor.abonyi@arm.com>
-
Generates `You Only Look Once` (YOLO) fastest object detection model for the object detection application Signed-off-by:
Dávid Házi <david.hazi@arm.com>
-
Arm-2D is used by the object detection example to draw frames around detected faces. Signed-off-by:
Gabor Abonyi <gabor.abonyi@arm.com>
-
Using the latest platform, the Corstone-315 as default. Signed-off-by:
Dávid Házi <david.hazi@arm.com>
-
Arm Mali-C55 image signal processor (ISP) driver The Corstone-315 has an ISP IP, which can be used to create downscaled image for ML vision applications. ISP also can handle camera lens, sensors. The driver comes with a 3A algorithm (proprietary) Signed-off-by:
Gabor Abonyi <gabor.abonyi@arm.com>
-
* Add Corstone-315 platform to FreeRTOS Plus TCP Corstone-315 has got a different memory map than the previous Corstone platforms. * Turn on BL1 logging for Corstone-315 * Don't define PLATFORM_DEFAULT_CRYPTO_KEYS for Corstone-315, this platform using its own keys, because of the new security IPs Signed-off-by:
Gabor Abonyi <gabor.abonyi@arm.com>
-
Added Corstone-315 support. Because of the different provisioning method, the 315 should be handled separately. The function is using the cmake variables instead of the function parameter list. Signed-off-by:
Gabor Abonyi <gabor.abonyi@arm.com>
-
* 0001-corstone300-Modify-ISRAM0-to-be-non-secure-partition.patch have been removed, because DTCM was not large enough in some cases. S DATA RAM moved to the beginning of ISRAM0, size increased to 128kB. * Updated to the latest commit which supports Corstone-315 platform * patch: Corstone-315 has got a new provisioning method. To match the new method to the older platforms, we were changed the last provisioning step's log messages, in this case the CI pass conditions can be unified. Signed-off-by:
Dávid Házi <david.hazi@arm.com>
-
The latest version of the Arm Corstone Platform BSP repository provides support for the Corstone-315 platform. Signed-off-by:
Dávid Házi <david.hazi@arm.com>
-
For the Corstone-300, 310 and 315 platforms, TF-M allocates S DATA RAM on the first 128kB of the ISRAM0 memory region. NS DATA RAM can be placed after this region. Signed-off-by:
Ahmed Ismail <Ahmed.Ismail@arm.com>
-
- Mar 11, 2024
-
-
Add real clock time synchronisation to keyword-detection application by using `coresntp` and `helpers-time-sync` libraries This would require using MbedTLS time functions alternatives to query the correct synchronised real clock time. This addition would fix AWS TLS Expired Server Cert test as previously, wrong clock time was fetched which result in using expired server certificate. Now, correct clock time would be fetched which results in target rejecting the server's expired certificate which in turn fixes the test. Signed-off-by:
Ahmed Ismail <Ahmed.Ismail@arm.com>
-
This helper library shall be used with any FRI application to add real clock time synchronisation for the target. This addition is needed to fix AWS TLS Expired Server Cert test which is part of AWS Device Advisor Validation tests as this test requires the device under test to have synchronised real time clock to be able to detect that the server's certificate is expired and reject it. Signed-off-by:
Ahmed Ismail <Ahmed.Ismail@arm.com>
-
Add latest LTS release of coreSNTP FreeRTOS library to the FRI to be used for synchronisng embedded targets clock time. Signed-off-by:
Ahmed Ismail <Ahmed.Ismail@arm.com>
-
Fix `descrived` typo. Signed-off-by:
Dávid Házi <david.hazi@arm.com>
-
We shouldn't be allocating heap using C and FreeRTOS heap management APIs as we might end up with both FreeRTOS heap and C heap. This can lead to several unexpected issues. C standard heap functions are used to unify heap allocations as we can't use FreeRTOS heap management APIs because this would require patching lots of file as part of ml-embedded-evaluation-kit library which use C standard heap functions for heap allocations. Heap space is increased by `0x10000` as C standard heap management APIs requires more heap space for the existing FRI applications because it is less optimised than FreeRTOS heap management APIS (heap_4). Signed-off-by:
Ahmed Ismail <Ahmed.Ismail@arm.com>
-
It was noticed that sometimes speech-recognition application fails on the CI because the OTA update is not completed by the time `timeout-seconds` is reached. Hence, increasing the timeout for test applications job to 45 minutes instead of 30 minutes. Signed-off-by:
Ahmed Ismail <Ahmed.Ismail@arm.com>
-
- Mar 06, 2024
-
-
Hugues Kamba-Mpiana authored
Patch the library to provide a reduced set of metadata to download and optimize when building applications. The only models specified in the use case resources files (depending on the application) are asr and kws. Those are the only models required by the FRI applications. The build time for the ML applications have been reduced by 40%. Signed-off-by:
Hugues Kamba-Mpiana <hugues.kambampiana@arm.com>
-
- Mar 01, 2024
-
-
Signed-off-by:
Ahmed Ismail <Ahmed.Ismail@arm.com>
-
The CMSIS6 has an IRQ driven CMSIS compliant UART driver. USART0 is set to non-secure. TX/RX are now also turned ON at initialization of the USART. Because the driver is IRQ driven, the send function only initiates the transaction. To maintain the CMSIS5 operation model, a busy wait for the completion of the send operation is required. Signed-off-by:
Dávid Házi <david.hazi@arm.com>
-
* As CMSIS6 provides VSI IRQ handlers and IRQ definitions, the BSP patches related to VSI IRQs are removed. * BSP patch files that reference the `CMSIS_Driver/Include` path have been amended, as the path no longer exists and the files patched have moved. * Changed VSI IRQ handlername to the offical ARM_VSI0_Handler * Added RTE_Components.h which enables USART and MPS3 IO CMSIS components. Signed-off-by:
Dávid Házi <david.hazi@arm.com>
-
- Feb 28, 2024
-
-
This addition is used to validate that the applications's software conforms with TLS, MQTT, Device Shadow, and IoT Jobs best practices. Signed-off-by:
Ahmed Ismail <Ahmed.Ismail@arm.com>
-
Add AWS IoT Core Device Advisor service helper library which can be used for validating IoT devices during software development. AWS IoT Core Device Advisor's pre-built tests help to validate the software against best practices for usage of TLS, MQTT, Device Shadow, and IoT Jobs. Signed-off-by:
Ahmed Ismail <Ahmed.Ismail@arm.com>
-
The current plan is to support AWS Device Advisor validation on keyword-detection application only. Hence, removing all unused AWS Device Advisor Validation references. Signed-off-by:
Ahmed Ismail <Ahmed.Ismail@arm.com>
-
`aws-iot-example` is deprecated as `keyword-detection` and `speech-recognition` applications do all the functionalities that `aws-iot-example` does. Hence, there is no need to maintain it anymore. GitHub CI is modified to build `keyword-detection` and `speech-recognition` applications instead of `aws-iot-example`. Building the Ml Embedded Evaluation Kit requires Python 3.10 and the `libsndfile1-dev` library. Signed-off-by:
Ahmed Ismail <Ahmed.Ismail@arm.com>
-
- Feb 27, 2024
-
-
Devaraj Ranganna authored
* Move supported toolchain information from application docs to README.md to avoid duplicatiing it on all supported examples. * Move supported platforms description from docs/prerequisites.md to README.md to list and describe the supported platforms in one place. * Add supported versions information to supported targets. Signed-off-by:
Devaraj Ranganna <devaraj.ranganna@arm.com>
-
Devaraj Ranganna authored
The default target for FRI is Corstone-310. Update the `docs/prerequisites.md` instructions to download Corstone-310 FVP. Signed-off-by:
Devaraj Ranganna <devaraj.ranganna@arm.com>
-
Devaraj Ranganna authored
In the initial days of FRI, vht running in ami was the only supported platform since it supported virtual socket interface. However, latest ecosystem FVPs do support virtual socket interface. In addition, FRI now supports FreeRTOS TCP/IP stack. Therefore, remove vht support. Signed-off-by:
Devaraj Ranganna <devaraj.ranganna@arm.com>
-
- Feb 25, 2024
-
-
Add missing PARENT_SCOPE to root folder CMakeLists.txt. It is needed as the entry point is the application/<example>. Signed-off-by:
Gabor Abonyi <gabor.abonyi@arm.com>
-
- Feb 21, 2024
-
-
Ahmed Ismail authored
All the components across the project should use the `iot_reference_arm_corstone3xx_apply_patches` function to apply patches which in turn improves consistency. For more information, please refer to the commit with SHA: fa76f068 Signed-off-by:
Ahmed Ismail <Ahmed.Ismail@arm.com>
-
Gabor Abonyi authored
Move common settings and values from the applications to the bsp and root CMakeLists.txt files. These values are common across all apps. Signed-off-by:
Gabor Abonyi <gabor.abonyi@arm.com>
-
- Feb 19, 2024
-
-
GaborAbonyi authored
* ml-eval-kit: Make ETHOSU_ARCH configurable in TensorFlow CMake This patch removes the hardcoded value of u55 in tesorflow.cmake. It now uses ETHOS_U_NPU_ID as input and convert it to the format needed by TensorFlow build. This also means the ETHOS_U_NPU_ID variable preserve workaround is no longer needed in SetupMlEmbeddedEvaluationKitLibraries.cmake as it is no longer overwritten in tensorflow.cmake. Signed-off-by:
Gabor Abonyi <gabor.abonyi@arm.com> * ml-eval-kit: Move NPU config from app to bsp These settings are independent from the applications, to reduce duplication, configuration of NPU is moved to bsp layer. Added U65 option and checks for config validity. Signed-off-by:
Gabor Abonyi <gabor.abonyi@arm.com> * ml-eval-kit: Move activation_buf_dram to .bss.NoInit region This is needed to place activation_buf_dram in a no init region, so it does not require space in flash. Signed-off-by:
Gabor Abonyi <gabor.abonyi@arm.com> * build-run: Add support for Ethos NPU ID and MAC cycle configuration * Add option to the build/run scripts to select different Ethos NPU * Add option to the buld script to select number of Ethos NPU MAC unit per cycle Signed-off-by:
Gabor Abonyi <gabor.abonyi@arm.com> * build-run: Use a shell variable to gather CMake arguments This is so some CMake arguments can be excluded more easily depending on the build configuration. It will remove the need to set default values for CMake cache variables from the scripts as CMake cache variables already have default values. This change allows a standard overriding of CMake cache variable in CMake scripts without a check to see if the user input a value for the cache variable. Signed-off-by:
Gabor Abonyi <gabor.abonyi@arm.com> * build: Unify error report format in build.sh Signed-off-by:
Gabor Abonyi <gabor.abonyi@arm.com> --------- Signed-off-by:
Gabor Abonyi <gabor.abonyi@arm.com>
-
Since both the certificate path and the private key path are forwarded to CMake, the user is asked to specify them as absolute. Build process fails when either of these is a local path instead. Unfortunately, although our build script checks for existence of both files, the check is not done from CMake's point of view. As a result, the build error seen by the user is hard to understand (no known rule to make a missing ninja target). Resolve both AWS certificate path and AWS private key path to prevent the unhelpful error message from showing up, and make the build script more flexible by giving users option to use local paths as well as absolute paths for PEM files. Signed-off-by:
Filip Jagodzinski <filip.jagodzinski@arm.com>
-
- Feb 14, 2024
-
-
Change the optimization level for the `freertos-iot-libraries-tests` application to reduce code size whilst still maintaining a comfortable debugging experience. Arm Compiler For Embedded optimization level is set to use `-O1` and Arm GNU Toolchain is set to use `-Og`. These optimization levels are already used by the other FRI applications. The Arm Compiler For Embedded `-O1` optimization level results in a slower binary execution speed on `FVP_Corstone_SSE-310`. The MQTT test process loop timeout period (`MQTT_TEST_PROCESS_LOOP_TIMEOUT_MS`) needs therefore to be increased from `40000` to `54630` to pass the `MqttTest, MQTT_Restore_Session_Duplicate_Incoming_Publish_Qos1` test case. Signed-off-by:
Hugues Kamba Mpiana <hugues.kambampiana@arm.com>
-
- Feb 12, 2024
-
-
Hugues Kamba Mpiana authored
Improvements include: * Use descriptive names for symbols in lines with other test scripts * Add docstrings * Add type annotations * Use Python assignment operators where appropriate * Use f-strings to make print statement more readable Signed-off-by:
Hugues Kamba-Mpiana <hugues.kambampiana@arm.com>
-
Hugues Kamba Mpiana authored
Instead of repeating the executable name in the application `CMakeLists.txt`, use `CMAKE_PROJECT_NAME`. This change ensures that the project name matches the CMake target executable name. Signed-off-by:
Hugues Kamba-Mpiana <hugues.kambampiana@arm.com>
-
Hugues Kamba Mpiana authored
Rename the AWS IoT Example application CMake project name from `aws-iot-example-project` to `aws-iot-example`. The addition of `-project` suffix was redundant as it is the value of the `CMAKE_PROJECT_NAME` CMake variable. Signed-off-by:
Hugues Kamba-Mpiana <hugues.kambampiana@arm.com>
-
Hugues Kamba Mpiana authored
The `aws-iot-example-tests` executable's source code and CMake build instructions were contained within the AWS IoT Example application. It has now been decoupled as a standalone application named `freertos-iot-libraries-tests`. The `freertos-iot-libraries-tests` application verifies this FRI's integration of FreeRTOS IoT libraries running on the supported hardware platforms for robustness and compatibility with AWS’s published best practices for AWS IoT Core connectivity. Other changes include: * Use `CMAKE_PROJECT_NAME` to refer to the apps executable * Include header files that declares objects used in source files Signed-off-by:
Hugues Kamba-Mpiana <hugues.kambampiana@arm.com>
-
- Feb 11, 2024
-
-
David Hazi authored
* Declaring MBEDTLS_ALLOW_PRIVATE_ACCESS allows access to mbedtls "private" fields. * Migration guide: https://github.com/Mbed-TLS/mbedtls/blob/development/docs/3.0-migration-guide.md Signed-off-by:
Dávid Házi <david.hazi@arm.com>
-