mirror of
https://github.com/RIOT-OS/RIOT.git
synced 2024-12-29 04:50:03 +01:00
Merge pull request #15865 from benpicco/pm_layered-default
cpu: make pm_layered a DEFAULT_MODULE
This commit is contained in:
commit
3b2a55a923
@ -87,8 +87,11 @@ endif
|
||||
# always select gpio (until explicit dependencies are sorted out)
|
||||
FEATURES_OPTIONAL += periph_gpio
|
||||
|
||||
# always select power management if available
|
||||
FEATURES_OPTIONAL += periph_pm
|
||||
# always select power management unless building the bootloader
|
||||
# pm is not needed by the bootloader and omitting it saves some ROM
|
||||
ifneq (1, $(RIOTBOOT_BUILD))
|
||||
FEATURES_OPTIONAL += periph_pm
|
||||
endif
|
||||
|
||||
# always select provided architecture features
|
||||
FEATURES_REQUIRED += $(filter arch_%,$(FEATURES_PROVIDED))
|
||||
|
@ -5,6 +5,7 @@ endif
|
||||
# used for software reset
|
||||
ifneq (,$(filter board_software_reset,$(USEMODULE)))
|
||||
FEATURES_REQUIRED += periph_gpio_irq
|
||||
FEATURES_REQUIRED += periph_pm
|
||||
endif
|
||||
|
||||
include $(RIOTBOARD)/common/nrf52/Makefile.dep
|
||||
|
@ -16,6 +16,7 @@ CFLAGS += -DRIOTBOOT
|
||||
CFLAGS += -DNDEBUG -DLOG_LEVEL=LOG_NONE
|
||||
DISABLE_MODULE += core_init core_msg core_panic
|
||||
DISABLE_MODULE += auto_init auto_init_%
|
||||
DISABLE_MODULE += pm_layered
|
||||
|
||||
# avoid using stdio
|
||||
USEMODULE += stdio_null
|
||||
|
1
cpu/cc2538/Makefile.default
Normal file
1
cpu/cc2538/Makefile.default
Normal file
@ -0,0 +1 @@
|
||||
DEFAULT_MODULE += pm_layered
|
@ -13,6 +13,4 @@ ifneq (,$(filter periph_uart_nonblocking,$(USEMODULE)))
|
||||
USEMODULE += tsrb
|
||||
endif
|
||||
|
||||
USEMODULE += pm_layered
|
||||
|
||||
include $(RIOTCPU)/cortexm_common/Makefile.dep
|
||||
|
1
cpu/efm32/Makefile.default
Normal file
1
cpu/efm32/Makefile.default
Normal file
@ -0,0 +1 @@
|
||||
DEFAULT_MODULE += pm_layered
|
@ -13,9 +13,6 @@ endif
|
||||
# include Gecko SDK package
|
||||
USEPKG += gecko_sdk
|
||||
|
||||
# include layered power management
|
||||
USEMODULE += pm_layered
|
||||
|
||||
ifneq (,$(filter efm32_coretemp,$(USEMODULE)))
|
||||
FEATURES_REQUIRED += periph_adc
|
||||
endif
|
||||
|
1
cpu/esp32/Makefile.default
Normal file
1
cpu/esp32/Makefile.default
Normal file
@ -0,0 +1 @@
|
||||
DEFAULT_MODULE += pm_layered
|
@ -5,7 +5,6 @@ include $(RIOTCPU)/esp_common/Makefile.dep
|
||||
USEMODULE += esp_idf_driver
|
||||
USEMODULE += esp_idf_esp32
|
||||
USEMODULE += esp_idf_soc
|
||||
USEMODULE += pm_layered
|
||||
|
||||
ifneq (,$(filter newlib,$(USEMODULE)))
|
||||
USEMODULE += newlib_nano
|
||||
|
1
cpu/kinetis/Makefile.default
Normal file
1
cpu/kinetis/Makefile.default
Normal file
@ -0,0 +1 @@
|
||||
DEFAULT_MODULE += pm_layered
|
@ -21,6 +21,5 @@ else ifneq (,$(filter periph_mcg_lite,$(FEATURES_USED)))
|
||||
endif
|
||||
|
||||
USEMODULE += periph_wdog
|
||||
USEMODULE += pm_layered
|
||||
|
||||
include $(RIOTCPU)/cortexm_common/Makefile.dep
|
||||
|
1
cpu/lpc1768/Makefile.default
Normal file
1
cpu/lpc1768/Makefile.default
Normal file
@ -0,0 +1 @@
|
||||
DEFAULT_MODULE += pm_layered
|
@ -1,3 +1 @@
|
||||
USEMODULE += pm_layered
|
||||
|
||||
include $(RIOTCPU)/cortexm_common/Makefile.dep
|
||||
|
1
cpu/lpc23xx/Makefile.default
Normal file
1
cpu/lpc23xx/Makefile.default
Normal file
@ -0,0 +1 @@
|
||||
DEFAULT_MODULE += pm_layered
|
@ -1,7 +1,6 @@
|
||||
USEMODULE += arm7_common
|
||||
USEMODULE += bitfield
|
||||
USEMODULE += periph
|
||||
USEMODULE += pm_layered
|
||||
|
||||
ifneq (,$(filter mci,$(USEMODULE)))
|
||||
USEMODULE += xtimer
|
||||
|
1
cpu/sam0_common/Makefile.default
Normal file
1
cpu/sam0_common/Makefile.default
Normal file
@ -0,0 +1 @@
|
||||
DEFAULT_MODULE += pm_layered
|
@ -6,9 +6,6 @@ ifneq (,$(filter periph_rtc periph_rtt,$(USEMODULE)))
|
||||
USEMODULE += periph_rtc_rtt
|
||||
endif
|
||||
|
||||
# All SAM0 based CPUs provide PM
|
||||
USEMODULE += pm_layered
|
||||
|
||||
# include sam0 common periph drivers
|
||||
USEMODULE += sam0_common_periph
|
||||
|
||||
|
1
cpu/samd21/Makefile.default
Normal file
1
cpu/samd21/Makefile.default
Normal file
@ -0,0 +1 @@
|
||||
include $(RIOTCPU)/sam0_common/Makefile.default
|
1
cpu/samd5x/Makefile.default
Normal file
1
cpu/samd5x/Makefile.default
Normal file
@ -0,0 +1 @@
|
||||
include $(RIOTCPU)/sam0_common/Makefile.default
|
1
cpu/saml1x/Makefile.default
Normal file
1
cpu/saml1x/Makefile.default
Normal file
@ -0,0 +1 @@
|
||||
include $(RIOTCPU)/sam0_common/Makefile.default
|
1
cpu/saml21/Makefile.default
Normal file
1
cpu/saml21/Makefile.default
Normal file
@ -0,0 +1 @@
|
||||
include $(RIOTCPU)/sam0_common/Makefile.default
|
1
cpu/stm32/Makefile.default
Normal file
1
cpu/stm32/Makefile.default
Normal file
@ -0,0 +1 @@
|
||||
DEFAULT_MODULE += pm_layered
|
@ -1,5 +1,4 @@
|
||||
# All stm32 families provide pm support
|
||||
USEMODULE += pm_layered
|
||||
|
||||
# include stm32 common periph drivers, clock configurations and vectors
|
||||
USEMODULE += periph stm32_clk stm32_vectors
|
||||
|
@ -98,11 +98,6 @@ extern "C" {
|
||||
#define CPUID_ADDR (UID_BASE)
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief We provide our own pm_off() function for all STM32-based CPUs
|
||||
*/
|
||||
#define PROVIDES_PM_LAYERED_OFF
|
||||
|
||||
/**
|
||||
* @brief All STM timers have 4 capture-compare channels
|
||||
*/
|
||||
|
@ -151,9 +151,3 @@ void pm_set(unsigned mode)
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
void pm_off(void)
|
||||
{
|
||||
irq_disable();
|
||||
pm_set(0);
|
||||
}
|
||||
|
@ -732,6 +732,10 @@ ifneq (,$(filter phydat,$(USEMODULE)))
|
||||
USEMODULE += fmt
|
||||
endif
|
||||
|
||||
ifneq (,$(filter pm_layered,$(USEMODULE)))
|
||||
FEATURES_REQUIRED += periph_pm
|
||||
endif
|
||||
|
||||
ifneq (,$(filter evtimer_mbox,$(USEMODULE)))
|
||||
USEMODULE += evtimer
|
||||
USEMODULE += core_mbox
|
||||
@ -1015,6 +1019,7 @@ ifneq (,$(filter riotboot_usb_dfu, $(USEMODULE)))
|
||||
USEMODULE += usbus_dfu
|
||||
USEMODULE += riotboot_flashwrite
|
||||
FEATURES_REQUIRED += no_idle_thread
|
||||
FEATURES_REQUIRED += periph_pm
|
||||
endif
|
||||
|
||||
ifneq (,$(filter irq_handler,$(USEMODULE)))
|
||||
|
@ -62,14 +62,22 @@ typedef union {
|
||||
*
|
||||
* @param[in] mode power mode to block
|
||||
*/
|
||||
#ifdef MODULE_PM_LAYERED
|
||||
void pm_block(unsigned mode);
|
||||
#else
|
||||
static inline void pm_block(unsigned mode) { (void)mode; }
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief Unblock a power mode
|
||||
*
|
||||
* @param[in] mode power mode to unblock
|
||||
*/
|
||||
#ifdef MODULE_PM_LAYERED
|
||||
void pm_unblock(unsigned mode);
|
||||
#else
|
||||
static inline void pm_unblock(unsigned mode) { (void)mode; }
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief Switches the MCU to a new power mode
|
||||
|
Loading…
Reference in New Issue
Block a user