Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 1 addition & 4 deletions .github/workflows/Build_Run_FVP_Audio.yml
Original file line number Diff line number Diff line change
Expand Up @@ -118,9 +118,8 @@ jobs:
${{ matrix.context.model }} \
-a ./out/${{matrix.context.proj}}/${{matrix.context.target_type}}/${{matrix.context.build_type}}/${{matrix.context.proj}}.${{matrix.toolchain.ext}} \
-f ./board/${{matrix.context.layer}}/fvp_config.txt \
-C ${{matrix.context.mps}}_board.v_path=./board/${{matrix.context.layer}}/vsi/python/ \
-C ${{matrix.context.mps}}_board.uart0.out_file=${{matrix.context.proj}}_${{matrix.context.build_type}}_${{matrix.context.target_type}}_${{matrix.toolchain.name}}.log \
--simlimit 30
--simlimit 100

- name: Show UART output
working-directory: ./example/FVP_Audio
Expand All @@ -129,8 +128,6 @@ jobs:
cat ${{matrix.context.proj}}_${{matrix.context.build_type}}_${{matrix.context.target_type}}_${{matrix.toolchain.name}}.log

- name: Check UART output
# Disable SSE-320 output check due to known issue with FVP UART output
if: matrix.context.target_type != 'SSE-320'
working-directory: ./example/FVP_Audio
run: |
echo "Check FVP UART output:"
Expand Down
4 changes: 1 addition & 3 deletions .github/workflows/Build_Run_FVP_Hello.yml
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,7 @@ jobs:
-a ./out/${{matrix.context.proj}}/${{matrix.context.target_type}}/${{matrix.context.build_type}}/${{matrix.context.proj}}.${{matrix.toolchain.ext}} \
-f ./board/${{matrix.context.layer}}/fvp_config.txt \
-C ${{matrix.context.mps}}_board.uart0.out_file=${{matrix.context.proj}}_${{matrix.context.build_type}}_${{matrix.context.target_type}}_${{matrix.toolchain.name}}.log \
--simlimit 30
--simlimit 100

- name: Show example output
working-directory: ./example/FVP_Hello
Expand All @@ -107,8 +107,6 @@ jobs:
cat ${{matrix.context.proj}}_${{matrix.context.build_type}}_${{matrix.context.target_type}}_${{matrix.toolchain.name}}.log

- name: Check example output
# Disable SSE-320 output check due to known issue with FVP UART output
if: matrix.context.target_type != 'SSE-320'
working-directory: ./example/FVP_Hello
run: |
echo "Check FVP UART output:"
Expand Down
5 changes: 1 addition & 4 deletions .github/workflows/Build_Run_FVP_Video.yml
Original file line number Diff line number Diff line change
Expand Up @@ -118,9 +118,8 @@ jobs:
${{ matrix.context.model }} \
-a ./out/${{matrix.context.proj}}/${{matrix.context.target_type}}/${{matrix.context.build_type}}/${{matrix.context.proj}}.${{matrix.toolchain.ext}} \
-f ./board/${{matrix.context.layer}}/fvp_config.txt \
-C ${{matrix.context.mps}}_board.v_path=./board/${{matrix.context.layer}}/vsi/python/ \
-C ${{matrix.context.mps}}_board.uart0.out_file=${{matrix.context.proj}}_${{matrix.context.build_type}}_${{matrix.context.target_type}}_${{matrix.toolchain.name}}.log \
--simlimit 30
--simlimit 100

- name: Show UART output
working-directory: ./example/FVP_Video
Expand All @@ -129,8 +128,6 @@ jobs:
cat ${{matrix.context.proj}}_${{matrix.context.build_type}}_${{matrix.context.target_type}}_${{matrix.toolchain.name}}.log

- name: Check UART output
# Disable SSE-320 output check due to known issue with FVP UART output
if: matrix.context.target_type != 'SSE-320'
working-directory: ./example/FVP_Video
run: |
echo "Check FVP UART output:"
Expand Down
20 changes: 10 additions & 10 deletions ARM.AVH_FVP.pdsc
Original file line number Diff line number Diff line change
Expand Up @@ -257,18 +257,18 @@
</examples>

