summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--chip/stm32/clock-stm32h7.c26
-rw-r--r--include/module_id.h21
2 files changed, 14 insertions, 33 deletions
diff --git a/chip/stm32/clock-stm32h7.c b/chip/stm32/clock-stm32h7.c
index edbbb6ea32..f0fcdf8f37 100644
--- a/chip/stm32/clock-stm32h7.c
+++ b/chip/stm32/clock-stm32h7.c
@@ -180,25 +180,9 @@ static void clock_set_osc(enum clock_osc osc)
void clock_enable_module(enum module_id module, int enable)
{
- static uint32_t clock_mask;
- int new_mask;
-
- if (enable)
- new_mask = clock_mask | (1 << module);
- else
- new_mask = clock_mask & ~(1 << module);
-
- /* Only change clock if needed */
- if ((!!new_mask) != (!!clock_mask)) {
-
- /* Flush UART before switching clock speed */
- cflush();
-#if 0 /* Power management policy: TODO(b/67081508) not implemented for now */
- clock_set_osc(new_mask ? OSC_PLL : OSC_CSI);
-#endif
- }
-
- clock_mask = new_mask;
+ /* Assume we have a single task using MODULE_FAST_CPU */
+ if (module == MODULE_FAST_CPU)
+ clock_set_osc(enable ? OSC_PLL : OSC_HSI);
}
void clock_init(void)
@@ -224,10 +208,6 @@ void clock_init(void)
/* Use more optimized flash latency settings for ACLK = HSI = 64 Mhz */
clock_flash_latency(FLASH_ACLK_64MHZ);
-
-#if 0 /* Keep default for now: HSI at 64 Mhz */
- clock_set_osc(OSC_PLL);
-#endif
}
static int command_clock(int argc, char **argv)
diff --git a/include/module_id.h b/include/module_id.h
index aac2cb6186..e1e5a1d441 100644
--- a/include/module_id.h
+++ b/include/module_id.h
@@ -11,46 +11,47 @@
#include "common.h"
enum module_id {
- MODULE_ADC, /* 0 */
+ MODULE_ADC,
MODULE_CHARGER,
MODULE_CHIPSET,
MODULE_CLOCK,
MODULE_COMMAND,
- MODULE_DMA, /* 5 */
+ MODULE_DMA,
MODULE_EXTPOWER,
+ MODULE_FAST_CPU,
MODULE_GPIO,
MODULE_HOOK,
MODULE_HOST_COMMAND,
- MODULE_HOST_EVENT, /* 10 */
+ MODULE_HOST_EVENT,
MODULE_I2C,
MODULE_KEYBOARD,
MODULE_KEYBOARD_SCAN,
MODULE_LIGHTBAR,
- MODULE_LPC, /* 15 */
+ MODULE_LPC,
+ MODULE_MCO,
MODULE_PECI,
MODULE_PMU,
MODULE_PORT80,
MODULE_POWER_LED,
- MODULE_PWM, /* 20 */
+ MODULE_PWM,
MODULE_RDD,
MODULE_RBOX,
MODULE_SPI,
MODULE_SPI_FLASH,
- MODULE_SPI_MASTER, /* 25 */
+ MODULE_SPI_MASTER,
MODULE_SWITCH,
MODULE_SYSTEM,
MODULE_TASK,
+ MODULE_TFDP,
MODULE_THERMAL,
- MODULE_UART, /* 30 */
+ MODULE_UART,
MODULE_USART,
MODULE_USB,
MODULE_USB_DEBUG,
MODULE_USB_PD,
- MODULE_USB_PORT_POWER, /* 35 */
+ MODULE_USB_PORT_POWER,
MODULE_USB_SWITCH,
MODULE_VBOOT,
- MODULE_MCO,
- MODULE_TFDP,
MODULE_WOV,
/* Module count; not an actual module */