// SPDX-License-Identifier: BSD-3-Clause /* * Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights reserved. */ &msm_gpu { /* Power levels */ qcom,gpu-pwrlevel-bins { #address-cells = <1>; #size-cells = <0>; compatible = "qcom,gpu-pwrlevels-bins"; /* * The bins need to match based on speed bin first and then SKU. * Keep pwrlevel bins sorted in ascending order of the fmax of the bins. */ qcom,gpu-pwrlevels-0 { #address-cells = <1>; #size-cells = <0>; qcom,initial-pwrlevel = <8>; qcom,speed-bin = <0>; /* Turbo_L1 */ qcom,gpu-pwrlevel@0 { reg = <0>; qcom,gpu-freq = <1050000000>; qcom,level = ; qcom,bus-freq = <11>; qcom,bus-min = <11>; qcom,bus-max = <11>; }; /* Turbo */ qcom,gpu-pwrlevel@1 { reg = <1>; qcom,gpu-freq = <937000000>; qcom,level = ; qcom,bus-freq = <10>; qcom,bus-min = <9>; qcom,bus-max = <10>; }; /* Nom_L1 */ qcom,gpu-pwrlevel@2 { reg = <2>; qcom,gpu-freq = <873000000>; qcom,level = ; qcom,bus-freq = <9>; qcom,bus-min = <7>; qcom,bus-max = <9>; }; /* Nom */ qcom,gpu-pwrlevel@3 { reg = <3>; qcom,gpu-freq = <763000000>; qcom,level = ; qcom,bus-freq = <8>; qcom,bus-min = <7>; qcom,bus-max = <9>; }; /* SVS_L2 */ qcom,gpu-pwrlevel@4 { reg = <4>; qcom,gpu-freq = <688000000>; qcom,level = ; qcom,bus-freq = <6>; qcom,bus-min = <4>; qcom,bus-max = <7>; }; /* SVS_L1 */ qcom,gpu-pwrlevel@5 { reg = <5>; qcom,gpu-freq = <644000000>; qcom,level = ; qcom,bus-freq = <6>; qcom,bus-min = <4>; qcom,bus-max = <7>; }; /* SVS */ qcom,gpu-pwrlevel@6 { reg = <6>; qcom,gpu-freq = <510000000>; qcom,level = ; qcom,bus-freq = <4>; qcom,bus-min = <2>; qcom,bus-max = <6>; }; /* Low_SVS */ qcom,gpu-pwrlevel@7 { reg = <7>; qcom,gpu-freq = <362000000>; qcom,level = ; qcom,bus-freq = <3>; qcom,bus-min = <1>; qcom,bus-max = <3>; }; /* Low_SVS_D1 */ qcom,gpu-pwrlevel@8 { reg = <8>; qcom,gpu-freq = <264000000>; qcom,level = ; qcom,bus-freq = <1>; qcom,bus-min = <1>; qcom,bus-max = <3>; }; }; qcom,gpu-pwrlevels-1 { #address-cells = <1>; #size-cells = <0>; qcom,initial-pwrlevel = <8>; qcom,speed-bin = <0xd8>; /* Turbo_L1 */ qcom,gpu-pwrlevel@0 { reg = <0>; qcom,gpu-freq = <1025000000>; qcom,level = ; qcom,bus-freq = <11>; qcom,bus-min = <11>; qcom,bus-max = <11>; }; /* Turbo */ qcom,gpu-pwrlevel@1 { reg = <1>; qcom,gpu-freq = <937000000>; qcom,level = ; qcom,bus-freq = <10>; qcom,bus-min = <9>; qcom,bus-max = <10>; }; /* Nom_L1 */ qcom,gpu-pwrlevel@2 { reg = <2>; qcom,gpu-freq = <873000000>; qcom,level = ; qcom,bus-freq = <9>; qcom,bus-min = <7>; qcom,bus-max = <9>; }; /* Nom */ qcom,gpu-pwrlevel@3 { reg = <3>; qcom,gpu-freq = <763000000>; qcom,level = ; qcom,bus-freq = <8>; qcom,bus-min = <7>; qcom,bus-max = <9>; }; /* SVS_L2 */ qcom,gpu-pwrlevel@4 { reg = <4>; qcom,gpu-freq = <688000000>; qcom,level = ; qcom,bus-freq = <6>; qcom,bus-min = <4>; qcom,bus-max = <7>; }; /* SVS_L1 */ qcom,gpu-pwrlevel@5 { reg = <5>; qcom,gpu-freq = <644000000>; qcom,level = ; qcom,bus-freq = <6>; qcom,bus-min = <4>; qcom,bus-max = <7>; }; /* SVS */ qcom,gpu-pwrlevel@6 { reg = <6>; qcom,gpu-freq = <510000000>; qcom,level = ; qcom,bus-freq = <4>; qcom,bus-min = <2>; qcom,bus-max = <6>; }; /* Low_SVS */ qcom,gpu-pwrlevel@7 { reg = <7>; qcom,gpu-freq = <362000000>; qcom,level = ; qcom,bus-freq = <3>; qcom,bus-min = <1>; qcom,bus-max = <3>; }; /* Low_SVS_D1 */ qcom,gpu-pwrlevel@8 { reg = <8>; qcom,gpu-freq = <264000000>; qcom,level = ; qcom,bus-freq = <1>; qcom,bus-min = <1>; qcom,bus-max = <3>; }; }; qcom,gpu-pwrlevels-2 { #address-cells = <1>; #size-cells = <0>; qcom,initial-pwrlevel = <8>; qcom,speed-bin = <0xf2>; /* Turbo_L1 */ qcom,gpu-pwrlevel@0 { reg = <0>; qcom,gpu-freq = <1050000000>; qcom,level = ; qcom,bus-freq = <11>; qcom,bus-min = <11>; qcom,bus-max = <11>; }; /* Turbo */ qcom,gpu-pwrlevel@1 { reg = <1>; qcom,gpu-freq = <937000000>; qcom,level = ; qcom,bus-freq = <10>; qcom,bus-min = <9>; qcom,bus-max = <10>; }; /* Nom_L1 */ qcom,gpu-pwrlevel@2 { reg = <2>; qcom,gpu-freq = <873000000>; qcom,level = ; qcom,bus-freq = <9>; qcom,bus-min = <7>; qcom,bus-max = <9>; }; /* Nom */ qcom,gpu-pwrlevel@3 { reg = <3>; qcom,gpu-freq = <763000000>; qcom,level = ; qcom,bus-freq = <8>; qcom,bus-min = <7>; qcom,bus-max = <9>; }; /* SVS_L2 */ qcom,gpu-pwrlevel@4 { reg = <4>; qcom,gpu-freq = <688000000>; qcom,level = ; qcom,bus-freq = <6>; qcom,bus-min = <4>; qcom,bus-max = <7>; }; /* SVS_L1 */ qcom,gpu-pwrlevel@5 { reg = <5>; qcom,gpu-freq = <644000000>; qcom,level = ; qcom,bus-freq = <6>; qcom,bus-min = <4>; qcom,bus-max = <7>; }; /* SVS */ qcom,gpu-pwrlevel@6 { reg = <6>; qcom,gpu-freq = <510000000>; qcom,level = ; qcom,bus-freq = <4>; qcom,bus-min = <2>; qcom,bus-max = <6>; }; /* Low_SVS */ qcom,gpu-pwrlevel@7 { reg = <7>; qcom,gpu-freq = <362000000>; qcom,level = ; qcom,bus-freq = <3>; qcom,bus-min = <1>; qcom,bus-max = <3>; }; /* Low_SVS_D1 */ qcom,gpu-pwrlevel@8 { reg = <8>; qcom,gpu-freq = <264000000>; qcom,level = ; qcom,bus-freq = <1>; qcom,bus-min = <1>; qcom,bus-max = <3>; }; }; }; };