From 5823f69123da01b9ebbbe926d885593725a2a0c2 Mon Sep 17 00:00:00 2001
From: Francisco Acosta <fco.ja.ac@gmail.com>
Date: Fri, 21 Sep 2018 18:51:32 +0200
Subject: [PATCH] boards: add LED_PANIC to atmega based boards

This adds a LED_PANIC macro which defines which LED,
or combination of LEDs should notify a panic error.
This is currently used to signal BADISR_vect errors.
---
 boards/common/arduino-atmega/include/board_common.h | 7 +++++++
 boards/jiminy-mega256rfr2/include/board.h           | 7 +++++++
 boards/mega-xplained/include/board.h                | 7 +++++++
 boards/waspmote-pro/include/board.h                 | 7 +++++++
 4 files changed, 28 insertions(+)

diff --git a/boards/common/arduino-atmega/include/board_common.h b/boards/common/arduino-atmega/include/board_common.h
index 6694f2a93a..931e57cfa7 100644
--- a/boards/common/arduino-atmega/include/board_common.h
+++ b/boards/common/arduino-atmega/include/board_common.h
@@ -59,6 +59,13 @@ extern "C" {
 #define LED0_TOGGLE         (PORTB ^=  LED0_MASK)
 /** @} */
 
+/**
+ * @name    Usage of LED to turn on when a kernel panic occurs.
+ * @{
+ */
+#define LED_PANIC           LED0_ON
+/** @} */
+
 /**
  * @name    xtimer configuration values
  * @{
diff --git a/boards/jiminy-mega256rfr2/include/board.h b/boards/jiminy-mega256rfr2/include/board.h
index 410addb56b..704fbfcd04 100644
--- a/boards/jiminy-mega256rfr2/include/board.h
+++ b/boards/jiminy-mega256rfr2/include/board.h
@@ -73,6 +73,13 @@ extern "C" {
 #define LED2_TOGGLE         (LED_PORT ^=  LED2_MASK)
 /** @} */
 
+/**
+ * @name   White LED light is used to signal ERROR.
+ * @{
+ */
+#define LED_PANIC           (LED_PORT |= LED2_MASK | LED1_MASK | LED0_MASK)
+/** @} */
+
 /**
  * @name xtimer configuration values
  * @{
diff --git a/boards/mega-xplained/include/board.h b/boards/mega-xplained/include/board.h
index f7021dd829..fb885a88b8 100644
--- a/boards/mega-xplained/include/board.h
+++ b/boards/mega-xplained/include/board.h
@@ -90,6 +90,13 @@ extern "C" {
 #define LED3_TOGGLE         PORTB ^=  LED3_PIN
 /** @} */
 
+/**
+ * @name    Usage of LED to turn on when a kernel panic occurs.
+ * @{
+ */
+#define LED_PANIC           LED1_ON
+/** @} */
+
 /**
  * @name    Button pin configuration
  * @{
diff --git a/boards/waspmote-pro/include/board.h b/boards/waspmote-pro/include/board.h
index 8fa8a538ab..d670c71007 100644
--- a/boards/waspmote-pro/include/board.h
+++ b/boards/waspmote-pro/include/board.h
@@ -78,6 +78,13 @@ extern "C" {
 #define LED_RED_TOGGLE       LED0_TOGGLE
 /** @} */
 
+/**
+ * @name    Usage of LED to turn on when a kernel panic occurs.
+ * @{
+ */
+#define LED_PANIC            LED_RED_ON
+/** @} */
+
 /**
  * @name    Macros for controlling the on-board MUXes.
  * @{
-- 
GitLab