aboutsummaryrefslogtreecommitdiff
path: root/docs/cmake_target_common.puml
diff options
context:
space:
mode:
authorKristofer Jonsson <kristofer.jonsson@arm.com>2022-05-25 16:55:24 +0200
committerKristofer Jonsson <kristofer.jonsson@arm.com>2022-06-13 15:30:33 +0200
commit742261012c087285309bba34b081caf1c6c6ddab (patch)
treef69476623f504ef3d1e0a511ff5d92149d04e6be /docs/cmake_target_common.puml
parent144b2d2d735d5b2e25894bdeacef7e03761025ad (diff)
downloadethos-u-core-platform-742261012c087285309bba34b081caf1c6c6ddab.tar.gz
Documenting porting guidelines
Change-Id: Icefe078200f9a6a497b410e6c713d80fb9db1ba0
Diffstat (limited to 'docs/cmake_target_common.puml')
-rw-r--r--docs/cmake_target_common.puml51
1 files changed, 51 insertions, 0 deletions
diff --git a/docs/cmake_target_common.puml b/docs/cmake_target_common.puml
new file mode 100644
index 0000000..c91b9c8
--- /dev/null
+++ b/docs/cmake_target_common.puml
@@ -0,0 +1,51 @@
+@startuml
+
+skinparam {
+ BackgroundColor #EEEBDC
+ DefaultFontColor black
+}
+
+skinparam component {
+ BackgroundColor #0091BD
+ BorderColor black
+ ArrowColor black
+}
+
+skinparam note {
+ BackgroundColor #00C1DE
+ BorderColor black
+}
+
+[ethosu_target_init] --> [ethosu_target_startup]
+
+[ethosu_target_startup] --> [ethosu_target_link]
+
+[ethosu_target_link] --> [ethosu_target_common]
+
+note right of ethosu_target_init
+ Links drivers and calls targetSetup() to initialize the target.
+end note
+
+note right of ethosu_target_startup
+ Links CMSIS Device and Core libraries.
+
+ CMSIS Device provides startup and system files that are used to initialize
+ the CPU, configure CPU extensions and setup the interrupt vector table.
+
+ CMSIS Core provides an interface to the CPU, for example configuring
+ caches, systick or interrupt handling.
+
+ Some RTOSes provide their own startup files. Those applications should
+ link ethosu_target_link instead.
+end note
+
+note right of ethosu_target_link
+ Adds scatter file or linker script, describing the memory layout of the target.
+end note
+
+note right of ethosu_target_common
+ All applications should depend on this library. It is used to export definitions
+ from the target to the application.
+end note
+
+@enduml