<csolution>
<clayer type="Board" path="board/Corstone-300" file="Board.clayer.yml" copy-to="Board/Corstone-300" condition="Corstone-300"/>
<clayer type="Board" path="board/Corstone-300" file="Board-U55.clayer.yml" copy-to="Board/Corstone-300" condition="Corstone-300"/>
<clayer type="Board" path="board/Corstone-300" file="Board-U65.clayer.yml" copy-to="Board/Corstone-300" condition="Corstone-300"/>
<clayer type="Board" path="board/Corstone-300" file="Board.clayer.yml" copy-to="board/Corstone-300" condition="Corstone-300"/>
<clayer type="Board" path="board/Corstone-300" file="Board-U55.clayer.yml" copy-to="board/Corstone-300" condition="Corstone-300"/>
<clayer type="Board" path="board/Corstone-300" file="Board-U65.clayer.yml" copy-to="board/Corstone-300" condition="Corstone-300"/>

<clayer type="Board" path="board/Corstone-310" file="Board.clayer.yml" copy-to="Board/Corstone-310" condition="Corstone-310"/>
<clayer type="Board" path="board/Corstone-310" file="Board-U55.clayer.yml" copy-to="Board/Corstone-310" condition="Corstone-310"/>
<clayer type="Board" path="board/Corstone-310" file="Board-U65.clayer.yml" copy-to="Board/Corstone-310" condition="Corstone-310"/>
<clayer type="Board" path="board/Corstone-310" file="Board.clayer.yml" copy-to="board/Corstone-310" condition="Corstone-310"/>
<clayer type="Board" path="board/Corstone-310" file="Board-U55.clayer.yml" copy-to="board/Corstone-310" condition="Corstone-310"/>
<clayer type="Board" path="board/Corstone-310" file="Board-U65.clayer.yml" copy-to="board/Corstone-310" condition="Corstone-310"/>

<clayer type="Board" path="board/Corstone-315" file="Board.clayer.yml" copy-to="Board/Corstone-315" condition="Corstone-315"/>
<clayer type="Board" path="board/Corstone-315" file="Board-U65.clayer.yml" copy-to="Board/Corstone-315" condition="Corstone-315"/>
<clayer type="Board" path="board/Corstone-315" file="Board.clayer.yml" copy-to="board/Corstone-315" condition="Corstone-315"/>
<clayer type="Board" path="board/Corstone-315" file="Board-U65.clayer.yml" copy-to="board/Corstone-315" condition="Corstone-315"/>

<clayer type="Board" path="board/Corstone-320" file="Board.clayer.yml" copy-to="Board/Corstone-320" condition="Corstone-320"/>
<clayer type="Board" path="board/Corstone-320" file="Board-U85.clayer.yml" copy-to="Board/Corstone-320" condition="Corstone-320"/>
<clayer type="Board" path="board/Corstone-320" file="Board.clayer.yml" copy-to="board/Corstone-320" condition="Corstone-320"/>
<clayer type="Board" path="board/Corstone-320" file="Board-U85.clayer.yml" copy-to="board/Corstone-320" condition="Corstone-320"/>
</csolution>
</package>
9 changes: 4 additions & 5 deletions board/Corstone-300/Board-U55.clayer.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ layer:

packs:
- pack: ARM::CMSIS
- pack: ARM::CMSIS-Compiler@^2.1.0
- pack: ARM::CMSIS-Compiler@^2.2.0
- pack: ARM::ethos-u-core-driver@^1.25.2
- pack: ARM::AVH_FVP
- pack: ARM::V2M_MPS3_SSE_300_BSP@1.5.0
Expand All @@ -42,9 +42,9 @@ layer:
- component: CMSIS Driver:vStream:VideoOut

- component: CMSIS-Compiler:CORE
- component: CMSIS-Compiler:STDERR:Custom
- component: CMSIS-Compiler:STDIN:Custom
- component: CMSIS-Compiler:STDOUT:Custom
- component: CMSIS-Compiler:STDERR:UART&CMSIS
- component: CMSIS-Compiler:STDIN:UART&CMSIS
- component: CMSIS-Compiler:STDOUT:UART&CMSIS

- component: Device:Definition
- component: Device:Startup&C Startup
Expand All @@ -62,7 +62,6 @@ layer:
- file: ./main.c
- file: ./main.h
- file: ./ethos_setup.c
- file: ./retarget_stdio.c

