Skip to content

Commit 6d547c1

Browse files
authored
Merge Docu-2.12 in to main branch (#443)
## Changes Documentation CMSIS-Toolbox update for version 2.12.0 ## Checklist <!-- Put an `x` in the boxes. All tasks must be completed and boxes checked before merging. --> - [x] 🤖 This change is covered by unit tests (if applicable). - [x] 🤹 Manual testing has been performed (if necessary). - [x] 🛡️ Security impacts have been considered (if relevant). - [x] 📖 Documentation updates are complete (if required). - [x] 🧠 Third-party dependencies and TPIP updated (if required). --------- authored-by: Reinhard Keil <ReinhardKeil@users.noreply.github.com>
1 parent a9ff265 commit 6d547c1

12 files changed

+528
-58
lines changed

docs/ReferenceApplications.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -572,7 +572,7 @@ Refer to [Header File Structure](#header-file-structure) for more information.
572572
573573
#include "stm32u5xx_hal.h"
574574
#include "GPIO_STM32U5xx.h"
575-
#include "Driver_I2C.h" // ToDo are these headers included in CMSIS_target_header?
575+
#include "Driver_I2C.h"
576576
#include "Driver_SPI.h"
577577
#include "Driver_USART.h"
578578

docs/Troubleshooting.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -124,6 +124,9 @@ project:
124124

125125
When a `type: hex` file is generated for AC6, the CMSIS-Toolbox configures this file in the `*.cbuild-run.yml` file with `load: image` and the `type: elf` file with `load: symbols`. This bypasses the GDB loader issue.
126126

127+
!!! Note
128+
The HEX file should be generated using the Arm Compiler 6 `fromelf` tool during the build process of the application. Using a HEX conversation tool for a different toolchain may generate unpredictable results.
129+
127130
## Layer Search Fails
128131

129132
The `cbuild setup` command does not find compatible layers.

docs/YML-CBuild-Format.md

Lines changed: 34 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ A typical directory structure of a `csolution` based application that uses commo
5252
┣ ┣ 📂 mypro2\Target\Debug
5353
┣ ┣ ┣ mypro2.cbuild.Debug+Target.yml # file references are relative to directory out\mypro2\Target\Debug
5454

55-
```
55+
```
5656

5757
## Lock Pack Versions
5858

@@ -121,7 +121,7 @@ The `<solution-name>.cbuild-idx.yml` file is generated for the *csolution projec
121121
&nbsp;&nbsp;&nbsp; `csolution:` | Relative path and name of the [`*.csolution.yml`](YML-Input-Format.md#solution) input file used to generate this application.
122122
&nbsp;&nbsp;&nbsp; [`configurations:`](#configurations) | For reference applications with undefined layers: list of potential project configurations for a reference application with undefined layers
123123
&nbsp;&nbsp;&nbsp; [`cprojects:`](#cprojects) | List of `*.cproject.yml` and `*.clayer.yml` input files used to generate this application.
124-
&nbsp;&nbsp;&nbsp; [`cbuilds:`](#cbuilds) | List of `*.cbuild.yml` output files that are generated for this application.
124+
&nbsp;&nbsp;&nbsp; [`cbuilds:`](#cbuilds) | List of `*.cbuild.yml` output files that are generated by `*.cproject.yml` files for this application.
125125
&nbsp;&nbsp;&nbsp; [`select-compiler:`](#select-compiler) | For projects with unspecified compiler: list of available compilers for selection
126126

127127
**Example:**
@@ -152,6 +152,11 @@ build-idx:
152152
- cbuild: out/MassStorage/B-U585I-IOT02A/Release/MassStorage.Release+B-U585I-IOT02A.cbuild.yml
153153
project: MassStorage
154154
configuration: .Release+B-U585I-IOT02A
155+
- cbuild: out/hello_world/B-U585I-IOT02A/Release/hello_world.Release+B-U585I-IOT02A.cbuild.yml
156+
west: true
157+
project: hello_world
158+
configuration: .Release+B-U585I-IOT02A
159+
155160
errors: true # indicates error
156161
packs-missing: # lists missing packs
157162
- pack: ARM::CMSIS-RTX # with unspecified version
@@ -637,6 +642,30 @@ Each different license that is used in a project context has a separate section.
637642
:
638643
```
639644

645+
#### `west:`
646+
647+
For each west build context a node `west:` is created in *.cbuild.yml
648+
649+
`west:` | | Content
650+
:---------------------------------------------------------|:-------------|:------------------------------------
651+
&nbsp;&nbsp;&nbsp; `app-path:` | **Required** | Path to the application source directory.
652+
&nbsp;&nbsp;&nbsp; `project-id:` | **Required** | Project identifier
653+
&nbsp;&nbsp;&nbsp; `board:` | **Required** | Board name used for west build invocation.
654+
&nbsp;&nbsp;&nbsp; `device:` | Optional | Specify the processor core for execution of the generated image (used in `*.cbuild-run.yml`).
655+
&nbsp;&nbsp;&nbsp; `west-defs:` | Optional | Defines in `CMake` format. The `west-defs:` from build and target-type are added.
656+
&nbsp;&nbsp;&nbsp; `west-opt:` | Optional | Options for the `west` tool (default: empty).
657+
658+
**Example:**
659+
660+
```yml
661+
west:
662+
project-id: hello_world
663+
app-path: ../../../../hello_world
664+
board: stm32h7b3i_dk
665+
west-defs:
666+
- CONFIG_BUILD_OUTPUT_HEX=y
667+
```
668+
640669
## Generator Information Files
641670

642671
The `csolution run` command generates the following build information files in the [`intdir:`](YML-Input-Format.md#output-dirs) of the related `context`. These files are the input to a generator and provide information about the *csolution project* to the generator. The files are generated in the [`tmp` directory](build-overview.md#output-directory-structure) of the project and contain absolute paths.
@@ -710,7 +739,7 @@ The `*.cgen.yml` file lists the generated *csolution project* part and starts wi
710739

711740
## Run and Debug Management
712741

713-
The CMSIS-Toolbox build system manages software packs that contain information about device, board, and software components. It controls the build output (typically ELF/DWARF files), and has provisions for HEX, BIN and post-processing. The [`target-set:`](build-overview.md#run-and-debug-configuration) node configures the application images and the debugger for a [target-type](build-overview.md#project-setup-for-related-projects).
742+
The CMSIS-Toolbox build system manages software packs that contain information about device, board, and software components. It controls the build output (typically ELF/DWARF files), and has provisions for HEX, BIN and post-processing. The [`target-set:`](build-overview.md#run-and-debug-configuration) node configures the application images and the debugger for a [target-type](build-overview.md#configure-related-projects).
714743

715744
The software packs contain information that is the basis for debug and run settings:
716745

@@ -810,8 +839,8 @@ The following describes the overall structure of the `*.cbuild-run.yml` file. W
810839

811840
#### `output:`
812841

813-
This node contains information about the images that should be loaded. The images that are generated by the *csolution project* are typically configured [using a context set](build-overview.md#working-with-context-set).
814-
Use the [`images:`](YML-Input-Format.md#images) node in the `*.csolution.yml` file to add other output files.
842+
This node contains information about the images that should be loaded. The images that are generated by the *csolution project* are typically configured [using a target-set](build-overview.md#working-with-target-set). The `output:` node includes also image files that are generated with a [West Build](YML-Input-Format.md#west-build) specification.
843+
The `output:` node also contains other required files that are added with [`images:`](YML-Input-Format.md#images) in the `*.csolution.yml` file.
815844

816845
`output:` | | Content
817846
:---------------------------------------------------------|-------------|:------------------------------------

0 commit comments

Comments
 (0)