From 1ad23b8d13236e8dffe6486fae4b1a1ce769ab12 Mon Sep 17 00:00:00 2001 From: Charles Date: Fri, 3 Sep 2021 22:33:40 +0200 Subject: [PATCH 1/2] Allow more target prescaler for LPTIM --- targets/TARGET_STM/lp_ticker.c | 12 +++++++++++- targets/targets.json | 2 +- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/targets/TARGET_STM/lp_ticker.c b/targets/TARGET_STM/lp_ticker.c index 964b508cee7..953111270ff 100644 --- a/targets/TARGET_STM/lp_ticker.c +++ b/targets/TARGET_STM/lp_ticker.c @@ -242,7 +242,17 @@ void lp_ticker_init(void) LptimHandle.State = HAL_LPTIM_STATE_RESET; LptimHandle.Init.Clock.Source = LPTIM_CLOCKSOURCE_APBCLOCK_LPOSC; #if defined(MBED_CONF_TARGET_LPTICKER_LPTIM_CLOCK) -#if (MBED_CONF_TARGET_LPTICKER_LPTIM_CLOCK == 4) +#if (MBED_CONF_TARGET_LPTICKER_LPTIM_CLOCK == 128) + LptimHandle.Init.Clock.Prescaler = LPTIM_PRESCALER_DIV128; +#elif (MBED_CONF_TARGET_LPTICKER_LPTIM_CLOCK == 64) + LptimHandle.Init.Clock.Prescaler = LPTIM_PRESCALER_DIV64; +#elif (MBED_CONF_TARGET_LPTICKER_LPTIM_CLOCK == 32) + LptimHandle.Init.Clock.Prescaler = LPTIM_PRESCALER_DIV32; +#elif (MBED_CONF_TARGET_LPTICKER_LPTIM_CLOCK == 16) + LptimHandle.Init.Clock.Prescaler = LPTIM_PRESCALER_DIV16; +#elif (MBED_CONF_TARGET_LPTICKER_LPTIM_CLOCK == 8) + LptimHandle.Init.Clock.Prescaler = LPTIM_PRESCALER_DIV8; +#elif (MBED_CONF_TARGET_LPTICKER_LPTIM_CLOCK == 4) LptimHandle.Init.Clock.Prescaler = LPTIM_PRESCALER_DIV4; #elif (MBED_CONF_TARGET_LPTICKER_LPTIM_CLOCK == 2) LptimHandle.Init.Clock.Prescaler = LPTIM_PRESCALER_DIV2; diff --git a/targets/targets.json b/targets/targets.json index d26e94f586f..6c2b96c52e2 100644 --- a/targets/targets.json +++ b/targets/targets.json @@ -1256,7 +1256,7 @@ "macro_name": "LPTICKER_DELAY_TICKS" }, "lpticker_lptim_clock": { - "help": "Default value for LPTIM clock (lpticker_lptim == 1). Value is the dividing factor. Choose 1, 2 or 4", + "help": "Default value for LPTIM clock (lpticker_lptim == 1). Value is the dividing factor. Choose 1, 2, 4, 8, 16, 32, 64 or 128", "value": 1 }, "gpio_reset_at_init": { From 81876a0f887c9242232ede8231c1b8149b93b86c Mon Sep 17 00:00:00 2001 From: Charles Date: Mon, 6 Sep 2021 10:25:42 +0200 Subject: [PATCH 2/2] added disclaimers --- targets/targets.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/targets/targets.json b/targets/targets.json index 6c2b96c52e2..6b7e34d5131 100644 --- a/targets/targets.json +++ b/targets/targets.json @@ -1257,7 +1257,8 @@ }, "lpticker_lptim_clock": { "help": "Default value for LPTIM clock (lpticker_lptim == 1). Value is the dividing factor. Choose 1, 2, 4, 8, 16, 32, 64 or 128", - "value": 1 + "value": 1, + "constraint": "Disclaimers : values from 8 to 128 have impacts on mbed-os timer precision and therefore on scheduling. It's not supported by mbed-os. Use it if you know what you're doing such as long low power sleep." }, "gpio_reset_at_init": { "help": "if value set, all GPIO are reset during init",