From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from mail-yb1-xb2f.google.com ([2607:f8b0:4864:20::b2f]) by bombadil.infradead.org with esmtps (Exim 4.96 #2 (Red Hat Linux)) id 1qLGaW-002RGs-2D for linux-arm-kernel@lists.infradead.org; Mon, 17 Jul 2023 05:16:02 +0000 Received: by mail-yb1-xb2f.google.com with SMTP id 3f1490d57ef6-c4dd264359cso2753631276.3 for ; Sun, 16 Jul 2023 22:16:00 -0700 (PDT) Message-ID: <43eea233-5024-bc0a-2872-8c037ec1db67@roeck-us.net> Date: Sun, 16 Jul 2023 22:15:54 -0700 MIME-Version: 1.0 Subject: Re: [PATCH v4 1/3] dt-bindings: watchdog: ti,rti-wdt: Add support for WDIOF_CARDRESET Content-Language: en-US References: <20230717040723.1306374-1-huaqian.li@siemens.com> <20230717040723.1306374-2-huaqian.li@siemens.com> From: Guenter Roeck In-Reply-To: <20230717040723.1306374-2-huaqian.li@siemens.com> List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+lwn-linux-arm-kernel=archive.lwn.net@lists.infradead.org List-Archive: To: huaqian.li@siemens.com, wim@linux-watchdog.org, robh+dt@kernel.org, krzysztof.kozlowski+dt@linaro.org, conor+dt@kernel.org Cc: huaqianlee@gmail.com, nm@ti.com, vigneshr@ti.com, kristo@kernel.org, linux-watchdog@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, jan.kiszka@siemens.com, baocheng.su@siemens.com, Krzysztof Kozlowski , Conor Dooley , Rob Herring On 7/16/23 21:07, huaqian.li@siemens.com wrote: > From: Li Hua Qian > > TI RTI (Real Time Interrupt) Watchdog doesn't support to record the > watchdog cause. Add a reserved memory to know the last reboot was caused > by the watchdog card. In the reserved memory, some specific info will be > saved to indicate whether the watchdog reset was triggered in last > boot. > > Reviewed-by: Krzysztof Kozlowski > Reviewed-by: Conor Dooley > Reviewed-by: Rob Herring > Signed-off-by: Li Hua Qian Reviewed-by: Guenter Roeck > --- > .../bindings/watchdog/ti,rti-wdt.yaml | 41 +++++++++++++++++++ > 1 file changed, 41 insertions(+) > > diff --git a/Documentation/devicetree/bindings/watchdog/ti,rti-wdt.yaml b/Documentation/devicetree/bindings/watchdog/ti,rti-wdt.yaml > index fc553211e42d..4b66c4fcdf35 100644 > --- a/Documentation/devicetree/bindings/watchdog/ti,rti-wdt.yaml > +++ b/Documentation/devicetree/bindings/watchdog/ti,rti-wdt.yaml > @@ -34,6 +34,20 @@ properties: > power-domains: > maxItems: 1 > > + memory-region: > + maxItems: 1 > + description: > + Contains the watchdog reserved memory. It is optional. > + In the reserved memory, the specified values, which are > + PON_REASON_SOF_NUM(0xBBBBCCCC), PON_REASON_MAGIC_NUM(0xDDDDDDDD), > + and PON_REASON_EOF_NUM(0xCCCCBBBB), are pre-stored at the first > + 3 * 4 bytes to tell that last boot was caused by watchdog reset. > + Once the PON reason is captured by driver(rti_wdt.c), the driver > + is supposed to wipe the whole memory region. Surely, if this > + property is set, at least 12 bytes reserved memory starting from > + specific memory address(0xa220000) should be set. More please > + refer to Example 2. > + > required: > - compatible > - reg > @@ -59,3 +73,30 @@ examples: > assigned-clocks = <&k3_clks 252 1>; > assigned-clock-parents = <&k3_clks 252 5>; > }; > + > + - | > + // Example 2 (Add reserved memory for watchdog reset cause): > + /* > + * RTI WDT in main domain on J721e SoC. Assigned clocks are used to > + * select the source clock for the watchdog, forcing it to tick with > + * a 32kHz clock in this case. Add a reserved memory to keep the > + * watchdog reset cause persistent, which was be written in 12 bytes > + * starting from 0xa2200000 by RTI Watchdog Firmware. > + * > + * Reserved memory should be defined as follows: > + * reserved-memory { > + * wdt_reset_memory_region: wdt-memory@a2200000 { > + * reg = <0x00 0xa2200000 0x00 0x1000>; > + * no-map; > + * }; > + * } > + */ > + watchdog@40610000 { > + compatible = "ti,j7-rti-wdt"; > + reg = <0x40610000 0x100>; > + clocks = <&k3_clks 135 1>; > + power-domains = <&k3_pds 135 TI_SCI_PD_EXCLUSIVE>; > + assigned-clocks = <&k3_clks 135 0>; > + assigned-clock-parents = <&k3_clks 135 4>; > + memory-region = <&wdt_reset_memory_region>; > + }; _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel