From: Rob Herring <robh@kernel.org>
To: shruthi.sanil@intel.com
Cc: daniel.lezcano@linaro.org, tglx@linutronix.de,
linux-kernel@vger.kernel.org, devicetree@vger.kernel.org,
andriy.shevchenko@linux.intel.com, kris.pan@linux.intel.com,
mgross@linux.intel.com, srikanth.thokala@intel.com,
lakshmi.bai.raja.subramanian@intel.com,
mallikarjunappa.sangannavar@intel.com
Subject: Re: [PATCH v4 1/2] dt-bindings: timer: Add bindings for Intel Keem Bay SoC Timer
Date: Tue, 13 Jul 2021 20:47:56 -0600 [thread overview]
Message-ID: <20210714024756.GA1355219@robh.at.kernel.org> (raw)
In-Reply-To: <20210628061410.8009-2-shruthi.sanil@intel.com>
On Mon, Jun 28, 2021 at 11:44:09AM +0530, shruthi.sanil@intel.com wrote:
> From: Shruthi Sanil <shruthi.sanil@intel.com>
>
> Add Device Tree bindings for the Timer IP, which can be used as
> clocksource and clockevent device in the Intel Keem Bay SoC.
>
> Reviewed-by: Andy Shevchenko <andriy.shevchenko@intel.com>
> Signed-off-by: Shruthi Sanil <shruthi.sanil@intel.com>
> ---
> .../bindings/timer/intel,keembay-timer.yaml | 170 ++++++++++++++++++
> 1 file changed, 170 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/timer/intel,keembay-timer.yaml
>
> diff --git a/Documentation/devicetree/bindings/timer/intel,keembay-timer.yaml b/Documentation/devicetree/bindings/timer/intel,keembay-timer.yaml
> new file mode 100644
> index 000000000000..24c149a4d220
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/timer/intel,keembay-timer.yaml
> @@ -0,0 +1,170 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/timer/intel,keembay-timer.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Intel Keem Bay SoC Timers
> +
> +maintainers:
> + - Shruthi Sanil <shruthi.sanil@intel.com>
> +
> +description: |
> + The Intel Keem Bay timer driver supports clocksource and clockevent
> + features for the timer IP used in Intel Keembay SoC.
> + The timer block supports 1 free running counter and 8 timers.
> + The free running counter can be used as a clocksouce and
> + the timers can be used as clockevent. Each timer is capable of
> + generating inividual interrupt.
clockevent and clocksource are Linuxisms. Don't use them in bindings.
> + Both the features are enabled through the timer general config register.
> +
> + The parent node represents the common general configuration details and
> + the child nodes represents the counter and timers.
I don't think all the child nodes are necessary. Are the counters and
timers configurable (say on another SoC)? If not, then a single node
here would suffice.
> +
> +properties:
> + reg:
> + description: General configuration register address and length.
> + maxItems: 1
> +
> + ranges: true
> +
> + "#address-cells":
> + const: 2
> +
> + "#size-cells":
> + const: 2
> +
> +required:
> + - reg
> + - ranges
> + - "#address-cells"
> + - "#size-cells"
> +
> +patternProperties:
> + "^counter@[0-9a-f]+$":
> + type: object
> + description: Properties for Intel Keem Bay counter
> +
> + properties:
> + compatible:
> + enum:
> + - intel,keembay-counter
> +
> + reg:
> + maxItems: 1
> +
> + clocks:
> + maxItems: 1
> +
> + required:
> + - compatible
> + - reg
> + - clocks
> +
> + "^timer@[0-9a-f]+$":
> + type: object
> + description: Properties for Intel Keem Bay timer
> +
> + properties:
> + compatible:
> + enum:
> + - intel,keembay-timer
> +
> + reg:
> + maxItems: 1
> +
> + interrupts:
> + maxItems: 1
> +
> + clocks:
> + maxItems: 1
> +
> + required:
> + - compatible
> + - reg
> + - interrupts
> + - clocks
> +
> +additionalProperties: false
> +
> +examples:
> + - |
> + #include <dt-bindings/interrupt-controller/arm-gic.h>
> + #include <dt-bindings/interrupt-controller/irq.h>
> + #define KEEM_BAY_A53_TIM
> +
> + soc {
> + #address-cells = <0x2>;
> + #size-cells = <0x2>;
> +
> + gpt@20331000 {
> + reg = <0x0 0x20331000 0x0 0xc>;
> + ranges = <0x0 0x0 0x20330000 0xF0>;
> + #address-cells = <0x1>;
> + #size-cells = <0x1>;
> +
> + counter@203300e8 {
The unit address here is wrong. Should be 'e8'.
> + compatible = "intel,keembay-counter";
> + reg = <0xe8 0x8>;
> + clocks = <&scmi_clk KEEM_BAY_A53_TIM>;
> + };
> +
> + timer@20330010 {
> + compatible = "intel,keembay-timer";
> + reg = <0x10 0xc>;
> + interrupts = <GIC_SPI 0x3 IRQ_TYPE_LEVEL_HIGH>;
> + clocks = <&scmi_clk KEEM_BAY_A53_TIM>;
> + };
> +
> + timer@20330020 {
> + compatible = "intel,keembay-timer";
> + reg = <0x20 0xc>;
> + interrupts = <GIC_SPI 0x4 IRQ_TYPE_LEVEL_HIGH>;
> + clocks = <&scmi_clk KEEM_BAY_A53_TIM>;
> + };
> +
> + timer@20330030 {
> + compatible = "intel,keembay-timer";
> + reg = <0x30 0xc>;
> + interrupts = <GIC_SPI 0x5 IRQ_TYPE_LEVEL_HIGH>;
> + clocks = <&scmi_clk KEEM_BAY_A53_TIM>;
> + };
> +
> + timer@20330040 {
> + compatible = "intel,keembay-timer";
> + reg = <0x40 0xc>;
> + interrupts = <GIC_SPI 0x6 IRQ_TYPE_LEVEL_HIGH>;
> + clocks = <&scmi_clk KEEM_BAY_A53_TIM>;
> + };
> +
> + timer@20330050 {
> + compatible = "intel,keembay-timer";
> + reg = <0x50 0xc>;
> + interrupts = <GIC_SPI 0x7 IRQ_TYPE_LEVEL_HIGH>;
> + clocks = <&scmi_clk KEEM_BAY_A53_TIM>;
> + };
> +
> + timer@20330060 {
> + compatible = "intel,keembay-timer";
> + reg = <0x60 0xc>;
> + interrupts = <GIC_SPI 0x8 IRQ_TYPE_LEVEL_HIGH>;
> + clocks = <&scmi_clk KEEM_BAY_A53_TIM>;
> + };
> +
> + timer@20330070 {
> + compatible = "intel,keembay-timer";
> + reg = <0x70 0xc>;
> + interrupts = <GIC_SPI 0x9 IRQ_TYPE_LEVEL_HIGH>;
> + clocks = <&scmi_clk KEEM_BAY_A53_TIM>;
> + };
> +
> + timer@20330080 {
> + compatible = "intel,keembay-timer";
> + reg = <0x80 0xc>;
> + interrupts = <GIC_SPI 0xa IRQ_TYPE_LEVEL_HIGH>;
> + clocks = <&scmi_clk KEEM_BAY_A53_TIM>;
> + };
> + };
> + };
> +
> +...
> --
> 2.17.1
>
>
next prev parent reply other threads:[~2021-07-14 2:48 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-06-28 6:14 [PATCH v4 0/2] Add the driver for Intel Keem Bay SoC timer block shruthi.sanil
2021-06-28 6:14 ` [PATCH v4 1/2] dt-bindings: timer: Add bindings for Intel Keem Bay SoC Timer shruthi.sanil
2021-07-14 2:47 ` Rob Herring [this message]
2021-07-14 9:04 ` Andy Shevchenko
2021-07-14 14:07 ` Rob Herring
2021-07-14 14:20 ` Andy Shevchenko
2021-07-15 8:01 ` Sanil, Shruthi
2021-07-22 9:57 ` Sanil, Shruthi
2021-06-28 6:14 ` [PATCH v4 2/2] clocksource: Add Intel Keem Bay timer support shruthi.sanil
2021-07-13 5:08 ` [PATCH v4 0/2] Add the driver for Intel Keem Bay SoC timer block Sanil, Shruthi
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20210714024756.GA1355219@robh.at.kernel.org \
--to=robh@kernel.org \
--cc=andriy.shevchenko@linux.intel.com \
--cc=daniel.lezcano@linaro.org \
--cc=devicetree@vger.kernel.org \
--cc=kris.pan@linux.intel.com \
--cc=lakshmi.bai.raja.subramanian@intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mallikarjunappa.sangannavar@intel.com \
--cc=mgross@linux.intel.com \
--cc=shruthi.sanil@intel.com \
--cc=srikanth.thokala@intel.com \
--cc=tglx@linutronix.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.