diff --git a/drivers/cc110x/arch_cc1100.h b/drivers/cc110x/arch_cc1100.h
index 431f3026cbbde62f42ad635c8ca6b33b27477a64..67c4d2e449274d40b32346479f63fc40622a30a9 100644
--- a/drivers/cc110x/arch_cc1100.h
+++ b/drivers/cc110x/arch_cc1100.h
@@ -19,6 +19,10 @@
 
 #include <stdint.h>
 
+#ifdef __cplusplus
+extern "C" {
+#endif
+
 uint8_t cc110x_txrx(uint8_t c);
 
 void cc110x_gdo0_enable(void);
@@ -29,3 +33,7 @@ void cc110x_init_interrupts(void);
 
 void cc110x_before_send(void);
 void cc110x_after_send(void);
+
+#ifdef __cplusplus
+}
+#endif
diff --git a/drivers/include/isl29020.h b/drivers/include/isl29020.h
index 92ba76284b188aaf39611c0795e47cc0abfd557a..26e4dfe9476f0de997c4b8db12373494f56372a3 100644
--- a/drivers/include/isl29020.h
+++ b/drivers/include/isl29020.h
@@ -24,6 +24,10 @@
 #include <stdint.h>
 #include "periph/i2c.h"
 
+#ifdef __cplusplus
+extern "C" {
+#endif
+
  /**
   * @brief The sensors default I2C address
   */
@@ -101,5 +105,9 @@ int isl29020_enable(isl29020_t *dev);
  */
 int isl29020_disable(isl29020_t *dev);
 
+#ifdef __cplusplus
+}
+#endif
+
 #endif /* __ISL29020_H */
 /** @} */
diff --git a/drivers/isl29020/include/isl29020-internal.h b/drivers/isl29020/include/isl29020-internal.h
index dc3cfa21a0c5167fa7e32e9013699f9c9b7e69cd..7df0b15fbdcff2e2aa3ccaf4d7e1f3a333f8ca81 100644
--- a/drivers/isl29020/include/isl29020-internal.h
+++ b/drivers/isl29020/include/isl29020-internal.h
@@ -19,6 +19,10 @@
 #ifndef __ISL29020_INTERNAL_H
 #define __ISL29020_INTERNAL_H
 
+#ifdef __cplusplus
+extern "C" {
+#endif
+
 /**
  * @name ISL29020 registers
  * @{
@@ -61,5 +65,9 @@
 #define ISL29020_RANGE_4        0x03
 /** @} */
 
+#ifdef __cplusplus
+}
+#endif
+
 #endif /* __ISL29020_INTERNAL_H */
 /** @} */