aboutsummaryrefslogtreecommitdiff
path: root/include/drivers/arm/tzc400.h
diff options
context:
space:
mode:
authorDan Handley <dan.handley@arm.com>2015-03-19 19:26:52 +0000
committerDan Handley <dan.handley@arm.com>2015-04-27 18:04:12 +0100
commit71a844453735d93c389969f6b781673654936029 (patch)
tree8637f091f4875ab7d15c100df06e8d0d320b4da0 /include/drivers/arm/tzc400.h
parentda85170d9a7ed1ea97df8f647afce6c8ceabe33c (diff)
downloadtrusted-firmware-a-71a844453735d93c389969f6b781673654936029.tar.gz
Add TZC function to configure region 0
Region 0 is special in TZC-400. It is possible to set the access permissions for this but not the address range or filters to which the permissions apply. Add a function for setting the region 0 access permissions. Also add some VERBOSE logging and allow assembly files to include the TZC header. Change-Id: I4389261ba10a6e5e2e43ee93d55318dc507b6648
Diffstat (limited to 'include/drivers/arm/tzc400.h')
-rw-r--r--include/drivers/arm/tzc400.h12
1 files changed, 9 insertions, 3 deletions
diff --git a/include/drivers/arm/tzc400.h b/include/drivers/arm/tzc400.h
index d62e67bc38..7b951d22de 100644
--- a/include/drivers/arm/tzc400.h
+++ b/include/drivers/arm/tzc400.h
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2014, ARM Limited and Contributors. All rights reserved.
+ * Copyright (c) 2014-2015, ARM Limited and Contributors. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
@@ -31,7 +31,6 @@
#ifndef __TZC400_H__
#define __TZC400_H__
-#include <stdint.h>
#define BUILD_CONFIG_OFF 0x000
#define ACTION_OFF 0x004
@@ -148,9 +147,13 @@
#define TZC_REGION_ACCESS_RDWR(id) \
(TZC_REGION_ACCESS_RD(id) | TZC_REGION_ACCESS_WR(id))
-/* Filters are bit mapped 0 to 3. */
#define TZC400_COMPONENT_ID 0xb105f00d
+
+#ifndef __ASSEMBLY__
+
+#include <stdint.h>
+
/*******************************************************************************
* Function & variable prototypes
******************************************************************************/
@@ -187,6 +190,8 @@ typedef enum {
void tzc_init(uint64_t base);
+void tzc_configure_region0(tzc_region_attributes_t sec_attr,
+ uint32_t ns_device_access);
void tzc_configure_region(uint32_t filters,
uint8_t region,
uint64_t region_base,
@@ -197,5 +202,6 @@ void tzc_enable_filters(void);
void tzc_disable_filters(void);
void tzc_set_action(tzc_action_t action);
+#endif /* __ASSEMBLY__ */
#endif /* __TZC400__ */