summaryrefslogtreecommitdiffstats
path: root/plat/xilinx/zynqmp/zynqmp_sdei.c
blob: ce68e6a0504c7bdff326e2abd468b03c1cc29384 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
/*
 * Copyright (c) 2017-2020, Arm Limited and Contributors. All rights reserved.
 * Copyright (c) Siemens AG, 2020-2021
 *
 * SPDX-License-Identifier: BSD-3-Clause
 */

/* SDEI configuration for ARM platforms */

#include <bl31/ehf.h>
#include <common/debug.h>
#include <plat/common/platform.h>
#include <services/sdei.h>

#include <platform_def.h>

int arm_validate_ns_entrypoint(uintptr_t entrypoint)
{
	uint64_t base = BL31_BASE;
	uint64_t limit = BL31_LIMIT;

	return (entrypoint < base || entrypoint > limit) ? 0 : -1;
}

/* Private event mappings */
static sdei_ev_map_t zynqmp_sdei_private[] = {
	SDEI_DEFINE_EVENT_0(ZYNQMP_SDEI_SGI_PRIVATE),
};

/* Shared event mappings */
static sdei_ev_map_t zynqmp_sdei_shared[] = {
};

void plat_sdei_setup(void)
{
	INFO("SDEI platform setup\n");
}

/* Export ARM SDEI events */
REGISTER_SDEI_MAP(zynqmp_sdei_private, zynqmp_sdei_shared);