When CONFIG_TIMER_EARLY is selected and the timer driver implements timer_early_get_count() and timer_early_get_rate() this leads to an EAGAIN error one some configurations in...
common/board_f.c:initf_dm() initf_dm() invokes dm_timer_init(), but this function returns with an EAGAIN error in, because the DM virtual root driver isn't initialized yet in... drivers/timer/timer-class.c:dm_timer_init() Moved error handling to... lib/time.c For details you can read the description in the patches. Affected drivers: drivers/timer/andes_plmt_timer.c drivers/timer/sifive_clint_timer.c drivers/timer/riscv_timer.c I don't know who maintains these base libraries and base functions, so I used the copyright holders. For the driver I added the required maintainers to CC. Signed-off-by: Johannes Krottmayer <krj...@gmail.com> Cc: Wolfgang Denk <w...@denx.de> Cc: Thomas Chou <tho...@wytron.com.tw> Cc: Rick Chen <r...@andestech.com> Cc: Leo <ycli...@andestech.com> Cc: Bin Meng <bmeng...@gmail.com> Cc: Sean Anderson <sean...@gmail.com> Cc: Anup Patel <a...@brainfault.org> Cc: Thomas Chou <tho...@wytron.com.tw> --- Johannes Krottmayer (2): lib: time: Change behaviour of CONFIG_TIMER_EARLY common: board_f: Fix CONFIG_TIMER_EARLY issue (EAGAIN) common/board_f.c | 6 ------ lib/time.c | 42 +++++++++++++++++++++++++++++++++--------- 2 files changed, 33 insertions(+), 15 deletions(-) -- 2.34.1