blob: 7ca462589d9ed2f5c2da29afefe78dc9cf8a850b [file] [log] [blame]
Dean Bircha6ede7e2020-03-13 14:00:33 +00001{#------------------------------------------------------------------------------
Xinyu Zhang28d61b42022-03-21 16:46:35 +08002# Copyright (c) 2018-2022, 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:
20 namespace: docker
21 to: fvp
22 images:
Xinyu Zhang28d61b42022-03-21 16:46:35 +080023 app:
24 url: {{ application_url }}
25 data:
26 url: {{ data_url }}
Leonardo Sandoval66386a22021-04-15 14:35:08 -050027{%- if enable_code_coverage %}
28 cc:
29 url: {{ coverage_trace_plugin }}
30{%- endif %}
Dean Bircha6ede7e2020-03-13 14:00:33 +000031- boot:
Matthew Hartfb6fd362020-03-04 21:03:59 +000032 failure_retry: 3
Dean Bircha6ede7e2020-03-13 14:00:33 +000033 namespace: docker
34 method: fvp
35 docker:
Paul Sokolovsky546df4a2022-07-07 13:08:11 +030036{%- if enable_code_coverage %}
37 name: {{ docker_prefix }}/fvp:fvp_mps2_aemv8m_11.12_38
38{%- else %}
Paul Sokolovsky98af8522022-06-03 14:54:15 +030039 name: {{ docker_prefix }}/fvp:fvp_mps2_aemv8m_11.16_16
Paul Sokolovsky546df4a2022-07-07 13:08:11 +030040{%- endif %}
Fathi Boudra1a3dd002020-11-06 22:35:18 +010041 local: true
Dean Bircha6ede7e2020-03-13 14:00:33 +000042 prompts:
43 - 'root@lava '
Fathi Boudrad50e5662020-11-07 10:22:42 +010044 image: /opt/model/FVP_MPS2_AEMv8M/models/Linux64_GCC-6.4/FVP_MPS2_AEMv8M
Dean Bircha6ede7e2020-03-13 14:00:33 +000045 timeout:
Xinyu Zhang3b931ee2022-07-21 10:43:54 +080046 minutes: 10
Xinyu Zhang22a12752022-10-10 17:21:21 +080047{%- if psa_api_suite == "IPC" %}
Paul Sokolovsky6302e1f2022-06-01 15:25:08 +030048 console_string: 'telnetterminal2: Listening for serial connection on port (?P<PORT>\d+)'
49 use_telnet: True
50{%- else %}
Dean Bircha6ede7e2020-03-13 14:00:33 +000051 console_string: 'telnetterminal0: Listening for serial connection on port (?P<PORT>\d+)'
Matthew Hart110e1dc2020-05-27 17:18:55 +010052 use_telnet: False
Paul Sokolovsky6302e1f2022-06-01 15:25:08 +030053{%- endif %}
54 license_variable: '{{ license_variable }}'
Dean Bircha6ede7e2020-03-13 14:00:33 +000055 arguments:
Xinyu Zhang12111562022-07-05 11:07:00 +080056 - "--simlimit 600"
Xinyu Zhang28d61b42022-03-21 16:46:35 +080057 - "--application cpu0={APP}"
58 - "--data cpu0={DATA}@{{ data_bin_offset }}"
Dean Bircha6ede7e2020-03-13 14:00:33 +000059 - "--parameter fvp_mps2.platform_type=2"
Matthew Hart2c2688f2020-05-26 13:09:20 +010060 - "--parameter cpu0.baseline={{ cpu0_baseline }}"
61 - "--parameter cpu0.INITVTOR_S={{ cpu0_initvtor_s }}"
Dean Bircha6ede7e2020-03-13 14:00:33 +000062 - "--parameter cpu0.semihosting-enable=0"
63 - "--parameter fvp_mps2.DISABLE_GATING=0"
64 - "--parameter fvp_mps2.telnetterminal0.start_telnet=1"
65 - "--parameter fvp_mps2.telnetterminal1.start_telnet=1"
66 - "--parameter fvp_mps2.telnetterminal2.start_telnet=1"
67 - "--parameter fvp_mps2.telnetterminal0.quiet=0"
68 - "--parameter fvp_mps2.telnetterminal1.quiet=0"
69 - "--parameter fvp_mps2.telnetterminal2.quiet=0"
Dean Bircha6ede7e2020-03-13 14:00:33 +000070 - "--parameter fvp_mps2.UART0.shutdown_on_eot=1"
Matthew Hart110e1dc2020-05-27 17:18:55 +010071 - "--parameter 'fvp_mps2.UART0.out_file=-'"
Dean Bircha6ede7e2020-03-13 14:00:33 +000072 - "--parameter fvp_mps2.mps2_visualisation.disable-visualisation=1"
Leonardo Sandoval66386a22021-04-15 14:35:08 -050073{%- if enable_code_coverage %}
74 - "--plugin {CC}"
Paul Sokolovsky8b2fe962022-02-24 12:30:10 +030075 - "--parameter fvp_mps2.UART0.shutdown_tag=\x04"
Paul Sokolovsky2bfd7a42022-07-07 14:26:54 +030076 - "--cpulimit 300"
Leonardo Sandoval66386a22021-04-15 14:35:08 -050077{%- endif %}
78
Dean Bircha6ede7e2020-03-13 14:00:33 +000079 prompts:
Matthew Hartfb6fd362020-03-04 21:03:59 +000080 - '(.*)'
Dean Bircha6ede7e2020-03-13 14:00:33 +000081
82- test:
83 namespace: target
84 monitors:
Xinyu Zhang22a12752022-10-10 17:21:21 +080085 {%- for monitor in monitors %}
Matthew Hartfb6fd362020-03-04 21:03:59 +000086 - name: "{{monitor.name}}"
Dean Bircha6ede7e2020-03-13 14:00:33 +000087 start: "{{monitor.start}}"
88 end: "{{monitor.end}}"
89 pattern: "{{monitor.pattern}}"
90 fixupdict:
91 '{{monitor.fixup.pass}}': pass
92 '{{monitor.fixup.fail}}': fail
Paul Sokolovsky18f110e2022-01-31 23:45:43 +030093 {%- if monitor.fixup.skip %}
94 '{{monitor.fixup.skip}}': skip
95 {%- endif %}
Xinyu Zhang22a12752022-10-10 17:21:21 +080096 {%- if monitor.fixup.sim_error %}
97 '{{monitor.fixup.sim_error}}': fail
98 {%- endif %}
Matthew Hartfb6fd362020-03-04 21:03:59 +000099 {%- endfor %}
Paul Sokolovsky8b2fe962022-02-24 12:30:10 +0300100
101{%- if enable_code_coverage %}
102- test:
103 namespace: target
104 interactive:
105 - name: fvp_stopped
106 prompts: ['/OSCI/SystemC: Simulation stopped by user.']
107 script:
108 - name: fvp_stopped_1
109 command:
110 - name: fvp_trace_end
111 prompts: ['Trace path: FVP_MPS2_AEMv8M.cpu1']
112 script:
113 - name: fvp_trace_end_1
114 command:
115{%- endif %}
116
Dean Bircha6ede7e2020-03-13 14:00:33 +0000117{% endblock %}