summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-msm/scm.c
Commit message (Collapse)AuthorAgeFilesLines
* ARM: msm: fix compilation flags for MSM_SCMMarc Zyngier2011-11-081-0/+3
| | | | | | | | | CONFIG_MSM_SCM uses the smc instruction, which with some toolchains requires a ".arch_extension" directive. Cc: David Brown <davidb@codeaurora.org> Signed-off-by: Marc Zyngier <marc.zyngier@arm.com> Signed-off-by: David Brown <davidb@codeaurora.org>
* Fix common misspellingsLucas De Marchi2011-03-311-1/+1
| | | | | | Fixes generated by 'codespell' and manually reviewed. Signed-off-by: Lucas De Marchi <lucas.demarchi@profusion.mobi>
* msm: scm: Check for interruption immediatelyStephen Boyd2011-03-101-24/+27
| | | | | | | | | When we're interrupted on the secure side, we should just issue another smc instruction again instead of replaying the arguments to smc. Fix it. Signed-off-by: Stephen Boyd <sboyd@codeaurora.org> Signed-off-by: David Brown <davidb@codeaurora.org>
* msm: scm: Fix improper register assignmentStephen Boyd2011-03-101-2/+5
| | | | | | | | | | | Assign the registers used in the inline assembly immediately before the inline assembly block. This ensures the compiler doesn't optimize away dead register assignments when it shouldn't. Signed-off-by: Stephen Boyd <sboyd@codeaurora.org> Acked-by: Nicolas Pitre <nico@fluxnic.net> Signed-off-by: David Brown <davidb@codeaurora.org>
* msm: scm: Mark inline asm as volatileStephen Boyd2011-03-101-2/+2
| | | | | | | | | We don't want the compiler to remove these asm statements or reorder them in any way. Mark them as volatile to be sure. Signed-off-by: Stephen Boyd <sboyd@codeaurora.org> Acked-by: Will Deacon <will.deacon@arm.com> Signed-off-by: David Brown <davidb@codeaurora.org>
* msm: Secure Channel Manager (SCM) supportStephen Boyd2011-01-071-0/+287
SCM is the protocol used to communicate between the secure and non-secure code executing on the applications processor. The non-secure side uses a physically contiguous buffer to pass information to the secure side; where the buffer conforms to a format that is agreed upon by both sides. The use of a buffer allows multiple pending requests to be in flight on the secure side. It also benefits use cases where the command or response buffer contains large chunks of data. Reviewed-by: Saravana Kannan <skannan@codeaurora.org> Signed-off-by: Stephen Boyd <sboyd@codeaurora.org> Signed-off-by: David Brown <davidb@codeaurora.org>
OpenPOWER on IntegriCloud