From 3b1ee0387c70f0b31307f50a5efa5a2b584a3635 Mon Sep 17 00:00:00 2001 From: Furquan Shaikh Date: Wed, 27 Aug 2014 21:43:36 -0700 Subject: libpayload arm64: Make exceptions work BUG=chrome-os-partner:31634 BRANCH=None TEST=test_exc generates and handles exceptions properly Change-Id: If3ecab93be6d02942b52960ec97edc687bedf64b Signed-off-by: Patrick Georgi Original-Commit-Id: bba2caae0bd436ba9e5215f5d8606ce8c4987c98 Original-Change-Id: I4abe8a0e426eab2532852179dbb32505353cd0a1 Original-Signed-off-by: Furquan Shaikh Original-Reviewed-on: https://chromium-review.googlesource.com/214609 Original-Tested-by: Furquan Shaikh Original-Reviewed-by: Aaron Durbin Original-Commit-Queue: Furquan Shaikh Reviewed-on: http://review.coreboot.org/8783 Tested-by: build bot (Jenkins) Reviewed-by: Stefan Reinauer --- payloads/libpayload/include/arm64/arch/exception.h | 21 ++++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) (limited to 'payloads/libpayload/include/arm64/arch') diff --git a/payloads/libpayload/include/arm64/arch/exception.h b/payloads/libpayload/include/arm64/arch/exception.h index 44a4e5998d..f5026f8402 100644 --- a/payloads/libpayload/include/arm64/arch/exception.h +++ b/payloads/libpayload/include/arm64/arch/exception.h @@ -44,11 +44,22 @@ struct exception_state extern struct exception_state *exception_state; enum { - EXC_INV = 0, - EXC_SYNC = 1, - EXC_IRQ = 2, - EXC_FIQ = 3, - EXC_SERROR = 4, + EXC_SYNC_SP0 = 0, + EXC_IRQ_SP0, + EXC_FIQ_SP0, + EXC_SERROR_SP0, + EXC_SYNC_SPX, + EXC_IRQ_SPX, + EXC_FIQ_SPX, + EXC_SERROR_SPX, + EXC_SYNC_ELX_64, + EXC_IRQ_ELX_64, + EXC_FIQ_ELX_64, + EXC_SERROR_ELX_64, + EXC_SYNC_ELX_32, + EXC_IRQ_ELX_32, + EXC_FIQ_ELX_32, + EXC_SERROR_ELX_32, EXC_COUNT }; -- cgit v1.2.3