smccc: fix sign bit expansion
Signed ARM_SMCCC_FAST_CALL value is shifted to 31'st bit. Then, it is expanded to 64 bit value, which results in 1s in higher 32 bits. This causes corrupted values in 64-bit SMC IDs and issues in buggy handlers of 32-bit calls. We need to make ARM_SMCCC_FAST_CALL unsigned long, so it would work properly on 32 bit architectures. Signed-off-by: NVolodymyr Babchuk <volodymyr_babchuk@epam.com> Reviewed-by: NJens Wiklander <jens.wiklander@linaro.org>
Showing
想要评论请 注册 或 登录