From 45c125949ae64d450b69b533349cae77b29beeca Mon Sep 17 00:00:00 2001
From: Antonio Lignan <alinan@zolertia.com>
Date: Fri, 29 Jan 2016 23:13:01 +0100
Subject: [PATCH] Unified cc2538 examples into single cc2538-common placeholder

---
 examples/cc2538-common/Makefile               |  8 ++++
 .../crypto => cc2538-common}/Makefile.target  |  0
 examples/cc2538-common/README.md              | 18 ++++++++
 .../crypto/Makefile                           |  0
 .../crypto}/Makefile.target                   |  0
 .../crypto/cbc-mac-test.c                     |  6 +--
 .../crypto/cbc-test.c                         |  6 +--
 .../crypto/ccm-test.c                         |  6 +--
 .../crypto/ctr-test.c                         |  6 +--
 .../crypto/ecb-test.c                         |  6 +--
 .../crypto/gcm-test.c                         |  6 +--
 .../crypto/sha256-test.c                      |  6 +--
 .../mqtt-demo/Makefile                        |  2 +-
 .../mqtt-demo}/Makefile.target                |  0
 .../mqtt-demo/README.md                       |  0
 .../mqtt-demo/mqtt-demo.c                     |  4 +-
 .../mqtt-demo/project-conf.h                  |  0
 .../{cc2538dk => cc2538-common}/pka/Makefile  |  0
 .../pka}/Makefile.target                      |  0
 .../pka/ecc-ecdh.c                            |  6 +--
 .../pka/ecc-sign.c                            |  6 +--
 .../pka/ecc-verify.c                          |  6 +--
 examples/cc2538-common/project-conf.h         | 45 +++++++++++++++++++
 .../sniffer/Makefile                          |  0
 .../cc2538-common/sniffer/Makefile.target     |  1 +
 .../sniffer/netstack.c                        |  0
 .../sniffer/project-conf.h                    |  0
 .../sniffer/sniffer.c                         |  4 +-
 .../sniffer/stub-rdc.c                        |  0
 .../zoul => cc2538-common}/test-pwm.c         |  6 +--
 .../{cc2538dk => cc2538-common}/timer-test.c  |  2 +-
 examples/cc2538dk/Makefile                    |  2 +-
 examples/zolertia/zoul/Makefile               |  2 +-
 .../18-compile-arm-ports/Makefile             | 17 ++++---
 34 files changed, 124 insertions(+), 47 deletions(-)
 create mode 100644 examples/cc2538-common/Makefile
 rename examples/{cc2538dk/crypto => cc2538-common}/Makefile.target (100%)
 create mode 100644 examples/cc2538-common/README.md
 rename examples/{cc2538dk => cc2538-common}/crypto/Makefile (100%)
 rename examples/{cc2538dk/mqtt-demo => cc2538-common/crypto}/Makefile.target (100%)
 rename examples/{cc2538dk => cc2538-common}/crypto/cbc-mac-test.c (99%)
 rename examples/{cc2538dk => cc2538-common}/crypto/cbc-test.c (99%)
 rename examples/{cc2538dk => cc2538-common}/crypto/ccm-test.c (99%)
 rename examples/{cc2538dk => cc2538-common}/crypto/ctr-test.c (98%)
 rename examples/{cc2538dk => cc2538-common}/crypto/ecb-test.c (99%)
 rename examples/{cc2538dk => cc2538-common}/crypto/gcm-test.c (99%)
 rename examples/{cc2538dk => cc2538-common}/crypto/sha256-test.c (97%)
 rename examples/{cc2538dk => cc2538-common}/mqtt-demo/Makefile (87%)
 rename examples/{cc2538dk/pka => cc2538-common/mqtt-demo}/Makefile.target (100%)
 rename examples/{cc2538dk => cc2538-common}/mqtt-demo/README.md (100%)
 rename examples/{cc2538dk => cc2538-common}/mqtt-demo/mqtt-demo.c (99%)
 rename examples/{cc2538dk => cc2538-common}/mqtt-demo/project-conf.h (100%)
 rename examples/{cc2538dk => cc2538-common}/pka/Makefile (100%)
 rename examples/{cc2538dk/sniffer => cc2538-common/pka}/Makefile.target (100%)
 rename examples/{cc2538dk => cc2538-common}/pka/ecc-ecdh.c (97%)
 rename examples/{cc2538dk => cc2538-common}/pka/ecc-sign.c (96%)
 rename examples/{cc2538dk => cc2538-common}/pka/ecc-verify.c (95%)
 create mode 100644 examples/cc2538-common/project-conf.h
 rename examples/{cc2538dk => cc2538-common}/sniffer/Makefile (100%)
 create mode 100644 examples/cc2538-common/sniffer/Makefile.target
 rename examples/{cc2538dk => cc2538-common}/sniffer/netstack.c (100%)
 rename examples/{cc2538dk => cc2538-common}/sniffer/project-conf.h (100%)
 rename examples/{cc2538dk => cc2538-common}/sniffer/sniffer.c (95%)
 rename examples/{cc2538dk => cc2538-common}/sniffer/stub-rdc.c (100%)
 rename examples/{zolertia/zoul => cc2538-common}/test-pwm.c (97%)
 rename examples/{cc2538dk => cc2538-common}/timer-test.c (99%)

