diff --git a/sys/auto_init/saul/auto_init_gpio.c b/sys/auto_init/saul/auto_init_gpio.c
index c2a400a4bb80d0edcf2061348c87ef5a7e7bc49d..6e34458ae6a58ed3ab751fef3e5ad51f2f4c85ff 100644
--- a/sys/auto_init/saul/auto_init_gpio.c
+++ b/sys/auto_init/saul/auto_init_gpio.c
@@ -55,7 +55,7 @@ void auto_init_gpio(void)
 
         LOG_DEBUG("[auto_init_saul] initializing GPIO #%u\n", i);
 
-        saul_reg_entries[i].dev = p;
+        saul_reg_entries[i].dev = (void *)p;
         saul_reg_entries[i].name = p->name;
         if ((p->mode == GPIO_IN) || (p->mode == GPIO_IN_PD) ||
             (p->mode == GPIO_IN_PU)) {
diff --git a/sys/include/saul_reg.h b/sys/include/saul_reg.h
index df9fa19eb3817e4a90565941b32ddebdbe055831..624e1db1b3cbbbd47c7dba94d2fce4bcc5c5ac7e 100644
--- a/sys/include/saul_reg.h
+++ b/sys/include/saul_reg.h
@@ -38,7 +38,7 @@ extern "C" {
  */
 typedef struct saul_reg {
     struct saul_reg *next;          /**< pointer to the next device */
-    const void *dev;                /**< pointer to the device descriptor */
+    void *dev;                      /**< pointer to the device descriptor */
     const char *name;               /**< string identifier for the device */
     saul_driver_t const *driver;    /**< the devices read callback */
 } saul_reg_t;