armv8: Simplify switch_el macro
authorAndre Przywara <andre.przywara@arm.com>
Fri, 11 Feb 2022 11:29:38 +0000 (11:29 +0000)
committerTom Rini <trini@konsulko.com>
Wed, 2 Mar 2022 18:59:29 +0000 (13:59 -0500)
commitf660fe0bd3a8cfa7fc6271bbf27b1530e7348b85
tree01d04927334a9a8870adb37ff47059c5f448223b
parent7ab2e47d27c93b3dd8e006fb2b0c762b171454cb
armv8: Simplify switch_el macro

The switch_el macro is a neat contraption to handle cases where we need
different code depending on the current exception level, but its
implementation was longer than needed.

Simplify it by doing just one comparison, then using the different
condition codes to branch to the desired target. PState.CurrentEL just
holds two bits, and since we don't care about EL0, we can use >, =, < to
select EL3, EL2 and EL1, respectively.

Signed-off-by: Andre Przywara <andre.przywara@arm.com>
arch/arm/include/asm/macro.h