sgi575_security.c 996 Bytes
Newer Older
1
2
3
4
5
6
7
/*
 * Copyright (c) 2018, ARM Limited and Contributors. All rights reserved.
 *
 * SPDX-License-Identifier: BSD-3-Clause
 */

#include <platform_def.h>
8
9
10

#include <common/debug.h>
#include <drivers/arm/tzc_dmc620.h>
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

uintptr_t sgi575_dmc_base[] = {
	SGI575_DMC620_BASE0,
	SGI575_DMC620_BASE1
};

static const tzc_dmc620_driver_data_t sgi575_plat_driver_data = {
	.dmc_base = sgi575_dmc_base,
	.dmc_count = ARRAY_SIZE(sgi575_dmc_base)
};

static const tzc_dmc620_acc_addr_data_t sgi575_acc_addr_data[] = {
	{
		.region_base = ARM_AP_TZC_DRAM1_BASE,
		.region_top = ARM_AP_TZC_DRAM1_BASE + ARM_TZC_DRAM1_SIZE - 1,
		.sec_attr = TZC_DMC620_REGION_S_RDWR
	}
};

static const tzc_dmc620_config_data_t sgi575_plat_config_data = {
	.plat_drv_data = &sgi575_plat_driver_data,
	.plat_acc_addr_data = sgi575_acc_addr_data,
	.acc_addr_count = ARRAY_SIZE(sgi575_acc_addr_data)
};

/* Initialize the secure environment */
void plat_arm_security_setup(void)
{
	arm_tzc_dmc620_setup(&sgi575_plat_config_data);
}