summaryrefslogtreecommitdiffstats
path: root/platforms
diff options
context:
space:
mode:
Diffstat (limited to 'platforms')
-rw-r--r--platforms/chibios/config.h7
-rw-r--r--platforms/chibios/platform.mk9
-rw-r--r--platforms/chibios/vendors/RP/pico_sdk_shims.c3
-rw-r--r--platforms/chibios/wait.c2
4 files changed, 19 insertions, 2 deletions
diff --git a/platforms/chibios/config.h b/platforms/chibios/config.h
new file mode 100644
index 0000000000..006415a5dc
--- /dev/null
+++ b/platforms/chibios/config.h
@@ -0,0 +1,7 @@
+// Copyright 2023 Nick Brassel (@tzarc)
+// SPDX-License-Identifier: GPL-2.0-or-later
+#pragma once
+
+#ifndef CORTEX_ENABLE_WFI_IDLE
+# define CORTEX_ENABLE_WFI_IDLE TRUE
+#endif // CORTEX_ENABLE_WFI_IDLE
diff --git a/platforms/chibios/platform.mk b/platforms/chibios/platform.mk
index 6304b42d87..081b001e6d 100644
--- a/platforms/chibios/platform.mk
+++ b/platforms/chibios/platform.mk
@@ -432,6 +432,15 @@ else
endif
endif
+# Extra config.h files for the platform
+ifneq ("$(wildcard $(PLATFORM_COMMON_DIR)/vendors/$(MCU_FAMILY)/$(MCU_SERIES)/config.h)","")
+ CONFIG_H += $(PLATFORM_COMMON_DIR)/vendors/$(MCU_FAMILY)/$(MCU_SERIES)/config.h
+endif
+ifneq ("$(wildcard $(PLATFORM_COMMON_DIR)/vendors/$(MCU_FAMILY)/config.h)","")
+ CONFIG_H += $(PLATFORM_COMMON_DIR)/vendors/$(MCU_FAMILY)/config.h
+endif
+CONFIG_H += $(PLATFORM_COMMON_DIR)/config.h
+
# Assembler flags
ASFLAGS += $(SHARED_ASFLAGS) $(TOOLCHAIN_ASFLAGS)
diff --git a/platforms/chibios/vendors/RP/pico_sdk_shims.c b/platforms/chibios/vendors/RP/pico_sdk_shims.c
index 239155c086..caab400531 100644
--- a/platforms/chibios/vendors/RP/pico_sdk_shims.c
+++ b/platforms/chibios/vendors/RP/pico_sdk_shims.c
@@ -2,7 +2,8 @@
// SPDX-License-Identifier: GPL-2.0-or-later
#include <stdbool.h>
-#include <ch.h>
+
+extern void chSysHalt(const char *reason) __attribute__((noreturn));
void panic(const char *fmt, ...) {
chSysHalt(fmt);
diff --git a/platforms/chibios/wait.c b/platforms/chibios/wait.c
index 88cb5e6d54..7fe6d477b8 100644
--- a/platforms/chibios/wait.c
+++ b/platforms/chibios/wait.c
@@ -21,7 +21,7 @@
#ifdef WAIT_US_TIMER
void wait_us(uint16_t duration) {
- static const GPTConfig gpt_cfg = {1000000, NULL, 0, 0}; /* 1MHz timer, no callback */
+ static const GPTConfig gpt_cfg = {.frequency = 1000000}; /* 1MHz timer, no callback */
if (duration == 0) {
duration = 1;