arm: traps: handle PSCI calls inside `vsmc.c`
authorVolodymyr Babchuk <volodymyr_babchuk@epam.com>
Tue, 10 Oct 2017 15:52:48 +0000 (18:52 +0300)
committerStefano Stabellini <sstabellini@kernel.org>
Wed, 11 Oct 2017 19:42:04 +0000 (12:42 -0700)
commit72e3353dc474d79d30292544361826a30d7e417b
tree0630a492c32404d96446a2824b64186e8bdee632
parent9255ede2a2b1a7f34b84474d5313d38eb822842b
arm: traps: handle PSCI calls inside `vsmc.c`

PSCI is part of HVC/SMC interface, so it should be handled in
appropriate place: `vsmc.c`. This patch moves PSCI handler
calls from `traps.c` to `vsmc.c`. Also it corrects coding
style of the PSCI handler functions.

Older PSCI 0.1 uses SMC function identifiers in range that is
reserved for existing APIs (ARM DEN 0028B, page 16), while newer
PSCI 0.2 and later is defined as "standard secure service" with its
own ranges (ARM DEN 0028B, page 18).

Signed-off-by: Volodymyr Babchuk <volodymyr_babchuk@epam.com>
Reviewed-by: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>
Reviewed-by: Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
Acked-by: Julien Grall <julien.grall@arm.com>
Acked-by: Stefano Stabellini <sstabellini@kernel.org>
xen/arch/arm/traps.c
xen/arch/arm/vsmc.c
xen/include/asm-arm/traps.h
xen/include/public/arch-arm/smccc.h