xref: /rk3399_ARM-atf/drivers/marvell/mc_trustzone/mc_trustzone.h (revision 09d40e0e08283a249e7dce0e106c07c5141f9b7e)
13a9f8eecSGrzegorz Jaszczyk /*
23a9f8eecSGrzegorz Jaszczyk  * Copyright (C) 2018 Marvell International Ltd.
33a9f8eecSGrzegorz Jaszczyk  *
43a9f8eecSGrzegorz Jaszczyk  * SPDX-License-Identifier:     BSD-3-Clause
53a9f8eecSGrzegorz Jaszczyk  * https://spdx.org/licenses
63a9f8eecSGrzegorz Jaszczyk  */
73a9f8eecSGrzegorz Jaszczyk 
8c3cf06f1SAntonio Nino Diaz #ifndef MC_TRUSTZONE_H
9c3cf06f1SAntonio Nino Diaz #define MC_TRUSTZONE_H
103a9f8eecSGrzegorz Jaszczyk 
11*09d40e0eSAntonio Nino Diaz #include <drivers/marvell/addr_map.h>
123a9f8eecSGrzegorz Jaszczyk 
133a9f8eecSGrzegorz Jaszczyk #define MVEBU_TZ_MAX_WINS	16
143a9f8eecSGrzegorz Jaszczyk 
153a9f8eecSGrzegorz Jaszczyk #define TZ_VALID		(1 << 0)
163a9f8eecSGrzegorz Jaszczyk #define TZ_PERM(x)		((x) << 1)
173a9f8eecSGrzegorz Jaszczyk #define TZ_RZ_ENABLE		(1 << 3)
183a9f8eecSGrzegorz Jaszczyk 
193a9f8eecSGrzegorz Jaszczyk /* tz attr definitions */
203a9f8eecSGrzegorz Jaszczyk #define TZ_PERM_RW		(TZ_PERM(0))
213a9f8eecSGrzegorz Jaszczyk #define TZ_PERM_RO		(TZ_PERM(1))
223a9f8eecSGrzegorz Jaszczyk #define TZ_PERM_WO		(TZ_PERM(2))
233a9f8eecSGrzegorz Jaszczyk #define TZ_PERM_ABORT		(TZ_PERM(3))
243a9f8eecSGrzegorz Jaszczyk 
253a9f8eecSGrzegorz Jaszczyk void tz_enable_win(int ap_index, const struct addr_map_win *win, int win_id);
263a9f8eecSGrzegorz Jaszczyk 
27c3cf06f1SAntonio Nino Diaz #endif /* MC_TRUSTZONE_H */
28