[PATCH v7 1/5] ARM: add basic support for Trusted Foundations
From: Kevin Hilman <hidden>
Date: 2013-10-07 18:17:06
Also in:
linux-devicetree, linux-tegra, lkml
Alexandre Courbot [off-list ref] writes:
Trusted Foundations is a TrustZone-based secure monitor for ARM that can be invoked using the same SMC-based API on all supported platforms. This patch adds initial basic support for Trusted Foundations using the ARM firmware API. Current features are limited to the ability to boot secondary processors. Note: The API followed by Trusted Foundations does *not* follow the SMC calling conventions. It has nothing to do with PSCI neither and is only relevant to devices that use Trusted Foundations (like most Tegra-based retail devices). Signed-off-by: Alexandre Courbot <acourbot@nvidia.com> Reviewed-by: Tomasz Figa <redacted> Reviewed-by: Stephen Warren <redacted>
[...]
+void register_trusted_foundations(struct trusted_foundations_platform_data *pd)
+{
+ /* we are not using version information for now since currently
+ * supported SMCs are compatible with all TF releases */nit: multi-line comment style... [...]
+static inline void register_trusted_foundations(
+ struct trusted_foundations_platform_data *pd)
+{
+ /* If we try to register TF, this means the system needs it to continue.
+ * Its absence if thus a fatal error. */...and here...
+ panic("No support for Trusted Foundations, stopping...\n");
+}
+
+static inline void of_register_trusted_foundations(void)
+{
+ /* If we find the target should enable TF but does not support it,
+ * fail as the system won't be able to do much anyway */...and here.
+ if (of_find_compatible_node(NULL, NULL, "tl,trusted-foundations")) + register_trusted_foundations(NULL); +} +#endif /* CONFIG_TRUSTED_FOUNDATIONS */ + +#endif
Kevin