On 12/03/2013 12:48 PM, Sergey Fedorov wrote:
This patch set implements a basic support of CPU core TrustZone feature. The
following major functionalities are implemented:
   * CPU monitor mode
   * Separate code translation for each secure state
   * CPACR & NSACR co-processor access control
   * Separate TLB for each secure state
   * Co-processor register banking
   * SMC instruction
   * FIQ/IRQ routing to monitor mode

There is no support for banked co-processor register migration, save/load its
VM state yet. That is an open question how to implement this functionality. Any
suggestions is greatly appreciated.

This patch set is a request for comments for the proof of concept.

Sergey Fedorov (18):
   target-arm: move SCR & VBAR into TrustZone register list
   target-arm: adjust TTBCR for TrustZone feature
   target-arm: add arm_is_secure() helper
   target-arm: reject switching to monitor mode from non-secure state
   target-arm: adjust arm_current_pl() for TrustZone
   target-arm: adjust SCR CP15 register access rights
   target-arm: add non-secure Translation Block flag
   target-arm: implement CPACR register logic
   target-arm: add NSACR support
   target-arm: add SDER definition
   target-arm: split TLB for secure state
   target-arm: add banked coprocessor register type
   target-arm: convert appropriate coprocessor registers to banked type
   target-arm: use c13_context field for CONTEXTIDR
   target-arm: switch banked CP registers
   target-arm: add MVBAR support
   target-arm: implement SMC instruction
   target-arm: implement IRQ/FIQ routing to Monitor mode

Svetlana Fedoseeva (3):
   target-arm: add TrustZone CPU feature
   target-arm: preserve RAO/WI bits of ARMv7 SCTLR
   target-arm: add CPU Monitor mode

  target-arm/cpu.c       |    6 +-
  target-arm/cpu.h       |  126 ++++++++++++----
  target-arm/helper.c    |  308 +++++++++++++++++++++++++++++---------
  target-arm/machine.c   |   12 +-
  target-arm/translate.c |  388 ++++++++++++++++++++++++++++++------------------
  target-arm/translate.h |    2 +
  6 files changed, 585 insertions(+), 257 deletions(-)


We'd like this patch series finally to be merged into mainstream. What should be done to achieve this goal?

Best regards,
Sergey Fedorov

Reply via email to