devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v3 00/18] Enable GPU with DVFS support on MediaTek SoCs
@ 2023-02-28 10:47 AngeloGioacchino Del Regno
  2023-02-28 10:47 ` [PATCH v3 01/18] arm64: dts: mediatek: mt8183-kukui: Couple VGPU and VSRAM_GPU regulators AngeloGioacchino Del Regno
                   ` (17 more replies)
  0 siblings, 18 replies; 27+ messages in thread
From: AngeloGioacchino Del Regno @ 2023-02-28 10:47 UTC (permalink / raw)
  To: matthias.bgg
  Cc: robh+dt, krzysztof.kozlowski+dt, angelogioacchino.delregno,
	devicetree, linux-kernel, linux-arm-kernel, linux-mediatek, wenst

Changes in v3:
 - Changed MT8186 compatibles for new bindings
 - Added min/max voltage overrides for vgpu/vsram_gpu on
   mt8183-pumpkin and evb as suggested by Chen-Yu
 - Cosmetic fixes for "arm64: dts: mediatek: mt8192: Add GPU nodes"

Changes in v2:
 - Changed MT8186 to use only two power domains for the GPU.

We finally have working GPU DVFS on MediaTek SoCs.
On Panfrost.
For real.
...and the best part is that it's going upstream.

In order to get GPU DVFS working, it was necessary to satisfy a
specific constraint (which is different, depending on the SoC)
between two regulators: GPU VCORE and GPU SRAM.
This was done through adding the mtk-regulator-coupler driver,
which transparently manages the voltage relation between these
two vregs, hence completely eliminating the need to manage these
regulators in the Panfrost driver; this solves the long standing
issue with devfreq+opp tables not supporting managing voltages
for two regulators per opp entry out of the box, due to which
we never got GPU DVFS on those SoCs, often locking them out to
a low GPU frequency.

This changes. Right now!

Tested on MT8192, MT8195 Chromebooks.

This series depends on [1].

[1]: https://lore.kernel.org/lkml/20230228102704.708150-1-angelogioacchino.delregno@collabora.com/

Alyssa Rosenzweig (2):
  arm64: dts: mediatek: mt8192: Add GPU nodes
  arm64: dts: mediatek: mt8192-asurada: Enable GPU

AngeloGioacchino Del Regno (15):
  arm64: dts: mediatek: mt8183-kukui: Couple VGPU and VSRAM_GPU
    regulators
  arm64: dts: mediatek: mt8183-kukui: Override vgpu/vsram_gpu
    constraints
  arm64: dts: mediatek: mt8183: Remove second opp-microvolt entries from
    gpu table
  arm64: dts: mt8183-pumpkin: Couple VGPU and VSRAM_GPU regulators
  arm64: dts: mediatek: mt8183-evb: Couple VGPU and VSRAM_GPU regulators
  arm64: dts: mediatek: mt8183: Use mediatek,mt8183b-mali as GPU
    compatible
  arm64: dts: mediatek: mt8192: Add mfg_ref_sel clock to MFG0 domain
  arm64: dts: mediatek: mt8192-asurada: Assign sram supply to MFG1 pd
  arm64: dts: mediatek: mt8192-asurada: Couple VGPU and VSRAM_OTHER
    regulators
  arm64: dts: mediatek: mt8195: Add mfg_core_tmp clock to MFG1 domain
  arm64: dts: mt8195: Add panfrost node for Mali-G57 Valhall Natt GPU
  arm64: dts: mediatek: mt8195-cherry: Enable Mali-G57 GPU
  arm64: dts: mediatek: mt8186: Add GPU node
  arm64: dts: mediatek: mt8183-pumpkin: Override vgpu/vsram_gpu
    constraints
  arm64: dts: mediatek: mt8183-evb: Override vgpu/vsram_gpu constraints

Nícolas F. R. A. Prado (1):
  arm64: dts: mediatek: mt8192-asurada: Add MFG0 domain supply

 arch/arm64/boot/dts/mediatek/mt8183-evb.dts   |  17 ++-
 .../arm64/boot/dts/mediatek/mt8183-kukui.dtsi |  17 ++-
 .../boot/dts/mediatek/mt8183-pumpkin.dts      |  17 ++-
 arch/arm64/boot/dts/mediatek/mt8183.dtsi      |  34 ++---
 arch/arm64/boot/dts/mediatek/mt8186.dtsi      |  17 +++
 .../boot/dts/mediatek/mt8192-asurada.dtsi     |  22 ++++
 arch/arm64/boot/dts/mediatek/mt8192.dtsi      | 116 +++++++++++++++++-
 .../boot/dts/mediatek/mt8195-cherry.dtsi      |   5 +
 arch/arm64/boot/dts/mediatek/mt8195.dtsi      |  95 +++++++++++++-
 9 files changed, 314 insertions(+), 26 deletions(-)

