// SPDX-License-Identifier: BSD-3-Clause /* * Copyright (c) 2023-2024 Qualcomm Innovation Center, Inc. All rights reserved. */ /* ACD Control register values */ #define ACD_LEVEL_TURBO_L4 0x802e5ffd #define ACD_LEVEL_TURBO_L3 0xa02f5ffd #define ACD_LEVEL_TURBO_L1 0xa8285ffd #define ACD_LEVEL_NOM_L1 0x88295ffd #define ACD_LEVEL_NOM 0x88295ffd #define ACD_LEVEL_SVS_L2 0x882a5ffd #define ACD_LEVEL_SVS_L1 0x882a5ffd #define ACD_LEVEL_SVS_L0 0xa82b5ffd #define ACD_LEVEL_SVS 0xa82c5ffd #define ACD_LEVEL_LOW_SVS_L1 0x882e5ffd #define ACD_LEVEL_LOW_SVS 0xc0295ffd #define ACD_LEVEL_LOW_SVS_D0 0xc02a5ffd #define ACD_LEVEL_LOW_SVS_D1 0xc02b5ffd #define ACD_LEVEL_LOW_SVS_D2 0xe8285ffd &msm_gpu { /* Power levels */ qcom,gpu-pwrlevel-bins { #address-cells = <1>; #size-cells = <0>; compatible = "qcom,gpu-pwrlevels-bins"; qcom,gpu-pwrlevels-0 { #address-cells = <1>; #size-cells = <0>; qcom,initial-pwrlevel = <10>; qcom,initial-min-pwrlevel = <10>; qcom,sku-codes = ; /* NOM_L1 */ qcom,gpu-pwrlevel@0 { reg = <0>; qcom,gpu-freq = <900000000>; qcom,level = ; qcom,bus-freq = <11>; qcom,bus-min = <11>; qcom,bus-max = <11>; qcom,acd-level = ; }; /* NOM */ qcom,gpu-pwrlevel@1 { reg = <1>; qcom,gpu-freq = <832000000>; qcom,level = ; qcom,bus-freq = <10>; qcom,bus-min = <7>; qcom,bus-max = <10>; qcom,acd-level = ; }; /* SVS_L2 */ qcom,gpu-pwrlevel@2 { reg = <2>; qcom,gpu-freq = <779000000>; qcom,level = ; qcom,bus-freq = <9>; qcom,bus-min = <7>; qcom,bus-max = <10>; qcom,acd-level = ; }; /* SVS_L1 */ qcom,gpu-pwrlevel@3 { reg = <3>; qcom,gpu-freq = <734000000>; qcom,level = ; qcom,bus-freq = <8>; qcom,bus-min = <6>; qcom,bus-max = <10>; qcom,acd-level = ; }; /* SVS_L0 */ qcom,gpu-pwrlevel@4 { reg = <4>; qcom,gpu-freq = <660000000>; qcom,level = ; qcom,bus-freq = <6>; qcom,bus-min = <4>; qcom,bus-max = <7>; qcom,acd-level = ; }; /* SVS */ qcom,gpu-pwrlevel@5 { reg = <5>; qcom,gpu-freq = <607000000>; qcom,level = ; qcom,bus-freq = <6>; qcom,bus-min = <4>; qcom,bus-max = <7>; qcom,acd-level = ; }; /* Low_SVS_L1 */ qcom,gpu-pwrlevel@6 { reg = <6>; qcom,gpu-freq = <525000000>; qcom,level = ; qcom,bus-freq = <4>; qcom,bus-min = <2>; qcom,bus-max = <6>; qcom,acd-level = ; }; /* Low_SVS */ qcom,gpu-pwrlevel@7 { reg = <7>; qcom,gpu-freq = <443000000>; qcom,level = ; qcom,bus-freq = <4>; qcom,bus-min = <2>; qcom,bus-max = <6>; qcom,acd-level = ; }; /* Low_SVS_D0 */ qcom,gpu-pwrlevel@8 { reg = <8>; qcom,gpu-freq = <389000000>; qcom,level = ; qcom,bus-freq = <4>; qcom,bus-min = <2>; qcom,bus-max = <6>; qcom,acd-level = ; }; /* Low_SVS_D1 */ qcom,gpu-pwrlevel@9 { reg = <9>; qcom,gpu-freq = <342000000>; qcom,level = ; qcom,bus-freq = <3>; qcom,bus-min = <2>; qcom,bus-max = <6>; qcom,acd-level = ; }; /* Low_SVS_D2 */ qcom,gpu-pwrlevel@10 { reg = <10>; qcom,gpu-freq = <222000000>; qcom,level = ; qcom,bus-freq = <3>; qcom,bus-min = <2>; qcom,bus-max = <3>; qcom,acd-level = ; }; /* Low_SVS_D3 */ qcom,gpu-pwrlevel@11 { reg = <11>; qcom,gpu-freq = <125000000>; qcom,level = ; qcom,bus-freq = <2>; qcom,bus-min = <2>; qcom,bus-max = <2>; }; }; qcom,gpu-pwrlevels-1 { #address-cells = <1>; #size-cells = <0>; qcom,initial-pwrlevel = <13>; qcom,initial-min-pwrlevel = <13>; qcom,sku-codes = ; /* TURBO_L4 */ qcom,gpu-pwrlevel@0 { reg = <0>; qcom,gpu-freq = <1150000000>; qcom,level = ; qcom,bus-freq = <11>; qcom,bus-min = <11>; qcom,bus-max = <11>; qcom,acd-level = ; }; /* TURBO_L3 */ qcom,gpu-pwrlevel@1 { reg = <1>; qcom,gpu-freq = <1050000000>; qcom,level = ; qcom,bus-freq = <11>; qcom,bus-min = <11>; qcom,bus-max = <11>; qcom,acd-level = ; }; /* TURBO_L1 */ qcom,gpu-pwrlevel@2 { reg = <2>; qcom,gpu-freq = <967000000>; qcom,level = ; qcom,bus-freq = <10>; qcom,bus-min = <10>; qcom,bus-max = <11>; qcom,acd-level = ; }; /* NOM_L1 */ qcom,gpu-pwrlevel@3 { reg = <3>; qcom,gpu-freq = <900000000>; qcom,level = ; qcom,bus-freq = <10>; qcom,bus-min = <7>; qcom,bus-max = <10>; qcom,acd-level = ; }; /* NOM */ qcom,gpu-pwrlevel@4 { reg = <4>; qcom,gpu-freq = <832000000>; qcom,level = ; qcom,bus-freq = <10>; qcom,bus-min = <7>; qcom,bus-max = <10>; qcom,acd-level = ; }; /* SVS_L2 */ qcom,gpu-pwrlevel@5 { reg = <5>; qcom,gpu-freq = <779000000>; qcom,level = ; qcom,bus-freq = <9>; qcom,bus-min = <7>; qcom,bus-max = <10>; qcom,acd-level = ; }; /* SVS_L1 */ qcom,gpu-pwrlevel@6 { reg = <6>; qcom,gpu-freq = <734000000>; qcom,level = ; qcom,bus-freq = <8>; qcom,bus-min = <6>; qcom,bus-max = <10>; qcom,acd-level = ; }; /* SVS_L0 */ qcom,gpu-pwrlevel@7 { reg = <7>; qcom,gpu-freq = <660000000>; qcom,level = ; qcom,bus-freq = <6>; qcom,bus-min = <4>; qcom,bus-max = <7>; qcom,acd-level = ; }; /* SVS */ qcom,gpu-pwrlevel@8 { reg = <8>; qcom,gpu-freq = <607000000>; qcom,level = ; qcom,bus-freq = <6>; qcom,bus-min = <4>; qcom,bus-max = <7>; qcom,acd-level = ; }; /* Low_SVS_L1 */ qcom,gpu-pwrlevel@9 { reg = <9>; qcom,gpu-freq = <525000000>; qcom,level = ; qcom,bus-freq = <4>; qcom,bus-min = <2>; qcom,bus-max = <6>; qcom,acd-level = ; }; /* Low_SVS */ qcom,gpu-pwrlevel@10 { reg = <10>; qcom,gpu-freq = <443000000>; qcom,level = ; qcom,bus-freq = <4>; qcom,bus-min = <2>; qcom,bus-max = <6>; qcom,acd-level = ; }; /* Low_SVS_D0 */ qcom,gpu-pwrlevel@11 { reg = <11>; qcom,gpu-freq = <389000000>; qcom,level = ; qcom,bus-freq = <4>; qcom,bus-min = <2>; qcom,bus-max = <6>; qcom,acd-level = ; }; /* Low_SVS_D1 */ qcom,gpu-pwrlevel@12 { reg = <12>; qcom,gpu-freq = <342000000>; qcom,level = ; qcom,bus-freq = <3>; qcom,bus-min = <2>; qcom,bus-max = <6>; qcom,acd-level = ; }; /* Low_SVS_D2 */ qcom,gpu-pwrlevel@13 { reg = <13>; qcom,gpu-freq = <222000000>; qcom,level = ; qcom,bus-freq = <3>; qcom,bus-min = <2>; qcom,bus-max = <3>; qcom,acd-level = ; }; /* Low_SVS_D3 */ qcom,gpu-pwrlevel@14 { reg = <14>; qcom,gpu-freq = <125000000>; qcom,level = ; qcom,bus-freq = <2>; qcom,bus-min = <2>; qcom,bus-max = <2>; }; }; }; };