From: Fabrizio Castro <fabrizio.castro@bp.renesas.com> To: Philipp Zabel <p.zabel@pengutronix.de>, Rob Herring <robh+dt@kernel.org>, Mark Rutland <mark.rutland@arm.com>, Wim Van Sebroeck <wim@iguana.be>, Russell King <linux@armlinux.org.uk>, Catalin Marinas <catalin.marinas@arm.com>, Will Deacon <will.deacon@arm.com>, Michael Turquette <mturquette@baylibre.com>, Stephen Boyd <sboyd@codeaurora.org>, Simon Horman <horms@verge.net.au>, Magnus Damm <magnus.damm@gmail.com>, Geert Uytterhoeven <geert+renesas@glider.be> Cc: Guenter Roeck <linux@roeck-us.net>, devicetree@vger.kernel.org, linux-watchdog@vger.kernel.org, linux-renesas-soc@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-clk@vger.kernel.org, Chris Paterson <Chris.Paterson2@renesas.com>, Biju Das <biju.das@bp.renesas.com>, Fabrizio Castro <fabrizio.castro@bp.renesas.com>, Ramesh Shanmugasundaram <ramesh.shanmugasundaram@bp.renesas.com> Subject: [RFC 10/37] soc: renesas: rcar-rst: Enable watchdog as reset trigger for Gen2 Date: Thu, 25 Jan 2018 18:02:44 +0000 [thread overview] Message-ID: <1516903391-30467-11-git-send-email-fabrizio.castro@bp.renesas.com> (raw) In-Reply-To: <1516903391-30467-1-git-send-email-fabrizio.castro@bp.renesas.com> This patch allows for platform specific quirks as some of the SoC need further customization for the watchdog to work properly, like for R-Car Gen2 and for RZ/G. Signed-off-by: Fabrizio Castro <fabrizio.castro@bp.renesas.com> Signed-off-by: Ramesh Shanmugasundaram <ramesh.shanmugasundaram@bp.renesas.com> --- drivers/soc/renesas/rcar-rst.c | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/drivers/soc/renesas/rcar-rst.c b/drivers/soc/renesas/rcar-rst.c index f7a0d54..5f52aea 100644 --- a/drivers/soc/renesas/rcar-rst.c +++ b/drivers/soc/renesas/rcar-rst.c @@ -13,8 +13,18 @@ #include <linux/of_address.h> #include <linux/soc/renesas/rcar-rst.h> +#define WDTRSTCR_RESET 0xA55A0002 +#define WDTRSTCR 0x0054 + +static int gen2_configuration(void __iomem *base) +{ + iowrite32(WDTRSTCR_RESET, base + WDTRSTCR); + return 0; +} + struct rst_config { - unsigned int modemr; /* Mode Monitoring Register Offset */ + unsigned int modemr; /* Mode Monitoring Register Offset */ + int (*configure)(void *base); /* Platform specific configuration */ }; static const struct rst_config rcar_rst_gen1 __initconst = { @@ -23,6 +33,7 @@ static const struct rst_config rcar_rst_gen1 __initconst = { static const struct rst_config rcar_rst_gen2 __initconst = { .modemr = 0x60, + .configure = gen2_configuration, }; static const struct rst_config rcar_rst_gen3 __initconst = { @@ -79,6 +90,14 @@ static int __init rcar_rst_init(void) rcar_rst_base = base; cfg = match->data; saved_mode = ioread32(base + cfg->modemr); + if (cfg->configure) { + error = cfg->configure(base); + if (error) { + pr_warn("%pOF: Cannot run SoC specific configuration\n", + np); + goto out_put; + } + } pr_debug("%pOF: MODE = 0x%08x\n", np, saved_mode); -- 2.7.4
next prev parent reply other threads:[~2018-01-25 18:02 UTC|newest] Thread overview: 78+ messages / expand[flat|nested] mbox.gz Atom feed top 2018-01-25 18:02 [RFC 00/37] Fix watchdog on Renesas R-Car Gen2 and RZ/G1 Fabrizio Castro 2018-01-25 18:02 ` [RFC 01/37] ARM: shmobile: Add watchdog support Fabrizio Castro [not found] ` <1516903391-30467-2-git-send-email-fabrizio.castro-kTT6dE0pTRh9uiUsa/gSgQ@public.gmane.org> 2018-01-26 9:46 ` Geert Uytterhoeven [not found] ` <CAMuHMdWVvMJR5NHMFn6zx39jw2XdP5nteU3actUcen0dmoT-LQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org> 2018-01-26 9:49 ` Geert Uytterhoeven 2018-01-26 11:52 ` Fabrizio Castro 2018-01-26 12:10 ` Geert Uytterhoeven 2018-01-26 13:44 ` Fabrizio Castro 2018-01-26 16:08 ` [RFC v2 " Fabrizio Castro 2018-01-26 16:08 ` [RFC v2 23/37] ARM: shmobile: rcar-gen2: Export shmobile_set_wdt_clock_status function Fabrizio Castro [not found] ` <1516982937-29245-1-git-send-email-fabrizio.castro-kTT6dE0pTRh9uiUsa/gSgQ@public.gmane.org> 2018-01-26 16:16 ` [RFC v2 01/37] ARM: shmobile: Add watchdog support Fabrizio Castro 2018-01-25 18:02 ` [RFC 02/37] ARM: dts: r8a7743: Adjust SMP routine size Fabrizio Castro [not found] ` <1516903391-30467-3-git-send-email-fabrizio.castro-kTT6dE0pTRh9uiUsa/gSgQ@public.gmane.org> 2018-01-26 9:52 ` Geert Uytterhoeven 2018-01-25 18:02 ` [RFC 05/37] ARM: dts: r8a7791: " Fabrizio Castro 2018-01-26 9:53 ` Geert Uytterhoeven 2018-01-25 18:02 ` [RFC 07/37] ARM: dts: r8a7793: " Fabrizio Castro [not found] ` <1516903391-30467-8-git-send-email-fabrizio.castro-kTT6dE0pTRh9uiUsa/gSgQ@public.gmane.org> 2018-01-26 9:53 ` Geert Uytterhoeven 2018-01-25 18:02 ` [RFC 08/37] ARM: dts: r8a7794: " Fabrizio Castro 2018-01-26 9:54 ` Geert Uytterhoeven 2018-01-25 18:02 ` [RFC 09/37] soc: renesas: rcar-rst: Add generic compatible strings Fabrizio Castro [not found] ` <1516903391-30467-10-git-send-email-fabrizio.castro-kTT6dE0pTRh9uiUsa/gSgQ@public.gmane.org> 2018-01-26 10:00 ` Geert Uytterhoeven 2018-01-25 18:02 ` Fabrizio Castro [this message] [not found] ` <1516903391-30467-11-git-send-email-fabrizio.castro-kTT6dE0pTRh9uiUsa/gSgQ@public.gmane.org> 2018-01-26 8:30 ` [RFC 10/37] soc: renesas: rcar-rst: Enable watchdog as reset trigger for Gen2 Sergei Shtylyov [not found] ` <e1670c79-2fef-b45b-4688-a6ba8ebd8c24-M4DtvfQ/ZS1MRgGoP+s0PdBPR1lH4CV8@public.gmane.org> 2018-01-26 16:59 ` Fabrizio Castro 2018-01-26 10:05 ` Geert Uytterhoeven 2018-01-25 18:02 ` [RFC 12/37] ARM: dts: r8a7743: Use fallback rst compatible string Fabrizio Castro 2018-01-25 18:02 ` [RFC 15/37] ARM: dts: r8a7791: " Fabrizio Castro 2018-01-25 18:02 ` [RFC 20/37] arm64: dts: renesas: r8a77995: " Fabrizio Castro 2018-01-25 18:02 ` [RFC 21/37] dt-bindings: watchdog: renesas-wdt: Add R-Car Gen2 support Fabrizio Castro [not found] ` <1516903391-30467-22-git-send-email-fabrizio.castro-kTT6dE0pTRh9uiUsa/gSgQ@public.gmane.org> 2018-01-26 10:10 ` Geert Uytterhoeven [not found] ` <1516903391-30467-1-git-send-email-fabrizio.castro-kTT6dE0pTRh9uiUsa/gSgQ@public.gmane.org> 2018-01-25 18:02 ` [RFC 03/37] ARM: dts: r8a7745: Adjust SMP routine size Fabrizio Castro 2018-01-26 9:52 ` Geert Uytterhoeven 2018-01-25 18:02 ` [RFC 04/37] ARM: dts: r8a7790: " Fabrizio Castro 2018-01-26 9:53 ` Geert Uytterhoeven 2018-01-25 18:02 ` [RFC 06/37] ARM: dts: r8a7792: " Fabrizio Castro 2018-01-26 9:53 ` Geert Uytterhoeven 2018-01-25 18:02 ` [RFC 11/37] soc: renesas: rcar-rst: Document generic compatible strings Fabrizio Castro 2018-01-26 10:06 ` Geert Uytterhoeven 2018-01-25 18:02 ` [RFC 13/37] ARM: dts: r8a7745: Use fallback rst compatible string Fabrizio Castro 2018-01-25 18:02 ` [RFC 14/37] ARM: dts: r8a7790: " Fabrizio Castro 2018-01-25 18:02 ` [RFC 16/37] ARM: dts: r8a7794: " Fabrizio Castro 2018-01-25 18:02 ` [RFC 17/37] arm64: dts: renesas: r8a7795: " Fabrizio Castro 2018-01-25 18:02 ` [RFC 18/37] arm64: dts: renesas: r8a7796: " Fabrizio Castro 2018-01-25 18:02 ` [RFC 19/37] arm64: dts: renesas: r8a77970: " Fabrizio Castro 2018-01-25 18:02 ` [RFC 22/37] watchdog: renesas_wdt: Add restart support Fabrizio Castro 2018-01-26 10:11 ` Geert Uytterhoeven 2018-01-26 17:14 ` Guenter Roeck 2018-01-26 17:50 ` Fabrizio Castro 2018-01-25 18:02 ` [RFC 23/37] ARM: shmobile: rcar-gen2: Export shmobile_set_wdt_clock_status function Fabrizio Castro [not found] ` <1516903391-30467-24-git-send-email-fabrizio.castro-kTT6dE0pTRh9uiUsa/gSgQ@public.gmane.org> 2018-01-26 10:16 ` Geert Uytterhoeven 2018-01-25 18:03 ` [RFC 29/37] clk: renesas: r8a7791/r8a7793: Add rwdt clock Fabrizio Castro [not found] ` <1516903391-30467-30-git-send-email-fabrizio.castro-kTT6dE0pTRh9uiUsa/gSgQ@public.gmane.org> 2018-01-26 10:25 ` Geert Uytterhoeven 2018-01-25 18:03 ` [RFC 33/37] ARM: dts: r8a7790: Add watchdog support to SoC dtsi Fabrizio Castro 2018-01-26 10:30 ` Geert Uytterhoeven 2018-01-25 18:03 ` [RFC 35/37] ARM: dts: r8a7794: " Fabrizio Castro [not found] ` <1516903391-30467-36-git-send-email-fabrizio.castro-kTT6dE0pTRh9uiUsa/gSgQ@public.gmane.org> 2018-01-26 10:31 ` Geert Uytterhoeven 2018-01-25 18:03 ` [RFC 37/37] ARM: dts: iwg22m: Add watchdog support to SoM dtsi Fabrizio Castro [not found] ` <1516903391-30467-38-git-send-email-fabrizio.castro-kTT6dE0pTRh9uiUsa/gSgQ@public.gmane.org> 2018-01-26 10:32 ` Geert Uytterhoeven 2018-01-25 18:02 ` [RFC 24/37] watchdog: renesas_wdt_gen2: Add Gen2 specific driver Fabrizio Castro 2018-01-26 10:22 ` Geert Uytterhoeven [not found] ` <1516903391-30467-25-git-send-email-fabrizio.castro-kTT6dE0pTRh9uiUsa/gSgQ@public.gmane.org> 2018-01-26 17:28 ` Guenter Roeck [not found] ` <20180126172835.GB16194-0h96xk9xTtrk1uMJSBkQmQ@public.gmane.org> 2018-01-26 18:00 ` Fabrizio Castro 2018-01-25 18:02 ` [RFC 25/37] ARM: shmobile: defconfig: Enable RENESAS_WDT_GEN2 Fabrizio Castro 2018-01-25 18:03 ` [RFC 26/37] clk: renesas: r8a7743: Add rwdt clock Fabrizio Castro 2018-01-26 10:33 ` Geert Uytterhoeven 2018-01-25 18:03 ` [RFC 27/37] clk: renesas: r8a7745: " Fabrizio Castro 2018-01-26 10:24 ` Geert Uytterhoeven 2018-01-25 18:03 ` [RFC 28/37] clk: renesas: r8a7790: " Fabrizio Castro [not found] ` <1516903391-30467-29-git-send-email-fabrizio.castro-kTT6dE0pTRh9uiUsa/gSgQ@public.gmane.org> 2018-01-26 10:25 ` Geert Uytterhoeven 2018-01-25 18:03 ` [RFC 30/37] clk: renesas: r8a7794: " Fabrizio Castro [not found] ` <1516903391-30467-31-git-send-email-fabrizio.castro-kTT6dE0pTRh9uiUsa/gSgQ@public.gmane.org> 2018-01-26 10:25 ` Geert Uytterhoeven 2018-01-25 18:03 ` [RFC 31/37] ARM: dts: r8a7743: Add watchdog support to SoC dtsi Fabrizio Castro 2018-01-26 10:27 ` Geert Uytterhoeven 2018-01-25 18:03 ` [RFC 32/37] ARM: dts: r8a7745: " Fabrizio Castro 2018-01-26 10:28 ` Geert Uytterhoeven 2018-01-25 18:03 ` [RFC 34/37] ARM: dts: r8a7791: " Fabrizio Castro [not found] ` <1516903391-30467-35-git-send-email-fabrizio.castro-kTT6dE0pTRh9uiUsa/gSgQ@public.gmane.org> 2018-01-26 10:30 ` Geert Uytterhoeven 2018-01-25 18:03 ` [RFC 36/37] ARM: dts: iwg20m: Add watchdog support to SoM dtsi Fabrizio Castro [not found] ` <1516903391-30467-37-git-send-email-fabrizio.castro-kTT6dE0pTRh9uiUsa/gSgQ@public.gmane.org> 2018-01-26 10:32 ` Geert Uytterhoeven
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=1516903391-30467-11-git-send-email-fabrizio.castro@bp.renesas.com \ --to=fabrizio.castro@bp.renesas.com \ --cc=Chris.Paterson2@renesas.com \ --cc=biju.das@bp.renesas.com \ --cc=catalin.marinas@arm.com \ --cc=devicetree@vger.kernel.org \ --cc=geert+renesas@glider.be \ --cc=horms@verge.net.au \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-clk@vger.kernel.org \ --cc=linux-renesas-soc@vger.kernel.org \ --cc=linux-watchdog@vger.kernel.org \ --cc=linux@armlinux.org.uk \ --cc=linux@roeck-us.net \ --cc=magnus.damm@gmail.com \ --cc=mark.rutland@arm.com \ --cc=mturquette@baylibre.com \ --cc=p.zabel@pengutronix.de \ --cc=ramesh.shanmugasundaram@bp.renesas.com \ --cc=robh+dt@kernel.org \ --cc=sboyd@codeaurora.org \ --cc=will.deacon@arm.com \ --cc=wim@iguana.be \ --subject='Re: [RFC 10/37] soc: renesas: rcar-rst: Enable watchdog as reset trigger for Gen2' \ /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
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).