blob: e38b39a1065b49be2c1881e950dd719f6038801d [file] [log] [blame]
Dean Bircha6ede7e2020-03-13 14:00:33 +00001{#------------------------------------------------------------------------------
Gergely Korcsákac2d0f02024-05-28 08:23:04 +02002# Copyright (c) 2018-2024, Arm Limited and Contributors. All rights reserved.
Dean Bircha6ede7e2020-03-13 14:00:33 +00003#
4# SPDX-License-Identifier: BSD-3-Clause
5#
6#-----------------------------------------------------------------------------#}
7{% extends 'jinja2_templates/base.jinja2' %}
8{% block metadata %}
9{{ super() }}
10{% endblock %}
11{% block base %}
12{{ super() }}
13{% endblock %}
14{% block actions %}
15context:
16 kernel_start_message: ''
17
18actions:
19- deploy:
Dean Bircha6ede7e2020-03-13 14:00:33 +000020 to: fvp
21 images:
Gergely Korcsákac2d0f02024-05-28 08:23:04 +020022{% for name, img in binaries.items() %}
23 {{ name }}:
24 {% if img.application is defined %}
25 url: {{ data_url_prefix }}/{{ img.application }}
26 {% else %}
27 url: {{ data_url_prefix }}/{{ img.data }}
28 {% endif %}
29{% endfor %}
Leonardo Sandoval66386a22021-04-15 14:35:08 -050030{%- if enable_code_coverage %}
31 cc:
32 url: {{ coverage_trace_plugin }}
33{%- endif %}
Dean Bircha6ede7e2020-03-13 14:00:33 +000034- boot:
Matthew Hartfb6fd362020-03-04 21:03:59 +000035 failure_retry: 3
Dean Bircha6ede7e2020-03-13 14:00:33 +000036 method: fvp
37 docker:
Paul Sokolovsky62ea0d52024-04-03 12:59:06 +070038 name: {{ docker_prefix }}/fvp:fvp_arm_std_library_11.22_14
Fathi Boudra1a3dd002020-11-06 22:35:18 +010039 local: true
Dean Bircha6ede7e2020-03-13 14:00:33 +000040 prompts:
41 - 'root@lava '
Paul Sokolovsky01e29fa2022-12-01 21:39:44 +030042{%- if enable_code_coverage %}
43 image: /usr/bin/stdout-flush-wrapper.sh
44{%- else %}
Paul Sokolovsky62ea0d52024-04-03 12:59:06 +070045 image: /opt/model/FVP_ARM_Std_Library/FVP_MPS2/FVP_MPS2_AEMv8M
Paul Sokolovsky01e29fa2022-12-01 21:39:44 +030046{%- endif %}
Dean Bircha6ede7e2020-03-13 14:00:33 +000047 timeout:
Xinyu Zhang3b931ee2022-07-21 10:43:54 +080048 minutes: 10
Xinyu Zhang22a12752022-10-10 17:21:21 +080049{%- if psa_api_suite == "IPC" %}
Paul Sokolovsky6302e1f2022-06-01 15:25:08 +030050 console_string: 'telnetterminal2: Listening for serial connection on port (?P<PORT>\d+)'
51 use_telnet: True
52{%- else %}
Dean Bircha6ede7e2020-03-13 14:00:33 +000053 console_string: 'telnetterminal0: Listening for serial connection on port (?P<PORT>\d+)'
Matthew Hart110e1dc2020-05-27 17:18:55 +010054 use_telnet: False
Paul Sokolovsky6302e1f2022-06-01 15:25:08 +030055{%- endif %}
Paul Sokolovskyaccf5e72024-04-10 13:20:26 +020056 license_variable: '{{ license_variable }}'
Dean Bircha6ede7e2020-03-13 14:00:33 +000057 arguments:
Paul Sokolovsky01e29fa2022-12-01 21:39:44 +030058{%- if enable_code_coverage %}
Paul Sokolovsky62ea0d52024-04-03 12:59:06 +070059 - "/opt/model/FVP_ARM_Std_Library/FVP_MPS2/FVP_MPS2_AEMv8M"
Paul Sokolovsky01e29fa2022-12-01 21:39:44 +030060{%- endif %}
Nicola Mazzucatoe12c1b52024-12-16 09:56:26 +000061{%- if build_type == "Debug" %}
62 - "--simlimit 2000"
63{%- else %}
Paul Sokolovsky09fa3ec2023-04-05 20:39:08 +030064 - "--simlimit 900"
Nicola Mazzucatoe12c1b52024-12-16 09:56:26 +000065{%- endif %}
Gergely Korcsákac2d0f02024-05-28 08:23:04 +020066{% for name, img in binaries.items() %}
67 {% if img.application is defined %}
68 - "--application cpu0={{ '{' ~ name.upper() ~ '}' }}"
69 {% else %}
70 - "--data cpu0={{ '{' ~ name.upper() ~ '}' }}@{{ img.offset }}"
71 {% endif %}
72{% endfor %}
Dean Bircha6ede7e2020-03-13 14:00:33 +000073 - "--parameter fvp_mps2.platform_type=2"
Matthew Hart2c2688f2020-05-26 13:09:20 +010074 - "--parameter cpu0.baseline={{ cpu0_baseline }}"
75 - "--parameter cpu0.INITVTOR_S={{ cpu0_initvtor_s }}"
Dean Bircha6ede7e2020-03-13 14:00:33 +000076 - "--parameter cpu0.semihosting-enable=0"
77 - "--parameter fvp_mps2.DISABLE_GATING=0"
78 - "--parameter fvp_mps2.telnetterminal0.start_telnet=1"
79 - "--parameter fvp_mps2.telnetterminal1.start_telnet=1"
80 - "--parameter fvp_mps2.telnetterminal2.start_telnet=1"
81 - "--parameter fvp_mps2.telnetterminal0.quiet=0"
82 - "--parameter fvp_mps2.telnetterminal1.quiet=0"
83 - "--parameter fvp_mps2.telnetterminal2.quiet=0"
Dean Bircha6ede7e2020-03-13 14:00:33 +000084 - "--parameter fvp_mps2.UART0.shutdown_on_eot=1"
Matthew Hart110e1dc2020-05-27 17:18:55 +010085 - "--parameter 'fvp_mps2.UART0.out_file=-'"
Dean Bircha6ede7e2020-03-13 14:00:33 +000086 - "--parameter fvp_mps2.mps2_visualisation.disable-visualisation=1"
Leonardo Sandoval66386a22021-04-15 14:35:08 -050087{%- if enable_code_coverage %}
88 - "--plugin {CC}"
Paul Sokolovsky8b2fe962022-02-24 12:30:10 +030089 - "--parameter fvp_mps2.UART0.shutdown_tag=\x04"
Paul Sokolovskyb821ce42022-12-01 14:26:40 +030090 - "--cpulimit 600"
Leonardo Sandoval66386a22021-04-15 14:35:08 -050091{%- endif %}
92
Dean Bircha6ede7e2020-03-13 14:00:33 +000093 prompts:
Matthew Hartfb6fd362020-03-04 21:03:59 +000094 - '(.*)'
Dean Bircha6ede7e2020-03-13 14:00:33 +000095
96- test:
Dean Bircha6ede7e2020-03-13 14:00:33 +000097 monitors:
Xinyu Zhang22a12752022-10-10 17:21:21 +080098 {%- for monitor in monitors %}
Matthew Hartfb6fd362020-03-04 21:03:59 +000099 - name: "{{monitor.name}}"
Dean Bircha6ede7e2020-03-13 14:00:33 +0000100 start: "{{monitor.start}}"
101 end: "{{monitor.end}}"
102 pattern: "{{monitor.pattern}}"
103 fixupdict:
104 '{{monitor.fixup.pass}}': pass
105 '{{monitor.fixup.fail}}': fail
Paul Sokolovsky18f110e2022-01-31 23:45:43 +0300106 {%- if monitor.fixup.skip %}
107 '{{monitor.fixup.skip}}': skip
108 {%- endif %}
Xinyu Zhang22a12752022-10-10 17:21:21 +0800109 {%- if monitor.fixup.sim_error %}
110 '{{monitor.fixup.sim_error}}': fail
111 {%- endif %}
Matthew Hartfb6fd362020-03-04 21:03:59 +0000112 {%- endfor %}
Paul Sokolovsky8b2fe962022-02-24 12:30:10 +0300113
114{%- if enable_code_coverage %}
115- test:
Paul Sokolovsky8b2fe962022-02-24 12:30:10 +0300116 interactive:
117 - name: fvp_stopped
118 prompts: ['/OSCI/SystemC: Simulation stopped by user.']
119 script:
120 - name: fvp_stopped_1
121 command:
122 - name: fvp_trace_end
123 prompts: ['Trace path: FVP_MPS2_AEMv8M.cpu1']
124 script:
125 - name: fvp_trace_end_1
126 command:
127{%- endif %}
128
Dean Bircha6ede7e2020-03-13 14:00:33 +0000129{% endblock %}