1/*
2 * Copyright 2017, 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#pragma once
13
14#include <autoconf.h>
15
16#include <vka/capops.h>
17
18#ifdef CONFIG_HARDWARE_DEBUG_API
19
20#define FAULT_EP_KERNEL_BADGE_VALUE           (1)
21
22#define SINGLESTEP_TEST_MAX_LOOP_ITERATIONS 10
23
24#define BREAKPOINT_TEST_FAULTER_PRIO  (seL4_MinPrio + 10)
25#define BREAKPOINT_TEST_HANDLER_PRIO  (seL4_MinPrio + 20)
26
27/* Other (receiver) end of the Endpoint object on which the kernel will queue
28 * the Fault events triggered by the fault thread.
29 */
30extern cspacepath_t fault_ep_cspath;
31
32struct {
33    seL4_Word vaddr, vaddr2, reason, bp_num;
34} static fault_data;
35
36int setup_caps_for_test(struct env *env);
37int setup_faulter_thread_for_test(struct env *env, helper_thread_t *faulter_thread);
38
39#endif /* CONFIG_HARDWARE_DEBUG_API*/
40