From: Guenter Roeck <linux@roeck-us.net>
To: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Cc: Andy Gross <agross@kernel.org>,
Bjorn Andersson <andersson@kernel.org>,
Konrad Dybcio <konrad.dybcio@linaro.org>,
Daniel Lezcano <daniel.lezcano@linaro.org>,
Thomas Gleixner <tglx@linutronix.de>,
Rob Herring <robh+dt@kernel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
Wim Van Sebroeck <wim@linux-watchdog.org>,
Prakash Ranjan <saiprakash.ranjan@codeaurora.org>,
linux-arm-msm@vger.kernel.org, linux-kernel@vger.kernel.org,
devicetree@vger.kernel.org, linux-watchdog@vger.kernel.org
Subject: Re: [PATCH 06/12] dt-bindings: watchdog: qcom-wdt: merge MSM timer
Date: Tue, 31 Jan 2023 09:33:47 -0800 [thread overview]
Message-ID: <20230131173347.GA3602051@roeck-us.net> (raw)
In-Reply-To: <20221212163532.142533-6-krzysztof.kozlowski@linaro.org>
On Mon, Dec 12, 2022 at 05:35:26PM +0100, Krzysztof Kozlowski wrote:
> Merge Qualcomm MSM timer bindings into watchdog, because the timer
> compatibles are already included here and the hardware is quite similar.
>
> While converting the MSM timer bindings, adjust clock-frequency
> property to take only one frequency, instead of two, because:
> 1. DT schema does not allow to frequencies,
> 2. The Linux timer driver reads only first frequency.
>
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> Acked-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Reviewed-by: Guenter Roeck <linux@roeck-us.net>
> ---
> .../bindings/timer/qcom,msm-timer.txt | 47 ------------------
> .../bindings/watchdog/qcom-wdt.yaml | 49 +++++++++++++++++++
> 2 files changed, 49 insertions(+), 47 deletions(-)
> delete mode 100644 Documentation/devicetree/bindings/timer/qcom,msm-timer.txt
>
> diff --git a/Documentation/devicetree/bindings/timer/qcom,msm-timer.txt b/Documentation/devicetree/bindings/timer/qcom,msm-timer.txt
> deleted file mode 100644
> index 5e10c345548f..000000000000
> --- a/Documentation/devicetree/bindings/timer/qcom,msm-timer.txt
> +++ /dev/null
> @@ -1,47 +0,0 @@
> -* MSM Timer
> -
> -Properties:
> -
> -- compatible : Should at least contain "qcom,msm-timer". More specific
> - properties specify which subsystem the timers are paired with.
> -
> - "qcom,kpss-timer" - krait subsystem
> - "qcom,scss-timer" - scorpion subsystem
> -
> -- interrupts : Interrupts for the debug timer, the first general purpose
> - timer, and optionally a second general purpose timer, and
> - optionally as well, 2 watchdog interrupts, in that order.
> -
> -- reg : Specifies the base address of the timer registers.
> -
> -- clocks: Reference to the parent clocks, one per output clock. The parents
> - must appear in the same order as the clock names.
> -
> -- clock-names: The name of the clocks as free-form strings. They should be in
> - the same order as the clocks.
> -
> -- clock-frequency : The frequency of the debug timer and the general purpose
> - timer(s) in Hz in that order.
> -
> -Optional:
> -
> -- cpu-offset : per-cpu offset used when the timer is accessed without the
> - CPU remapping facilities. The offset is
> - cpu-offset + (0x10000 * cpu-nr).
> -
> -Example:
> -
> - timer@200a000 {
> - compatible = "qcom,scss-timer", "qcom,msm-timer";
> - interrupts = <1 1 0x301>,
> - <1 2 0x301>,
> - <1 3 0x301>,
> - <1 4 0x301>,
> - <1 5 0x301>;
> - reg = <0x0200a000 0x100>;
> - clock-frequency = <19200000>,
> - <32768>;
> - clocks = <&sleep_clk>;
> - clock-names = "sleep";
> - cpu-offset = <0x40000>;
> - };
> diff --git a/Documentation/devicetree/bindings/watchdog/qcom-wdt.yaml b/Documentation/devicetree/bindings/watchdog/qcom-wdt.yaml
> index b7fc57f4800e..697caf1937cc 100644
> --- a/Documentation/devicetree/bindings/watchdog/qcom-wdt.yaml
> +++ b/Documentation/devicetree/bindings/watchdog/qcom-wdt.yaml
> @@ -10,6 +10,9 @@ maintainers:
> - Sai Prakash Ranjan <saiprakash.ranjan@codeaurora.org>
>
> properties:
> + $nodename:
> + pattern: "^(watchdog|timer)@[0-9a-f]+$"
> +
> compatible:
> oneOf:
> - items:
> @@ -48,6 +51,20 @@ properties:
> clocks:
> maxItems: 1
>
> + clock-names:
> + items:
> + - const: sleep
> +
> + clock-frequency:
> + description:
> + The frequency of the general purpose timer in Hz in that order.
> +
> + cpu-offset:
> + $ref: /schemas/types.yaml#/definitions/uint32
> + description:
> + Per-CPU offset used when the timer is accessed without the CPU remapping
> + facilities. The offset is cpu-offset + (0x10000 * cpu-nr).
> +
> interrupts:
> minItems: 1
> maxItems: 5
> @@ -67,12 +84,27 @@ allOf:
> const: qcom,kpss-wdt
> then:
> properties:
> + clock-frequency: false
> + cpu-offset: false
> interrupts:
> minItems: 1
> items:
> - description: Bark
> - description: Bite
>
> + else:
> + properties:
> + interrupts:
> + minItems: 3
> + items:
> + - description: Debug
> + - description: First general purpose timer
> + - description: Second general purpose timer
> + - description: First watchdog
> + - description: Second watchdog
> + required:
> + - clock-frequency
> +
> unevaluatedProperties: false
>
> examples:
> @@ -86,3 +118,20 @@ examples:
> interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>;
> timeout-sec = <10>;
> };
> +
> + - |
> + #include <dt-bindings/interrupt-controller/arm-gic.h>
> +
> + watchdog@200a000 {
> + compatible = "qcom,kpss-wdt-ipq8064", "qcom,kpss-timer", "qcom,msm-timer";
> + interrupts = <GIC_PPI 1 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_EDGE_RISING)>,
> + <GIC_PPI 2 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_EDGE_RISING)>,
> + <GIC_PPI 3 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_EDGE_RISING)>,
> + <GIC_PPI 4 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_EDGE_RISING)>,
> + <GIC_PPI 5 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_EDGE_RISING)>;
> + reg = <0x0200a000 0x100>;
> + clock-frequency = <25000000>;
> + clocks = <&sleep_clk>;
> + clock-names = "sleep";
> + cpu-offset = <0x80000>;
> + };
next prev parent reply other threads:[~2023-01-31 17:34 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-12-12 16:35 [PATCH 01/12] dt-bindings: watchdog: qcom-wdt: require fallback for IPQ4019 Krzysztof Kozlowski
2022-12-12 16:35 ` [PATCH 02/12] dt-bindings: watchdog: qcom-wdt: do not allow fallback alone Krzysztof Kozlowski
2022-12-13 15:35 ` Rob Herring
2023-01-31 17:31 ` Guenter Roeck
2022-12-12 16:35 ` [PATCH 03/12] dt-bindings: watchdog: qcom-wdt: fix list of MSM timer compatibles Krzysztof Kozlowski
2022-12-13 15:37 ` Rob Herring
2023-01-31 17:31 ` Guenter Roeck
2022-12-12 16:35 ` [PATCH 04/12] dt-bindings: watchdog: qcom-wdt: add qcom,kpss-wdt-mdm9615 Krzysztof Kozlowski
2022-12-13 15:37 ` Rob Herring
2023-01-31 17:32 ` Guenter Roeck
2022-12-12 16:35 ` [PATCH 05/12] dt-bindings: watchdog: qcom-wdt: allow interrupts Krzysztof Kozlowski
2022-12-13 15:35 ` Rob Herring
2022-12-13 15:41 ` Rob Herring
2023-01-31 17:33 ` Guenter Roeck
2022-12-12 16:35 ` [PATCH 06/12] dt-bindings: watchdog: qcom-wdt: merge MSM timer Krzysztof Kozlowski
2022-12-13 9:11 ` Daniel Lezcano
2022-12-13 15:40 ` Rob Herring
2022-12-13 16:13 ` Krzysztof Kozlowski
2023-01-31 17:33 ` Guenter Roeck [this message]
2022-12-12 16:35 ` [PATCH 07/12] ARM: dts: qcom: reverse compatibles to match bindings Krzysztof Kozlowski
2022-12-13 9:31 ` Konrad Dybcio
2022-12-12 16:35 ` [PATCH 08/12] ARM: dts: qcom: apq8064: drop second clock frequency from timer Krzysztof Kozlowski
2022-12-13 9:34 ` Konrad Dybcio
2022-12-12 16:35 ` [PATCH 09/12] ARM: dts: qcom: ipq8064: " Krzysztof Kozlowski
2022-12-13 9:34 ` Konrad Dybcio
2022-12-12 16:35 ` [PATCH 10/12] ARM: dts: qcom: mdm9615: " Krzysztof Kozlowski
2022-12-13 9:34 ` Konrad Dybcio
2022-12-12 16:35 ` [PATCH 11/12] ARM: dts: qcom: msm8960: " Krzysztof Kozlowski
2022-12-13 9:34 ` Konrad Dybcio
2022-12-12 16:35 ` [PATCH 12/12] ARM: dts: qcom: msm8960: add qcom,kpss-wdt-mdm9615 Krzysztof Kozlowski
2022-12-13 9:34 ` Konrad Dybcio
2022-12-13 15:33 ` [PATCH 01/12] dt-bindings: watchdog: qcom-wdt: require fallback for IPQ4019 Rob Herring
2023-01-11 5:09 ` (subset) " Bjorn Andersson
2023-01-31 17:31 ` Guenter Roeck
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=20230131173347.GA3602051@roeck-us.net \
--to=linux@roeck-us.net \
--cc=agross@kernel.org \
--cc=andersson@kernel.org \
--cc=daniel.lezcano@linaro.org \
--cc=devicetree@vger.kernel.org \
--cc=konrad.dybcio@linaro.org \
--cc=krzysztof.kozlowski+dt@linaro.org \
--cc=krzysztof.kozlowski@linaro.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-watchdog@vger.kernel.org \
--cc=robh+dt@kernel.org \
--cc=saiprakash.ranjan@codeaurora.org \
--cc=tglx@linutronix.de \
--cc=wim@linux-watchdog.org \
/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.