From 742261012c087285309bba34b081caf1c6c6ddab Mon Sep 17 00:00:00 2001 From: Kristofer Jonsson Date: Wed, 25 May 2022 16:55:24 +0200 Subject: Documenting porting guidelines Change-Id: Icefe078200f9a6a497b410e6c713d80fb9db1ba0 --- docs/cmake_components.png | Bin 0 -> 18842 bytes docs/cmake_components.puml | 29 +++++++++++++++++++ docs/cmake_components.svg | 42 +++++++++++++++++++++++++++ docs/cmake_target_common.png | Bin 0 -> 34461 bytes docs/cmake_target_common.puml | 51 +++++++++++++++++++++++++++++++++ docs/cmake_target_common.svg | 64 ++++++++++++++++++++++++++++++++++++++++++ 6 files changed, 186 insertions(+) create mode 100644 docs/cmake_components.png create mode 100644 docs/cmake_components.puml create mode 100644 docs/cmake_components.svg create mode 100644 docs/cmake_target_common.png create mode 100644 docs/cmake_target_common.puml create mode 100644 docs/cmake_target_common.svg (limited to 'docs') diff --git a/docs/cmake_components.png b/docs/cmake_components.png new file mode 100644 index 0000000..2a509ba Binary files /dev/null and b/docs/cmake_components.png differ diff --git a/docs/cmake_components.puml b/docs/cmake_components.puml new file mode 100644 index 0000000..a13abe1 --- /dev/null +++ b/docs/cmake_components.puml @@ -0,0 +1,29 @@ +@startuml + +skinparam { + BackgroundColor #EEEBDC + DefaultFontColor white +} + +package "demo/targets/" #002B49 { + package "core_platform/targets/common" #0091BD { + package "core_software" #00C1DE { + package "core_driver" #7D868C {} + package "cmsis" #7D868C {} + package "tflite_micro" #7D868C {} + package "rtos" #7D868C {} + } + + package "core_platform/drivers" #00C1DE {} + } + + package "core_platform/applications" #0091BD {} + package "demo/applications" #0091BD {} + package "demo/drivers" #0091BD {} +} + +"core_platform/applications" -[hidden]> "demo/applications" +"core_platform/applications" -[hidden]> "demo/drivers" +"core_platform/targets/common" --[hidden]> "core_platform/applications" + +@enduml diff --git a/docs/cmake_components.svg b/docs/cmake_components.svg new file mode 100644 index 0000000..706b176 --- /dev/null +++ b/docs/cmake_components.svg @@ -0,0 +1,42 @@ +demo/targets/<your target>core_platform/targets/commoncore_softwarecore_drivercmsistflite_micrortoscore_platform/driverscore_platform/applicationsdemo/applicationsdemo/drivers \ No newline at end of file diff --git a/docs/cmake_target_common.png b/docs/cmake_target_common.png new file mode 100644 index 0000000..99f686c Binary files /dev/null and b/docs/cmake_target_common.png differ 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 diff --git a/docs/cmake_target_common.svg b/docs/cmake_target_common.svg new file mode 100644 index 0000000..63bd79c --- /dev/null +++ b/docs/cmake_target_common.svg @@ -0,0 +1,64 @@ +ethosu_target_initethosu_target_startupethosu_target_linkethosu_target_commonLinks drivers and calls targetSetup() to initialize the target.Links CMSIS Device and Core libraries.CMSIS Device provides startup and system files that are used to initializethe CPU, configure CPU extensions and setup the interrupt vector table.CMSIS Core provides an interface to the CPU, for example configuringcaches, systick or interrupt handling.Some RTOSes provide their own startup files. Those applications shouldlink ethosu_target_link instead.Adds scatter file or linker script, describing the memory layout of the target.All applications should depend on this library. It is used to export definitionsfrom the target to the application. \ No newline at end of file -- cgit v1.2.1