All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v4 0/2] riscv: timer: Fix M-mode early timer support
@ 2026-09-11  7:14 Nikita Shubin
  2026-09-11  7:14 ` [PATCH v4 1/2] riscv: timer: Make RISCV_TIMER definitions weak Nikita Shubin
  2026-09-11  7:14 ` [PATCH v4 2/2] riscv: timer: Enable early timer for M‑mode Nikita Shubin
  0 siblings, 2 replies; 7+ messages in thread
From: Nikita Shubin @ 2026-09-11  7:14 UTC (permalink / raw)
  To: u-boot; +Cc: Yao Zi, Tom Rini, Michal Simek, Nikita Shubin

This series addresses two issues with the generic RISC-V timer driver.

Patch 1 marks timer_early_get_rate() and timer_early_get_count() as __weak
to prevent link conflicts with other drivers (e.g., ACLINT MTIMER) that may
also provide their own implementation.

Patch 2 adds proper M‑mode support: timer_early_get_rate() is now defined
for M‑mode using RISCV_MMODE_TIMER_FREQ, and timer_early_get_count() is
no longer guarded by RISCV_SMODE, making it available whenever
CONFIG_TIMER_EARLY is enabled. This is necessary because functions like
net_random_ethaddr() rely on get_ticks() which uses timer_early_get_count().

Signed-off-by: Nikita Shubin <nikita.shubin@maquefel.me>
---
Changes in v4:
- Change KConfig description for RISCV_TIMER: drop ACLINT warning as we
  define funcs as weak, rephrase note about macros and make int make it
  more compact.

- Link to v3: https://lore.kernel.org/r/20260910-riscv_fix_early_timer_mmode-v3-0-52b569fa1d6d@maquefel.me

Changes in v3:
- reoder patches so weak definitions come first

- Link to v2: https://lore.kernel.org/r/20260909-riscv_fix_early_timer_mmode-v2-0-563bff2a50c5@maquefel.me

Changes in v2:
- Updated Kconfig help text and driver comments to clarify M-mode support
- Simplified code a bit
- Add patch to make timer_early_get_count() weak (optional)

- Link to v1: https://lore.kernel.org/r/20260904-riscv_fix_early_timer_mmode-v1-1-210e769b0ac2@maquefel.me

---
Nikita Shubin (2):
      riscv: timer: Make RISCV_TIMER definitions weak
      riscv: timer: Enable early timer for M‑mode

 drivers/timer/Kconfig       |  9 +++++++--
 drivers/timer/riscv_timer.c | 16 +++++++++++-----
 2 files changed, 18 insertions(+), 7 deletions(-)
---
base-commit: cc557af4553382f6f50e3ed62b9577054e7bc54f
change-id: 20260904-riscv_fix_early_timer_mmode-174f3ee4e106

Best regards,
-- 
Nikita Shubin


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2026-09-11  9:15 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-09-11  7:14 [PATCH v4 0/2] riscv: timer: Fix M-mode early timer support Nikita Shubin
2026-09-11  7:14 ` [PATCH v4 1/2] riscv: timer: Make RISCV_TIMER definitions weak Nikita Shubin
2026-09-11  7:14 ` [PATCH v4 2/2] riscv: timer: Enable early timer for M‑mode Nikita Shubin
2026-09-11  8:27   ` Yao Zi
2026-09-11  8:36     ` Nikita Shubin
2026-09-11  9:03       ` Yao Zi
2026-09-11  9:15         ` Nikita Shubin

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.