- May 22, 2025
-
-
Jonny Svärd authored
Change-Id: Ia9f707557be2e8b2293419f7e5d80a8b6aff0a89 Signed-off-by:
Jonny Svärd <jonny.svaerd@arm.com>
-
- May 13, 2025
-
-
Mikael authored
The OpenAMP library has changed how the wait_remote_ready functions work for Remoteproc and RPMsg, instead of using metal_yield while waiting for the remote side to get ready, they now use metal_sleep_usec. This causes issues in the message handler implementation because FreeRTOS implements the sleep function using vTaskDelay, which can only be used after the scheduler has been started and the message handler performs its Remoteproc setup before starting the scheduler. To solve this, the Remoteproc setup has been moved to its own task that will be run before any other task. This allows the use of vTaskDelay during the setup. Change-Id: Idf9e86e62ff0ff4bd716d33987cb70bc34743229 Signed-off-by:
Mikael Olsson <mikael.olsson@arm.com>
-
- Apr 30, 2025
-
-
Jonny Svärd authored
The driver now calls the cache flush/clean before each NPU command stream with a full list of base pointers/base addresses and their size. This allows full freedom to implement any desired logic for cache coherence management outside of the driver. This changes the function prototype for the flush and invalidate functions. This commit provides example implementations of the flush and invalidate functions, looping over the base addresses. Note the important cast (on 32bit systems) for the base addresses, which is there to avoid sign expansion when casting to a pointer from a type bigger than the pointer size. Change-Id: Ia3faa05aba8aac7c1c7bb59c05dd3f5d2b44caa0 Signed-off-by:
Jonny Svärd <jonny.svaerd@arm.com>
-
- Apr 29, 2025
-
-
Jonny Svärd authored
Change-Id: I979f2e4fbf4e1c580b6ce3ce79d66f0064112320 Signed-off-by:
Jonny Svärd <jonny.svaerd@arm.com>
-
- Apr 16, 2025
-
-
Jonny Svärd authored
Replace hardcoded printf usage with appropriate LOG macros instead. Change-Id: I42af83ce6ce75360f1f5e3bcd2a4e0100f9f1d97 Signed-off-by:
Jonny Svärd <jonny.svaerd@arm.com>
-
- Feb 26, 2025
-
-
Mikael authored
A mask with the supported network indexes has been to the capabilities to allow the host to know what indexes that are supported Change-Id: I6ee8b2a32b9d866398646bb6c9c61b46fca2ceb3 Signed-off-by:
Mikael Olsson <mikael.olsson@arm.com>
-
- Jan 24, 2025
-
-
Jonny Svärd authored
DEPENDS is not valid argument for a custom command with a target, and prior versions of CMake (v<3.31) silently ignored those. This specific dependency is already covered as the threadx_demo application itself depends on the threadx target, so the line has been ignored and can be safely removed. Change-Id: If4e73ca8595c1e2fa211537887a0bda48d655439 Signed-off-by:
Jonny Svärd <jonny.svaerd@arm.com>
-
- Jan 23, 2025
-
-
Jonny Svärd authored
Change-Id: I26da5d175f7c3c0a2bb616f0d68114ef5a9cd521 Signed-off-by:
Jonny Svärd <jonny.svaerd@arm.com>
-
- Jan 14, 2025
-
-
Jonny Svärd authored
The binaries generated from the script will be regenerated upon each compilation, so there should be no need to have a dependency file specifying the output files from said script. Signed-off-by:
Jonny Svärd <jonny.svaerd@arm.com> Change-Id: Ic9be950c119f6263725590b34d44d075ff65b370
-
Jonny Svärd authored
In CMake versions < 3.31 specifying invalid options to add_custom_command (and others) was silently ignored. Specifying the DEPFILE option to a custom command (per target) has never been valid so remove the option. Signed-off-by:
Jonny Svärd <jonny.svaerd@arm.com> Change-Id: I2b57d286dffff4484905e7c63007caf23522b58d
-
- Jan 07, 2025
-
-
Jonny Svärd authored
Several repos have moved from ML Platform to GitLab, change all references to use the new location. Signed-off-by:
Jonny Svärd <jonny.svaerd@arm.com> Change-Id: Ibbe208531e9c61bd659b2679572b8ba10502deef
-
- Dec 16, 2024
-
-
Rajasekaran Kalidoss authored
Update the README document with details of various compiler flags used to make it easier for the user to find them. Change-Id: I4575eda528cb46d359fd891956d680e5c73ed62f Signed-off-by:
Rajasekaran Kalidoss <rajasekaran.kalidoss@arm.com>
-
- Nov 27, 2024
-
-
Rajasekaran Kalidoss authored
The gcc tool chain file specifies both -Wredundant-decls and -Wno-redundant-decls. This patch removes the -Wno-redundant-decls flag. Change-Id: Idc3bc4aae51fffb8fd27bf182de1a385cd9681d8 Signed-off-by:
Rajasekaran Kalidoss <rajasekaran.kalidoss@arm.com>
-
- Nov 18, 2024
-
-
Jonny Svärd authored
Update the README with information regarding Corstone-320, and the Ethos-U85 NPU. Change-Id: I8109cc605b3dc27d7cdae0755a304f92327470fc Signed-off-by:
Jonny Svärd <jonny.svaerd@arm.com>
-
Jonny Svärd authored
Move *(.rodata) and *(.rodata.*) from ITCM to DTCM (exec region) and use the DRAM as load region, to avoid the ITCM memory from overflowing when building the message_handler_openamp application in particular, using gcc. CMSIS startup code will copy the data from DRAM to DTCM using the added copy_table entry. The message_handler_openamp application contains fallback support for all TFLM operators (using a "MicroMutableAllOpResolver"), which is causing the firmware size to get quite big and go past the memory size of ITCM (512KiB) for Corstone-300. Change-Id: I521ae3e417c65387bde3aa89e005580502823bef Signed-off-by:
Jonny Svärd <jonny.svaerd@arm.com>
-
- Nov 15, 2024
-
-
Jonny Svärd authored
Specify arm-none-eabi-objcopy as default objcopy binary to use for both armclang and gcc toolchain files. The core_platform threadx_demo application depends on CMAKE_OBJCOPY to mark the RTOS default HardFault_Handler function as weak, to not clash with the target provided HardFault_Handler. On some systems, especially x86_64 the host version of objcopy can not handle the Arm format and linking fails. To avoid this problem, specify a default objcopy binary to use. Change-Id: I8504dbbe0803db028eb873e8d82c3e5a21983336 Signed-off-by:
Jonny Svärd <jonny.svaerd@arm.com>
-
- Nov 08, 2024
-
-
Jonny Svärd authored
Due to lack of support for cortex-m52 in gcc versions < 14, use cortex-m55 as target instead. Signed-off-by:
Jonny Svärd <jonny.svaerd@arm.com> Change-Id: I6dc7b0750746f5e19c3edf25274458dc57a0e734
-
Jonny Svärd authored
Remove architecture specific linker settings and instead use the CPU name as default for armlink --cpu setting to enable all features. Add missing --target directive to the compiler. Signed-off-by:
Jonny Svärd <jonny.svaerd@arm.com> Change-Id: If8202ff0368d060af0f628c41bafa9ba6d395569
-
- Oct 29, 2024
-
-
Jonny Svärd authored
Align tensor arena to 32 bytes (cache line). Alignment is defined in the code with an attribute, and in the scatter and linker files where possible. Remove ethosu_flush_dcache() implementation, this is no longer recommended to be implemented. Application code where the CPU cache is used and program writes to shared memory between CPU and NPU should take care of cache coherency. Full cache invalidation is no longer supported as this might cause issues on certain systems/implementations, especially in async cases. Change-Id: I599d33d60af4cfebe288a651edddb33b6b5434ee Signed-off-by:
Jonny Svärd <jonny.svaerd@arm.com>
-
- Oct 24, 2024
-
-
Jonny Svärd authored
Change-Id: Id62a7d3dd03bcdc3d5c7db22a040066c29482732 Signed-off-by:
Jonny Svärd <jonny.svaerd@arm.com>
-
- Oct 22, 2024
-
-
Jonny Svärd authored
Remove faulty version check from run_ctest script. The initial releases of the Corstone-300 FVP contained some bugs causing things to not run properly, however those are now several years old and are most likely not used anymore. Change-Id: I5cdbb55cfe2dd832573058aafe2a10e2f95b88e7 Signed-off-by:
Jonny Svärd <jonny.svaerd@arm.com>
-
- Oct 17, 2024
-
-
Jonny Svärd authored
Update run_ctest.py to support Corstone-320 Change or remove legacy FVP version checks Change-Id: Ib57afaad9cca05203a405c82493a3ceddf6a5d15 Signed-off-by:
Jonny Svärd <jonny.svaerd@arm.com>
-
- Sep 23, 2024
-
-
Jonny Svärd authored
Change-Id: If8d6d453fc50c9a623fb96a2de7ab332cf86b728 Signed-off-by:
Jonny Svärd <jonny.svaerd@arm.com>
-
- Sep 16, 2024
-
-
Jonny Svärd authored
Change-Id: Ieeaa4142088fd83990e392eab10fbd7e9a96a454 Signed-off-by:
Jonny Svärd <jonny.svaerd@arm.com>
-
- Aug 09, 2024
-
-
Jonny Svärd authored
Change-Id: I5acfbdc3db09d1e22d906659d61f3d04f3b2a079 Signed-off-by:
Jonny Svärd <jonny.svaerd@arm.com>
-
- Jun 24, 2024
-
-
Jonny Svärd authored
The loadAndEnableConfig func is always exposed through the driver API, even if the underlying CPU is not supported. For cases where the function is called but its body empty, silence warnings about unused parameters. Change-Id: Idf93f9afc9e5c053fa3587c350abe7cc6ad5a5fa Signed-off-by:
Jonny Svärd <jonny.svaerd@arm.com>
-
Jonny Svärd authored
Change-Id: I22a32d40e97cfeb41d8002cb7e477668fa58f501 Signed-off-by:
Jonny Svärd <jonny.svaerd@arm.com>
-
- Jun 17, 2024
-
-
Jonny Svärd authored
The targets only have one NPU so simplify the timing adapters settings by removing unnecessary nesting and complexity. Corstone-310 does not have timing adapters in the NPU model, so remove that dead timing adapter code completely. Change-Id: Iabe95c5e6354f5168beefa3ddfff4a348c4a7021 Signed-off-by:
Jonny Svärd <jonny.svaerd@arm.com>
-
- May 21, 2024
-
-
Mikael authored
The block_idx_end variable is left uninitialized and contains an undeterminate value. This can cause issues later when it is compared to block_idx because the comparison may not have the desired outcome. To resolve this, the block_idx_end variable is now zero initialized. Change-Id: I0767eeb4dc18ea668e6f14a386b67e4ddb9c654a Signed-off-by:
Mikael Olsson <mikael.olsson@arm.com>
-
- May 20, 2024
-
-
To support both cmsis 5 and 6, certain header files needs to be included according to the version of cmsis specified in the build. This patch adds this support. Signed-off-by:
Rajasekaran Kalidoss <rajasekaran.kalidoss@arm.com> Change-Id: Ic0ff8c88b59994fa35fccfb11138358d364a8772
-
Jonny Svärd authored
Change-Id: Ibadfc37bc127f05939336d267045615d3db12ace Signed-off-by:
Jonny Svärd <jonny.svaerd@arm.com>
-
- Apr 22, 2024
-
-
Jonny Svärd authored
Not all defined scatter file sections will be used by each example application, by design. So to avoid confusion about unused sections in the build output, add L6314W to the list of warnings to be suppressed. Change-Id: I97b21c3e80cc8528a5207c5e3994a862b5548f9e Signed-off-by:
Jonny Svärd <jonny.svaerd@arm.com>
-
Jonny Svärd authored
Override NPU driver weak function prototypes to properly free up resources after use. Change-Id: I4f3141d6106e5feeb1523452ca5fe2dbe66903be Signed-off-by:
Jonny Svärd <jonny.svaerd@arm.com>
-
- Apr 19, 2024
-
-
Mikael authored
The rpmsg struct used in response messages is not zero initialized so later response messages may contain old data. To resolve this, the rpmsg struct is now zero initialized for each new message. Change-Id: I116fa443eca7b6ec3d8817909fd3c59bd69427cb Signed-off-by:
Mikael Olsson <mikael.olsson@arm.com>
-
- Apr 18, 2024
-
-
To make it easier to verify the settings used for a build, additional prints of useful cmake variables has been added to the CmakeLists.txt file. Change-Id: I147144ed9eea07ad2d90e5f7eaa3f665e0220c95 Signed-off-by:
Rajasekaran Kalidoss <rajasekaran.kalidoss@arm.com>
-
- Apr 16, 2024
-
-
Mikael authored
There are instances of class members not being zero initialized in the message handler. To avoid possible issues with using the class members when they have an intermediate value, the constructors have been updated to zero initialize all the member variables. Change-Id: Ib539410a8f1486f8155272731f5cb7006c22ac7a Signed-off-by:
Mikael Olsson <mikael.olsson@arm.com>
-
- Apr 11, 2024
-
-
Jonny Svärd authored
Change-Id: I06e8b74fc586d4affb2e5f57241d4b4ed43d003c Signed-off-by:
Jonny Svärd <jonny.svaerd@arm.com>
-
- Apr 02, 2024
-
-
Mikael authored
The semaphore created in the RProc constructor is never cleaned up. To resolve this, the destructor will now delete the semaphore. Change-Id: Ib641a87129bacf3d7ba097c4e89aa77fa255e2f8 Signed-off-by:
Mikael Olsson <mikael.olsson@arm.com>
-
Mikael authored
The constructor for the Rpmsg class does not zero-initialize its member variables. This causes issues with the remoteproc library because it thinks function pointers in the variables are set to valid functions when they are actually just uninitialized values and using these function pointer causes crashes and unexpected behavior. To resolve this, the Rpmsg class constructor has been changed to zero-initialize all its member variables. Change-Id: Ic34fd52bc39ed3018e5f67474949f10adc8cb7a8 Signed-off-by:
Mikael Olsson <mikael.olsson@arm.com>
-
- Mar 21, 2024
-
-
Mikael authored
The size of the memory used for the message handler's tensor arena will always be rounded up to the next power of two when the Linux kernel allocates it. Therefore, to align the tensor arena size with how the memory is allocated and be able to use the full size allocated, the tensor arena size must now be a power of two. Change-Id: Ib67e77d1ffeb233ad12762a56ddbc20d26c71052 Signed-off-by:
Mikael Olsson <mikael.olsson@arm.com>
-