linker:
- regions: ./regions_SSE-300.h
9 changes: 4 additions & 5 deletions board/Corstone-300/Board-U65.clayer.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ layer:

packs:
- pack: ARM::CMSIS
- pack: ARM::CMSIS-Compiler@^2.1.0
- pack: ARM::CMSIS-Compiler@^2.2.0
- pack: ARM::ethos-u-core-driver@^1.25.2
- pack: ARM::AVH_FVP
- pack: ARM::V2M_MPS3_SSE_300_BSP@1.5.0
Expand All @@ -42,9 +42,9 @@ layer:
- component: CMSIS Driver:vStream:VideoOut

- component: CMSIS-Compiler:CORE
- component: CMSIS-Compiler:STDERR:Custom
- component: CMSIS-Compiler:STDIN:Custom
- component: CMSIS-Compiler:STDOUT:Custom
- component: CMSIS-Compiler:STDERR:UART&CMSIS
- component: CMSIS-Compiler:STDIN:UART&CMSIS
- component: CMSIS-Compiler:STDOUT:UART&CMSIS

- component: Device:Definition
- component: Device:Startup&C Startup
Expand All @@ -62,7 +62,6 @@ layer:
- file: ./main.c
- file: ./main.h
- file: ./ethos_setup.c
- file: ./retarget_stdio.c

linker:
- regions: ./regions_SSE-300.h
9 changes: 4 additions & 5 deletions board/Corstone-300/Board.clayer.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ layer:

packs:
- pack: ARM::CMSIS
- pack: ARM::CMSIS-Compiler@^2.1.0
- pack: ARM::CMSIS-Compiler@^2.2.0
- pack: ARM::AVH_FVP
- pack: ARM::V2M_MPS3_SSE_300_BSP@1.5.0

Expand All @@ -40,9 +40,9 @@ layer:
- component: CMSIS Driver:vStream:VideoOut

- component: CMSIS-Compiler:CORE
- component: CMSIS-Compiler:STDERR:Custom
- component: CMSIS-Compiler:STDIN:Custom
- component: CMSIS-Compiler:STDOUT:Custom
- component: CMSIS-Compiler:STDERR:UART&CMSIS
- component: CMSIS-Compiler:STDIN:UART&CMSIS
- component: CMSIS-Compiler:STDOUT:UART&CMSIS

- component: Device:Definition
- component: Device:Startup&C Startup
Expand All @@ -57,7 +57,6 @@ layer:
files:
- file: ./main.c
- file: ./main.h
- file: ./retarget_stdio.c

linker:
- regions: ./regions_SSE-300.h
59 changes: 59 additions & 0 deletions board/Corstone-300/RTE/CMSIS-Compiler/stderr_cmsis_uart_config.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
/*---------------------------------------------------------------------------
* Copyright (c) 2026 Arm Limited (or its affiliates).
* All rights reserved.
*
* SPDX-License-Identifier: Apache-2.0
*
* Licensed under the Apache License, Version 2.0 (the License); you may
* not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an AS IS BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* --------------------------------------------------------------------------
*
* Purpose: Configure STDERR to CMSIS-Driver USART retarget implementation
* Revision: V1.0.0
*
* --------------------------------------------------------------------------*/

#ifndef STDERR_CMSIS_UART_CONFIG_H_
#define STDERR_CMSIS_UART_CONFIG_H_

//-------- <<< Use Configuration Wizard in Context Menu >>> --------------------
//------ With VS Code: Open Preview for Configuration Wizard -------------------

// <o>UART STDERR Buffer Size
// <i> UART STDERR buffer is used to store STDERR data before sending it via UART
// <i> Default: 0 (unbuffered)
#ifndef STDERR_UART_BUFFER_SIZE
#define STDERR_UART_BUFFER_SIZE 0
#endif

// <s>UART STDERR Buffer Section Name
// <i> Specify the memory section name for UART STDERR buffer
// <i> Default: .stderr_uart_buf
#ifndef STDERR_UART_BUFFER_SECTION
#define STDERR_UART_BUFFER_SECTION ".stderr_uart_buf"
#endif

// <o>UART STDERR Buffer Alignment
// <i> Define the STDERR buffer alignment in bytes
// <i> Default: 32
#ifndef STDERR_UART_BUFFER_ALIGNMENT
#define STDERR_UART_BUFFER_ALIGNMENT 32
#endif

