1/*
2 * Copyright 2020, Data61
3 * Commonwealth Scientific and Industrial Research Organisation (CSIRO)
4 * ABN 41 687 119 230.
5 *
6 * This software may be distributed and modified according to the terms of
7 * the BSD 2-Clause license. Note that NO WARRANTY is provided.
8 * See "LICENSE_BSD2.txt" for details.
9 *
10 * @TAG(DATA61_BSD)
11 */
12
13#define _VAR_STRINGIZE(...) #__VA_ARGS__
14#define VAR_STRINGIZE(...) _VAR_STRINGIZE(__VA_ARGS__)
15
16import <BenchUtiliz/BenchUtiliz.camkes>;
17
18
19#define BenchUtiliz_trace_interfaces_maybe(name) \
20    maybe consumes Trace name##_start; \
21    maybe consumes Trace name##_stop;
22
23#define BenchUtiliz_control_interfaces(name) \
24    uses IdleThread name;
25
26
27#define BenchUtiliz_trace_connections(client_name, client, server) \
28    connection seL4Notification client##_##client_name##_##server##_start(from server.trace_start, to client.client_name##_start); \
29    connection seL4Notification client##_##client_name##_##server##_stop(from server.trace_stop, to client.client_name##_stop);
30
31#define BenchUtiliz_control_connections(client_name, client, server) \
32    connection seL4RPCCall client##_##client_name##_##server##_control(from client.client_name, to server.idle);
33
34
35#define BenchUtiliz_trace_configurations(client_name, client, priority) \
36    client.client_name##_stop_priority = priority; \
37    client.client_name##_start_priority = priority;
38