xref: /openbmc/linux/arch/arm/include/asm/arm-cci.h (revision 772742a6)
1772742a6SSuzuki K. Poulose /*
2772742a6SSuzuki K. Poulose  * arch/arm/include/asm/arm-cci.h
3772742a6SSuzuki K. Poulose  *
4772742a6SSuzuki K. Poulose  * Copyright (C) 2015 ARM Ltd.
5772742a6SSuzuki K. Poulose  *
6772742a6SSuzuki K. Poulose  * This program is free software; you can redistribute it and/or modify
7772742a6SSuzuki K. Poulose  * it under the terms of the GNU General Public License version 2 as
8772742a6SSuzuki K. Poulose  * published by the Free Software Foundation.
9772742a6SSuzuki K. Poulose  *
10772742a6SSuzuki K. Poulose  * This program is distributed in the hope that it will be useful,
11772742a6SSuzuki K. Poulose  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12772742a6SSuzuki K. Poulose  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13772742a6SSuzuki K. Poulose  * GNU General Public License for more details.
14772742a6SSuzuki K. Poulose  *
15772742a6SSuzuki K. Poulose  * You should have received a copy of the GNU General Public License
16772742a6SSuzuki K. Poulose  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
17772742a6SSuzuki K. Poulose  */
18772742a6SSuzuki K. Poulose 
19772742a6SSuzuki K. Poulose #ifndef __ASM_ARM_CCI_H
20772742a6SSuzuki K. Poulose #define __ASM_ARM_CCI_H
21772742a6SSuzuki K. Poulose 
22772742a6SSuzuki K. Poulose #ifdef CONFIG_MCPM
23772742a6SSuzuki K. Poulose #include <asm/mcpm.h>
24772742a6SSuzuki K. Poulose 
25772742a6SSuzuki K. Poulose /*
26772742a6SSuzuki K. Poulose  * We don't have a reliable way of detecting whether,
27772742a6SSuzuki K. Poulose  * if we have access to secure-only registers, unless
28772742a6SSuzuki K. Poulose  * mcpm is registered.
29772742a6SSuzuki K. Poulose  */
30772742a6SSuzuki K. Poulose static inline bool platform_has_secure_cci_access(void)
31772742a6SSuzuki K. Poulose {
32772742a6SSuzuki K. Poulose 	return mcpm_is_available();
33772742a6SSuzuki K. Poulose }
34772742a6SSuzuki K. Poulose 
35772742a6SSuzuki K. Poulose #else
36772742a6SSuzuki K. Poulose static inline bool platform_has_secure_cci_access(void)
37772742a6SSuzuki K. Poulose {
38772742a6SSuzuki K. Poulose 	return false;
39772742a6SSuzuki K. Poulose }
40772742a6SSuzuki K. Poulose #endif
41772742a6SSuzuki K. Poulose 
42772742a6SSuzuki K. Poulose #endif
43