Commit 2437f798 authored by Thomas Gleixner's avatar Thomas Gleixner
Browse files

Merge tag 'timers-v6.19-rc1' of...

Merge tag 'timers-v6.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/daniel.lezcano/linux into timers/clocksource

Pull clocksource/event changes from Daniel Lezcano:

    - Use 64-bits for timer compensation for IoT usage where the suspend
      time is much longer than what 32-bits can provide (Enlin Mu)

    - Add delay support on sp804 for ARM32 platforms (Stephen Eta Zhou)

    - Fix missing resource release on error in the probe path of in the
      ralink driver (Haotian Zhang)

    - Fix double deregistration on probe failure in the NXP STM driver
      (Johan Hovold)

    - Disable runtime PM for the Renesas SH CMT timer because it is
      incompatible with PREEMPT_RT=y (Niklas Söderlund)

    - Fix section mismatches in the NXP STM driver (Johan Hovold)

    - Preventing unbinding the NXP PIT, STM and MMIO ARM Arch timers as
      the code does not suppport bind/unbind (Johan Hovold)

    - Use the clocksource instead of ticks on the RDA8810PL platform
      (Enlin Mu)

    - Drop the unused module alias for the STM32-LP (Johan Hovold)

    - Add Realtek system timer driver (Hao-Wen Ting)

Link: https://lore.kernel.org/all/9303b790-28d4-4bd9-b01d-28fb05493596@linaro.org
parents dcb6fa37 d1780dce
Loading
Loading
Loading
Loading
+47 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/timer/realtek,rtd1625-systimer.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Realtek System Timer

maintainers:
  - Hao-Wen Ting <haowen.ting@realtek.com>

description:
  The Realtek SYSTIMER (System Timer) is a 64-bit global hardware counter operating
  at a fixed 1MHz frequency. Thanks to its compare match interrupt capability,
  the timer natively supports oneshot mode for tick broadcast functionality.

properties:
  compatible:
    oneOf:
      - const: realtek,rtd1625-systimer
      - items:
          - const: realtek,rtd1635-systimer
          - const: realtek,rtd1625-systimer

  reg:
    maxItems: 1

  interrupts:
    maxItems: 1

required:
  - compatible
  - reg
  - interrupts

additionalProperties: false

examples:
  - |
    #include <dt-bindings/interrupt-controller/arm-gic.h>

    timer@89420 {
        compatible = "realtek,rtd1635-systimer",
                     "realtek,rtd1625-systimer";
        reg = <0x89420 0x18>;
        interrupts = <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>;
    };
+5 −0
Original line number Diff line number Diff line
@@ -21669,6 +21669,11 @@ S: Maintained
F:	Documentation/devicetree/bindings/spi/realtek,rtl9301-snand.yaml
F:	drivers/spi/spi-realtek-rtl-snand.c
REALTEK SYSTIMER DRIVER
M:	Hao-Wen Ting <haowen.ting@realtek.com>
S:	Maintained
F:	drivers/clocksource/timer-realtek.c
REALTEK WIRELESS DRIVER (rtlwifi family)
M:	Ping-Ke Shih <pkshih@realtek.com>
L:	linux-wireless@vger.kernel.org
+11 −0
Original line number Diff line number Diff line
@@ -782,4 +782,15 @@ config NXP_STM_TIMER
          Enables the support for NXP System Timer Module found in the
          s32g NXP platform series.

config RTK_SYSTIMER
	bool "Realtek SYSTIMER support"
	depends on ARM || ARM64
	depends on ARCH_REALTEK || COMPILE_TEST
	select TIMER_OF
	help
	  This option enables the driver that registers the global 1 MHz hardware
	  counter as a clock event device on Realtek SoCs. Make sure to enable
	  this option only when building for a Realtek platform or for compilation
	  testing.

endmenu
+1 −0
Original line number Diff line number Diff line
@@ -95,3 +95,4 @@ obj-$(CONFIG_CLKSRC_LOONGSON1_PWM) += timer-loongson1-pwm.o
obj-$(CONFIG_EP93XX_TIMER)		+= timer-ep93xx.o
obj-$(CONFIG_RALINK_TIMER)		+= timer-ralink.o
obj-$(CONFIG_NXP_STM_TIMER)		+= timer-nxp-stm.o
obj-$(CONFIG_RTK_SYSTIMER)		+= timer-realtek.o
+2 −0
Original line number Diff line number Diff line
@@ -426,6 +426,7 @@ static struct platform_driver arch_timer_mmio_drv = {
	.driver	= {
		.name = "arch-timer-mmio",
		.of_match_table	= arch_timer_mmio_of_table,
		.suppress_bind_attrs = true,
	},
	.probe	= arch_timer_mmio_probe,
};
@@ -434,6 +435,7 @@ builtin_platform_driver(arch_timer_mmio_drv);
static struct platform_driver arch_timer_mmio_acpi_drv = {
	.driver	= {
		.name = "gtdt-arm-mmio-timer",
		.suppress_bind_attrs = true,
	},
	.probe	= arch_timer_mmio_probe,
};
Loading