This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

TrustZone with PL310

Note: This was originally posted on 17th August 2013 at http://forums.arm.com

I plan to use a simple 'TrustZone Monitor'  with PL310(L2CC).
In non-secure, I will play a Linux-Kernel.

One problem.
1. PL310's background-operation(inv.way etc..)  is executing in non-secure.
2. By secure-interrupt, dispatch to secure.
3. In secure, try to execute a write-operation to PL310' register.
May be happen 'DATA-ABORT'.

Do I must control exclusive PL310  secure and non-secure ?

Please help me.
Parents
  • Note: This was originally posted on 21st August 2013 at http://forums.arm.com

    > Why do you think you need to use the background operations?

    I want to play 'Linux' on non-secure world.

    Linux excutes follow-code.
    -------------------------------------------------------------------------
    cache-l2x0.c
    l2x0_flush_range()
      l2x0_flush_all()
          __l2x0_flush_all()
              writel_relaxed(l2x0_way_mask, l2x0_base + L2X0_CLEAN_INV_WAY);
              ------ 'This is background-operation.' ------
              cache_wait_way(l2x0_base + L2X0_CLEAN_INV_WAY, l2x0_way_mask);
              cache_sync();
    -------------------------------------------------------------------------
Reply
  • Note: This was originally posted on 21st August 2013 at http://forums.arm.com

    > Why do you think you need to use the background operations?

    I want to play 'Linux' on non-secure world.

    Linux excutes follow-code.
    -------------------------------------------------------------------------
    cache-l2x0.c
    l2x0_flush_range()
      l2x0_flush_all()
          __l2x0_flush_all()
              writel_relaxed(l2x0_way_mask, l2x0_base + L2X0_CLEAN_INV_WAY);
              ------ 'This is background-operation.' ------
              cache_wait_way(l2x0_base + L2X0_CLEAN_INV_WAY, l2x0_way_mask);
              cache_sync();
    -------------------------------------------------------------------------
Children
No data