PetteriAimonen opened a new pull request, #11186:
URL: https://github.com/apache/nuttx/pull/11186

   ## Summary
   
   Previous `adjtime()` implementation was limited to adjusting system timer 
tick period. This commit reimplements the internals to use a kernel watchdog 
timer. Platform-independent part of the code now works also for adjusting hires 
RTC and tickless timer rate.
   
   Currently there are no in-tree architecture implementations for high-res RTC 
nor tickless timer adjustments, but the API is now available.
   
   Other improvements:
   
   - Support query of remaining adjustment by passing NULL to first argument of 
adjtime(). This matches Linux behavior.
   
   - Improve resolution available for architecture driver, previously limited 
to 1 microsecond per tick. Now 1 nanosecond per second on API level.  For ARM 
SysTick based drivers the hardware resolution is 1 clock cycle per tick.
   
   ## Impact
   
   User code facing API is unchanged. Architecture code API has changed:
   `up_adj_timer_period()` is replaced by `up_adjtime()`.
   
   The in-tree implementations for STM32 and SAMv7 architectures have been 
updated to match.
   
   ## Testing
   
   Tested on custom STM32F407 board in classic systick configuration, and also 
with `CONFIG_RTC_HIRES=y` against custom RTC driver.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscr...@nuttx.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to