Commit dabc4df2 authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge tag 'timers-core-2020-06-02' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull timer updates from Thomas Gleixner:
 "The truly boring timer and clocksource updates for 5.8:

   - Not a single new clocksource or clockevent driver!

   - Device tree updates for various chips

   - Fixes and improvements and cleanups all over the place"

* tag 'timers-core-2020-06-02' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (27 commits)
  dt-bindings: timer: Add renesas,em-sti bindings
  clocksource/drivers/timer-versatile: Clear OF_POPULATED flag
  clocksource: mips-gic-timer: Mark GIC timer as unstable if ref clock changes
  clocksource: mips-gic-timer: Register as sched_clock
  clocksource: dw_apb_timer_of: Fix missing clockevent timers
  clocksource: dw_apb_timer: Affiliate of-based timer with any CPU
  clocksource: dw_apb_timer: Make CPU-affiliation being optional
  dt-bindings: timer: Move snps,dw-apb-timer DT schema from rtc
  dt-bindings: rtc: Convert snps,dw-apb-timer to DT schema
  clocksource/drivers/timer-ti-dm: Do one override clock parent in prepare()
  clocksource/drivers/timer-ti-dm: Fix spelling mistake "detectt" -> "detect"
  clocksource/drivers/timer-ti-dm: Fix warning for set but not used
  clocksource/drivers/timer-ti-dm: Add clockevent and clocksource support
  clocksource/drivers/timer-ti-32k: Add support for initializing directly
  drivers/clocksource/arm_arch_timer: Remove duplicate error message
  clocksource/drivers/arc_timer: Remove duplicate error message
  clocksource/drivers/rda: drop redundant Kconfig dependency
  clocksource/drivers/timer-ti-dm: Fix warning for set but not used
  clocksource/drivers/timer-ti-dm: Add clockevent and clocksource support
  clocksource/drivers/timer-ti-32k: Add support for initializing directly
  ...
parents f6606d0c 809eb4e9
Loading
Loading
Loading
Loading
+0 −32
Original line number Diff line number Diff line
* Designware APB timer

Required properties:
- compatible: One of:
 	"snps,dw-apb-timer"
	"snps,dw-apb-timer-sp" <DEPRECATED>
	"snps,dw-apb-timer-osc" <DEPRECATED>
- reg: physical base address of the controller and length of memory mapped
  region.
- interrupts: IRQ line for the timer.
- either clocks+clock-names or clock-frequency properties

Optional properties:
- clocks	: list of clock specifiers, corresponding to entries in
		  the clock-names property;
- clock-names	: should contain "timer" and "pclk" entries, matching entries
		  in the clocks property.
- clock-frequency: The frequency in HZ of the timer.
- clock-freq: For backwards compatibility with picoxcell

If using the clock specifiers, the pclk clock is optional, as not all
systems may use one.


Example:
	timer@ffe00000 {
		compatible = "snps,dw-apb-timer";
		interrupts = <0 170 4>;
		reg = <0xffe00000 0x1000>;
		clocks = <&timer_clk>, <&timer_pclk>;
		clock-names = "timer", "pclk";
	};
+46 −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/renesas,em-sti.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Renesas EMMA Mobile System Timer

maintainers:
  - Magnus Damm <magnus.damm@gmail.com>

properties:
  compatible:
    const: renesas,em-sti

  reg:
    maxItems: 1

  interrupts:
    maxItems: 1

  clocks:
    maxItems: 1

  clock-names:
    const: sclk

required:
  - compatible
  - reg
  - interrupts
  - clocks
  - clock-names

additionalProperties: false

examples:
  - |
    #include <dt-bindings/interrupt-controller/arm-gic.h>
    timer@e0180000 {
            compatible = "renesas,em-sti";
            reg = <0xe0180000 0x54>;
            interrupts = <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>;
            clocks = <&sti_sclk>;
            clock-names = "sclk";
    };
+88 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: GPL-2.0-only
%YAML 1.2
---
$id: http://devicetree.org/schemas/timer/snps,dw-apb-timer.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Synopsys DesignWare APB Timer

maintainers:
  - Daniel Lezcano <daniel.lezcano@linaro.org>

properties:
  compatible:
    oneOf:
      - const: snps,dw-apb-timer
      - enum:
          - snps,dw-apb-timer-sp
          - snps,dw-apb-timer-osc
        deprecated: true

  reg:
    maxItems: 1

  interrupts:
    maxItems: 1

  clocks:
    minItems: 1
    items:
       - description: Timer ticks reference clock source
       - description: APB interface clock source

  clock-names:
    minItems: 1
    items:
      - const: timer
      - const: pclk

  clock-frequency: true

  clock-freq:
    $ref: "/schemas/types.yaml#/definitions/uint32"
    description: |
      Has the same meaning as the 'clock-frequency' property - timer clock
      frequency in HZ, but is defined only for the backwards compatibility
      with the picoxcell platform.

unevaluatedProperties: false

required:
  - compatible
  - reg
  - interrupts

oneOf:
  - required:
      - clocks
      - clock-names
  - required:
      - clock-frequency
  - required:
      - clock-freq

examples:
  - |
    timer@ffe00000 {
      compatible = "snps,dw-apb-timer";
      interrupts = <0 170 4>;
      reg = <0xffe00000 0x1000>;
      clocks = <&timer_clk>, <&timer_pclk>;
      clock-names = "timer", "pclk";
    };
  - |
    timer@ffe00000 {
      compatible = "snps,dw-apb-timer";
      interrupts = <0 170 4>;
      reg = <0xffe00000 0x1000>;
      clocks = <&timer_clk>;
      clock-names = "timer";
    };
  - |
    timer@ffe00000 {
      compatible = "snps,dw-apb-timer";
      interrupts = <0 170 4>;
      reg = <0xffe00000 0x1000>;
      clock-frequency = <25000000>;
    };
...
+1 −0
Original line number Diff line number Diff line
@@ -105,6 +105,7 @@
		ti,timers = <&timer7>;
		pinctrl-names = "default";
		pinctrl-0 = <&dmtimer7_pins>;
		ti,clock-source = <0x01>;
	};

	vmmcsd_fixed: regulator-3v3 {
+1 −0
Original line number Diff line number Diff line
@@ -156,6 +156,7 @@
		pinctrl-0 = <&pwm_pins>;
		ti,timers = <&timer11>;
		#pwm-cells = <3>;
		ti,clock-source = <0x01>;
	};

	/* HS USB Host PHY on PORT 1 */
Loading