i.MX95 System Counter module control register space is blocked by SCMI firmware, so we use Read Register space to get the counter. V2: - imx95 is not compatible with the existing hardware, so add a seperate entry for i.MX95 in dt-binding. - Per Marco's comments, the global variables was removed except to_sysctr. And add a new TIMER_OF_DECLARE entry for i.MX95 Signed-off-by: Peng Fan <peng.fan@xxxxxxx> --- Changes in v4: - Add A-b in patch 1 - Include slab.h in patch 2 to fix kernel build failure for i386 compile test. - Link to v3: https://lore.kernel.org/r/20240126-imx-sysctr-v3-0-33fe801d5f31@xxxxxxx Changes in v3: - Drop items in patch 1 per Conor's comments - Link to v2: https://lore.kernel.org/r/20240125-imx-sysctr-v2-0-7332470cd7ae@xxxxxxx --- Peng Fan (3): dt-bindings: timer: nxp,sysctr-timer: support i.MX95 clocksource/drivers/imx-sysctr: drop use global variables clocksource/drivers/imx-sysctr: support i.MX95 .../bindings/timer/nxp,sysctr-timer.yaml | 4 +- drivers/clocksource/timer-imx-sysctr.c | 117 +++++++++++++++------ 2 files changed, 90 insertions(+), 31 deletions(-) --- base-commit: 01af33cc9894b4489fb68fa35c40e9fe85df63dc change-id: 20240125-imx-sysctr-3a89a0852376 Best regards, -- Peng Fan <peng.fan@xxxxxxx>