kernel: kconfig: changing recommendations for SYS_CLOCK_TICKS_PER_SEC
Documentation for kconfig SYS_CLOCK_TICKS_PER_SEC has some outdated recommendations. Changing them to align with other documentation under kernel timing. Fixes: #25482 Signed-off-by: Spoorthy Priya Yerabolu <spoorthy.priya.yerabolu@intel.com>
This commit is contained in:
parent
89f6e24590
commit
e9ef078a11
1 changed files with 11 additions and 17 deletions
|
@ -537,24 +537,18 @@ config SYS_CLOCK_TICKS_PER_SEC
|
||||||
help
|
help
|
||||||
This option specifies the nominal frequency of the system clock in Hz.
|
This option specifies the nominal frequency of the system clock in Hz.
|
||||||
|
|
||||||
Depending on the choice made, an amount of possibly expensive math must
|
For asynchronous timekeeping, the kernel defines a "ticks" concept. A
|
||||||
occur when converting ticks to milliseconds and vice-versa. Some values
|
"tick" is the internal count in which the kernel does all its internal
|
||||||
are optimized, and yield significantly less math.
|
uptime and timeout bookeeping. Interrupts are expected to be delivered
|
||||||
|
on tick boundaries to the extent practical, and no fractional ticks
|
||||||
|
are tracked.
|
||||||
|
|
||||||
The optimal values from a computational point-of-view are 1000, 500,
|
The choice of tick rate is configurable by this option. Also the number
|
||||||
250 and 125, since in these cases there is either no computation
|
of cycles per tick should be chosen so that 1 millisecond is exactly
|
||||||
required, or it is all done via bit-shifting. These also give a
|
represented by an integral number of ticks. Defaults on most hardware
|
||||||
granularity from 1ms to 8ms.
|
platforms (ones that support setting arbitrary interrupt timeouts) are
|
||||||
|
expected to be in the range of 10 kHz, with software emulation
|
||||||
Other good values are 100, 50, 25, 20 and 10. In this case, some math
|
platforms and legacy drivers using a more traditional 100 Hz value.
|
||||||
is required but is minimized. These are also values that necessitate a
|
|
||||||
reduced number of clock interrupts per second, at the cost of
|
|
||||||
granularity (10ms to 100ms).
|
|
||||||
|
|
||||||
All other values require some extensive 64-bit math, and in some
|
|
||||||
configurations even require calls to compiler built-in functions, and
|
|
||||||
can require a non-trivial extra amount of stack space (e.g. around 80
|
|
||||||
bytes on x86).
|
|
||||||
|
|
||||||
Note that when available and enabled, in "tickless" mode
|
Note that when available and enabled, in "tickless" mode
|
||||||
this config variable specifies the minimum available timing
|
this config variable specifies the minimum available timing
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue