smmu.h 1.16 KB
Newer Older
1
/*
2
 * Copyright (c) 2016-2017, ARM Limited and Contributors. All rights reserved.
3
 * Copyright (c) 2020, NVIDIA Corporation. All rights reserved.
4
 *
dp-arm's avatar
dp-arm committed
5
 * SPDX-License-Identifier: BSD-3-Clause
6
7
 */

8
9
#ifndef SMMU_H
#define SMMU_H
10

11
12
#include <lib/mmio.h>

13
#include <memctrl_v2.h>
14
15
#include <tegra_def.h>

Anthony Zhou's avatar
Anthony Zhou committed
16
#define SMMU_CBn_ACTLR				(0x4U)
17
18
19
20

/*******************************************************************************
 * SMMU Global Secure Aux. Configuration Register
 ******************************************************************************/
Anthony Zhou's avatar
Anthony Zhou committed
21
22
23
24
25
26
#define SMMU_GSR0_SECURE_ACR			0x10U
#define SMMU_GNSR_ACR				(SMMU_GSR0_SECURE_ACR + 0x400U)
#define SMMU_GSR0_PGSIZE_SHIFT			16U
#define SMMU_GSR0_PGSIZE_4K			(0U << SMMU_GSR0_PGSIZE_SHIFT)
#define SMMU_GSR0_PGSIZE_64K			(1U << SMMU_GSR0_PGSIZE_SHIFT)
#define SMMU_ACR_CACHE_LOCK_ENABLE_BIT		(1U << 26)
27
28
29
30

/*******************************************************************************
 * SMMU Global Aux. Control Register
 ******************************************************************************/
31
#define SMMU_CBn_ACTLR_CPRE_BIT			(1ULL << 1U)
32
33

void tegra_smmu_init(void);
34
uint32_t plat_get_num_smmu_devices(void);
35

36
#endif /* SMMU_H */