From: Geert Uytterhoeven <geert+renesas@glider.be> To: Magnus Damm <magnus.damm@gmail.com> Cc: Simon Horman <horms@verge.net.au>, linux-renesas-soc@vger.kernel.org, linux-arm-kernel@lists.infradead.org, Geert Uytterhoeven <geert+renesas@glider.be> Subject: [PATCH v2 0/7] soc: renesas: rcar-gen3-sysc: Fix power request conflicts Date: Wed, 28 Aug 2019 13:36:11 +0200 [thread overview] Message-ID: <20190828113618.6672-1-geert+renesas@glider.be> (raw) Hi all, Recent R-Car Gen3 SoCs added an External Request Mask Register to the System Controller (SYSC). This register allows to mask external power requests for CPU or 3DG domains, to prevent conflicts between powering off CPU cores or the 3D Graphics Engine, and changing the state of another power domain through SYSC, which could lead to CPG state machine lock-ups. This patch series starts making use of this register. Note that the register is optional, and that its location and contents are SoC-specific. This was inspired by a patch in the BSP by Dien Pham <dien.pham.ry@renesas.com>. Note that the issue fixed cannot happen in the upstream kernel, as upstream has no support for graphics acceleration yet. SoCs lacking the External Request Mask Register may need a different mitigation in the future. Changes compared to v1[1]: - Improve description of cover letter and first patch. Changes compared to RFC[2]: - Rebased. This has been boot-tested on R-Car H3 ES1.0, H3 ES2.0, M3-W ES1.0, M3-N, V3M, and E3 (only the last 3 have this register!), and regression-tested on R-Car Gen2. This has not been tested on R-Car H3 ES3.0, M3-W ES2.0, and V3H. For your convenience, this series is available in the topic/rcar3-sysc-extmask-v2 branch of my renesas-drivers git repository at git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-drivers.git. Thanks for your comments! [1] Not posted, but included in yesterday's renesas-drivers-2019-08-27-v5.3-rc6 [2] "[RFC PATCH 0/7] soc: renesas: rcar-gen3-sysc: Fix power request conflicts" (https://lore.kernel.org/linux-renesas-soc/20181205155028.14335-1-geert+renesas@glider.be/) Geert Uytterhoeven (7): soc: renesas: rcar-sysc: Prepare for fixing power request conflicts soc: renesas: r8a7795-sysc: Fix power request conflicts soc: renesas: r8a7796-sysc: Fix power request conflicts soc: renesas: r8a77965-sysc: Fix power request conflicts soc: renesas: r8a77970-sysc: Fix power request conflicts soc: renesas: r8a77980-sysc: Fix power request conflicts soc: renesas: r8a77990-sysc: Fix power request conflicts drivers/soc/renesas/r8a7795-sysc.c | 32 ++++++++++++++++++++++++----- drivers/soc/renesas/r8a7796-sysc.c | 22 +++++++++++++++++++- drivers/soc/renesas/r8a77965-sysc.c | 3 +++ drivers/soc/renesas/r8a77970-sysc.c | 3 +++ drivers/soc/renesas/r8a77980-sysc.c | 3 +++ drivers/soc/renesas/r8a77990-sysc.c | 3 +++ drivers/soc/renesas/rcar-sysc.c | 16 +++++++++++++++ drivers/soc/renesas/rcar-sysc.h | 7 +++++-- 8 files changed, 81 insertions(+), 8 deletions(-) -- 2.17.1 Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds
WARNING: multiple messages have this Message-ID (diff)
From: Geert Uytterhoeven <geert+renesas@glider.be> To: Magnus Damm <magnus.damm@gmail.com> Cc: linux-renesas-soc@vger.kernel.org, Simon Horman <horms@verge.net.au>, Geert Uytterhoeven <geert+renesas@glider.be>, linux-arm-kernel@lists.infradead.org Subject: [PATCH v2 0/7] soc: renesas: rcar-gen3-sysc: Fix power request conflicts Date: Wed, 28 Aug 2019 13:36:11 +0200 [thread overview] Message-ID: <20190828113618.6672-1-geert+renesas@glider.be> (raw) Hi all, Recent R-Car Gen3 SoCs added an External Request Mask Register to the System Controller (SYSC). This register allows to mask external power requests for CPU or 3DG domains, to prevent conflicts between powering off CPU cores or the 3D Graphics Engine, and changing the state of another power domain through SYSC, which could lead to CPG state machine lock-ups. This patch series starts making use of this register. Note that the register is optional, and that its location and contents are SoC-specific. This was inspired by a patch in the BSP by Dien Pham <dien.pham.ry@renesas.com>. Note that the issue fixed cannot happen in the upstream kernel, as upstream has no support for graphics acceleration yet. SoCs lacking the External Request Mask Register may need a different mitigation in the future. Changes compared to v1[1]: - Improve description of cover letter and first patch. Changes compared to RFC[2]: - Rebased. This has been boot-tested on R-Car H3 ES1.0, H3 ES2.0, M3-W ES1.0, M3-N, V3M, and E3 (only the last 3 have this register!), and regression-tested on R-Car Gen2. This has not been tested on R-Car H3 ES3.0, M3-W ES2.0, and V3H. For your convenience, this series is available in the topic/rcar3-sysc-extmask-v2 branch of my renesas-drivers git repository at git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-drivers.git. Thanks for your comments! [1] Not posted, but included in yesterday's renesas-drivers-2019-08-27-v5.3-rc6 [2] "[RFC PATCH 0/7] soc: renesas: rcar-gen3-sysc: Fix power request conflicts" (https://lore.kernel.org/linux-renesas-soc/20181205155028.14335-1-geert+renesas@glider.be/) Geert Uytterhoeven (7): soc: renesas: rcar-sysc: Prepare for fixing power request conflicts soc: renesas: r8a7795-sysc: Fix power request conflicts soc: renesas: r8a7796-sysc: Fix power request conflicts soc: renesas: r8a77965-sysc: Fix power request conflicts soc: renesas: r8a77970-sysc: Fix power request conflicts soc: renesas: r8a77980-sysc: Fix power request conflicts soc: renesas: r8a77990-sysc: Fix power request conflicts drivers/soc/renesas/r8a7795-sysc.c | 32 ++++++++++++++++++++++++----- drivers/soc/renesas/r8a7796-sysc.c | 22 +++++++++++++++++++- drivers/soc/renesas/r8a77965-sysc.c | 3 +++ drivers/soc/renesas/r8a77970-sysc.c | 3 +++ drivers/soc/renesas/r8a77980-sysc.c | 3 +++ drivers/soc/renesas/r8a77990-sysc.c | 3 +++ drivers/soc/renesas/rcar-sysc.c | 16 +++++++++++++++ drivers/soc/renesas/rcar-sysc.h | 7 +++++-- 8 files changed, 81 insertions(+), 8 deletions(-) -- 2.17.1 Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next reply other threads:[~2019-08-28 11:58 UTC|newest] Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top 2019-08-28 11:36 Geert Uytterhoeven [this message] 2019-08-28 11:36 ` [PATCH v2 0/7] soc: renesas: rcar-gen3-sysc: Fix power request conflicts Geert Uytterhoeven 2019-08-28 11:36 ` [PATCH v2 1/7] soc: renesas: rcar-sysc: Prepare for fixing " Geert Uytterhoeven 2019-08-28 11:36 ` Geert Uytterhoeven 2019-08-28 11:36 ` [PATCH v2 2/7] soc: renesas: r8a7795-sysc: Fix " Geert Uytterhoeven 2019-08-28 11:36 ` Geert Uytterhoeven 2019-08-28 11:36 ` [PATCH v2 3/7] soc: renesas: r8a7796-sysc: " Geert Uytterhoeven 2019-08-28 11:36 ` Geert Uytterhoeven 2019-08-28 11:36 ` [PATCH v2 4/7] soc: renesas: r8a77965-sysc: " Geert Uytterhoeven 2019-08-28 11:36 ` Geert Uytterhoeven 2019-08-28 11:36 ` [PATCH v2 5/7] soc: renesas: r8a77970-sysc: " Geert Uytterhoeven 2019-08-28 11:36 ` Geert Uytterhoeven 2019-08-28 11:36 ` [PATCH v2 6/7] soc: renesas: r8a77980-sysc: " Geert Uytterhoeven 2019-08-28 11:36 ` Geert Uytterhoeven 2019-08-28 11:36 ` [PATCH v2 7/7] soc: renesas: r8a77990-sysc: " Geert Uytterhoeven 2019-08-28 11:36 ` Geert Uytterhoeven 2019-08-29 4:14 ` [PATCH v2 0/7] soc: renesas: rcar-gen3-sysc: " Yoshihiro Shimoda 2019-08-29 4:14 ` Yoshihiro Shimoda 2019-09-03 12:10 ` Geert Uytterhoeven 2019-09-03 12:10 ` Geert Uytterhoeven 2019-08-31 9:48 ` Simon Horman 2019-08-31 9:48 ` Simon Horman
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=20190828113618.6672-1-geert+renesas@glider.be \ --to=geert+renesas@glider.be \ --cc=horms@verge.net.au \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-renesas-soc@vger.kernel.org \ --cc=magnus.damm@gmail.com \ /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: linkBe 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.