dts: bindings: lptim stm32 has a prescaler entry for the lptim clock
This is a new parameter to divide the LPTIM input clock by a prescaler, changing the max reachable timeout of the LP timer. It will divide the LPTIM input clock by 1 (reset value) up to 128. The lptim configuration register is written with a 3bit value. Signed-off-by: Francois Ramu <francois.ramu@st.com>
This commit is contained in:
parent
23f03c8030
commit
a2ab04b679
1 changed files with 26 additions and 0 deletions
|
@ -14,6 +14,32 @@ include:
|
|||
- st,countermode
|
||||
|
||||
properties:
|
||||
st,prescaler:
|
||||
type: int
|
||||
default: 1
|
||||
description: |
|
||||
Clock divider at the input of the lptimer clock, default reset value is 'not divided'.
|
||||
|
||||
Prescaler allows to achieve higher LPTIM timeout (up to 256s when lptim clocked by LSE)
|
||||
and consequently higher core sleep durations, but impacts the tick precision.
|
||||
To be used with caution.
|
||||
CONFIG_SYS_CLOCK_TICKS_PER_SEC could be used to tune tick duration and gain precision,
|
||||
at kernel timing granularity cost.
|
||||
|
||||
For example, when LPTIM is clocked by the LSE (32768Hz) and st,prescaler = <32>:
|
||||
LPTIM global timeout is 64 seconds with an increment of 0.97 ms.
|
||||
Using CONFIG_SYS_CLOCK_TICKS_PER_SEC = 4096, tick = 0.24 ms, LPTIM precision is 4 ticks.
|
||||
Using CONFIG_SYS_CLOCK_TICKS_PER_SEC = 1024, tick = 0.97 ms, LPTIM precision is 1 ticks.
|
||||
enum:
|
||||
- 1
|
||||
- 2
|
||||
- 4
|
||||
- 8
|
||||
- 16
|
||||
- 32
|
||||
- 64
|
||||
- 128
|
||||
|
||||
st,static-prescaler:
|
||||
type: boolean
|
||||
description: |
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue