* [PATCH 0/2] mtk-wdt: Add reset-by-toprgu support @ 2023-01-06 11:53 Allen-KH Cheng 2023-01-06 11:53 ` [PATCH 1/2] dt-bindings: watchdog: " Allen-KH Cheng 2023-01-06 11:53 ` [PATCH 2/2] watchdog: mtk_wdt: Add reset_by_toprgu support Allen-KH Cheng 0 siblings, 2 replies; 5+ messages in thread From: Allen-KH Cheng @ 2023-01-06 11:53 UTC (permalink / raw) To: Wim Van Sebroeck, Guenter Roeck, Krzysztof Kozlowski, Matthias Brugger, Rob Herring, linux-watchdog Cc: Project_Global_Chrome_Upstream_Group, devicetree, linux-arm-kernel, linux-kernel, linux-mediatek, Allen-KH Cheng This series is based on next-20230106. In some cases, we may need toprgu to reset the wdt counter after wdt resets. Provide a reset_by_toprgu parameter for configuration. We can disable or enable it by adding reset_by_toprgu in dts. Allen-KH Cheng (2): dt-bindings: watchdog: mtk-wdt: Add reset-by-toprgu support watchdog: mtk_wdt: Add reset_by_toprgu support .../devicetree/bindings/watchdog/mediatek,mtk-wdt.yaml | 4 ++++ drivers/watchdog/mtk_wdt.c | 7 +++++++ 2 files changed, 11 insertions(+) -- 2.18.0 ^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH 1/2] dt-bindings: watchdog: mtk-wdt: Add reset-by-toprgu support 2023-01-06 11:53 [PATCH 0/2] mtk-wdt: Add reset-by-toprgu support Allen-KH Cheng @ 2023-01-06 11:53 ` Allen-KH Cheng 2023-01-06 12:30 ` Krzysztof Kozlowski 2023-01-06 11:53 ` [PATCH 2/2] watchdog: mtk_wdt: Add reset_by_toprgu support Allen-KH Cheng 1 sibling, 1 reply; 5+ messages in thread From: Allen-KH Cheng @ 2023-01-06 11:53 UTC (permalink / raw) To: Wim Van Sebroeck, Guenter Roeck, Krzysztof Kozlowski, Matthias Brugger, Rob Herring, linux-watchdog Cc: Project_Global_Chrome_Upstream_Group, devicetree, linux-arm-kernel, linux-kernel, linux-mediatek, Allen-KH Cheng In some applications, the mtk-wdt requires the toprgu (TOP Reset Generation Unit) to reset counter after wdt resets. Add optional mediatek,reset-by-toprgu property to enable it. Signed-off-by: Allen-KH Cheng <allen-kh.cheng@mediatek.com> --- .../devicetree/bindings/watchdog/mediatek,mtk-wdt.yaml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Documentation/devicetree/bindings/watchdog/mediatek,mtk-wdt.yaml b/Documentation/devicetree/bindings/watchdog/mediatek,mtk-wdt.yaml index b3605608410c..bf06dcd0c12c 100644 --- a/Documentation/devicetree/bindings/watchdog/mediatek,mtk-wdt.yaml +++ b/Documentation/devicetree/bindings/watchdog/mediatek,mtk-wdt.yaml @@ -52,6 +52,10 @@ properties: description: Disable sending output reset signal type: boolean + mediatek,reset-by-toprgu: + description: Reset counter by toprgu + type: boolean + '#reset-cells': const: 1 -- 2.18.0 ^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH 1/2] dt-bindings: watchdog: mtk-wdt: Add reset-by-toprgu support 2023-01-06 11:53 ` [PATCH 1/2] dt-bindings: watchdog: " Allen-KH Cheng @ 2023-01-06 12:30 ` Krzysztof Kozlowski 2023-01-09 7:56 ` Allen-KH Cheng (程冠勳) 0 siblings, 1 reply; 5+ messages in thread From: Krzysztof Kozlowski @ 2023-01-06 12:30 UTC (permalink / raw) To: Allen-KH Cheng, Wim Van Sebroeck, Guenter Roeck, Krzysztof Kozlowski, Matthias Brugger, Rob Herring, linux-watchdog Cc: Project_Global_Chrome_Upstream_Group, devicetree, linux-arm-kernel, linux-kernel, linux-mediatek On 06/01/2023 12:53, Allen-KH Cheng wrote: > In some applications, the mtk-wdt requires the toprgu (TOP Reset > Generation Unit) to reset counter after wdt resets. Add optional > mediatek,reset-by-toprgu property to enable it. > > Signed-off-by: Allen-KH Cheng <allen-kh.cheng@mediatek.com> > --- > .../devicetree/bindings/watchdog/mediatek,mtk-wdt.yaml | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/Documentation/devicetree/bindings/watchdog/mediatek,mtk-wdt.yaml b/Documentation/devicetree/bindings/watchdog/mediatek,mtk-wdt.yaml > index b3605608410c..bf06dcd0c12c 100644 > --- a/Documentation/devicetree/bindings/watchdog/mediatek,mtk-wdt.yaml > +++ b/Documentation/devicetree/bindings/watchdog/mediatek,mtk-wdt.yaml > @@ -52,6 +52,10 @@ properties: > description: Disable sending output reset signal > type: boolean > > + mediatek,reset-by-toprgu: > + description: Reset counter by toprgu Do not copy the property name in description but actually describe it. Also "toprgu" is a bit cryptic. Best regards, Krzysztof ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH 1/2] dt-bindings: watchdog: mtk-wdt: Add reset-by-toprgu support 2023-01-06 12:30 ` Krzysztof Kozlowski @ 2023-01-09 7:56 ` Allen-KH Cheng (程冠勳) 0 siblings, 0 replies; 5+ messages in thread From: Allen-KH Cheng (程冠勳) @ 2023-01-09 7:56 UTC (permalink / raw) To: wim@linux-watchdog.org, linux@roeck-us.net, matthias.bgg@gmail.com, krzysztof.kozlowski@linaro.org, robh+dt@kernel.org, krzysztof.kozlowski+dt@linaro.org, linux-watchdog@vger.kernel.org Cc: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-mediatek@lists.infradead.org, Project_Global_Chrome_Upstream_Group, devicetree@vger.kernel.org Hi Krzysztof, On Fri, 2023-01-06 at 13:30 +0100, Krzysztof Kozlowski wrote: > On 06/01/2023 12:53, Allen-KH Cheng wrote: > > In some applications, the mtk-wdt requires the toprgu (TOP Reset > > Generation Unit) to reset counter after wdt resets. Add optional > > mediatek,reset-by-toprgu property to enable it. > > > > Signed-off-by: Allen-KH Cheng <allen-kh.cheng@mediatek.com> > > --- > > .../devicetree/bindings/watchdog/mediatek,mtk-wdt.yaml | 4 > > ++++ > > 1 file changed, 4 insertions(+) > > > > diff --git > > a/Documentation/devicetree/bindings/watchdog/mediatek,mtk-wdt.yaml > > b/Documentation/devicetree/bindings/watchdog/mediatek,mtk-wdt.yaml > > index b3605608410c..bf06dcd0c12c 100644 > > --- a/Documentation/devicetree/bindings/watchdog/mediatek,mtk- > > wdt.yaml > > +++ b/Documentation/devicetree/bindings/watchdog/mediatek,mtk- > > wdt.yaml > > @@ -52,6 +52,10 @@ properties: > > description: Disable sending output reset signal > > type: boolean > > > > + mediatek,reset-by-toprgu: > > + description: Reset counter by toprgu > > Do not copy the property name in description but actually describe > it. > > Also "toprgu" is a bit cryptic. > > Best regards, > Krzysztof > Sorry for being unclear. We name toprgu for "TOP Reset Generation Unit" in the mtk SoC, which is used to reset the system. mediatek,reset-by-toprgu: description: If present, means the watchdog timer will reset by toprgu after system resets. What do you think? Thanks, Allen ^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH 2/2] watchdog: mtk_wdt: Add reset_by_toprgu support 2023-01-06 11:53 [PATCH 0/2] mtk-wdt: Add reset-by-toprgu support Allen-KH Cheng 2023-01-06 11:53 ` [PATCH 1/2] dt-bindings: watchdog: " Allen-KH Cheng @ 2023-01-06 11:53 ` Allen-KH Cheng 1 sibling, 0 replies; 5+ messages in thread From: Allen-KH Cheng @ 2023-01-06 11:53 UTC (permalink / raw) To: Wim Van Sebroeck, Guenter Roeck, Krzysztof Kozlowski, Matthias Brugger, Rob Herring, linux-watchdog Cc: Project_Global_Chrome_Upstream_Group, devicetree, linux-arm-kernel, linux-kernel, linux-mediatek, Allen-KH Cheng In some cases, the MediaTek watchdog requires the toprgu to reset counter after wdt resets. Provide a reset_by_toprgu parameter for configuration. Signed-off-by: Allen-KH Cheng <allen-kh.cheng@mediatek.com> --- drivers/watchdog/mtk_wdt.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/drivers/watchdog/mtk_wdt.c b/drivers/watchdog/mtk_wdt.c index 3e6212591e69..a9c437598e7e 100644 --- a/drivers/watchdog/mtk_wdt.c +++ b/drivers/watchdog/mtk_wdt.c @@ -50,6 +50,7 @@ #define WDT_MODE_IRQ_EN (1 << 3) #define WDT_MODE_AUTO_START (1 << 4) #define WDT_MODE_DUAL_EN (1 << 6) +#define WDT_MODE_CNT_SEL (1 << 8) #define WDT_MODE_KEY 0x22000000 #define WDT_SWRST 0x14 @@ -70,6 +71,7 @@ struct mtk_wdt_dev { spinlock_t lock; /* protects WDT_SWSYSRST reg */ struct reset_controller_dev rcdev; bool disable_wdt_extrst; + bool reset_by_toprgu; }; struct mtk_wdt_data { @@ -279,6 +281,8 @@ static int mtk_wdt_start(struct watchdog_device *wdt_dev) reg &= ~(WDT_MODE_IRQ_EN | WDT_MODE_DUAL_EN); if (mtk_wdt->disable_wdt_extrst) reg &= ~WDT_MODE_EXRST_EN; + if (mtk_wdt->reset_by_toprgu) + reg |= WDT_MODE_CNT_SEL; reg |= (WDT_MODE_EN | WDT_MODE_KEY); iowrite32(reg, wdt_base + WDT_MODE); @@ -408,6 +412,9 @@ static int mtk_wdt_probe(struct platform_device *pdev) mtk_wdt->disable_wdt_extrst = of_property_read_bool(dev->of_node, "mediatek,disable-extrst"); + mtk_wdt->reset_by_toprgu = + of_property_read_bool(dev->of_node, "mediatek,reset-by-toprgu"); + return 0; } -- 2.18.0 ^ permalink raw reply related [flat|nested] 5+ messages in thread
end of thread, other threads:[~2023-01-09 7:56 UTC | newest] Thread overview: 5+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2023-01-06 11:53 [PATCH 0/2] mtk-wdt: Add reset-by-toprgu support Allen-KH Cheng 2023-01-06 11:53 ` [PATCH 1/2] dt-bindings: watchdog: " Allen-KH Cheng 2023-01-06 12:30 ` Krzysztof Kozlowski 2023-01-09 7:56 ` Allen-KH Cheng (程冠勳) 2023-01-06 11:53 ` [PATCH 2/2] watchdog: mtk_wdt: Add reset_by_toprgu support Allen-KH Cheng
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).