0001 # SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause
0002 %YAML 1.2
0003 ---
0004 $id: http://devicetree.org/schemas/timer/xlnx,xps-timer.yaml#
0005 $schema: http://devicetree.org/meta-schemas/core.yaml#
0006
0007 title: Xilinx LogiCORE IP AXI Timer Device Tree Binding
0008
0009 maintainers:
0010 - Sean Anderson <sean.anderson@seco.com>
0011
0012 properties:
0013 compatible:
0014 contains:
0015 const: xlnx,xps-timer-1.00.a
0016
0017 clocks:
0018 maxItems: 1
0019
0020 clock-names:
0021 const: s_axi_aclk
0022
0023 interrupts:
0024 maxItems: 1
0025
0026 reg:
0027 maxItems: 1
0028
0029 '#pwm-cells': true
0030
0031 xlnx,count-width:
0032 $ref: /schemas/types.yaml#/definitions/uint32
0033 enum: [8, 16, 32]
0034 default: 32
0035 description:
0036 The width of the counter(s), in bits.
0037
0038 xlnx,one-timer-only:
0039 $ref: /schemas/types.yaml#/definitions/uint32
0040 enum: [ 0, 1 ]
0041 description:
0042 Whether only one timer is present in this block.
0043
0044 required:
0045 - compatible
0046 - reg
0047 - xlnx,one-timer-only
0048
0049 allOf:
0050 - if:
0051 required:
0052 - '#pwm-cells'
0053 then:
0054 allOf:
0055 - required:
0056 - clocks
0057 - properties:
0058 xlnx,one-timer-only:
0059 const: 0
0060 else:
0061 required:
0062 - interrupts
0063 - if:
0064 required:
0065 - clocks
0066 then:
0067 required:
0068 - clock-names
0069
0070 additionalProperties: false
0071
0072 examples:
0073 - |
0074 timer@800e0000 {
0075 clock-names = "s_axi_aclk";
0076 clocks = <&zynqmp_clk 71>;
0077 compatible = "xlnx,xps-timer-1.00.a";
0078 reg = <0x800e0000 0x10000>;
0079 interrupts = <0 39 2>;
0080 xlnx,count-width = <16>;
0081 xlnx,one-timer-only = <0x0>;
0082 };
0083
0084 timer@800f0000 {
0085 #pwm-cells = <0>;
0086 clock-names = "s_axi_aclk";
0087 clocks = <&zynqmp_clk 71>;
0088 compatible = "xlnx,xps-timer-1.00.a";
0089 reg = <0x800e0000 0x10000>;
0090 xlnx,count-width = <32>;
0091 xlnx,one-timer-only = <0x0>;
0092 };