[lib][sm] Add support for parameterized nop calls
Parameterized NOP call is a NOP call with non-zero
first argument which is used to invoke special caller
registered handler. This handler is executed in context
with following properties and should behave as follow:
- IRQs are disabled
- FIQs are enabled
- handler can be executed concurrently on multiple CPUs
- handler must not block
- returning non zero would immediately switch to ns side with
provided error code
- returning zero would trigger rescheduling
In essence it is an SMP friendly way to schedule work to run on
secure side.
Change-Id: I9f80243b2f0407dcff895ca12d64fac8f6cce7aa
3 files changed