Age | Commit message (Collapse) | Author |
|
Check that getting the network succeeds before parsing the the buffer to
avoid hardfault.
Change-Id: I582412fb0e7459bf45fdb790df2d48401c1a2d0b
|
|
FreeRTOS resets the stack to the running tasks. Move the task parameters
to avoid the parameters to be overwritten.
Change-Id: Ib22b3d49451ea8c97c6faf24bafc8bf0952b38a9
|
|
Change-Id: I1dabf8f675fa47fc9096393a29810fc430e006dc
|
|
There are ABI changes between GCC 6.x and 7.1 that make them
incompatible, but that is not relevant here since all software is
compiled with only one GCC version.
Change-Id: If82f874162404bdedc9c2e93c3a8c7a6d648fde0
|
|
Rely on CMSIS code for initializing Cortex-M85 devices.
Fallback to mcpu=cortex-m55 for gcc until support for cortex-m85 is
available.
Change-Id: I8b47563c3f0f44e35735a569f2abf8a308948e67
|
|
The Python requirement has been relaxed to 3.7+.
Change-Id: Ibee4a31af0b5a458163cfcd428d8ca0b8018e79e
|
|
Also override new/delete operators to call in FreeRTOS malloc/free in
the freeRTOS example app.
Change-Id: I08c0780c907e5fe90ccb1679869d3f41c87c2731
|
|
Add documentation about how base addresses are used by the driver
unit tests.
Update message handler application to use TENSOR_ARENA_SIZE the
same way as the FreeRTOS application.
Add documenation about Corstone-310.
Change-Id: I08a315b95ca757ce3449cb7af104b8f1ac7f8865
|
|
Removing target files for Corstone-Polaris. This target has been
replaced by Corstone-310.
Change-Id: Iecc13648859214bcfe74fbd4bd20b547359d162a
|
|
If an enqueued inference is cancelled it is simply removed from the
queue. Both a cancel inference response with status done and a
inference response with status cancelled are sent back.
Also override the new operators to call in the FreeRTOS allocator
instead of malloc/free.
Change-Id: I243e678aa6b996084c9b9be1d1b00ffcecc75bc9
|
|
Divide by 4 the length in bytes to get length in words as expected by
the CMSIS scatter loading implementation.
Change-Id: I5d239e13739a578bd61dc0b594e3453e8dcdab4d
|
|
Change-Id: I3b58425cf502a1f5b66fc798337f0b76358790f1
|
|
Infransctrure work to being able to send back and forth requests and
responses for inference cancellations. The implementation is stubbed
to always fail in this commit.
Change-Id: Id7848930b81a3f38fe6c05323ccca2edd6b5b5bf
|
|
Changed mutex lock/unlock and semaphore take/give functions to return
an int value instead of void. In addition changed FreeRTOS and
message_handler applications (also FreeRTOS-based) to ignore failure
of xSemaphoreGive on binary semaphores, as it does not affect the
correctness of such applications.
Change-Id: I023c62dc8971488107679f6dd7a5967dec0380a8
|
|
Remove output queue and associated blocking calls. Instead write
directly in the mailbox ring buffer.
If inference queue is full do not block, instead bail out immeditely
and send back a message with rejected status.
Change-Id: Id08a39792791fe383f8c01bf28b07a293a49e9b0
|
|
Change-Id: Ic21cc7690b1533f2db849a73ac25a7976bf02d1f
|
|
Change-Id: Idcb2238895668ee4858c2e858c02c6765f4b1702
|
|
Change-Id: Iae5733efb40a8fd11e7108e93cc719f67b4f1be3
|
|
Change-Id: I2753434badec7c5af2c19a2b32e5e808131ba519
|
|
Otherwise the core_driver won't wait for the actual interrupt
signaling inference completed and exit immediately.
Change-Id: Ibb413d19701f9add4fd8c16137dbe59de5868ea9
|
|
Interrups must be enabled after the Incoming Message Handler has been
initialized, else we might loose interrupts that were enabled before
the firmware booted up.
Change-Id: I3c18c7ff4585329b54b18f7556757b2b3e8fbc35
|
|
Change-Id: I1ae0b1fa6d3c559afd10772778c16002ae93cc63
|
|
Add message for fetching meta data about built in network models.
Change-Id: I757094c20848d4cb018db68b0455297bb03be463
|
|
Support building a network model into the firmware binary. The model
can be placed by a scatter file or linker script in for example a
low lateny high bandwidth memory like SRAM.
Change-Id: Ic742abed65e20f0da4ded7adefb039389b68b767
|
|
Make sure that BRAM data is stored with correct aligment in DDR.
The BRAM data is copied from DDR by the .copy.table and if alignment
is not correct the BRAM data will be corrupt.
Change-Id: I0e8cd9d1ebdc9e8428ddcc9c842411ca40724740
|
|
Change-Id: I4c7ee5ff5ceb9c6ef2c5c8498bebe41b06e08290
|
|
This is needed in order to for example turn tarmac tracing on for the
FVP running the tests.
Change-Id: I6606134046c2e228d3fe06db41792e7403cd6ba8
|
|
Change-Id: Id765ba9adf9a2d134cc6cc0c04f9e6d7dada3657
|
|
Some networks have very big OFM which will completely fill the output
buffer and hide more important information. The OFM is already saved as
a file and does not need to be included in the output.
Change-Id: I4174fd799ba2f31f187d5bf2718a92a19ecee5c1
|
|
Clarify that Python 3.8+ is a requirement
Change-Id: I5fbfdc2e72e7cc75cae992ff2c9d308380838594
|
|
Change-Id: I57fed2a1b49a61822617b43a201a3125f566fd16
|
|
Change-Id: I3f2f6732f8850e76971fad55035d829286d90a99
|
|
Change-Id: I18db0d2534882a75307b8af8dc572a91681b81e6
|
|
Restore print format for PMU output.
Use begin and end events to enable the PMU cycle counter.
Change-Id: Iaf2d9b78b031f34c0cde0296b4248dea38f19860
|
|
Replace "master" word in the context of AXI protocol, with the
recommended word "manager".
Change-Id: If594db7ae96b3ad07afd156a8d788846f9bdb34d
|
|
Update message handler application to output PMU counters to the log.
Change-Id: Ib6002e7c0035d6736b58eed61a059553083348ce
|
|
Update sample applications to use an external context for the PMU
configuration. The external context stored in the InferenceJob will
be set as TFLu external context and will be returned in the
ethosu_inference_begin() and ethosu_inference_end() callbacks.
Change-Id: Ief1f0943e322c2b50e8b964017af59161f67de6b
|
|
Corstone-Polaris is the upcoming Corstone-3xx platform featuring
the Cortex-Olympus CPU.
Change-Id: I17b56b6e94f040e7f9a39dddad2e98309c82b294
|
|
Move finding Python after the project command. This was causing
incremental CMake configurations to fail.
Moving ETHOSU_TARGET_* variables after adding the common subdirectory.
It is necessary to set the variables before the core driver is
included.
Change-Id: I1c6883061cb9247336f8b33d82d2e2de870634fa
|
|
Updating the minimum required CMake version fixes
toolchain warnings for Arm Clang.
Change-Id: I8f7371136739f6beb758d03cc76c2df17180f07c
|
|
The size of the BRAM has changed, and thus change the split between
secure and nonsecure, and the NSC region placement.
Change-Id: I1f267049dbde76bdb17c800b95f36da704442042
|
|
Increasing stack size for threads in ThreadX
Change-Id: Ied7502422034a9fb1ac92aa5ebaa70b9d0bc9939
|
|
The timing adapters are attached to the Ethos-U AXI ports and should
only be initialized if the platform has been built with NPU support.
Add priority to init the constructor, insuring it will run before
any other constructor. This is important because the init constructor
sets up UART.
Change-Id: I189687437b95b11f6503c7631720e7883c24ada6
|
|
from drivers
Add mpu driver for upstreaming
After removing of interface library,targets and applications
will list explicitly which libraries to link
Change-Id: Icfa449a2981093161f283e45b4d52ca6199371b8
|
|
Adjusting toolchain files which compiler warnings to enable.
Fixing compiler warnings reported by Arm Clang and Arm GCC.
Change-Id: I715e875904ffd7ecfe994d3093cdf066373981b1
|
|
Exclude ThreadX application if the NPU driver was not compiled into
the project.
Change-Id: I036443b4c2bb276152acb7ec3267580a06d2d901
|
|
The name of the Python 3 interpreter is ambiguous. 'python3' is not
available on all systems and 'python' can be both a Python 2 and
Python 3 interpreter.
Change-Id: I4ea119c617d1746fd34ecdd118a7c25dfe17dc86
|
|
Exclude applications that depend on the NPU, if the NPU driver
library was not compiled by the project.
Change-Id: I3fcb570cf155d589a9576266332ba519a11186f1
|
|
Change-Id: Icd870cad2917480a01d5f79897931c1effc66546
|
|
The -Ofast optimization level does not seem to be fully supported
by C99, resulting in lower performance for CMSIS-NN optimized
kernels. Updating the C standard to version 11 solves this.
Change-Id: I81275f50d394de95186b7e35b0ec15d3cc3940ae
|