// <q>Convert LF to CRLF
// <i> If enabled, LF characters are preceded by CR characters on output
// <i> Default: 0
#ifndef STDERR_CR_LF
#define STDERR_CR_LF 1
#endif

#endif /* STDERR_CMSIS_UART_CONFIG_H_ */
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
/*---------------------------------------------------------------------------
* Copyright (c) 2026 Arm Limited (or its affiliates).
* All rights reserved.
*
* SPDX-License-Identifier: Apache-2.0
*
* Licensed under the Apache License, Version 2.0 (the License); you may
* not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an AS IS BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* --------------------------------------------------------------------------
*
* Purpose: Configure STDERR to CMSIS-Driver USART retarget implementation
* Revision: V1.0.0
*
* --------------------------------------------------------------------------*/

#ifndef STDERR_CMSIS_UART_CONFIG_H_
#define STDERR_CMSIS_UART_CONFIG_H_

//-------- <<< Use Configuration Wizard in Context Menu >>> --------------------
//------ With VS Code: Open Preview for Configuration Wizard -------------------

// <o>UART STDERR Buffer Size
// <i> UART STDERR buffer is used to store STDERR data before sending it via UART
// <i> Default: 0 (unbuffered)
#ifndef STDERR_UART_BUFFER_SIZE
#define STDERR_UART_BUFFER_SIZE 0
#endif

// <s>UART STDERR Buffer Section Name
// <i> Specify the memory section name for UART STDERR buffer
// <i> Default: .stderr_uart_buf
#ifndef STDERR_UART_BUFFER_SECTION
#define STDERR_UART_BUFFER_SECTION ".stderr_uart_buf"
#endif

// <o>UART STDERR Buffer Alignment
// <i> Define the STDERR buffer alignment in bytes
// <i> Default: 32
#ifndef STDERR_UART_BUFFER_ALIGNMENT
#define STDERR_UART_BUFFER_ALIGNMENT 32
#endif

// <q>Convert LF to CRLF
// <i> If enabled, LF characters are preceded by CR characters on output
// <i> Default: 0
#ifndef STDERR_CR_LF
#define STDERR_CR_LF 0
#endif

#endif /* STDERR_CMSIS_UART_CONFIG_H_ */
59 changes: 59 additions & 0 deletions board/Corstone-300/RTE/CMSIS-Compiler/stdin_cmsis_uart_config.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
/*---------------------------------------------------------------------------
* Copyright (c) 2026 Arm Limited (or its affiliates).
* All rights reserved.
*
* SPDX-License-Identifier: Apache-2.0
*
* Licensed under the Apache License, Version 2.0 (the License); you may
* not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an AS IS BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* --------------------------------------------------------------------------
*
* Purpose: Configure STDIN to CMSIS-Driver USART retarget implementation
* Revision: V1.0.0
*
* --------------------------------------------------------------------------*/

#ifndef STDIN_CMSIS_UART_CONFIG_H_
#define STDIN_CMSIS_UART_CONFIG_H_

//-------- <<< Use Configuration Wizard in Context Menu >>> --------------------
//------ With VS Code: Open Preview for Configuration Wizard -------------------

// <o>UART STDIN Buffer Size
// <i> UART STDIN buffer is used to store STDIN data received via UART
// <i> Default: 64
#ifndef STDIN_UART_BUFFER_SIZE
#define STDIN_UART_BUFFER_SIZE 64
#endif

// <s>UART STDIN Buffer Section Name
// <i> Specify the memory section name for UART STDIN buffer
// <i> Default: .stdin_uart_buf
#ifndef STDIN_UART_BUFFER_SECTION
#define STDIN_UART_BUFFER_SECTION ".stdin_uart_buf"
#endif

// <o>UART STDIN Buffer Alignment
// <i> Define the STDIN buffer alignment in bytes
// <i> Default: 32
#ifndef STDIN_UART_BUFFER_ALIGNMENT
#define STDIN_UART_BUFFER_ALIGNMENT 32
#endif

// <q>Echo Input Characters
// <i> If enabled, received characters are echoed to STDOUT
// <i> Default: 0
#ifndef STDIN_ECHO
#define STDIN_ECHO 0
#endif

#endif /* STDIN_CMSIS_UART_CONFIG_H_ */
Loading