[PATCH v8 0/5] ARM: support for Trusted Foundations secure monitor

From: Alexandre Courbot
Date: Fri Oct 11 2013 - 17:46:30 EST


Hopefully this has received enough review to be merged (although a few more
acks/review especially from DT people on patch 1 would be nice). Thanks
everyone for all the input and comments!

Trusted Foundations is an ARM secure monitor that is used by many Tegra-based
retail devices (like SHIELD and TegraNote). Adding support to it allows these
devices to boot on a purely upstream kernel.

Public documentation about Trusted Foundations is scarce, but over the various
versions of this patch it has been established that it does not follow the ARM
SMC convention and also has no connection whatsoever with PSCI. As such, it
requires an implementation of its own and the firmware interface introduced by
Tomasz provides an adequate framework for it.

Changes since v7:
- explicitly request the TF DT node to be under /firmware/ in the bindings
documentation
- renamed arguments of tf_generic_smc() (suggestion made by Linus W. some time
ago that I overlooked).
- fixed multi-line comment style

TODO in a future patchset:
- disable TF-dependant features (SMP, cpuidle) if TF cannot be supported instead
or doing an early panic
- complete TF support with idle and L2 cache handling (ongoing)

Alexandre Courbot (5):
ARM: add basic support for Trusted Foundations
ARM: tegra: add support for Trusted Foundations
ARM: tegra: split setting of CPU reset handler
ARM: tegra: set CPU reset handler with firmware op
ARM: tegra: support Trusted Foundations by default

.../arm/firmware/tl,trusted-foundations.txt | 20 ++++++
Documentation/devicetree/bindings/arm/tegra.txt | 5 ++
.../devicetree/bindings/vendor-prefixes.txt | 1 +
arch/arm/Kconfig | 2 +
arch/arm/Makefile | 1 +
arch/arm/configs/tegra_defconfig | 1 +
arch/arm/firmware/Kconfig | 28 ++++++++
arch/arm/firmware/Makefile | 1 +
arch/arm/firmware/trusted_foundations.c | 79 ++++++++++++++++++++++
arch/arm/include/asm/trusted_foundations.h | 68 +++++++++++++++++++
arch/arm/mach-tegra/Kconfig | 1 +
arch/arm/mach-tegra/common.c | 2 +
arch/arm/mach-tegra/reset.c | 40 ++++++++---
13 files changed, 238 insertions(+), 11 deletions(-)
create mode 100644 Documentation/devicetree/bindings/arm/firmware/tl,trusted-foundations.txt
create mode 100644 arch/arm/firmware/Kconfig
create mode 100644 arch/arm/firmware/Makefile
create mode 100644 arch/arm/firmware/trusted_foundations.c
create mode 100644 arch/arm/include/asm/trusted_foundations.h

--
1.8.4

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/