182b9a6bbSTony Lindgren# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 282b9a6bbSTony Lindgren%YAML 1.2 382b9a6bbSTony Lindgren--- 482b9a6bbSTony Lindgren$id: http://devicetree.org/schemas/timer/ti,timer-dm.yaml# 582b9a6bbSTony Lindgren$schema: http://devicetree.org/meta-schemas/core.yaml# 682b9a6bbSTony Lindgren 782b9a6bbSTony Lindgrentitle: TI dual-mode timer 882b9a6bbSTony Lindgren 982b9a6bbSTony Lindgrenmaintainers: 1082b9a6bbSTony Lindgren - Tony Lindgren <tony@atomide.com> 1182b9a6bbSTony Lindgren 1282b9a6bbSTony Lindgrendescription: | 1382b9a6bbSTony Lindgren The TI dual-mode timer is a general purpose timer with PWM capabilities. 1482b9a6bbSTony Lindgren 1582b9a6bbSTony Lindgrenproperties: 1682b9a6bbSTony Lindgren compatible: 1782b9a6bbSTony Lindgren oneOf: 1882b9a6bbSTony Lindgren - items: 1982b9a6bbSTony Lindgren - enum: 2082b9a6bbSTony Lindgren - ti,am335x-timer 2182b9a6bbSTony Lindgren - ti,am335x-timer-1ms 22c4f3f823STony Lindgren - ti,am654-timer 2382b9a6bbSTony Lindgren - ti,dm814-timer 2482b9a6bbSTony Lindgren - ti,dm816-timer 2582b9a6bbSTony Lindgren - ti,omap2420-timer 2682b9a6bbSTony Lindgren - ti,omap3430-timer 2782b9a6bbSTony Lindgren - ti,omap4430-timer 2882b9a6bbSTony Lindgren - ti,omap5430-timer 2982b9a6bbSTony Lindgren - items: 3082b9a6bbSTony Lindgren - const: ti,am4372-timer 3182b9a6bbSTony Lindgren - const: ti,am335x-timer 3282b9a6bbSTony Lindgren - items: 3382b9a6bbSTony Lindgren - const: ti,am4372-timer-1ms 3482b9a6bbSTony Lindgren - const: ti,am335x-timer-1ms 3582b9a6bbSTony Lindgren 3682b9a6bbSTony Lindgren reg: 3782b9a6bbSTony Lindgren items: 3882b9a6bbSTony Lindgren - description: IO address 3982b9a6bbSTony Lindgren - description: L3 to L4 mapping for omap4/5 L4 ABE 4082b9a6bbSTony Lindgren minItems: 1 4182b9a6bbSTony Lindgren 4282b9a6bbSTony Lindgren clocks: 4382b9a6bbSTony Lindgren items: 4482b9a6bbSTony Lindgren - description: Functional clock 4582b9a6bbSTony Lindgren - description: System clock for omap4/5 and dra7 4682b9a6bbSTony Lindgren minItems: 1 4782b9a6bbSTony Lindgren 4882b9a6bbSTony Lindgren clock-names: 4982b9a6bbSTony Lindgren items: 5082b9a6bbSTony Lindgren - const: fck 5182b9a6bbSTony Lindgren - const: timer_sys_ck 5282b9a6bbSTony Lindgren minItems: 1 5382b9a6bbSTony Lindgren 54*3b684d04STony Lindgren power-domains: 55*3b684d04STony Lindgren description: 56*3b684d04STony Lindgren Power domain if available 57*3b684d04STony Lindgren maxItems: 1 58*3b684d04STony Lindgren 5982b9a6bbSTony Lindgren interrupts: 6082b9a6bbSTony Lindgren description: 6182b9a6bbSTony Lindgren Interrupt if available. The timer PWM features may be usable 6282b9a6bbSTony Lindgren in a limited way even without interrupts. 6382b9a6bbSTony Lindgren maxItems: 1 6482b9a6bbSTony Lindgren 6582b9a6bbSTony Lindgren ti,timer-alwon: 6682b9a6bbSTony Lindgren description: 6782b9a6bbSTony Lindgren Timer is always enabled when the SoC is powered. Note that some SoCs like 6882b9a6bbSTony Lindgren am335x can suspend to PM coprocessor RTC only mode and in that case the 6982b9a6bbSTony Lindgren SoC power is cut including timers. 7082b9a6bbSTony Lindgren type: boolean 7182b9a6bbSTony Lindgren 7282b9a6bbSTony Lindgren ti,timer-dsp: 7382b9a6bbSTony Lindgren description: 7482b9a6bbSTony Lindgren Timer is routable to the DSP in addition to the operating system. 7582b9a6bbSTony Lindgren type: boolean 7682b9a6bbSTony Lindgren 7782b9a6bbSTony Lindgren ti,timer-pwm: 7882b9a6bbSTony Lindgren description: 7982b9a6bbSTony Lindgren Timer has been wired for PWM capability. 8082b9a6bbSTony Lindgren type: boolean 8182b9a6bbSTony Lindgren 8282b9a6bbSTony Lindgren ti,timer-secure: 8382b9a6bbSTony Lindgren description: 8482b9a6bbSTony Lindgren Timer access has been limited to secure mode only. 8582b9a6bbSTony Lindgren type: boolean 8682b9a6bbSTony Lindgren 8782b9a6bbSTony Lindgren ti,hwmods: 8882b9a6bbSTony Lindgren description: 8982b9a6bbSTony Lindgren Name of the HWMOD associated with timer. This is for legacy 9082b9a6bbSTony Lindgren omap2/3 platforms only. 9182b9a6bbSTony Lindgren $ref: /schemas/types.yaml#/definitions/string 9282b9a6bbSTony Lindgren deprecated: true 9382b9a6bbSTony Lindgren 9482b9a6bbSTony Lindgrenrequired: 9582b9a6bbSTony Lindgren - compatible 9682b9a6bbSTony Lindgren - reg 9782b9a6bbSTony Lindgren 9882b9a6bbSTony LindgrenadditionalProperties: false 9982b9a6bbSTony Lindgren 10082b9a6bbSTony LindgrenallOf: 10182b9a6bbSTony Lindgren - if: 10282b9a6bbSTony Lindgren properties: 10382b9a6bbSTony Lindgren compatible: 10482b9a6bbSTony Lindgren contains: 105c4f3f823STony Lindgren const: ti,am654-timer 106c4f3f823STony Lindgren then: 107c4f3f823STony Lindgren required: 108*3b684d04STony Lindgren - power-domains 109*3b684d04STony Lindgren else: 110*3b684d04STony Lindgren required: 111c4f3f823STony Lindgren - interrupts 112c4f3f823STony Lindgren 113c4f3f823STony Lindgren - if: 114c4f3f823STony Lindgren not: 115c4f3f823STony Lindgren properties: 116c4f3f823STony Lindgren compatible: 117c4f3f823STony Lindgren contains: 11882b9a6bbSTony Lindgren enum: 11982b9a6bbSTony Lindgren - ti,omap3430-timer 12082b9a6bbSTony Lindgren - ti,omap4430-timer 12182b9a6bbSTony Lindgren - ti,omap5430-timer 12282b9a6bbSTony Lindgren then: 12382b9a6bbSTony Lindgren properties: 12482b9a6bbSTony Lindgren reg: 12582b9a6bbSTony Lindgren maxItems: 1 12682b9a6bbSTony Lindgren clocks: 12782b9a6bbSTony Lindgren maxItems: 1 12882b9a6bbSTony Lindgren clock-names: 12982b9a6bbSTony Lindgren maxItems: 1 13082b9a6bbSTony Lindgren 13182b9a6bbSTony Lindgren - if: 13282b9a6bbSTony Lindgren properties: 13382b9a6bbSTony Lindgren compatible: 13482b9a6bbSTony Lindgren contains: 13582b9a6bbSTony Lindgren enum: 13682b9a6bbSTony Lindgren - ti,dm814-timer 13782b9a6bbSTony Lindgren - ti,dm816-timer 13882b9a6bbSTony Lindgren - ti,omap2420-timer 13982b9a6bbSTony Lindgren - ti,omap3430-timer 14082b9a6bbSTony Lindgren then: 14182b9a6bbSTony Lindgren properties: 14282b9a6bbSTony Lindgren ti,hwmods: 14382b9a6bbSTony Lindgren items: 14482b9a6bbSTony Lindgren - pattern: "^timer([1-9]|1[0-2])$" 14582b9a6bbSTony Lindgren else: 14682b9a6bbSTony Lindgren properties: 14782b9a6bbSTony Lindgren ti,hwmods: false 14882b9a6bbSTony Lindgren 14982b9a6bbSTony Lindgrenexamples: 15082b9a6bbSTony Lindgren - | 15182b9a6bbSTony Lindgren timer1: timer@0 { 15282b9a6bbSTony Lindgren compatible = "ti,am335x-timer-1ms"; 15382b9a6bbSTony Lindgren reg = <0x0 0x400>; 15482b9a6bbSTony Lindgren interrupts = <67>; 15582b9a6bbSTony Lindgren ti,timer-alwon; 15682b9a6bbSTony Lindgren clocks = <&timer1_fck>; 15782b9a6bbSTony Lindgren clock-names = "fck"; 15882b9a6bbSTony Lindgren }; 15982b9a6bbSTony Lindgren... 160