-- 
2.39.2


^ permalink raw reply	[flat|nested] 27+ messages in thread

end of thread, other threads:[~2023-03-01  9:30 UTC | newest]

Thread overview: 27+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-02-28 10:47 [PATCH v3 00/18] Enable GPU with DVFS support on MediaTek SoCs AngeloGioacchino Del Regno
2023-02-28 10:47 ` [PATCH v3 01/18] arm64: dts: mediatek: mt8183-kukui: Couple VGPU and VSRAM_GPU regulators AngeloGioacchino Del Regno
2023-02-28 10:47 ` [PATCH v3 02/18] arm64: dts: mediatek: mt8183-kukui: Override vgpu/vsram_gpu constraints AngeloGioacchino Del Regno
2023-03-01  4:38   ` Chen-Yu Tsai
2023-02-28 10:47 ` [PATCH v3 03/18] arm64: dts: mediatek: mt8183: Remove second opp-microvolt entries from gpu table AngeloGioacchino Del Regno
2023-02-28 10:47 ` [PATCH v3 04/18] arm64: dts: mt8183-pumpkin: Couple VGPU and VSRAM_GPU regulators AngeloGioacchino Del Regno
2023-03-01  4:39   ` Chen-Yu Tsai
2023-02-28 10:47 ` [PATCH v3 05/18] arm64: dts: mediatek: mt8183-evb: " AngeloGioacchino Del Regno
2023-03-01  4:39   ` Chen-Yu Tsai
2023-02-28 10:47 ` [PATCH v3 06/18] arm64: dts: mediatek: mt8183: Use mediatek,mt8183b-mali as GPU compatible AngeloGioacchino Del Regno
2023-02-28 10:47 ` [PATCH v3 07/18] arm64: dts: mediatek: mt8192: Add GPU nodes AngeloGioacchino Del Regno
2023-02-28 10:47 ` [PATCH v3 08/18] arm64: dts: mediatek: mt8192: Add mfg_ref_sel clock to MFG0 domain AngeloGioacchino Del Regno
2023-02-28 10:47 ` [PATCH v3 09/18] arm64: dts: mediatek: mt8192-asurada: Add MFG0 domain supply AngeloGioacchino Del Regno
2023-02-28 10:47 ` [PATCH v3 10/18] arm64: dts: mediatek: mt8192-asurada: Assign sram supply to MFG1 pd AngeloGioacchino Del Regno
2023-02-28 10:47 ` [PATCH v3 11/18] arm64: dts: mediatek: mt8192-asurada: Couple VGPU and VSRAM_OTHER regulators AngeloGioacchino Del Regno
2023-03-01  4:53   ` Chen-Yu Tsai
2023-03-01  9:30     ` AngeloGioacchino Del Regno
2023-02-28 10:47 ` [PATCH v3 12/18] arm64: dts: mediatek: mt8192-asurada: Enable GPU AngeloGioacchino Del Regno
2023-02-28 10:47 ` [PATCH v3 13/18] arm64: dts: mediatek: mt8195: Add mfg_core_tmp clock to MFG1 domain AngeloGioacchino Del Regno
2023-02-28 10:47 ` [PATCH v3 14/18] arm64: dts: mt8195: Add panfrost node for Mali-G57 Valhall Natt GPU AngeloGioacchino Del Regno
2023-02-28 10:47 ` [PATCH v3 15/18] arm64: dts: mediatek: mt8195-cherry: Enable Mali-G57 GPU AngeloGioacchino Del Regno
2023-02-28 10:47 ` [PATCH v3 16/18] arm64: dts: mediatek: mt8186: Add GPU node AngeloGioacchino Del Regno
2023-02-28 10:47 ` [PATCH v3 17/18] arm64: dts: mediatek: mt8183-pumpkin: Override vgpu/vsram_gpu constraints AngeloGioacchino Del Regno
2023-03-01  4:54   ` Chen-Yu Tsai
2023-02-28 10:47 ` [PATCH v3 18/18] arm64: dts: mediatek: mt8183-evb: " AngeloGioacchino Del Regno
2023-03-01  4:54   ` Chen-Yu Tsai
2023-03-01  8:13     ` Chen-Yu Tsai

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).