diff --git a/examples/cc2538-common/Makefile b/examples/cc2538-common/Makefile
new file mode 100644
index 0000000000..08ae0d42e8
--- /dev/null
+++ b/examples/cc2538-common/Makefile
@@ -0,0 +1,8 @@
+DEFINES+=PROJECT_CONF_H=\"project-conf.h\"
+CONTIKI_PROJECT = test-pwm timer-test
+
+all: $(CONTIKI_PROJECT)
+
+CONTIKI = ../..
+CONTIKI_WITH_RIME = 1
+include $(CONTIKI)/Makefile.include
diff --git a/examples/cc2538dk/crypto/Makefile.target b/examples/cc2538-common/Makefile.target
similarity index 100%
rename from examples/cc2538dk/crypto/Makefile.target
rename to examples/cc2538-common/Makefile.target
diff --git a/examples/cc2538-common/README.md b/examples/cc2538-common/README.md
new file mode 100644
index 0000000000..eec7a4af32
--- /dev/null
+++ b/examples/cc2538-common/README.md
@@ -0,0 +1,18 @@
+README file for CC2538 common examples
+=========
+
+The `cc2538-commmon` groups examples common to all cc2538-based platforms.
+The examples in this folder are known to work on:
+
+* cc2538dk (default)
+* zoul
+
+To change the default target at compilation time you can add the following:
+
+make TARGET=zoul
+
+Or to define the default platform permanently:
+
+make TARGET=zoul savetarget
+
+This will create a `Makefile.target` file with the TARGET predefined.
diff --git a/examples/cc2538dk/crypto/Makefile b/examples/cc2538-common/crypto/Makefile
similarity index 100%
rename from examples/cc2538dk/crypto/Makefile
rename to examples/cc2538-common/crypto/Makefile
diff --git a/examples/cc2538dk/mqtt-demo/Makefile.target b/examples/cc2538-common/crypto/Makefile.target
similarity index 100%
rename from examples/cc2538dk/mqtt-demo/Makefile.target
rename to examples/cc2538-common/crypto/Makefile.target
diff --git a/examples/cc2538dk/crypto/cbc-mac-test.c b/examples/cc2538-common/crypto/cbc-mac-test.c
similarity index 99%
rename from examples/cc2538dk/crypto/cbc-mac-test.c
rename to examples/cc2538-common/crypto/cbc-mac-test.c
index ff355fc1f5..98ac8483e7 100644
--- a/examples/cc2538dk/crypto/cbc-mac-test.c
+++ b/examples/cc2538-common/crypto/cbc-mac-test.c
@@ -32,9 +32,9 @@
  * \addtogroup cc2538-examples
  * @{
  *
- * \defgroup cc2538-cbc-mac-test cc2538dk AES-CBC-MAC Test Project
+ * \defgroup cc2538-cbc-mac-test cc2538 AES-CBC-MAC Test Project
  *
- *   AES-CBC-MAC access example for CC2538 on SmartRF06EB.
+ *   AES-CBC-MAC access example for CC2538-based platforms
  *
  *   This example shows how AES-CBC-MAC should be used. The example also
  *   verifies the AES-CBC-MAC functionality.
@@ -42,7 +42,7 @@
  * @{
  *
  * \file
- *     Example demonstrating AES-CBC-MAC on the cc2538dk platform
+ *     Example demonstrating AES-CBC-MAC
  */
 #include "contiki.h"
 #include "sys/rtimer.h"
diff --git a/examples/cc2538dk/crypto/cbc-test.c b/examples/cc2538-common/crypto/cbc-test.c
similarity index 99%
rename from examples/cc2538dk/crypto/cbc-test.c
rename to examples/cc2538-common/crypto/cbc-test.c
index ff7c429f3a..108b6a775b 100644
--- a/examples/cc2538dk/crypto/cbc-test.c
+++ b/examples/cc2538-common/crypto/cbc-test.c
@@ -32,9 +32,9 @@
  * \addtogroup cc2538-examples
  * @{
  *
- * \defgroup cc2538-cbc-test cc2538dk AES-CBC Test Project
+ * \defgroup cc2538-cbc-test cc2538 AES-CBC Test Project
  *
- *   AES-CBC access example for CC2538 on SmartRF06EB.
+ *   AES-CBC access example for CC2538-based platforms
  *
  *   This example shows how AES-CBC should be used. The example also verifies
  *   the AES-CBC functionality.
@@ -42,7 +42,7 @@
  * @{
  *
  * \file
- *     Example demonstrating AES-CBC on the cc2538dk platform
+ *     Example demonstrating AES-CBC
  */
 #include "contiki.h"
 #include "sys/rtimer.h"
diff --git a/examples/cc2538dk/crypto/ccm-test.c b/examples/cc2538-common/crypto/ccm-test.c
similarity index 99%
rename from examples/cc2538dk/crypto/ccm-test.c
rename to examples/cc2538-common/crypto/ccm-test.c
index 4b72871042..93cad977c1 100644
--- a/examples/cc2538dk/crypto/ccm-test.c
+++ b/examples/cc2538-common/crypto/ccm-test.c
@@ -37,9 +37,9 @@
  * \addtogroup cc2538-examples
  * @{
  *
- * \defgroup cc2538-ccm-test cc2538dk AES-CCM Test Project
+ * \defgroup cc2538-ccm-test cc2538 AES-CCM Test Project
  *
- *   AES-CCM access example for CC2538 on SmartRF06EB.
+ *   AES-CCM access example for CC2538-based platforms
  *
  *   This example shows how AES-CCM should be used. The example also verifies
  *   the AES-CCM functionality.
@@ -47,7 +47,7 @@
  * @{
  *
  * \file
- *     Example demonstrating AES-CCM on the cc2538dk platform
+ *     Example demonstrating AES-CCM
  */
 #include "contiki.h"
 #include "sys/rtimer.h"
diff --git a/examples/cc2538dk/crypto/ctr-test.c b/examples/cc2538-common/crypto/ctr-test.c
similarity index 98%
rename from examples/cc2538dk/crypto/ctr-test.c
rename to examples/cc2538-common/crypto/ctr-test.c
index 4a20c90951..83ad242c7e 100644
--- a/examples/cc2538dk/crypto/ctr-test.c
+++ b/examples/cc2538-common/crypto/ctr-test.c
@@ -32,9 +32,9 @@
  * \addtogroup cc2538-examples
  * @{
  *
- * \defgroup cc2538-ctr-test cc2538dk AES-CTR Test Project
+ * \defgroup cc2538-ctr-test cc2538d AES-CTR Test Project
  *
- *   AES-CTR access example for CC2538 on SmartRF06EB.
+ *   AES-CTR access example for CC2538-based platforms
  *
  *   This example shows how AES-CTR should be used. The example also verifies
  *   the AES-CTR functionality.
@@ -42,7 +42,7 @@
  * @{
  *
  * \file
- *     Example demonstrating AES-CTR on the cc2538dk platform
+ *     Example demonstrating AES-CTR
  */
 #include "contiki.h"
 #include "sys/rtimer.h"
diff --git a/examples/cc2538dk/crypto/ecb-test.c b/examples/cc2538-common/crypto/ecb-test.c
similarity index 99%
rename from examples/cc2538dk/crypto/ecb-test.c
rename to examples/cc2538-common/crypto/ecb-test.c
index 54a7a566b8..d7d2841cba 100644
--- a/examples/cc2538dk/crypto/ecb-test.c
+++ b/examples/cc2538-common/crypto/ecb-test.c
@@ -32,9 +32,9 @@
  * \addtogroup cc2538-examples
  * @{
  *
- * \defgroup cc2538-ecb-test cc2538dk AES-ECB Test Project
+ * \defgroup cc2538-ecb-test cc2538 AES-ECB Test Project
  *
- *   AES-ECB access example for CC2538 on SmartRF06EB.
+ *   AES-ECB access example for CC2538-based platforms
  *
  *   This example shows how AES-ECB should be used. The example also verifies
  *   the AES-ECB functionality.
@@ -42,7 +42,7 @@
  * @{
  *
  * \file
- *     Example demonstrating AES-ECB on the cc2538dk platform
+ *     Example demonstrating AES-ECB
  */
 #include "contiki.h"
 #include "sys/rtimer.h"
diff --git a/examples/cc2538dk/crypto/gcm-test.c b/examples/cc2538-common/crypto/gcm-test.c
similarity index 99%
rename from examples/cc2538dk/crypto/gcm-test.c
rename to examples/cc2538-common/crypto/gcm-test.c
index 53c476fb16..a58158d335 100644
--- a/examples/cc2538dk/crypto/gcm-test.c
+++ b/examples/cc2538-common/crypto/gcm-test.c
@@ -32,9 +32,9 @@
  * \addtogroup cc2538-examples
  * @{
  *
- * \defgroup cc2538-gcm-test cc2538dk AES-GCM Test Project
+ * \defgroup cc2538-gcm-test cc2538 AES-GCM Test Project
  *
- *   AES-GCM access example for CC2538 on SmartRF06EB.
+ *   AES-GCM access example for CC2538-based platforms
  *
  *   This example shows how AES-GCM should be used. The example also verifies
  *   the AES-GCM functionality.
@@ -42,7 +42,7 @@
  * @{
  *
  * \file
- *     Example demonstrating AES-GCM on the cc2538dk platform
+ *     Example demonstrating AES-GCM
  */
 #include "contiki.h"
 #include "sys/rtimer.h"
diff --git a/examples/cc2538dk/crypto/sha256-test.c b/examples/cc2538-common/crypto/sha256-test.c
similarity index 97%
rename from examples/cc2538dk/crypto/sha256-test.c
rename to examples/cc2538-common/crypto/sha256-test.c
index f690ed27d9..c9498b8813 100644
--- a/examples/cc2538dk/crypto/sha256-test.c
+++ b/examples/cc2538-common/crypto/sha256-test.c
@@ -37,9 +37,9 @@
  * \addtogroup cc2538-examples
  * @{
  *
- * \defgroup cc2538-sha256-test cc2538dk SHA-256 Test Project
+ * \defgroup cc2538-sha256-test cc2538 SHA-256 Test Project
  *
- *   SHA-256 access example for CC2538 on SmartRF06EB.
+ *   SHA-256 access example for CC2538-based platforms
  *
  *   This example shows how SHA-256 should be used. The example also verifies
  *   the SHA-256 functionality.
@@ -47,7 +47,7 @@
  * @{
  *
  * \file
- *     Example demonstrating SHA-256 on the cc2538dk platform
+ *     Example demonstrating SHA-256
  */
 #include "contiki.h"
 #include "sys/rtimer.h"
diff --git a/examples/cc2538dk/mqtt-demo/Makefile b/examples/cc2538-common/mqtt-demo/Makefile
similarity index 87%
rename from examples/cc2538dk/mqtt-demo/Makefile
rename to examples/cc2538-common/mqtt-demo/Makefile
index 850bdc6099..7db9716a66 100644
--- a/examples/cc2538dk/mqtt-demo/Makefile
+++ b/examples/cc2538-common/mqtt-demo/Makefile
@@ -6,5 +6,5 @@ CONTIKI_WITH_IPV6 = 1
 
 APPS += mqtt
 
-CONTIKI=../../..
+CONTIKI = ../../..
 include $(CONTIKI)/Makefile.include
diff --git a/examples/cc2538dk/pka/Makefile.target b/examples/cc2538-common/mqtt-demo/Makefile.target
similarity index 100%
rename from examples/cc2538dk/pka/Makefile.target
rename to examples/cc2538-common/mqtt-demo/Makefile.target
diff --git a/examples/cc2538dk/mqtt-demo/README.md b/examples/cc2538-common/mqtt-demo/README.md
similarity index 100%
rename from examples/cc2538dk/mqtt-demo/README.md
rename to examples/cc2538-common/mqtt-demo/README.md
diff --git a/examples/cc2538dk/mqtt-demo/mqtt-demo.c b/examples/cc2538-common/mqtt-demo/mqtt-demo.c
similarity index 99%
rename from examples/cc2538dk/mqtt-demo/mqtt-demo.c
rename to examples/cc2538-common/mqtt-demo/mqtt-demo.c
index 691d4deed7..42d8404306 100644
--- a/examples/cc2538dk/mqtt-demo/mqtt-demo.c
+++ b/examples/cc2538-common/mqtt-demo/mqtt-demo.c
@@ -31,14 +31,14 @@
 /** \addtogroup cc2538-examples
  * @{
  *
- * \defgroup cc2538-mqtt-demo CC2538DK MQTT Demo Project
+ * \defgroup cc2538-mqtt-demo CC2538 MQTT Demo Project
  *
  * Demonstrates MQTT functionality. Works with IBM Quickstart as well as
  * mosquitto.
  * @{
  *
  * \file
- * An MQTT example for the cc2538dk platform
+ * An MQTT example for the cc2538-based platforms
  */
 /*---------------------------------------------------------------------------*/
 #include "contiki-conf.h"
diff --git a/examples/cc2538dk/mqtt-demo/project-conf.h b/examples/cc2538-common/mqtt-demo/project-conf.h
similarity index 100%
rename from examples/cc2538dk/mqtt-demo/project-conf.h
rename to examples/cc2538-common/mqtt-demo/project-conf.h
diff --git a/examples/cc2538dk/pka/Makefile b/examples/cc2538-common/pka/Makefile
similarity index 100%
rename from examples/cc2538dk/pka/Makefile
rename to examples/cc2538-common/pka/Makefile
diff --git a/examples/cc2538dk/sniffer/Makefile.target b/examples/cc2538-common/pka/Makefile.target
similarity index 100%
rename from examples/cc2538dk/sniffer/Makefile.target
rename to examples/cc2538-common/pka/Makefile.target
diff --git a/examples/cc2538dk/pka/ecc-ecdh.c b/examples/cc2538-common/pka/ecc-ecdh.c
similarity index 97%
rename from examples/cc2538dk/pka/ecc-ecdh.c
rename to examples/cc2538-common/pka/ecc-ecdh.c
index 623dbcc6c5..a1614b8e4e 100644
--- a/examples/cc2538dk/pka/ecc-ecdh.c
+++ b/examples/cc2538-common/pka/ecc-ecdh.c
@@ -32,9 +32,9 @@
  * \addtogroup cc2538-examples
  * @{
  *
- * \defgroup cc2538-ecdh-test cc2538dk ECDH Test Project
+ * \defgroup cc2538-ecdh-test cc2538 ECDH Test Project
  *
- *   ECDH example for CC2538 on SmartRF06EB.
+ *   ECDH example for CC2538-based platforms
  *
  *   This example shows how ECDH should be used. The example also verifies
  *   the ECDH functionality.
@@ -42,7 +42,7 @@
  * @{
  *
  * \file
- *     Example demonstrating ECDH on the cc2538dk platform
+ *     Example demonstrating ECDH
  */
 #include "contiki.h"
 #include "dev/ecc-algorithm.h"
diff --git a/examples/cc2538dk/pka/ecc-sign.c b/examples/cc2538-common/pka/ecc-sign.c
similarity index 96%
rename from examples/cc2538dk/pka/ecc-sign.c
rename to examples/cc2538-common/pka/ecc-sign.c
index f5dff50fb9..2b45854db5 100644
--- a/examples/cc2538dk/pka/ecc-sign.c
+++ b/examples/cc2538-common/pka/ecc-sign.c
@@ -32,9 +32,9 @@
  * \addtogroup cc2538-examples
  * @{
  *
- * \defgroup cc2538-ecdsa-sign-test cc2538dk ECDSA-Sign Test Project
+ * \defgroup cc2538-ecdsa-sign-test cc2538 ECDSA-Sign Test Project
  *
- *   ECDSA-Sign example for CC2538 on SmartRF06EB.
+ *   ECDSA-Sign example for CC2538-based platforms
  *
  *   This example shows how ECDSA-Sign should be used. The example also verifies
  *   the ECDSA-Sign functionality.
@@ -42,7 +42,7 @@
  * @{
  *
  * \file
- *     Example demonstrating ECDSA-Sign on the cc2538dk platform
+ *     Example demonstrating ECDSA-Sign
  */
 #include "contiki.h"
 #include "dev/ecc-algorithm.h"
diff --git a/examples/cc2538dk/pka/ecc-verify.c b/examples/cc2538-common/pka/ecc-verify.c
similarity index 95%
rename from examples/cc2538dk/pka/ecc-verify.c
rename to examples/cc2538-common/pka/ecc-verify.c
index 84f20f24b6..ff61b88c1d 100644
--- a/examples/cc2538dk/pka/ecc-verify.c
+++ b/examples/cc2538-common/pka/ecc-verify.c
@@ -32,9 +32,9 @@
  * \addtogroup cc2538-examples
  * @{
  *
- * \defgroup cc2538-ecdsa-verify-test cc2538dk ECDSA-Verify Test Project
+ * \defgroup cc2538-ecdsa-verify-test cc2538 ECDSA-Verify Test Project
  *
- *   ECDSA-Verify example for CC2538 on SmartRF06EB.
+ *   ECDSA-Verify example for CC2538-based platforms
  *
  *   This example shows how ECDSA-Verify should be used. The example also verifies
  *   the ECDSA-Verify functionality.
@@ -42,7 +42,7 @@
  * @{
  *
  * \file
- *     Example demonstrating ECDSA-Verify on the cc2538dk platform
+ *     Example demonstrating ECDSA-Verify
  */
 #include "contiki.h"
 #include "dev/ecc-algorithm.h"
diff --git a/examples/cc2538-common/project-conf.h b/examples/cc2538-common/project-conf.h
new file mode 100644
index 0000000000..b0a3b82313
--- /dev/null
+++ b/examples/cc2538-common/project-conf.h
@@ -0,0 +1,45 @@
+/*
+ * Copyright (c) 2012, Texas Instruments Incorporated - http://www.ti.com/
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * 3. Neither the name of the copyright holder nor the names of its
+ *    contributors may be used to endorse or promote products derived
+ *    from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE
+ * COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+ * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
+ * OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+/**
+ * \addtogroup cc2538-examples
+ * @{
+ *
+ * \file
+ * Project specific configuration defines for the basic cc2538dk examples
+ */
+#ifndef PROJECT_CONF_H_
+#define PROJECT_CONF_H_
+
+#define NETSTACK_CONF_RDC     nullrdc_driver
+
+#endif /* PROJECT_CONF_H_ */
+
+/** @} */
diff --git a/examples/cc2538dk/sniffer/Makefile b/examples/cc2538-common/sniffer/Makefile
similarity index 100%
rename from examples/cc2538dk/sniffer/Makefile
rename to examples/cc2538-common/sniffer/Makefile
diff --git a/examples/cc2538-common/sniffer/Makefile.target b/examples/cc2538-common/sniffer/Makefile.target
new file mode 100644
index 0000000000..777593c88d
--- /dev/null
+++ b/examples/cc2538-common/sniffer/Makefile.target
@@ -0,0 +1 @@
+TARGET = cc2538dk
diff --git a/examples/cc2538dk/sniffer/netstack.c b/examples/cc2538-common/sniffer/netstack.c
similarity index 100%
rename from examples/cc2538dk/sniffer/netstack.c
rename to examples/cc2538-common/sniffer/netstack.c
diff --git a/examples/cc2538dk/sniffer/project-conf.h b/examples/cc2538-common/sniffer/project-conf.h
similarity index 100%
rename from examples/cc2538dk/sniffer/project-conf.h
rename to examples/cc2538-common/sniffer/project-conf.h
diff --git a/examples/cc2538dk/sniffer/sniffer.c b/examples/cc2538-common/sniffer/sniffer.c
similarity index 95%
rename from examples/cc2538dk/sniffer/sniffer.c
rename to examples/cc2538-common/sniffer/sniffer.c
index 3f042bf07a..fe20b9c76a 100644
--- a/examples/cc2538dk/sniffer/sniffer.c
+++ b/examples/cc2538-common/sniffer/sniffer.c
@@ -32,9 +32,9 @@
  * \addtogroup cc2538-examples
  * @{
  *
- * \defgroup cc2538-sniffer cc2538dk Sniffer
+ * \defgroup cc2538-sniffer cc2538 Sniffer
  *
- * Sniffer for the cc2538dk platform. Originally based on the sensinode
+ * Sniffer for the CC2538-based platforms. Originally based on the sensinode
  * and cc2530dk sniffers.
  *
  * This example is to be used combined with the sensniff host-side tool,
diff --git a/examples/cc2538dk/sniffer/stub-rdc.c b/examples/cc2538-common/sniffer/stub-rdc.c
similarity index 100%
rename from examples/cc2538dk/sniffer/stub-rdc.c
rename to examples/cc2538-common/sniffer/stub-rdc.c
diff --git a/examples/zolertia/zoul/test-pwm.c b/examples/cc2538-common/test-pwm.c
similarity index 97%
rename from examples/zolertia/zoul/test-pwm.c
rename to examples/cc2538-common/test-pwm.c
index a19412a9dc..a1fa8c7277 100644
--- a/examples/zolertia/zoul/test-pwm.c
+++ b/examples/cc2538-common/test-pwm.c
@@ -29,12 +29,12 @@
  * OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 /**
- * \addtogroup remote-examples
+ * \addtogroup cc2538-examples
  * @{
  *
- * \defgroup remote-test-pwm Test the CC2538 PWM driver
+ * \defgroup cc2538-test-pwm Test the CC2538 PWM driver
  *
- * Demonstrates the use of the CC2538 PWM driver for the Zolertia's Zoul boards
+ * Demonstrates the use of the CC2538 PWM driver
  *
  * @{
  *
diff --git a/examples/cc2538dk/timer-test.c b/examples/cc2538-common/timer-test.c
similarity index 99%
rename from examples/cc2538dk/timer-test.c
rename to examples/cc2538-common/timer-test.c
index d9cac2520a..01cf7eedeb 100644
--- a/examples/cc2538dk/timer-test.c
+++ b/examples/cc2538-common/timer-test.c
@@ -32,7 +32,7 @@
  * \addtogroup cc2538-examples
  * @{
  *
- * \defgroup cc2538-timers cc2538dk Timer Test Project
+ * \defgroup cc2538-timers cc2538 Timer Test Project
  *
  *    This example tests the correct functionality of clocks and timers.
  *
diff --git a/examples/cc2538dk/Makefile b/examples/cc2538dk/Makefile
index 338b0a55c9..4cb4d4979c 100644
--- a/examples/cc2538dk/Makefile
+++ b/examples/cc2538dk/Makefile
@@ -1,5 +1,5 @@
 DEFINES+=PROJECT_CONF_H=\"project-conf.h\"
-CONTIKI_PROJECT = cc2538-demo timer-test
+CONTIKI_PROJECT = cc2538-demo
 
 all: $(CONTIKI_PROJECT)
 
diff --git a/examples/zolertia/zoul/Makefile b/examples/zolertia/zoul/Makefile
index 0b9eef6735..23808f45db 100644
--- a/examples/zolertia/zoul/Makefile
+++ b/examples/zolertia/zoul/Makefile
@@ -1,6 +1,6 @@
 DEFINES+=PROJECT_CONF_H=\"project-conf.h\"
 
-CONTIKI_PROJECT = zoul-demo test-tsl2563 test-sht25 test-pwm test-power-mgmt
+CONTIKI_PROJECT = zoul-demo test-tsl2563 test-sht25 test-power-mgmt
 CONTIKI_PROJECT += test-bmp085-bmp180 test-motion test-rotation-sensor
 CONTIKI_PROJECT += test-grove-light-sensor test-grove-loudness-sensor
 CONTIKI_PROJECT += test-weather-meter test-grove-gyro test-lcd
diff --git a/regression-tests/18-compile-arm-ports/Makefile b/regression-tests/18-compile-arm-ports/Makefile
index a292bb3e31..dbac11d430 100644
--- a/regression-tests/18-compile-arm-ports/Makefile
+++ b/regression-tests/18-compile-arm-ports/Makefile
@@ -6,7 +6,7 @@ hello-world/ev-aducrf101mkxz \
 ipv6/rpl-border-router/ev-aducrf101mkxz \
 webserver-ipv6/ev-aducrf101mkxz \
 ipv6/multicast/ev-aducrf101mkxz \
-cc2538dk/sniffer/ev-aducrf101mkxz \
+cc2538-common/sniffer/ev-aducrf101mkxz \
 cc26xx/cc26xx-web-demo/srf06-cc26xx \
 cc26xx/very-sleepy-demo/srf06-cc26xx:BOARD=sensortag/cc2650 \
 cc26xx/cc26xx-web-demo/srf06-cc26xx:BOARD=sensortag/cc2650 \
@@ -19,17 +19,22 @@ ipso-objects/cc2538dk \
 webserver-ipv6/cc2538dk \
 cc2538dk/cc2538dk \
 cc2538dk/udp-ipv6-echo-server/cc2538dk \
-cc2538dk/sniffer/cc2538dk \
-cc2538dk/mqtt-demo/cc2538dk \
-cc2538dk/crypto/cc2538dk \
-cc2538dk/pka/cc2538dk \
 ipv6/multicast/cc2538dk \
+cc2538-common/cc2538dk \
+cc2538-common/sniffer/cc2538dk \
+cc2538-common/mqtt-demo/cc2538dk \
+cc2538-common/crypto/cc2538dk \
+cc2538-common/pka/cc2538dk \
+cc2538-common/zoul \
+cc2538-common/sniffer/zoul \
+cc2538-common/mqtt-demo/zoul \
+cc2538-common/crypto/zoul \
+cc2538-common/pka/zoul \
 zolertia/zoul/zoul \
 zolertia/zoul/cc1200-demo/zoul \
 er-rest-example/zoul \
 ipso-objects/zoul \
 hello-world/zoul \
-cc2538dk/mqtt-demo/zoul \
 er-rest-example/stm32nucleo-spirit1 \
 ipv6/rpl-border-router/stm32nucleo-spirit1 \
 ipv6/rpl-udp/stm32nucleo-spirit1 \
-- 
GitLab