[PATCH 0/2] Add Realtek SYSTIMER driver

Hao-Wen Ting posted 2 patches 2 months, 4 weeks ago
.../bindings/timer/realtek,systimer.yaml      |  54 ++++++
MAINTAINERS                                   |   5 +
drivers/clocksource/Kconfig                   |  10 +
drivers/clocksource/Makefile                  |   1 +
drivers/clocksource/timer-realtek.c           | 173 ++++++++++++++++++
5 files changed, 243 insertions(+)
create mode 100644 Documentation/devicetree/bindings/timer/realtek,systimer.yaml
create mode 100644 drivers/clocksource/timer-realtek.c
[PATCH 0/2] Add Realtek SYSTIMER driver
Posted by Hao-Wen Ting 2 months, 4 weeks ago
This patch series adds support for the Realtek SYSTIMER, a 64-bit timer
that serves as a tick broadcast timer on Realtek SoCs.

On Realtek platforms, CPUs can enter deep idle states (C-states) where
local timers are stopped and powered off. Without a global tick broadcast
timer, one CPU must remain awake to wake up the others, preventing all CPUs
from entering deep idle simultaneously and limiting power savings.

The Realtek SYSTIMER remains active during deep idle states, allowing all
CPUs to enter power-cut idle states simultaneously. This significantly
reduces overall power consumption while maintaining proper tick broadcast
functionality.

Technical details:
- 64-bit timer operating at 1MHz fixed frequency
- Supports oneshot mode for tick broadcast
- Uses standard TIMER_OF framework and Device Tree integration
- Remains active during CPU power-down states

Testing:
- Tested on Realtek SoC platform in ChromiumOS environment
- Power consumption reduction verified in deep idle scenarios

Patch organization:
Patch 1/2: Device Tree binding documentation
Patch 2/2: Clock source driver implementation

Best regards,
Hao-Wen Ting

Hao-Wen Ting (2):
  dt-bindings: timer: Add Realtek SYSTIMER binding
  clocksource: Add Realtek systimer as tick broadcast driver

 .../bindings/timer/realtek,systimer.yaml      |  54 ++++++
 MAINTAINERS                                   |   5 +
 drivers/clocksource/Kconfig                   |  10 +
 drivers/clocksource/Makefile                  |   1 +
 drivers/clocksource/timer-realtek.c           | 173 ++++++++++++++++++
 5 files changed, 243 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/timer/realtek,systimer.yaml
 create mode 100644 drivers/clocksource/timer-realtek.c


base-commit: 948b99877bf5a1cd58bee930e455b7574daba5c3
-- 
2.34.1