diff options
author | danh-arm <dan.handley@arm.com> | 2016-08-19 15:31:36 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-08-19 15:31:36 +0100 |
commit | 079e522d39715c39a9d5f23832d09ccdda5dfcd5 (patch) | |
tree | 3e4233741b28f7cd7a9a8b88538c1de0035f5071 | |
parent | efc759ad82b0acd87ffbf019fd65e54e1abf1db5 (diff) | |
parent | 8c9e1af0b5df7ee1ff32e6192ee0252315900895 (diff) |
Merge pull request #687 from sandrine-bailleux-arm/sb/panic-handler
Add WFI in platform's unexpected error handlers
-rw-r--r-- | plat/arm/board/fvp/fvp_err.c | 5 | ||||
-rw-r--r-- | plat/arm/board/juno/juno_err.c | 5 | ||||
-rw-r--r-- | plat/common/aarch64/platform_helpers.S | 2 |
3 files changed, 8 insertions, 4 deletions
diff --git a/plat/arm/board/fvp/fvp_err.c b/plat/arm/board/fvp/fvp_err.c index 7867e49c..f8ea6a03 100644 --- a/plat/arm/board/fvp/fvp_err.c +++ b/plat/arm/board/fvp/fvp_err.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015, ARM Limited and Contributors. All rights reserved. + * Copyright (c) 2015-2016, ARM Limited and Contributors. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are met: @@ -28,6 +28,7 @@ * POSSIBILITY OF SUCH DAMAGE. */ +#include <arch_helpers.h> #include <board_arm_def.h> #include <debug.h> #include <errno.h> @@ -61,5 +62,5 @@ void plat_error_handler(int err) /* Loop until the watchdog resets the system */ for (;;) - ; + wfi(); } diff --git a/plat/arm/board/juno/juno_err.c b/plat/arm/board/juno/juno_err.c index 497cc7fa..fa19da76 100644 --- a/plat/arm/board/juno/juno_err.c +++ b/plat/arm/board/juno/juno_err.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015, ARM Limited and Contributors. All rights reserved. + * Copyright (c) 2015-2016, ARM Limited and Contributors. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are met: @@ -28,6 +28,7 @@ * POSSIBILITY OF SUCH DAMAGE. */ +#include <arch_helpers.h> #include <errno.h> #include <v2m_def.h> @@ -45,5 +46,5 @@ void plat_error_handler(int err) /* Loop until the watchdog resets the system */ for (;;) - ; + wfi(); } diff --git a/plat/common/aarch64/platform_helpers.S b/plat/common/aarch64/platform_helpers.S index 08638303..a134ded0 100644 --- a/plat/common/aarch64/platform_helpers.S +++ b/plat/common/aarch64/platform_helpers.S @@ -130,6 +130,7 @@ endfunc bl1_plat_prepare_exit * ----------------------------------------------------- */ func plat_error_handler + wfi b plat_error_handler endfunc plat_error_handler @@ -139,5 +140,6 @@ endfunc plat_error_handler * ----------------------------------------------------- */ func plat_panic_handler + wfi b plat_panic_handler endfunc plat_panic_handler |