Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

dt-bindings: timer: Convert faraday,fttmr010 to DT schema

Convert the Faraday fttmr010 Timer binding to DT schema format. Adjust
the compatible string values to match what's in use. The number of
interrupts can also be anywhere from 1 to 8. The clock-names order was
reversed compared to what's used.

Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Link: https://lore.kernel.org/r/20250611232621.1508116-1-robh@kernel.org

authored by

Rob Herring (Arm) and committed by
Daniel Lezcano
ef0e000c 84b1a903

+89 -38
-38
Documentation/devicetree/bindings/timer/faraday,fttmr010.txt
··· 1 - Faraday Technology timer 2 - 3 - This timer is a generic IP block from Faraday Technology, embedded in the 4 - Cortina Systems Gemini SoCs and other designs. 5 - 6 - Required properties: 7 - 8 - - compatible : Must be one of 9 - "faraday,fttmr010" 10 - "cortina,gemini-timer", "faraday,fttmr010" 11 - "moxa,moxart-timer", "faraday,fttmr010" 12 - "aspeed,ast2400-timer" 13 - "aspeed,ast2500-timer" 14 - "aspeed,ast2600-timer" 15 - 16 - - reg : Should contain registers location and length 17 - - interrupts : Should contain the three timer interrupts usually with 18 - flags for falling edge 19 - 20 - Optionally required properties: 21 - 22 - - clocks : a clock to provide the tick rate for "faraday,fttmr010" 23 - - clock-names : should be "EXTCLK" and "PCLK" for the external tick timer 24 - and peripheral clock respectively, for "faraday,fttmr010" 25 - - syscon : a phandle to the global Gemini system controller if the compatible 26 - type is "cortina,gemini-timer" 27 - 28 - Example: 29 - 30 - timer@43000000 { 31 - compatible = "faraday,fttmr010"; 32 - reg = <0x43000000 0x1000>; 33 - interrupts = <14 IRQ_TYPE_EDGE_FALLING>, /* Timer 1 */ 34 - <15 IRQ_TYPE_EDGE_FALLING>, /* Timer 2 */ 35 - <16 IRQ_TYPE_EDGE_FALLING>; /* Timer 3 */ 36 - clocks = <&extclk>, <&pclk>; 37 - clock-names = "EXTCLK", "PCLK"; 38 - };
+89
Documentation/devicetree/bindings/timer/faraday,fttmr010.yaml
··· 1 + # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2 + %YAML 1.2 3 + --- 4 + $id: http://devicetree.org/schemas/timer/faraday,fttmr010.yaml# 5 + $schema: http://devicetree.org/meta-schemas/core.yaml# 6 + 7 + title: Faraday FTTMR010 timer 8 + 9 + maintainers: 10 + - Joel Stanley <joel@jms.id.au> 11 + - Linus Walleij <linus.walleij@linaro.org> 12 + 13 + description: 14 + This timer is a generic IP block from Faraday Technology, embedded in the 15 + Cortina Systems Gemini SoCs and other designs. 16 + 17 + properties: 18 + compatible: 19 + oneOf: 20 + - items: 21 + - const: moxa,moxart-timer 22 + - const: faraday,fttmr010 23 + - enum: 24 + - aspeed,ast2400-timer 25 + - aspeed,ast2500-timer 26 + - aspeed,ast2600-timer 27 + - cortina,gemini-timer 28 + - faraday,fttmr010 29 + 30 + reg: 31 + maxItems: 1 32 + 33 + interrupts: 34 + minItems: 1 35 + maxItems: 8 36 + description: One interrupt per timer 37 + 38 + clocks: 39 + minItems: 1 40 + items: 41 + - description: Peripheral clock 42 + - description: External tick clock 43 + 44 + clock-names: 45 + minItems: 1 46 + items: 47 + - const: PCLK 48 + - const: EXTCLK 49 + 50 + resets: 51 + maxItems: 1 52 + 53 + syscon: 54 + description: System controller phandle for Gemini systems 55 + $ref: /schemas/types.yaml#/definitions/phandle 56 + 57 + required: 58 + - compatible 59 + - reg 60 + - interrupts 61 + 62 + allOf: 63 + - if: 64 + properties: 65 + compatible: 66 + contains: 67 + const: cortina,gemini-timer 68 + then: 69 + required: 70 + - syscon 71 + else: 72 + properties: 73 + syscon: false 74 + 75 + additionalProperties: false 76 + 77 + examples: 78 + - | 79 + #include <dt-bindings/interrupt-controller/irq.h> 80 + 81 + timer@43000000 { 82 + compatible = "faraday,fttmr010"; 83 + reg = <0x43000000 0x1000>; 84 + interrupts = <14 IRQ_TYPE_EDGE_FALLING>, /* Timer 1 */ 85 + <15 IRQ_TYPE_EDGE_FALLING>, /* Timer 2 */ 86 + <16 IRQ_TYPE_EDGE_FALLING>; /* Timer 3 */ 87 + clocks = <&pclk>, <&extclk>; 88 + clock-names = "PCLK", "EXTCLK"; 89 + };