blob: 1d9052cdbf41c2d08c3a78a32c0f6021806cec77 [file] [log] [blame]
{#------------------------------------------------------------------------------
# Copyright (c) 2018-2024, Arm Limited and Contributors. All rights reserved.
#
# SPDX-License-Identifier: BSD-3-Clause
#
#-----------------------------------------------------------------------------#}
{% extends 'jinja2_templates/base.jinja2' %}
{% block metadata %}
{{ super() }}
{% endblock %}
{% block base %}
{{ super() }}
{% endblock %}
{% block actions %}
context:
kernel_start_message: ''
actions:
- deploy:
to: fvp
images:
{% for name, img in binaries.items() %}
{{ name }}:
{% if img.application is defined %}
url: {{ data_url_prefix }}/{{ img.application }}
{% else %}
url: {{ data_url_prefix }}/{{ img.data }}
{% endif %}
{% endfor %}
{%- if enable_code_coverage %}
cc:
url: {{ coverage_trace_plugin }}
{%- endif %}
- boot:
failure_retry: 3
method: fvp
docker:
name: {{ docker_prefix }}/fvp:fvp_corstone_sse-300_11.22_20_linux64
local: true
prompts:
- 'root@lava '
image: /opt/model/FVP_Corstone_SSE-300/models/Linux64_GCC-9.3/FVP_Corstone_SSE-300_Ethos-U55
timeout:
minutes: 5
console_string: 'telnetterminal0: Listening for serial connection on port (?P<PORT>\d+)'
license_variable: '{{ license_variable }}'
use_telnet: False
arguments:
- "--simlimit 900"
{% for name, img in binaries.items() %}
{% if img.application is defined %}
- "--application cpu0={{ '{' ~ name.upper() ~ '}' }}"
{% else %}
- "--data cpu0={{ '{' ~ name.upper() ~ '}' }}@{{ img.offset }}"
{% endif %}
{% endfor %}
- "--parameter mps3_board.platform_type=1"
- "--parameter cpu0.INITSVTOR={{ cpu0_initvtor_s }}"
- "--parameter cpu0.semihosting-enable=0"
- "--parameter mps3_board.DISABLE_GATING=0"
- "--parameter mps3_board.telnetterminal0.start_telnet=1"
- "--parameter mps3_board.telnetterminal1.start_telnet=1"
- "--parameter mps3_board.telnetterminal2.start_telnet=1"
- "--parameter mps3_board.telnetterminal0.quiet=0"
- "--parameter mps3_board.telnetterminal1.quiet=0"
- "--parameter mps3_board.telnetterminal2.quiet=0"
- "--parameter mps3_board.uart0.shutdown_on_eot=1"
- "--parameter 'mps3_board.uart0.out_file=-'"
- "--parameter mps3_board.visualisation.disable-visualisation=1"
{%- if enable_code_coverage %}
- "--plugin {CC}"
- "--parameter mps3_board.uart0.shutdown_tag=\x04"
- "--cpulimit 240"
{%- endif %}
prompts:
- '(.*)'
- test:
monitors:
{%- for monitor in monitors %}
- name: "{{monitor.name}}"
start: "{{monitor.start}}"
end: "{{monitor.end}}"
pattern: "{{monitor.pattern}}"
fixupdict:
'{{monitor.fixup.pass}}': pass
'{{monitor.fixup.fail}}': fail
{%- if monitor.fixup.skip %}
'{{monitor.fixup.skip}}': skip
{%- endif %}
{%- endfor %}
{%- if enable_code_coverage %}
- test:
interactive:
- name: fvp_stopped
prompts: ['/OSCI/SystemC: Simulation stopped by user.']
script:
- name: fvp_stopped_1
command:
- name: fvp_trace_end
prompts: ['Trace path: FVP_Corstone_SSE-300_Ethos-U55.cpu1']
script:
- name: fvp_trace_end_1
command:
{%- endif %}
{% endblock %}