* [PATCH 0/2] drm/msm: device tree changes to support devfreq
@ 2017-12-18 23:27 Jordan Crouse
[not found] ` <1513639655-9023-1-git-send-email-jcrouse-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
2017-12-18 23:27 ` [PATCH 2/2] arm64: dts: Add full GPU frequency table for 8996 Jordan Crouse
0 siblings, 2 replies; 3+ messages in thread
From: Jordan Crouse @ 2017-12-18 23:27 UTC (permalink / raw)
To: freedreno; +Cc: linux-arm-msm
Rob, here are the device tree changes to support the devfreq and
speed bin features added in https://patchwork.freedesktop.org/series/34189/.
These are against your wip-8996-drm tree which is pretty much the
most recent db820c tree we have.
Jordan Crouse (2):
arm64: dts: Use OPP table for Adreno GPU
arm64: dts: Add full GPU frequency table for 8996
arch/arm64/boot/dts/qcom/msm8996.dtsi | 59 ++++++++++++++++++++++++++++-------
1 file changed, 47 insertions(+), 12 deletions(-)
--
1.9.1
^ permalink raw reply [flat|nested] 3+ messages in thread[parent not found: <1513639655-9023-1-git-send-email-jcrouse-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>]
* [PATCH 1/2] arm64: dts: Use OPP table for Adreno GPU [not found] ` <1513639655-9023-1-git-send-email-jcrouse-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org> @ 2017-12-18 23:27 ` Jordan Crouse 0 siblings, 0 replies; 3+ messages in thread From: Jordan Crouse @ 2017-12-18 23:27 UTC (permalink / raw) To: freedreno-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW Cc: linux-arm-msm-u79uwXL29TY76Z2rM5mHXA Add a nvmem cell to let the GPU driver read a speed bin from the fuses (if applicable). Then switch the cpu frequency table definitions to real OPP v2 tables so we can take advantage of the hardware matching mechanism. Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org> --- arch/arm64/boot/dts/qcom/msm8996.dtsi | 34 ++++++++++++++++++++++------------ 1 file changed, 22 insertions(+), 12 deletions(-) diff --git a/arch/arm64/boot/dts/qcom/msm8996.dtsi b/arch/arm64/boot/dts/qcom/msm8996.dtsi index 65fd370..f136d4c 100644 --- a/arch/arm64/boot/dts/qcom/msm8996.dtsi +++ b/arch/arm64/boot/dts/qcom/msm8996.dtsi @@ -642,6 +642,11 @@ reg = <0x24f 0x1>; bits = <1 4>; }; + + gpu_speed_bin: gpu_speed_bin@133 { + reg = <0x133 0x1>; + bits = <5 3>; + }; }; phy@34000 { @@ -1099,6 +1104,19 @@ status = "okay"; }; + gpu_opp_table: opp_table { + compatible ="operating-points-v2"; + + opp-624000000 { + opp-hz = /bits/ 64 <624000000>; + opp-supported-hw = <0x01>; + }; + opp-510000000 { + opp-hz = /bits/ 64 <510000000>; + opp-supported-hw = <0xFF>; + }; + }; + gpu@b00000 { compatible = "qcom,adreno-530.2", "qcom,adreno"; #stream-id-cells = <16>; @@ -1124,21 +1142,13 @@ power-domains = <&mmcc GPU_GDSC>; iommus = <&adreno_smmu 0>; + nvmem-cells = <&gpu_speed_bin>; + nvmem-cell-names = "speed_bin"; + qcom,gpu-quirk-two-pass-use-wfi; qcom,gpu-quirk-fault-detect-mask; - /* This is a safe speed for bring up in all bin levels. - * This isn't the fastest the chip can go, but we can - * get there eventually */ - qcom,gpu-pwrlevels { - compatible = "qcom,gpu-pwrlevels"; - qcom,gpu-pwrlevel@0 { - qcom,gpu-freq = <624000000>; - }; - qcom,gpu-pwrlevel@1 { - qcom,gpu-freq = <27000000>; - }; - }; + operating-points-v2 = <&gpu_opp_table>; zap-shader { memory-region = <&zap_shader_region>; -- 1.9.1 _______________________________________________ Freedreno mailing list Freedreno@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/freedreno ^ permalink raw reply related [flat|nested] 3+ messages in thread
* [PATCH 2/2] arm64: dts: Add full GPU frequency table for 8996 2017-12-18 23:27 [PATCH 0/2] drm/msm: device tree changes to support devfreq Jordan Crouse [not found] ` <1513639655-9023-1-git-send-email-jcrouse-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org> @ 2017-12-18 23:27 ` Jordan Crouse 1 sibling, 0 replies; 3+ messages in thread From: Jordan Crouse @ 2017-12-18 23:27 UTC (permalink / raw) To: freedreno; +Cc: linux-arm-msm Now that we have frequency scaling for the GPU give it a full list of frequencies it can scale to. The two higher frequencies are for faster binned parts and the remaining frequencies work on all targets. Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org> --- arch/arm64/boot/dts/qcom/msm8996.dtsi | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/arch/arm64/boot/dts/qcom/msm8996.dtsi b/arch/arm64/boot/dts/qcom/msm8996.dtsi index f136d4c..f495a2e 100644 --- a/arch/arm64/boot/dts/qcom/msm8996.dtsi +++ b/arch/arm64/boot/dts/qcom/msm8996.dtsi @@ -1107,14 +1107,39 @@ gpu_opp_table: opp_table { compatible ="operating-points-v2"; + /* + * 624Mhz and 560Mhz are only available on speed bin + * (1 << 0). All the rest are available on all bins of + * the hardware + */ opp-624000000 { opp-hz = /bits/ 64 <624000000>; opp-supported-hw = <0x01>; }; + opp-560000000 { + opp-hz = /bits/ 64 <560000000>; + opp-supported-hw = <0x01>; + }; opp-510000000 { opp-hz = /bits/ 64 <510000000>; opp-supported-hw = <0xFF>; }; + opp-401800000 { + opp-hz = /bits/ 64 <401800000>; + opp-supported-hw = <0xFF>; + }; + opp-315000000 { + opp-hz = /bits/ 64 <315000000>; + opp-supported-hw = <0xFF>; + }; + opp-214000000 { + opp-hz = /bits/ 64 <214000000>; + opp-supported-hw = <0xFF>; + }; + opp-133000000 { + opp-hz = /bits/ 64 <133000000>; + opp-supported-hw = <0xFF>; + }; }; gpu@b00000 { -- 1.9.1 ^ permalink raw reply related [flat|nested] 3+ messages in thread
end of thread, other threads:[~2017-12-18 23:27 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-12-18 23:27 [PATCH 0/2] drm/msm: device tree changes to support devfreq Jordan Crouse
[not found] ` <1513639655-9023-1-git-send-email-jcrouse-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
2017-12-18 23:27 ` [PATCH 1/2] arm64: dts: Use OPP table for Adreno GPU Jordan Crouse
2017-12-18 23:27 ` [PATCH 2/2] arm64: dts: Add full GPU frequency table for 8996 Jordan Crouse
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.