Age | Commit message (Collapse) | Author |
|
For projects wrapping ml-embedded-eval-kit, this helper module file
makes it easier to import some top level variables and to call into
functions exposed by utility scripts as part of their env setup.
Change-Id: I1cf8d2513776d653590871dc791c68349a38a884
Signed-off-by: Kshitij Sisodia <kshitij.sisodia@arm.com>
|
|
Refactoring for CMake configuration options to allow target platform
to drive their own defaults for certain dependent options.
For example, the MPS3 target platform defaults to SSE-300 sub-system
while native target doesn't need to worry about sub-system and CMSIS
options which it will never use. This allows MPS4 target to default
to SSE-315 and set the NPU arch to Arm Ethos-U65 as it should, which
otherwise would have had to be explictly specified by the user.
A welcome by-product of this is also that the options summary at the
end of a successful CMake configuration stage would only include the
settings that are actually used by the given target.
Change-Id: Ibb7f8233d427cd33f39eeb4c71d88193aa998ebd
Signed-off-by: Kshitij Sisodia <kshitij.sisodia@arm.com>
Tested-by: mlecosys <mlecosys@arm.com>
Reviewed-by: Alex Tawse <alex.tawse@arm.com>
Reviewed-by: Conor Kennedy <conor.kennedy@arm.com>
Signed-off-by: Kshitij Sisodia <kshitij.sisodia@arm.com>
|
|
This patch adds initial support for MPS4 based Arm Corstone-315 FVPs.
The applications will execute on the FVP but with INITSVTOR set to
`0x12000000` explicitly. The default value is the 64kiB code region
at `0x11000000`. The linker scripts will be changed for the initial
boot logic and vector table to be moved to the code region.
This patch adds `source/hal/source/platform/mps4` directory. There is
considerable overlap with MPS3 platform and this is expected to be the
case until the support for MPS4 matures. Refactoring to pull in
common bits from these targets will follow. Same goes for the CMake
build support added under `scripts/cmake/platforms/mps4`.
Change-Id: I981be9e1ec57cfedcf7d340b4f19e5eb40b5cbd3
Signed-off-by: Kshitij Sisodia <kshitij.sisodia@arm.com>
Tested-by: mlecosys <mlecosys@arm.com>
Reviewed-by: Conor Kennedy <conor.kennedy@arm.com>
Reviewed-by: Alex Tawse <alex.tawse@arm.com>
Signed-off-by: Kshitij Sisodia <kshitij.sisodia@arm.com>
|
|
Stray header file for MPS3 platform left over from refactoring in
commit c22e80 has been removed.
Change-Id: I197756e7183654fff0b0c97e7647ab72b62d96f9
Signed-off-by: Kshitij Sisodia <kshitij.sisodia@arm.com>
|
|
Correction for misprint in AN547 application note which proliferated to
AN552. There are only 3 DMA interfaces.
Signed-off-by: Liam Barry <liam.barry@arm.com>
Change-Id: I53dab9cbc41f80d7a2818ce6c5b8372ecbdfbd1a
|
|
The NPU timing adapter base addresses had been defined in mutiple
places, making it difficult to determine which one is actually being
used. This patch cleans up unused definitions from memory-map header
files for different targets and the CMake template files.
The expectation is for component base addresses to be set by platform
specific CMake files that include/wrap the component directories.
Change-Id: Ic39794ffbdb872b4b0c900cbcec8e386bb32c4eb
Signed-off-by: Kshitij Sisodia <kshitij.sisodia@arm.com>
|
|
Signed-off-by: Richard Burton <richard.burton@arm.com>
Change-Id: I087e23f43b41fa0ef97ec7dcaeba807f6cba17e7
|
|
- Image.Resampling.BILINEAR replace deprecated Image.BILINEAR
- Trivial documentation fixes
Change-Id: Ia75af2d2bf171085d4a0a2c472f0e3f94dbdc5b9
Signed-off-by: Isabella Gottardi <isabella.gottardi@arm.com>
|
|
Updating dependency submodules to 23.02 versions.
See https://review.mlplatform.org/plugins/gitiles/ml/ethos-u/ethos-u/+/refs/tags/23.02/23.02.json
Change-Id: If0e396decadc1b4e3c6b263c65f75ccf0dafed28
Signed-off-by: Kshitij Sisodia <kshitij.sisodia@arm.com>
|
|
* Update various files to use inclusive language
Signed-off-by: Conor Kennedy <conor.kennedy@arm.com>
Change-Id: I538f61a400e1d58acb6397bb5e2ba3d912196314
|
|
Added documentation around known issue with Arm GNU toolchain
version 12.2.1. Minor change for MLECO-3731 also included.
Link-time warnings for Arm GNU toolchain 11.3.1 also fixed.
Change-Id: Ia8215e9f71327eeb59868aea91729d7b19dd6d34
Signed-off-by: Kshitij Sisodia <kshitij.sisodia@arm.com>
|
|
The NPU idle count could have been erraneously high as
the counters were always running. This change utilises
callback functions to start/stop the counters only when
the inferences start/stop executing on the NPU.
Changes have been made to cache maintenance functions
called from within the NPU driver's pipeline to reduce
the overhead caused by these.
Change-Id: I69db0d3b3f3fe5b2847e15b5c3096cb1e0484176
Signed-off-by: Kshitij Sisodia <kshitij.sisodia@arm.com>
|
|
Change-Id: I0f057b33993e5196a60e52f4fb0c60e09693dcfe
|
|
Small fix for the issue of weakly defined "clean" and
"invalidation" functions for D-cache in use.
Change-Id: I452768ef216393834f20395a56cde6ff5f52d29a
Signed-off-by: Kshitij Sisodia <kshitij.sisodia@arm.com>
|
|
Minor update to retarget.c for system function `tmpnam`.
Change-Id: I08cced273e517d00644167f8f5520b09f3c9d10c
Signed-off-by: Kshitij Sisodia <kshitij.sisodia@arm.com>
|
|
Documentation md files added under source tree with links to
the main docs. Minor updates to FAQs for MLECO-3251 as well.
Change-Id: Ifdcc587f2fcf77228fd46e211d3f9c3963bc9b97
Signed-off-by: Kshitij Sisodia <kshitij.sisodia@arm.com>
|
|
Documentation updates around use of Arm® Corstone™-310 AVH, especially
in terms of use of timing adapters (TA). Also, use of TA's is forced
off for SSE-310 subsystem's CMake configuration.
Signed-off-by: Kshitij Sisodia <kshitij.sisodia@arm.com>
Signed-off-by: Maksims Svecovs <maksims.svecovs@arm.com>
Change-Id: I66a87060d8d47ce2580aa15f3908be20162eab54
|
|
Signed-off-by: Eanna O Cathain <eanna.ocathain@arm.com>
Change-Id: Ia0d349ea0014ee10f275731f3c1de4f9287839e1
|
|
Both supported implementation on MPS3 (Arm Corstone-300 and
Arm Corstone-310) will now have caches enabled.
Also including a minor change left over from refactoring of
code for HAL components.
Change-Id: Ie5768cd26eef9083a817bca7c87ff691dae67fca
|
|
MPS3 clock is logged in the output, removing the
warning as profiling would be impacted by this
additional logging over UART.
Change-Id: I1f941a75752bed0c871240aee664f8191916ab1d
|
|
Added a Dockerfile to setup and install requirements for
the ml-embedded-evaluation-kit repository.
Also included minor change (MLCE-859) for NPU components'
source file.
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com>
Change-Id: I621fb2991218a451a0e8c33e14032b9c9e36709e
|
|
* CMake version requirement bumped up to 3.21.0
* CMake 3.22.4 installed in the local Python virtualenv
* CPU flags updated in toolchain files.
* Using __ARM_FEATURE_DSP instead of potentially defining
ARM_MATH_DSP wrongly.
* CMake project version bumped up to 22.05.0
Changes also made for MLECO-3107 (pack generation):
* TensorFlow Lite Micro CMSIS-pack version updated to
1.22.02.
* Change to using __ARM_FEATURE_DSP will also help the
generated pack.
Partial changes for MLECO-3095:
* CMSIS updated to version post 5.9.0
* TensorFlow Lite Micro updated to latest available
* Ethos-U driver and core-platform repositories updated
to 20.05_rc2 tags.
Change-Id: I012c9e65897aed8ce589cff9bfe3a19efc3edeb9
Signed-off-by: Kshitij Sisodia <kshitij.sisodia@arm.com>
|
|
Change-Id: Ifa4b11154478355c10cb3e747b9938a74afd242b
Signed-off-by: Eanna O Cathain <eanna.ocathain@arm.com>
|
|
Certain UCs required additional work due to case context variables which also
became part of a namespace in generated files.
Solution was to declare these extra variables as part of the UC namespace in the respective model.hpp files.
Additional changes to standardise use of namespaces may be required - proposing new task.
Minor typo and rewording of customizing.md in relevant sections included.
Signed-off-by: Liam Barry <liam.barry@arm.com>
Change-Id: Ie78f82a30be252cb841136ea5115f21fc8d762cb
|
|
Platform agnostic application sources are moved into application
api module with their own independent CMake projects.
Changes for MLECO-3080 also included - they create CMake projects
individial API's (again, platform agnostic) that dependent on the
common logic. The API for KWS_API "joint" API has been removed and
now the use case relies on individual KWS, and ASR API libraries.
Change-Id: I1f7748dc767abb3904634a04e0991b74ac7b756d
Signed-off-by: Kshitij Sisodia <kshitij.sisodia@arm.com>
|
|
Changes to fix "Pillow not found" warnings from TensorFlow
Lite Micro build.
Change-Id: I42a9b3f6df746ac3e34585e0c79ffdf35da97aef
Signed-off-by: Kshitij Sisodia <kshitij.sisodia@arm.com>
|
|
Ensuring individual HAL projects can be configured without the
need to be wrapped. Tests can now be added to build individual
components and check for any unintended dependencies creeping
in.
Change-Id: I057699c3c3cc0fc280615db30a25fbe4c28ae8ea
Signed-off-by: Kshitij Sisodia <kshitij.sisodia@arm.com>
|
|
Cleaning up HAL sources by removing unnecessary redirections
with function pointers. The "platform packages" under HAL are
now streamlined enough to not need any major HAL wrapping (as
was the case before).
This allows us to have a very thin HAL layer that sits on top
of the platform and compnent packs. Also helps in getting rid
of "hal platform" pointer being passed around in the code to
use any HAL functionality.
Change-Id: I04b2057f972aad7a5cfb4a396bcdf147c9f9ef1c
Signed-off-by: Kshitij Sisodia <kshitij.sisodia@arm.com>
|
|
Further to the HAL refactoring done in previous commits,
this CR simpifies HAL by removing data_acq and data_psn
"modules". The associated function pointers have been
removed.
Change-Id: I04c194c08dfe0aff98ce4e0f0f056bac254c137d
Signed-off-by: Kshitij Sisodia <kshitij.sisodia@arm.com>
|
|
Attempting to have timer functionality contained within
the platform drivers "package" as it should (in line with
the refactoring work done so far under HAL). This will
ensure that we don't need two timer implementations under
HAL "profiles" and therefore, this whole directory can be
removed.
This change also addressed issue with the applicatio level
Profiler code knowing about how the PMU has been set up by
the platform code. This link has been removed completely.
This will make it much easier to add/amend the Ethos-U PMU
event counters types and give each platform the capability
of populating their relvant counters. The application level
Profiler doesn't know which metrics it is displaying but
just calculates and maintains statistics for whatever PMU
counters it receives from the HAL level.
A fix for timing adapter issue introduced in the last CR
is also included.
Change-Id: Ia46e03a06e7b8e42b9ed2ba8f2af2dcd2229c110
Signed-off-by: Kshitij Sisodia <kshitij.sisodia@arm.com>
|
|
Moving away from CMake description of targets and generation of
platform header files (for memory addresses and IRQ numbers).
Instead these headers are part of the repository under their
respective platform-driver packages under HAL sources.
Change-Id: I9bd3e68eb17385f8b93eb3d8d76b212ce0e1a6d5
Signed-off-by: Kshitij Sisodia <kshitij.sisodia@arm.com>
|
|
Dcoumentation updates in line with recent refactoring and some
minor update to the HAL's NPU component.
Change-Id: Iadb34dbcdedf7259f786c42bd8fcf2d950a51410
Signed-off-by: Kshitij Sisodia <kshitij.sisodia@arm.com>
|
|
Change-Id: Ib42829b61e840a47086898d6f8941f0e92f2f8fe
Signed-off-by: Isabella Gottardi <isabella.gottardi@arm.com>
|
|
* LCD module component created (removed from individual
platform packs).
* retarget.c moved out into its own component that wraps
the uart module. It also have the native stub for
GetLine => paved the way for removing data_acq module
from profiles.
* shortened names for components' dir for npu and ta
* remove peripheral_memmap and peripheral_irqs headers
from platform_drivers.h. There should be no need for
these to be included in the top level now. These should
be private headers.
* cmsis_device moved in as a component.
* Pyenv created by set_up_default_resource.py will also
install packages that CMake's source generator needs.
TODO's:
* Remove timer from profiles (MLECO-3096)
Change-Id: I9d6ea2f4f291788f40a16ed507019563c8d7f205
|
|
* Add missing CMake setting used for building driver
Signed-off-by: Richard Burton <richard.burton@arm.com>
Change-Id: I2aae67d6780f88e661f9a54177943553b0f0dd4c
|
|
* Use UART component from Ethos-U core-platform
* Components as cmake project
Change-Id: I053f3a59800abc20216e6a4df8555db357e3f21d
Signed-off-by: Isabella Gottardi <isabella.gottardi@arm.com>
|
|
Change-Id: Ie33c564e877dd27eb3b6d9fe22226dde3eb25323
|
|
Revived & renamed irqs.c as handlers.c
Removed reset handler and associated functions
Switched to including it as a PUBLIC source
Change-Id: Iccbd7061efcf9a1cfa9fac0fdbc2ab073d9f6150
Signed-off-by: Liam Barry <liam.barry@arm.com>
|
|
Removing git as a requirement for the checks performed for downloaded
resources. Another minor change is renaming of RTE_components.h to
RTE_Components.h as per the convention.
Change-Id: If93f80f2f5dfa6a3f143259904c33b3b6d3a6e7c
Signed-off-by: Kshitij Sisodia <kshitij.sisodia@arm.com>
|
|
Adding basic support to allow applications to build with semihosting
support. Default state is always disabled.
Signed-off-by: Kshitij Sisodia <kshitij.sisodia@arm.com>
Change-Id: I1d34c3a246560aaffcb34eee801e1a87d887d559
|
|
MLECO-2949: Platform drivers should own NPU and TA init
Change-Id: I13606a0197f137816bae803eb9d7d46c358b5fb8
Signed-off-by: Isabella Gottardi <isabella.gottardi@arm.com>
|
|
* RTE_components header to include corresponding Arm Cortex-M system header
* remove custom CMSIS implementation from repo
* use templates within CMSIS repo instead
* update cmake to use header and source files within CMSIS repo
Change-Id: I3534dae97b93c07a5056471b1d1dedbc78f00aa7
|
|
Reducing dependency on cmsis-device sources as these will
be removed under MLECO-2944. Also, starting to refactor
to allow HAL to drop NPU and TA init routines - this will
happen in future CRs.
Added platform driver for native, and subsequent patches
will attempt to get rid of the HAL "profile" specific
sources and allow platform stub implementations at a level
below HAL. This will allow platforms drivers to only
override the range of functions that they actually want to
implement and will fall back on stubs for the rest. In this
CR only "utils" have been removed.
Change-Id: I09b4a28e20847a07a956c818c6f47c74aab89063
|
|
* No longer copy the source image
* Boxes are drawn directly to LCD rather than on source image
* Change c style casts to static casts
Signed-off-by: Richard Burton <richard.burton@arm.com>
Change-Id: Ib8e926cb1a87bc2c40424eb5aace40170c526f1d
|
|
And further optimisations of extendability for platform build
steps. Added a list for excluded use-cases.
Change-Id: I5a9398bbeb595a5bf2ea39b81623e4f20238f948
Signed-off-by: alexander <alexander.efremov@arm.com>
|
|
MLECO-2930: logging macros were extracted from hal.h and used separately around the code.
MLECO-2931: arm_math lib introduced, cmsis-dsp removed from top level linkage.
MLECO-2915: platform related post-build steps.
Change-Id: Id718884e22f262a5c070ded3f3f5d4b048820147
Signed-off-by: alexander <alexander.efremov@arm.com>
|