Lines Matching refs:v

397 		struct vba_vars_st *v,
1855 struct vba_vars_st *v = &mode_lib->vba; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation() local
1858 unsigned int PrefetchMode = v->PrefetchModePerState[v->VoltageLevel][v->maxMpcComb]; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1865 v->WritebackDISPCLK = 0.0; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1866 v->DISPCLKWithRamping = 0; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1867 v->DISPCLKWithoutRamping = 0; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1868 v->GlobalDPPCLK = 0.0; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1870 v->IdealSDPPortBandwidthPerState[v->VoltageLevel][v->maxMpcComb] = dml_min3( in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1871 v->ReturnBusWidth * v->DCFCLK, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1872 v->DRAMSpeedPerState[v->VoltageLevel] * v->NumberOfChannels * v->DRAMChannelWidth, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1873 v->FabricClockPerState[v->VoltageLevel] * v->FabricDatapathToDCNDataReturn); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1874 if (v->HostVMEnable != true) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1875v->ReturnBW = v->IdealSDPPortBandwidthPerState[v->VoltageLevel][v->maxMpcComb] * v->PercentOfIdeal… in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1877v->ReturnBW = v->IdealSDPPortBandwidthPerState[v->VoltageLevel][v->maxMpcComb] * v->PercentOfIdeal… in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1883 for (k = 0; k < v->NumberOfActivePlanes; ++k) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1884 if (v->WritebackEnable[k]) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1885 v->WritebackDISPCLK = dml_max(v->WritebackDISPCLK, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1887 v->WritebackPixelFormat[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1888 v->PixelClock[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1889 v->WritebackHRatio[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1890 v->WritebackVRatio[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1891 v->WritebackHTaps[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1892 v->WritebackVTaps[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1893 v->WritebackSourceWidth[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1894 v->WritebackDestinationWidth[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1895 v->HTotal[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1896 v->WritebackLineBufferSize)); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1900 for (k = 0; k < v->NumberOfActivePlanes; ++k) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1901 if (v->HRatio[k] > 1) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1902 v->PSCL_THROUGHPUT_LUMA[k] = dml_min(v->MaxDCHUBToPSCLThroughput, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1903 v->MaxPSCLToLBThroughput * v->HRatio[k] / dml_ceil(v->htaps[k] / 6.0, 1)); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1905 v->PSCL_THROUGHPUT_LUMA[k] = dml_min( in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1906 v->MaxDCHUBToPSCLThroughput, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1907 v->MaxPSCLToLBThroughput); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1910 v->DPPCLKUsingSingleDPPLuma = v->PixelClock[k] in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1911 * dml_max(v->vtaps[k] / 6.0 * dml_min(1.0, v->HRatio[k]), in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1912 dml_max(v->HRatio[k] * v->VRatio[k] / v->PSCL_THROUGHPUT_LUMA[k], 1.0)); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1914 if ((v->htaps[k] > 6 || v->vtaps[k] > 6) in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1915 && v->DPPCLKUsingSingleDPPLuma < 2 * v->PixelClock[k]) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1916 v->DPPCLKUsingSingleDPPLuma = 2 * v->PixelClock[k]; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1919 if ((v->SourcePixelFormat[k] != dm_420_8 in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1920 && v->SourcePixelFormat[k] != dm_420_10 in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1921 && v->SourcePixelFormat[k] != dm_420_12 in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1922 && v->SourcePixelFormat[k] != dm_rgbe_alpha)) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1923 v->PSCL_THROUGHPUT_CHROMA[k] = 0.0; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1924 v->DPPCLKUsingSingleDPP[k] = v->DPPCLKUsingSingleDPPLuma; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1926 if (v->HRatioChroma[k] > 1) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1927 v->PSCL_THROUGHPUT_CHROMA[k] = dml_min(v->MaxDCHUBToPSCLThroughput, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1928 v->MaxPSCLToLBThroughput * v->HRatioChroma[k] / dml_ceil(v->HTAPsChroma[k] / 6.0, 1.0)); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1930 v->PSCL_THROUGHPUT_CHROMA[k] = dml_min( in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1931 v->MaxDCHUBToPSCLThroughput, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1932 v->MaxPSCLToLBThroughput); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1934 v->DPPCLKUsingSingleDPPChroma = v->PixelClock[k] in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1935 * dml_max3(v->VTAPsChroma[k] / 6.0 * dml_min(1.0, v->HRatioChroma[k]), in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1936 v->HRatioChroma[k] * v->VRatioChroma[k] / v->PSCL_THROUGHPUT_CHROMA[k], 1.0); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1938 if ((v->HTAPsChroma[k] > 6 || v->VTAPsChroma[k] > 6) in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1939 && v->DPPCLKUsingSingleDPPChroma in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1940 < 2 * v->PixelClock[k]) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1941 v->DPPCLKUsingSingleDPPChroma = 2 in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1942 * v->PixelClock[k]; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1945 v->DPPCLKUsingSingleDPP[k] = dml_max( in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1946 v->DPPCLKUsingSingleDPPLuma, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1947 v->DPPCLKUsingSingleDPPChroma); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1951 for (k = 0; k < v->NumberOfActivePlanes; ++k) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1952 if (v->BlendingAndTiming[k] != k) in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1954 if (v->ODMCombineEnabled[k] == dm_odm_combine_mode_4to1) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1955 v->DISPCLKWithRamping = dml_max(v->DISPCLKWithRamping, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1956 v->PixelClock[k] / 4 * (1 + v->DISPCLKDPPCLKDSCCLKDownSpreading / 100) in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1957 * (1 + v->DISPCLKRampingMargin / 100)); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1958 v->DISPCLKWithoutRamping = dml_max(v->DISPCLKWithoutRamping, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1959 v->PixelClock[k] / 4 * (1 + v->DISPCLKDPPCLKDSCCLKDownSpreading / 100)); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1960 } else if (v->ODMCombineEnabled[k] == dm_odm_combine_mode_2to1) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1961 v->DISPCLKWithRamping = dml_max(v->DISPCLKWithRamping, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1962 v->PixelClock[k] / 2 * (1 + v->DISPCLKDPPCLKDSCCLKDownSpreading / 100) in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1963 * (1 + v->DISPCLKRampingMargin / 100)); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1964 v->DISPCLKWithoutRamping = dml_max(v->DISPCLKWithoutRamping, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1965 v->PixelClock[k] / 2 * (1 + v->DISPCLKDPPCLKDSCCLKDownSpreading / 100)); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1967 v->DISPCLKWithRamping = dml_max(v->DISPCLKWithRamping, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1968 v->PixelClock[k] * (1 + v->DISPCLKDPPCLKDSCCLKDownSpreading / 100) in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1969 * (1 + v->DISPCLKRampingMargin / 100)); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1970 v->DISPCLKWithoutRamping = dml_max(v->DISPCLKWithoutRamping, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1971 v->PixelClock[k] * (1 + v->DISPCLKDPPCLKDSCCLKDownSpreading / 100)); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1975 v->DISPCLKWithRamping = dml_max( in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1976 v->DISPCLKWithRamping, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1977 v->WritebackDISPCLK); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1978 v->DISPCLKWithoutRamping = dml_max( in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1979 v->DISPCLKWithoutRamping, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1980 v->WritebackDISPCLK); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1982 ASSERT(v->DISPCLKDPPCLKVCOSpeed != 0); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1983 v->DISPCLKWithRampingRoundedToDFSGranularity = RoundToDFSGranularityUp( in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1984 v->DISPCLKWithRamping, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1985 v->DISPCLKDPPCLKVCOSpeed); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1986 v->DISPCLKWithoutRampingRoundedToDFSGranularity = RoundToDFSGranularityUp( in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1987 v->DISPCLKWithoutRamping, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1988 v->DISPCLKDPPCLKVCOSpeed); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1989 v->MaxDispclkRoundedToDFSGranularity = RoundToDFSGranularityDown( in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1990 v->soc.clock_limits[mode_lib->soc.num_states - 1].dispclk_mhz, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1991 v->DISPCLKDPPCLKVCOSpeed); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1992 if (v->DISPCLKWithoutRampingRoundedToDFSGranularity in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1993 > v->MaxDispclkRoundedToDFSGranularity) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1994 v->DISPCLK_calculated = in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1995 v->DISPCLKWithoutRampingRoundedToDFSGranularity; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1996 } else if (v->DISPCLKWithRampingRoundedToDFSGranularity in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1997 > v->MaxDispclkRoundedToDFSGranularity) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
1998 v->DISPCLK_calculated = v->MaxDispclkRoundedToDFSGranularity; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2000 v->DISPCLK_calculated = in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2001 v->DISPCLKWithRampingRoundedToDFSGranularity; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2003 v->DISPCLK = v->DISPCLK_calculated; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2004 DTRACE(" dispclk_mhz (calculated) = %f", v->DISPCLK_calculated); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2006 for (k = 0; k < v->NumberOfActivePlanes; ++k) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2007 v->DPPCLK_calculated[k] = v->DPPCLKUsingSingleDPP[k] in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2008 / v->DPPPerPlane[k] in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2009 * (1 + v->DISPCLKDPPCLKDSCCLKDownSpreading / 100); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2010 v->GlobalDPPCLK = dml_max( in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2011 v->GlobalDPPCLK, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2012 v->DPPCLK_calculated[k]); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2014 v->GlobalDPPCLK = RoundToDFSGranularityUp( in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2015 v->GlobalDPPCLK, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2016 v->DISPCLKDPPCLKVCOSpeed); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2017 for (k = 0; k < v->NumberOfActivePlanes; ++k) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2018 v->DPPCLK_calculated[k] = v->GlobalDPPCLK / 255 in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2020 v->DPPCLK_calculated[k] * 255.0 in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2021 / v->GlobalDPPCLK, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2023 DTRACE(" dppclk_mhz[%i] (calculated) = %f", k, v->DPPCLK_calculated[k]); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2024 v->DPPCLK[k] = v->DPPCLK_calculated[k]; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2028 DTRACE(" dcfclk_mhz = %f", v->DCFCLK); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2029 DTRACE(" return_bus_bw = %f", v->ReturnBW); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2031 for (k = 0; k < v->NumberOfActivePlanes; ++k) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2033 v->SourcePixelFormat[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2034 v->SurfaceTiling[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2035 &v->BytePerPixelY[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2036 &v->BytePerPixelC[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2037 &v->BytePerPixelDETY[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2038 &v->BytePerPixelDETC[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2039 &v->BlockHeight256BytesY[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2040 &v->BlockHeight256BytesC[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2041 &v->BlockWidth256BytesY[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2042 &v->BlockWidth256BytesC[k]); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2047 v->NumberOfActivePlanes, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2048 v->SourcePixelFormat, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2049 v->SourceScan, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2050 v->ViewportWidth, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2051 v->ViewportHeight, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2052 v->SurfaceWidthY, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2053 v->SurfaceWidthC, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2054 v->SurfaceHeightY, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2055 v->SurfaceHeightC, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2056 v->ODMCombineEnabled, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2057 v->BytePerPixelY, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2058 v->BytePerPixelC, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2059 v->BlockHeight256BytesY, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2060 v->BlockHeight256BytesC, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2061 v->BlockWidth256BytesY, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2062 v->BlockWidth256BytesC, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2063 v->BlendingAndTiming, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2064 v->HActive, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2065 v->HRatio, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2066 v->DPPPerPlane, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2067 v->SwathWidthSingleDPPY, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2068 v->SwathWidthSingleDPPC, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2069 v->SwathWidthY, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2070 v->SwathWidthC, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2071 v->dummyinteger3, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2072 v->dummyinteger4, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2073 v->swath_width_luma_ub, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2074 v->swath_width_chroma_ub); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2077 for (k = 0; k < v->NumberOfActivePlanes; ++k) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2078v->ReadBandwidthPlaneLuma[k] = v->SwathWidthSingleDPPY[k] * v->BytePerPixelY[k] / (v->HTotal[k] / in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2079v->ReadBandwidthPlaneChroma[k] = v->SwathWidthSingleDPPC[k] * v->BytePerPixelC[k] / (v->HTotal[k] … in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2080 DTRACE("read_bw[%i] = %fBps", k, v->ReadBandwidthPlaneLuma[k] + v->ReadBandwidthPlaneChroma[k]); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2087 v->NumberOfActivePlanes, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2088 v->BytePerPixelY, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2089 v->BytePerPixelC, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2090 v->VRatio, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2091 v->VRatioChroma, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2092 v->SwathWidthY, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2093 v->SwathWidthC, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2094 v->DPPPerPlane, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2095 v->HRatio, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2096 v->HRatioChroma, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2097 v->PixelClock, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2098 v->PSCL_THROUGHPUT_LUMA, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2099 v->PSCL_THROUGHPUT_CHROMA, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2100 v->DPPCLK, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2101 v->ReadBandwidthPlaneLuma, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2102 v->ReadBandwidthPlaneChroma, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2103 v->ReturnBusWidth, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2104 &v->DCFCLKDeepSleep); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2107 for (k = 0; k < v->NumberOfActivePlanes; ++k) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2108 if ((v->BlendingAndTiming[k] != k) || !v->DSCEnabled[k]) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2109 v->DSCCLK_calculated[k] = 0.0; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2111 if (v->OutputFormat[k] == dm_420) in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2112 v->DSCFormatFactor = 2; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2113 else if (v->OutputFormat[k] == dm_444) in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2114 v->DSCFormatFactor = 1; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2115 else if (v->OutputFormat[k] == dm_n422) in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2116 v->DSCFormatFactor = 2; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2118 v->DSCFormatFactor = 1; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2119 if (v->ODMCombineEnabled[k] == dm_odm_combine_mode_4to1) in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2120 v->DSCCLK_calculated[k] = v->PixelClockBackEnd[k] / 12 in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2121 / v->DSCFormatFactor / (1 - v->DISPCLKDPPCLKDSCCLKDownSpreading / 100); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2122 else if (v->ODMCombineEnabled[k] == dm_odm_combine_mode_2to1) in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2123 v->DSCCLK_calculated[k] = v->PixelClockBackEnd[k] / 6 in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2124 / v->DSCFormatFactor / (1 - v->DISPCLKDPPCLKDSCCLKDownSpreading / 100); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2126 v->DSCCLK_calculated[k] = v->PixelClockBackEnd[k] / 3 in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2127 / v->DSCFormatFactor / (1 - v->DISPCLKDPPCLKDSCCLKDownSpreading / 100); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2132 for (k = 0; k < v->NumberOfActivePlanes; ++k) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2133 double BPP = v->OutputBppPerState[k][v->VoltageLevel]; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2135 if (v->DSCEnabled[k] && BPP != 0) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2136 if (v->ODMCombineEnabled[k] == dm_odm_combine_mode_disabled) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2137 v->DSCDelay[k] = dscceComputeDelay(v->DSCInputBitPerComponent[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2139 dml_ceil((double) v->HActive[k] / v->NumberOfDSCSlices[k], 1), in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2140 v->NumberOfDSCSlices[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2141 v->OutputFormat[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2142 v->Output[k]) in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2143 + dscComputeDelay(v->OutputFormat[k], v->Output[k]); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2144 } else if (v->ODMCombineEnabled[k] == dm_odm_combine_mode_2to1) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2145 v->DSCDelay[k] = 2 * dscceComputeDelay(v->DSCInputBitPerComponent[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2147 dml_ceil((double) v->HActive[k] / v->NumberOfDSCSlices[k], 1), in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2148 v->NumberOfDSCSlices[k] / 2.0, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2149 v->OutputFormat[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2150 v->Output[k]) in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2151 + dscComputeDelay(v->OutputFormat[k], v->Output[k]); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2153 v->DSCDelay[k] = 4 * dscceComputeDelay(v->DSCInputBitPerComponent[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2155 dml_ceil((double) v->HActive[k] / v->NumberOfDSCSlices[k], 1), in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2156 v->NumberOfDSCSlices[k] / 4.0, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2157 v->OutputFormat[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2158 v->Output[k]) in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2159 + dscComputeDelay(v->OutputFormat[k], v->Output[k]); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2161 v->DSCDelay[k] = v->DSCDelay[k] * v->PixelClock[k] / v->PixelClockBackEnd[k]; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2163 v->DSCDelay[k] = 0; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2167 for (k = 0; k < v->NumberOfActivePlanes; ++k) in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2168 for (j = 0; j < v->NumberOfActivePlanes; ++j) // NumberOfPlanes in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2169 if (j != k && v->BlendingAndTiming[k] == j in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2170 && v->DSCEnabled[j]) in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2171 v->DSCDelay[k] = v->DSCDelay[j]; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2174 for (k = 0; k < v->NumberOfActivePlanes; ++k) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2185 …if (v->SourcePixelFormat[k] == dm_420_8 || v->SourcePixelFormat[k] == dm_420_10 || v->SourcePixelF… in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2186 …if ((v->SourcePixelFormat[k] == dm_420_10 || v->SourcePixelFormat[k] == dm_420_12) && v->SourceSca… in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2187v->PTEBufferSizeInRequestsForLuma = (v->PTEBufferSizeInRequestsLuma + v->PTEBufferSizeInRequestsCh… in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2188 v->PTEBufferSizeInRequestsForChroma = v->PTEBufferSizeInRequestsForLuma; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2190 v->PTEBufferSizeInRequestsForLuma = v->PTEBufferSizeInRequestsLuma; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2191 v->PTEBufferSizeInRequestsForChroma = v->PTEBufferSizeInRequestsChroma; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2196 v->DCCEnable[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2197 v->BlockHeight256BytesC[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2198 v->BlockWidth256BytesC[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2199 v->SourcePixelFormat[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2200 v->SurfaceTiling[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2201 v->BytePerPixelC[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2202 v->SourceScan[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2203 v->SwathWidthC[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2204 v->ViewportHeightChroma[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2205 v->GPUVMEnable, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2206 v->HostVMEnable, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2207 v->HostVMMaxNonCachedPageTableLevels, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2208 v->GPUVMMinPageSize, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2209 v->HostVMMinPageSize, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2210 v->PTEBufferSizeInRequestsForChroma, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2211 v->PitchC[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2212 v->DCCMetaPitchC[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2213 &v->MacroTileWidthC[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2217 &v->dpte_row_width_chroma_ub[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2218 &v->dpte_row_height_chroma[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2219 &v->meta_req_width_chroma[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2220 &v->meta_req_height_chroma[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2221 &v->meta_row_width_chroma[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2222 &v->meta_row_height_chroma[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2223 &v->dummyinteger1, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2224 &v->dummyinteger2, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2225 &v->PixelPTEReqWidthC[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2226 &v->PixelPTEReqHeightC[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2227 &v->PTERequestSizeC[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2228 &v->dpde0_bytes_per_frame_ub_c[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2229 &v->meta_pte_bytes_per_frame_ub_c[k]); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2231 v->PrefetchSourceLinesC[k] = CalculatePrefetchSourceLines( in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2233 v->VRatioChroma[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2234 v->VTAPsChroma[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2235 v->Interlace[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2236 v->ProgressiveToInterlaceUnitInOPP, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2237 v->SwathHeightC[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2238 v->ViewportYStartC[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2239 &v->VInitPreFillC[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2240 &v->MaxNumSwathC[k]); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2242v->PTEBufferSizeInRequestsForLuma = v->PTEBufferSizeInRequestsLuma + v->PTEBufferSizeInRequestsChr… in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2243 v->PTEBufferSizeInRequestsForChroma = 0; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2247 v->MaxNumSwathC[k] = 0; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2248 v->PrefetchSourceLinesC[k] = 0; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2253 v->DCCEnable[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2254 v->BlockHeight256BytesY[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2255 v->BlockWidth256BytesY[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2256 v->SourcePixelFormat[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2257 v->SurfaceTiling[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2258 v->BytePerPixelY[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2259 v->SourceScan[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2260 v->SwathWidthY[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2261 v->ViewportHeight[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2262 v->GPUVMEnable, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2263 v->HostVMEnable, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2264 v->HostVMMaxNonCachedPageTableLevels, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2265 v->GPUVMMinPageSize, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2266 v->HostVMMinPageSize, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2267 v->PTEBufferSizeInRequestsForLuma, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2268 v->PitchY[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2269 v->DCCMetaPitchY[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2270 &v->MacroTileWidthY[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2274 &v->dpte_row_width_luma_ub[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2275 &v->dpte_row_height[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2276 &v->meta_req_width[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2277 &v->meta_req_height[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2278 &v->meta_row_width[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2279 &v->meta_row_height[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2280 &v->vm_group_bytes[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2281 &v->dpte_group_bytes[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2282 &v->PixelPTEReqWidthY[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2283 &v->PixelPTEReqHeightY[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2284 &v->PTERequestSizeY[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2285 &v->dpde0_bytes_per_frame_ub_l[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2286 &v->meta_pte_bytes_per_frame_ub_l[k]); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2288 v->PrefetchSourceLinesY[k] = CalculatePrefetchSourceLines( in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2290 v->VRatio[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2291 v->vtaps[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2292 v->Interlace[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2293 v->ProgressiveToInterlaceUnitInOPP, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2294 v->SwathHeightY[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2295 v->ViewportYStartY[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2296 &v->VInitPreFillY[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2297 &v->MaxNumSwathY[k]); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2298 v->PixelPTEBytesPerRow[k] = PixelPTEBytesPerRowY + PixelPTEBytesPerRowC; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2299 v->PDEAndMetaPTEBytesFrame[k] = PDEAndMetaPTEBytesFrameY in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2301 v->MetaRowByte[k] = MetaRowByteY + MetaRowByteC; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2304 v->GPUVMEnable, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2305 v->SourcePixelFormat[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2306 v->VRatio[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2307 v->VRatioChroma[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2308 v->DCCEnable[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2309 v->HTotal[k] / v->PixelClock[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2312 v->meta_row_height[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2313 v->meta_row_height_chroma[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2316 v->dpte_row_height[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2317 v->dpte_row_height_chroma[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2318 &v->meta_row_bw[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2319 &v->dpte_row_bw[k]); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2322 v->TotalDCCActiveDPP = 0; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2323 v->TotalActiveDPP = 0; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2324 for (k = 0; k < v->NumberOfActivePlanes; ++k) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2325 v->TotalActiveDPP = v->TotalActiveDPP in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2326 + v->DPPPerPlane[k]; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2327 if (v->DCCEnable[k]) in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2328 v->TotalDCCActiveDPP = v->TotalDCCActiveDPP in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2329 + v->DPPPerPlane[k]; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2333 ReorderBytes = v->NumberOfChannels * dml_max3( in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2334 v->UrgentOutOfOrderReturnPerChannelPixelDataOnly, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2335 v->UrgentOutOfOrderReturnPerChannelPixelMixedWithVMData, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2336 v->UrgentOutOfOrderReturnPerChannelVMDataOnly); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2338 v->UrgentExtraLatency = CalculateExtraLatency( in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2339 v->RoundTripPingLatencyCycles, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2341 v->DCFCLK, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2342 v->TotalActiveDPP, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2343 v->PixelChunkSizeInKByte, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2344 v->TotalDCCActiveDPP, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2345 v->MetaChunkSize, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2346 v->ReturnBW, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2347 v->GPUVMEnable, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2348 v->HostVMEnable, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2349 v->NumberOfActivePlanes, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2350 v->DPPPerPlane, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2351 v->dpte_group_bytes, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2352 v->PercentOfIdealDRAMFabricAndSDPPortBWReceivedAfterUrgLatencyPixelMixedWithVMData, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2353 v->PercentOfIdealDRAMFabricAndSDPPortBWReceivedAfterUrgLatencyVMDataOnly, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2354 v->HostVMMinPageSize, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2355 v->HostVMMaxNonCachedPageTableLevels); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2357 v->TCalc = 24.0 / v->DCFCLKDeepSleep; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2359 for (k = 0; k < v->NumberOfActivePlanes; ++k) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2360 if (v->BlendingAndTiming[k] == k) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2361 if (v->WritebackEnable[k] == true) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2362 v->WritebackDelay[v->VoltageLevel][k] = v->WritebackLatency + in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2363 CalculateWriteBackDelay(v->WritebackPixelFormat[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2364 v->WritebackHRatio[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2365 v->WritebackVRatio[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2366 v->WritebackVTaps[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2367 v->WritebackDestinationWidth[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2368 v->WritebackDestinationHeight[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2369 v->WritebackSourceHeight[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2370 v->HTotal[k]) / v->DISPCLK; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2372 v->WritebackDelay[v->VoltageLevel][k] = 0; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2373 for (j = 0; j < v->NumberOfActivePlanes; ++j) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2374 if (v->BlendingAndTiming[j] == k in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2375 && v->WritebackEnable[j] == true) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2376 v->WritebackDelay[v->VoltageLevel][k] = dml_max(v->WritebackDelay[v->VoltageLevel][k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2377 v->WritebackLatency + CalculateWriteBackDelay( in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2378 v->WritebackPixelFormat[j], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2379 v->WritebackHRatio[j], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2380 v->WritebackVRatio[j], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2381 v->WritebackVTaps[j], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2382 v->WritebackDestinationWidth[j], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2383 v->WritebackDestinationHeight[j], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2384 v->WritebackSourceHeight[j], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2385 v->HTotal[k]) / v->DISPCLK); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2391 for (k = 0; k < v->NumberOfActivePlanes; ++k) in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2392 for (j = 0; j < v->NumberOfActivePlanes; ++j) in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2393 if (v->BlendingAndTiming[k] == j) in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2394 v->WritebackDelay[v->VoltageLevel][k] = v->WritebackDelay[v->VoltageLevel][j]; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2396 for (k = 0; k < v->NumberOfActivePlanes; ++k) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2397v->MaxVStartupLines[k] = v->VTotal[k] - v->VActive[k] - dml_max(1.0, dml_ceil((double) v->Writebac… in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2400 v->MaximumMaxVStartupLines = 0; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2401 for (k = 0; k < v->NumberOfActivePlanes; ++k) in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2402 v->MaximumMaxVStartupLines = dml_max(v->MaximumMaxVStartupLines, v->MaxVStartupLines[k]); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2404 if (v->DRAMClockChangeLatencyOverride > 0.0) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2405 v->FinalDRAMClockChangeLatency = v->DRAMClockChangeLatencyOverride; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2407 v->FinalDRAMClockChangeLatency = v->DRAMClockChangeLatency; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2409v->UrgentLatency = CalculateUrgentLatency(v->UrgentLatencyPixelDataOnly, v->UrgentLatencyPixelMixe… in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2412 v->FractionOfUrgentBandwidth = 0.0; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2413 v->FractionOfUrgentBandwidthImmediateFlip = 0.0; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2415 v->VStartupLines = 13; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2424 v->FinalDRAMClockChangeLatency, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2425 v->UrgentLatency, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2426 v->SREnterPlusExitTime); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2428 for (k = 0; k < v->NumberOfActivePlanes; ++k) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2431 myPipe.DPPCLK = v->DPPCLK[k]; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2432 myPipe.DISPCLK = v->DISPCLK; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2433 myPipe.PixelClock = v->PixelClock[k]; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2434 myPipe.DCFCLKDeepSleep = v->DCFCLKDeepSleep; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2435 myPipe.DPPPerPlane = v->DPPPerPlane[k]; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2436 myPipe.ScalerEnabled = v->ScalerEnabled[k]; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2437 myPipe.SourceScan = v->SourceScan[k]; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2438 myPipe.BlockWidth256BytesY = v->BlockWidth256BytesY[k]; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2439 myPipe.BlockHeight256BytesY = v->BlockHeight256BytesY[k]; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2440 myPipe.BlockWidth256BytesC = v->BlockWidth256BytesC[k]; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2441 myPipe.BlockHeight256BytesC = v->BlockHeight256BytesC[k]; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2442 myPipe.InterlaceEnable = v->Interlace[k]; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2443 myPipe.NumberOfCursors = v->NumberOfCursors[k]; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2444 myPipe.VBlank = v->VTotal[k] - v->VActive[k]; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2445 myPipe.HTotal = v->HTotal[k]; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2446 myPipe.DCCEnable = v->DCCEnable[k]; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2447 myPipe.ODMCombineEnabled = !!v->ODMCombineEnabled[k]; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2449 v->ErrorResult[k] = CalculatePrefetchSchedule( in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2451 v->PercentOfIdealDRAMFabricAndSDPPortBWReceivedAfterUrgLatencyPixelMixedWithVMData, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2452 v->PercentOfIdealDRAMFabricAndSDPPortBWReceivedAfterUrgLatencyVMDataOnly, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2454 v->DSCDelay[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2455 v->DPPCLKDelaySubtotal in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2456 + v->DPPCLKDelayCNVCFormater, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2457 v->DPPCLKDelaySCL, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2458 v->DPPCLKDelaySCLLBOnly, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2459 v->DPPCLKDelayCNVCCursor, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2460 v->DISPCLKDelaySubtotal, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2461 (unsigned int) (v->SwathWidthY[k] / v->HRatio[k]), in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2462 v->OutputFormat[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2463 v->MaxInterDCNTileRepeaters, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2464 dml_min(v->VStartupLines, v->MaxVStartupLines[k]), in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2465 v->MaxVStartupLines[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2466 v->GPUVMMaxPageTableLevels, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2467 v->GPUVMEnable, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2468 v->HostVMEnable, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2469 v->HostVMMaxNonCachedPageTableLevels, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2470 v->HostVMMinPageSize, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2471 v->DynamicMetadataEnable[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2472 v->DynamicMetadataVMEnabled, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2473 v->DynamicMetadataLinesBeforeActiveRequired[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2474 v->DynamicMetadataTransmittedBytes[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2475 v->UrgentLatency, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2476 v->UrgentExtraLatency, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2477 v->TCalc, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2478 v->PDEAndMetaPTEBytesFrame[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2479 v->MetaRowByte[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2480 v->PixelPTEBytesPerRow[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2481 v->PrefetchSourceLinesY[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2482 v->SwathWidthY[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2483 v->BytePerPixelY[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2484 v->VInitPreFillY[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2485 v->MaxNumSwathY[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2486 v->PrefetchSourceLinesC[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2487 v->SwathWidthC[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2488 v->BytePerPixelC[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2489 v->VInitPreFillC[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2490 v->MaxNumSwathC[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2491 v->swath_width_luma_ub[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2492 v->swath_width_chroma_ub[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2493 v->SwathHeightY[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2494 v->SwathHeightC[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2496 v->ProgressiveToInterlaceUnitInOPP, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2497 &v->DSTXAfterScaler[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2498 &v->DSTYAfterScaler[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2499 &v->DestinationLinesForPrefetch[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2500 &v->PrefetchBandwidth[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2501 &v->DestinationLinesToRequestVMInVBlank[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2502 &v->DestinationLinesToRequestRowInVBlank[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2503 &v->VRatioPrefetchY[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2504 &v->VRatioPrefetchC[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2505 &v->RequiredPrefetchPixDataBWLuma[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2506 &v->RequiredPrefetchPixDataBWChroma[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2507 &v->NotEnoughTimeForDynamicMetadata[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2508 &v->Tno_bw[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2509 &v->prefetch_vmrow_bw[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2510 &v->Tdmdl_vm[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2511 &v->Tdmdl[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2512 &v->VUpdateOffsetPix[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2513 &v->VUpdateWidthPix[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2514 &v->VReadyOffsetPix[k]); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2515 if (v->BlendingAndTiming[k] == k) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2516 … double TotalRepeaterDelayTime = v->MaxInterDCNTileRepeaters * (2 / v->DPPCLK[k] + 3 / v->DISPCLK); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2517v->VUpdateWidthPix[k] = (14 / v->DCFCLKDeepSleep + 12 / v->DPPCLK[k] + TotalRepeaterDelayTime) * v in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2518v->VReadyOffsetPix[k] = dml_max(150.0 / v->DPPCLK[k], TotalRepeaterDelayTime + 20 / v->DCFCLKDeepS… in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2519 v->VUpdateOffsetPix[k] = dml_ceil(v->HTotal[k] / 4.0, 1); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2520 v->VStartup[k] = dml_min(v->VStartupLines, v->MaxVStartupLines[k]); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2522 int x = v->BlendingAndTiming[k]; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2523 … double TotalRepeaterDelayTime = v->MaxInterDCNTileRepeaters * (2 / v->DPPCLK[k] + 3 / v->DISPCLK); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2524v->VUpdateWidthPix[k] = (14 / v->DCFCLKDeepSleep + 12 / v->DPPCLK[k] + TotalRepeaterDelayTime) * v in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2525v->VReadyOffsetPix[k] = dml_max(150.0 / v->DPPCLK[k], TotalRepeaterDelayTime + 20 / v->DCFCLKDeepS… in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2526 v->VUpdateOffsetPix[k] = dml_ceil(v->HTotal[x] / 4.0, 1); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2527 if (!v->MaxVStartupLines[x]) in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2528 v->MaxVStartupLines[x] = v->MaxVStartupLines[k]; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2529 v->VStartup[k] = dml_min(v->VStartupLines, v->MaxVStartupLines[x]); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2533 v->NotEnoughUrgentLatencyHiding[0][0] = false; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2534 v->NotEnoughUrgentLatencyHidingPre = false; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2536 for (k = 0; k < v->NumberOfActivePlanes; ++k) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2537 v->cursor_bw[k] = v->NumberOfCursors[k] in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2538 * v->CursorWidth[k][0] * v->CursorBPP[k][0] in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2540 / (v->HTotal[k] / v->PixelClock[k]) in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2541 * v->VRatio[k]; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2542 v->cursor_bw_pre[k] = v->NumberOfCursors[k] in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2543 * v->CursorWidth[k][0] * v->CursorBPP[k][0] in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2545 / (v->HTotal[k] / v->PixelClock[k]) in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2546 * v->VRatioPrefetchY[k]; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2549 v->swath_width_luma_ub[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2550 v->swath_width_chroma_ub[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2551 v->DETBufferSizeInKByte[0], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2552 v->SwathHeightY[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2553 v->SwathHeightC[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2554 v->HTotal[k] / v->PixelClock[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2555 v->UrgentLatency, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2556 v->CursorBufferSize, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2557 v->CursorWidth[k][0], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2558 v->CursorBPP[k][0], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2559 v->VRatio[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2560 v->VRatioChroma[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2561 v->BytePerPixelDETY[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2562 v->BytePerPixelDETC[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2563 v->DETBufferSizeY[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2564 v->DETBufferSizeC[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2565 &v->UrgentBurstFactorCursor[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2566 &v->UrgentBurstFactorLuma[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2567 &v->UrgentBurstFactorChroma[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2568 &v->NoUrgentLatencyHiding[k]); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2571 v->swath_width_luma_ub[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2572 v->swath_width_chroma_ub[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2573 v->DETBufferSizeInKByte[0], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2574 v->SwathHeightY[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2575 v->SwathHeightC[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2576 v->HTotal[k] / v->PixelClock[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2577 v->UrgentLatency, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2578 v->CursorBufferSize, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2579 v->CursorWidth[k][0], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2580 v->CursorBPP[k][0], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2581 v->VRatioPrefetchY[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2582 v->VRatioPrefetchC[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2583 v->BytePerPixelDETY[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2584 v->BytePerPixelDETC[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2585 v->DETBufferSizeY[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2586 v->DETBufferSizeC[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2587 &v->UrgentBurstFactorCursorPre[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2588 &v->UrgentBurstFactorLumaPre[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2589 &v->UrgentBurstFactorChromaPre[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2590 &v->NoUrgentLatencyHidingPre[k]); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2593 dml_max3(v->DPPPerPlane[k] * v->prefetch_vmrow_bw[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2594 v->ReadBandwidthPlaneLuma[k] * in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2595 v->UrgentBurstFactorLuma[k] + in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2596 v->ReadBandwidthPlaneChroma[k] * in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2597 v->UrgentBurstFactorChroma[k] + in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2598 v->cursor_bw[k] * in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2599 v->UrgentBurstFactorCursor[k] + in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2600 v->DPPPerPlane[k] * (v->meta_row_bw[k] + v->dpte_row_bw[k]), in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2601 v->DPPPerPlane[k] * (v->RequiredPrefetchPixDataBWLuma[k] * v->UrgentBurstFactorLumaPre[k] + in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2602v->RequiredPrefetchPixDataBWChroma[k] * v->UrgentBurstFactorChromaPre[k]) + v->cursor_bw_pre[k] * in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2603 v->UrgentBurstFactorCursorPre[k]); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2606 dml_max3(v->DPPPerPlane[k] * v->prefetch_vmrow_bw[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2607 v->ReadBandwidthPlaneLuma[k] + in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2608 v->ReadBandwidthPlaneChroma[k] + in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2609 v->cursor_bw[k] + in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2610 v->DPPPerPlane[k] * (v->meta_row_bw[k] + v->dpte_row_bw[k]), in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2611v->DPPPerPlane[k] * (v->RequiredPrefetchPixDataBWLuma[k] + v->RequiredPrefetchPixDataBWChroma[k]) … in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2613 if (v->DestinationLinesForPrefetch[k] < 2) in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2615 if (v->VRatioPrefetchY[k] > 4 || v->VRatioPrefetchC[k] > 4) in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2617 if (v->NoUrgentLatencyHiding[k] == true) in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2618 v->NotEnoughUrgentLatencyHiding[0][0] = true; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2620 if (v->NoUrgentLatencyHidingPre[k] == true) in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2621 v->NotEnoughUrgentLatencyHidingPre = true; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2623 v->FractionOfUrgentBandwidth = MaxTotalRDBandwidthNoUrgentBurst / v->ReturnBW; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2626 if (MaxTotalRDBandwidth <= v->ReturnBW && v->NotEnoughUrgentLatencyHiding[0][0] == 0 in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2627 && v->NotEnoughUrgentLatencyHidingPre == 0 && !VRatioPrefetchMoreThan4 in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2629 v->PrefetchModeSupported = true; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2631 v->PrefetchModeSupported = false; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2633 …dml_print("DML: MaxTotalRDBandwidth:%f AvailReturnBandwidth:%f\n", MaxTotalRDBandwidth, v->ReturnB… in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2638 if (v->PrefetchModeSupported == true && v->ImmediateFlipSupport == true) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2639 v->BandwidthAvailableForImmediateFlip = v->ReturnBW; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2640 for (k = 0; k < v->NumberOfActivePlanes; ++k) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2641 v->BandwidthAvailableForImmediateFlip = in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2642 v->BandwidthAvailableForImmediateFlip in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2644 v->ReadBandwidthPlaneLuma[k] * v->UrgentBurstFactorLuma[k] in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2645 + v->ReadBandwidthPlaneChroma[k] * v->UrgentBurstFactorChroma[k] in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2646 + v->cursor_bw[k] * v->UrgentBurstFactorCursor[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2647v->DPPPerPlane[k] * (v->RequiredPrefetchPixDataBWLuma[k] * v->UrgentBurstFactorLumaPre[k] + in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2648 v->RequiredPrefetchPixDataBWChroma[k] * v->UrgentBurstFactorChromaPre[k]) + in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2649 v->cursor_bw_pre[k] * v->UrgentBurstFactorCursorPre[k]); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2652 v->TotImmediateFlipBytes = 0; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2653 for (k = 0; k < v->NumberOfActivePlanes; ++k) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2654v->TotImmediateFlipBytes = v->TotImmediateFlipBytes + v->DPPPerPlane[k] * (v->PDEAndMetaPTEBytesFr… in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2656 for (k = 0; k < v->NumberOfActivePlanes; ++k) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2659 v->PercentOfIdealDRAMFabricAndSDPPortBWReceivedAfterUrgLatencyPixelMixedWithVMData, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2660 v->PercentOfIdealDRAMFabricAndSDPPortBWReceivedAfterUrgLatencyVMDataOnly, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2661 v->UrgentExtraLatency, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2662 v->UrgentLatency, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2663 v->GPUVMMaxPageTableLevels, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2664 v->HostVMEnable, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2665 v->HostVMMaxNonCachedPageTableLevels, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2666 v->GPUVMEnable, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2667 v->HostVMMinPageSize, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2668 v->PDEAndMetaPTEBytesFrame[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2669 v->MetaRowByte[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2670 v->PixelPTEBytesPerRow[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2671 v->BandwidthAvailableForImmediateFlip, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2672 v->TotImmediateFlipBytes, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2673 v->SourcePixelFormat[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2674 v->HTotal[k] / v->PixelClock[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2675 v->VRatio[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2676 v->VRatioChroma[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2677 v->Tno_bw[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2678 v->DCCEnable[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2679 v->dpte_row_height[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2680 v->meta_row_height[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2681 v->dpte_row_height_chroma[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2682 v->meta_row_height_chroma[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2683 &v->DestinationLinesToRequestVMInImmediateFlip[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2684 &v->DestinationLinesToRequestRowInImmediateFlip[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2685 &v->final_flip_bw[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2686 &v->ImmediateFlipSupportedForPipe[k]); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2688 v->total_dcn_read_bw_with_flip = 0.0; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2689 v->total_dcn_read_bw_with_flip_no_urgent_burst = 0.0; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2690 for (k = 0; k < v->NumberOfActivePlanes; ++k) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2691 v->total_dcn_read_bw_with_flip = v->total_dcn_read_bw_with_flip + dml_max3( in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2692 v->DPPPerPlane[k] * v->prefetch_vmrow_bw[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2693 v->DPPPerPlane[k] * v->final_flip_bw[k] + in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2694 v->ReadBandwidthLuma[k] * v->UrgentBurstFactorLuma[k] + in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2695 v->ReadBandwidthChroma[k] * v->UrgentBurstFactorChroma[k] + in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2696 v->cursor_bw[k] * v->UrgentBurstFactorCursor[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2697 v->DPPPerPlane[k] * (v->final_flip_bw[k] + in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2698 v->RequiredPrefetchPixDataBWLuma[k] * v->UrgentBurstFactorLumaPre[k] + in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2699 v->RequiredPrefetchPixDataBWChroma[k] * v->UrgentBurstFactorChromaPre[k]) + in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2700 v->cursor_bw_pre[k] * v->UrgentBurstFactorCursorPre[k]); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2701 v->total_dcn_read_bw_with_flip_no_urgent_burst = in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2702 v->total_dcn_read_bw_with_flip_no_urgent_burst + in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2703 dml_max3(v->DPPPerPlane[k] * v->prefetch_vmrow_bw[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2704v->DPPPerPlane[k] * v->final_flip_bw[k] + v->ReadBandwidthPlaneLuma[k] + v->ReadBandwidthPlaneChro… in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2705v->DPPPerPlane[k] * (v->final_flip_bw[k] + v->RequiredPrefetchPixDataBWLuma[k] + v->RequiredPrefet… in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2708v->FractionOfUrgentBandwidthImmediateFlip = v->total_dcn_read_bw_with_flip_no_urgent_burst / v->Re… in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2710 v->ImmediateFlipSupported = true; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2711 if (v->total_dcn_read_bw_with_flip > v->ReturnBW) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2712 v->ImmediateFlipSupported = false; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2713 v->total_dcn_read_bw_with_flip = MaxTotalRDBandwidth; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2715 for (k = 0; k < v->NumberOfActivePlanes; ++k) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2716 if (v->ImmediateFlipSupportedForPipe[k] == false) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2717 v->ImmediateFlipSupported = false; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2721 v->ImmediateFlipSupported = false; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2724 for (k = 0; k < v->NumberOfActivePlanes; ++k) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2725 if (v->ErrorResult[k] || v->NotEnoughTimeForDynamicMetadata[k]) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2726 v->PrefetchModeSupported = false; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2731 v->VStartupLines = v->VStartupLines + 1; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2732 v->PrefetchModeSupported = (v->PrefetchModeSupported == true && ((!v->ImmediateFlipSupport && in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2733 !v->HostVMEnable && v->ImmediateFlipRequirement[0] != dm_immediate_flip_required) || in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2734 v->ImmediateFlipSupported)) ? true : false; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2735 } while (!v->PrefetchModeSupported && v->VStartupLines <= v->MaximumMaxVStartupLines); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2736 ASSERT(v->PrefetchModeSupported); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2744 v->NumberOfActivePlanes, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2745 v->MaxLineBufferLines, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2746 v->LineBufferSize, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2747 v->DPPOutputBufferPixels, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2748 v->DETBufferSizeInKByte[0], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2749 v->WritebackInterfaceBufferSize, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2750 v->DCFCLK, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2751 v->ReturnBW, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2752 v->GPUVMEnable, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2753 v->dpte_group_bytes, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2754 v->MetaChunkSize, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2755 v->UrgentLatency, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2756 v->UrgentExtraLatency, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2757 v->WritebackLatency, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2758 v->WritebackChunkSize, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2759 v->SOCCLK, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2760 v->FinalDRAMClockChangeLatency, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2761 v->SRExitTime, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2762 v->SREnterPlusExitTime, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2763 v->DCFCLKDeepSleep, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2764 v->DPPPerPlane, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2765 v->DCCEnable, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2766 v->DPPCLK, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2767 v->DETBufferSizeY, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2768 v->DETBufferSizeC, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2769 v->SwathHeightY, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2770 v->SwathHeightC, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2771 v->LBBitPerPixel, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2772 v->SwathWidthY, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2773 v->SwathWidthC, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2774 v->HRatio, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2775 v->HRatioChroma, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2776 v->vtaps, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2777 v->VTAPsChroma, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2778 v->VRatio, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2779 v->VRatioChroma, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2780 v->HTotal, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2781 v->PixelClock, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2782 v->BlendingAndTiming, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2783 v->BytePerPixelDETY, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2784 v->BytePerPixelDETC, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2785 v->DSTXAfterScaler, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2786 v->DSTYAfterScaler, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2787 v->WritebackEnable, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2788 v->WritebackPixelFormat, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2789 v->WritebackDestinationWidth, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2790 v->WritebackDestinationHeight, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2791 v->WritebackSourceHeight, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2793 &v->UrgentWatermark, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2794 &v->WritebackUrgentWatermark, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2795 &v->DRAMClockChangeWatermark, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2796 &v->WritebackDRAMClockChangeWatermark, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2797 &v->StutterExitWatermark, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2798 &v->StutterEnterPlusExitWatermark, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2799 &v->MinActiveDRAMClockChangeLatencySupported); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2801 for (k = 0; k < v->NumberOfActivePlanes; ++k) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2802 if (v->WritebackEnable[k] == true) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2803 if (v->BlendingAndTiming[k] == k) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2804 v->ThisVStartup = v->VStartup[k]; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2806 for (j = 0; j < v->NumberOfActivePlanes; ++j) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2807 if (v->BlendingAndTiming[k] == j) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2808 v->ThisVStartup = v->VStartup[j]; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2812 v->WritebackAllowDRAMClockChangeEndPosition[k] = dml_max(0, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2813 v->ThisVStartup * v->HTotal[k] / v->PixelClock[k] - v->WritebackDRAMClockChangeWatermark); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2815 v->WritebackAllowDRAMClockChangeEndPosition[k] = 0; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2824 v->NumberOfActivePlanes, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2825 v->VRatio, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2826 v->VRatioChroma, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2827 v->VRatioPrefetchY, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2828 v->VRatioPrefetchC, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2829 v->swath_width_luma_ub, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2830 v->swath_width_chroma_ub, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2831 v->DPPPerPlane, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2832 v->HRatio, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2833 v->HRatioChroma, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2834 v->PixelClock, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2835 v->PSCL_THROUGHPUT_LUMA, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2836 v->PSCL_THROUGHPUT_CHROMA, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2837 v->DPPCLK, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2838 v->BytePerPixelC, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2839 v->SourceScan, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2840 v->NumberOfCursors, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2841 v->CursorWidth, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2842 v->CursorBPP, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2843 v->BlockWidth256BytesY, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2844 v->BlockHeight256BytesY, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2845 v->BlockWidth256BytesC, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2846 v->BlockHeight256BytesC, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2847 v->DisplayPipeLineDeliveryTimeLuma, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2848 v->DisplayPipeLineDeliveryTimeChroma, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2849 v->DisplayPipeLineDeliveryTimeLumaPrefetch, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2850 v->DisplayPipeLineDeliveryTimeChromaPrefetch, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2851 v->DisplayPipeRequestDeliveryTimeLuma, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2852 v->DisplayPipeRequestDeliveryTimeChroma, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2853 v->DisplayPipeRequestDeliveryTimeLumaPrefetch, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2854 v->DisplayPipeRequestDeliveryTimeChromaPrefetch, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2855 v->CursorRequestDeliveryTime, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2856 v->CursorRequestDeliveryTimePrefetch); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2859 v->NumberOfActivePlanes, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2860 v->GPUVMEnable, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2861 v->MetaChunkSize, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2862 v->MinMetaChunkSizeBytes, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2863 v->HTotal, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2864 v->VRatio, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2865 v->VRatioChroma, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2866 v->DestinationLinesToRequestRowInVBlank, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2867 v->DestinationLinesToRequestRowInImmediateFlip, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2868 v->DCCEnable, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2869 v->PixelClock, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2870 v->BytePerPixelY, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2871 v->BytePerPixelC, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2872 v->SourceScan, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2873 v->dpte_row_height, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2874 v->dpte_row_height_chroma, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2875 v->meta_row_width, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2876 v->meta_row_width_chroma, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2877 v->meta_row_height, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2878 v->meta_row_height_chroma, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2879 v->meta_req_width, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2880 v->meta_req_width_chroma, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2881 v->meta_req_height, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2882 v->meta_req_height_chroma, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2883 v->dpte_group_bytes, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2884 v->PTERequestSizeY, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2885 v->PTERequestSizeC, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2886 v->PixelPTEReqWidthY, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2887 v->PixelPTEReqHeightY, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2888 v->PixelPTEReqWidthC, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2889 v->PixelPTEReqHeightC, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2890 v->dpte_row_width_luma_ub, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2891 v->dpte_row_width_chroma_ub, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2892 v->DST_Y_PER_PTE_ROW_NOM_L, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2893 v->DST_Y_PER_PTE_ROW_NOM_C, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2894 v->DST_Y_PER_META_ROW_NOM_L, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2895 v->DST_Y_PER_META_ROW_NOM_C, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2896 v->TimePerMetaChunkNominal, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2897 v->TimePerChromaMetaChunkNominal, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2898 v->TimePerMetaChunkVBlank, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2899 v->TimePerChromaMetaChunkVBlank, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2900 v->TimePerMetaChunkFlip, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2901 v->TimePerChromaMetaChunkFlip, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2902 v->time_per_pte_group_nom_luma, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2903 v->time_per_pte_group_vblank_luma, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2904 v->time_per_pte_group_flip_luma, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2905 v->time_per_pte_group_nom_chroma, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2906 v->time_per_pte_group_vblank_chroma, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2907 v->time_per_pte_group_flip_chroma); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2910 v->NumberOfActivePlanes, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2911 v->GPUVMEnable, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2912 v->GPUVMMaxPageTableLevels, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2913 v->HTotal, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2914 v->BytePerPixelC, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2915 v->DestinationLinesToRequestVMInVBlank, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2916 v->DestinationLinesToRequestVMInImmediateFlip, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2917 v->DCCEnable, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2918 v->PixelClock, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2919 v->dpte_row_width_luma_ub, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2920 v->dpte_row_width_chroma_ub, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2921 v->vm_group_bytes, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2922 v->dpde0_bytes_per_frame_ub_l, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2923 v->dpde0_bytes_per_frame_ub_c, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2924 v->meta_pte_bytes_per_frame_ub_l, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2925 v->meta_pte_bytes_per_frame_ub_c, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2926 v->TimePerVMGroupVBlank, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2927 v->TimePerVMGroupFlip, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2928 v->TimePerVMRequestVBlank, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2929 v->TimePerVMRequestFlip); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2933 for (k = 0; k < v->NumberOfActivePlanes; ++k) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2935 v->AllowDRAMClockChangeDuringVBlank[k] = true; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2936 v->AllowDRAMSelfRefreshDuringVBlank[k] = true; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2937 v->MinTTUVBlank[k] = dml_max( in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2938 v->DRAMClockChangeWatermark, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2940 v->StutterEnterPlusExitWatermark, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2941 v->UrgentWatermark)); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2943 v->AllowDRAMClockChangeDuringVBlank[k] = false; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2944 v->AllowDRAMSelfRefreshDuringVBlank[k] = true; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2945 v->MinTTUVBlank[k] = dml_max( in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2946 v->StutterEnterPlusExitWatermark, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2947 v->UrgentWatermark); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2949 v->AllowDRAMClockChangeDuringVBlank[k] = false; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2950 v->AllowDRAMSelfRefreshDuringVBlank[k] = false; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2951 v->MinTTUVBlank[k] = v->UrgentWatermark; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2953 if (!v->DynamicMetadataEnable[k]) in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2954 v->MinTTUVBlank[k] = v->TCalc in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2955 + v->MinTTUVBlank[k]; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2959 v->ActiveDPPs = 0; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2960 for (k = 0; k < v->NumberOfActivePlanes; ++k) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2961 …CalculateDCCConfiguration(v->DCCEnable[k], false, // We should always know the direction DCCProgra… in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2962 v->SourcePixelFormat[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2963 v->SurfaceWidthY[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2964 v->SurfaceWidthC[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2965 v->SurfaceHeightY[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2966 v->SurfaceHeightC[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2967 v->DETBufferSizeInKByte[0] * 1024, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2968 v->BlockHeight256BytesY[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2969 v->BlockHeight256BytesC[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2970 v->SurfaceTiling[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2971 v->BytePerPixelY[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2972 v->BytePerPixelC[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2973 v->BytePerPixelDETY[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2974 v->BytePerPixelDETC[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2975 v->SourceScan[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2976 &v->DCCYMaxUncompressedBlock[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2977 &v->DCCCMaxUncompressedBlock[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2978 &v->DCCYMaxCompressedBlock[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2979 &v->DCCCMaxCompressedBlock[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2980 &v->DCCYIndependentBlock[k], in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2981 &v->DCCCIndependentBlock[k]); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2986 v->TotalDataReadBandwidth = 0; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2987 for (k = 0; k < v->NumberOfActivePlanes; ++k) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2988 v->TotalDataReadBandwidth = v->TotalDataReadBandwidth in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2989 + v->ReadBandwidthPlaneLuma[k] in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2990 + v->ReadBandwidthPlaneChroma[k]; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2995 v->VStartupMargin = 0; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2996 v->FirstMainPlane = true; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2997 for (k = 0; k < v->NumberOfActivePlanes; ++k) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2998 if (v->BlendingAndTiming[k] == k) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
2999 double margin = (v->MaxVStartupLines[k] - v->VStartup[k]) * v->HTotal[k] in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
3000 / v->PixelClock[k]; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
3001 if (v->FirstMainPlane == true) { in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
3002 v->VStartupMargin = margin; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
3003 v->FirstMainPlane = false; in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
3005 v->VStartupMargin = dml_min(v->VStartupMargin, margin); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
3012 v->NumberOfActivePlanes, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
3013 v->ROBBufferSizeInKByte, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
3014 v->TotalDataReadBandwidth, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
3015 v->DCFCLK, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
3016 v->ReturnBW, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
3017 v->SRExitTime, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
3018 v->SynchronizedVBlank, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
3019 v->DPPPerPlane, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
3020 v->DETBufferSizeY, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
3021 v->BytePerPixelY, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
3022 v->BytePerPixelDETY, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
3023 v->SwathWidthY, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
3024 v->SwathHeightY, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
3025 v->SwathHeightC, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
3026 v->DCCRateLuma, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
3027 v->DCCRateChroma, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
3028 v->HTotal, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
3029 v->VTotal, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
3030 v->PixelClock, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
3031 v->VRatio, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
3032 v->SourceScan, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
3033 v->BlockHeight256BytesY, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
3034 v->BlockWidth256BytesY, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
3035 v->BlockHeight256BytesC, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
3036 v->BlockWidth256BytesC, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
3037 v->DCCYMaxUncompressedBlock, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
3038 v->DCCCMaxUncompressedBlock, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
3039 v->VActive, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
3040 v->DCCEnable, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
3041 v->WritebackEnable, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
3042 v->ReadBandwidthPlaneLuma, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
3043 v->ReadBandwidthPlaneChroma, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
3044 v->meta_row_bw, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
3045 v->dpte_row_bw, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
3046 &v->StutterEfficiencyNotIncludingVBlank, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
3047 &v->StutterEfficiency, in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
3048 &v->StutterPeriod); in DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation()
3543 struct vba_vars_st *v = &mode_lib->vba; in dml30_ModeSupportAndSystemConfigurationFull() local
3562 v->ScaleRatioAndTapsSupport = true; in dml30_ModeSupportAndSystemConfigurationFull()
3563 for (k = 0; k <= v->NumberOfActivePlanes - 1; k++) { in dml30_ModeSupportAndSystemConfigurationFull()
3564 if (v->ScalerEnabled[k] == false in dml30_ModeSupportAndSystemConfigurationFull()
3565 && ((v->SourcePixelFormat[k] != dm_444_64 in dml30_ModeSupportAndSystemConfigurationFull()
3566 && v->SourcePixelFormat[k] != dm_444_32 in dml30_ModeSupportAndSystemConfigurationFull()
3567 && v->SourcePixelFormat[k] != dm_444_16 in dml30_ModeSupportAndSystemConfigurationFull()
3568 && v->SourcePixelFormat[k] != dm_mono_16 in dml30_ModeSupportAndSystemConfigurationFull()
3569 && v->SourcePixelFormat[k] != dm_mono_8 in dml30_ModeSupportAndSystemConfigurationFull()
3570 && v->SourcePixelFormat[k] != dm_rgbe in dml30_ModeSupportAndSystemConfigurationFull()
3571 && v->SourcePixelFormat[k] != dm_rgbe_alpha) in dml30_ModeSupportAndSystemConfigurationFull()
3572 || v->HRatio[k] != 1.0 in dml30_ModeSupportAndSystemConfigurationFull()
3573 || v->htaps[k] != 1.0 in dml30_ModeSupportAndSystemConfigurationFull()
3574 || v->VRatio[k] != 1.0 in dml30_ModeSupportAndSystemConfigurationFull()
3575 || v->vtaps[k] != 1.0)) { in dml30_ModeSupportAndSystemConfigurationFull()
3576 v->ScaleRatioAndTapsSupport = false; in dml30_ModeSupportAndSystemConfigurationFull()
3577 } else if (v->vtaps[k] < 1.0 || v->vtaps[k] > 8.0 in dml30_ModeSupportAndSystemConfigurationFull()
3578 || v->htaps[k] < 1.0 || v->htaps[k] > 8.0 in dml30_ModeSupportAndSystemConfigurationFull()
3579 || (v->htaps[k] > 1.0 in dml30_ModeSupportAndSystemConfigurationFull()
3580 && (v->htaps[k] % 2) == 1) in dml30_ModeSupportAndSystemConfigurationFull()
3581 || v->HRatio[k] > v->MaxHSCLRatio in dml30_ModeSupportAndSystemConfigurationFull()
3582 || v->VRatio[k] > v->MaxVSCLRatio in dml30_ModeSupportAndSystemConfigurationFull()
3583 || v->HRatio[k] > v->htaps[k] in dml30_ModeSupportAndSystemConfigurationFull()
3584 || v->VRatio[k] > v->vtaps[k] in dml30_ModeSupportAndSystemConfigurationFull()
3585 || (v->SourcePixelFormat[k] != dm_444_64 in dml30_ModeSupportAndSystemConfigurationFull()
3586 && v->SourcePixelFormat[k] != dm_444_32 in dml30_ModeSupportAndSystemConfigurationFull()
3587 && v->SourcePixelFormat[k] != dm_444_16 in dml30_ModeSupportAndSystemConfigurationFull()
3588 && v->SourcePixelFormat[k] != dm_mono_16 in dml30_ModeSupportAndSystemConfigurationFull()
3589 && v->SourcePixelFormat[k] != dm_mono_8 in dml30_ModeSupportAndSystemConfigurationFull()
3590 && v->SourcePixelFormat[k] != dm_rgbe in dml30_ModeSupportAndSystemConfigurationFull()
3591 && (v->VTAPsChroma[k] < 1 in dml30_ModeSupportAndSystemConfigurationFull()
3592 || v->VTAPsChroma[k] > 8 in dml30_ModeSupportAndSystemConfigurationFull()
3593 || v->HTAPsChroma[k] < 1 in dml30_ModeSupportAndSystemConfigurationFull()
3594 || v->HTAPsChroma[k] > 8 in dml30_ModeSupportAndSystemConfigurationFull()
3595 || (v->HTAPsChroma[k] > 1 && v->HTAPsChroma[k] % 2 == 1) in dml30_ModeSupportAndSystemConfigurationFull()
3596 || v->HRatioChroma[k] > v->MaxHSCLRatio in dml30_ModeSupportAndSystemConfigurationFull()
3597 || v->VRatioChroma[k] > v->MaxVSCLRatio in dml30_ModeSupportAndSystemConfigurationFull()
3598 || v->HRatioChroma[k] > v->HTAPsChroma[k] in dml30_ModeSupportAndSystemConfigurationFull()
3599 || v->VRatioChroma[k] > v->VTAPsChroma[k]))) { in dml30_ModeSupportAndSystemConfigurationFull()
3600 v->ScaleRatioAndTapsSupport = false; in dml30_ModeSupportAndSystemConfigurationFull()
3605 v->SourceFormatPixelAndScanSupport = true; in dml30_ModeSupportAndSystemConfigurationFull()
3606 for (k = 0; k <= v->NumberOfActivePlanes - 1; k++) { in dml30_ModeSupportAndSystemConfigurationFull()
3607 …if ((v->SurfaceTiling[k] == dm_sw_linear && (!(v->SourceScan[k] != dm_vert) || v->DCCEnable[k] == … in dml30_ModeSupportAndSystemConfigurationFull()
3608 …|| ((v->SurfaceTiling[k] == dm_sw_64kb_d || v->SurfaceTiling[k] == dm_sw_64kb_d_t || v->SurfaceTil… in dml30_ModeSupportAndSystemConfigurationFull()
3609 && !(v->SourcePixelFormat[k] == dm_444_64))) { in dml30_ModeSupportAndSystemConfigurationFull()
3610 v->SourceFormatPixelAndScanSupport = false; in dml30_ModeSupportAndSystemConfigurationFull()
3615 for (k = 0; k <= v->NumberOfActivePlanes - 1; k++) { in dml30_ModeSupportAndSystemConfigurationFull()
3617 v->SourcePixelFormat[k], in dml30_ModeSupportAndSystemConfigurationFull()
3618 v->SurfaceTiling[k], in dml30_ModeSupportAndSystemConfigurationFull()
3619 &v->BytePerPixelY[k], in dml30_ModeSupportAndSystemConfigurationFull()
3620 &v->BytePerPixelC[k], in dml30_ModeSupportAndSystemConfigurationFull()
3621 &v->BytePerPixelInDETY[k], in dml30_ModeSupportAndSystemConfigurationFull()
3622 &v->BytePerPixelInDETC[k], in dml30_ModeSupportAndSystemConfigurationFull()
3623 &v->Read256BlockHeightY[k], in dml30_ModeSupportAndSystemConfigurationFull()
3624 &v->Read256BlockHeightC[k], in dml30_ModeSupportAndSystemConfigurationFull()
3625 &v->Read256BlockWidthY[k], in dml30_ModeSupportAndSystemConfigurationFull()
3626 &v->Read256BlockWidthC[k]); in dml30_ModeSupportAndSystemConfigurationFull()
3628 for (k = 0; k <= v->NumberOfActivePlanes - 1; k++) { in dml30_ModeSupportAndSystemConfigurationFull()
3629 if (v->SourceScan[k] != dm_vert) { in dml30_ModeSupportAndSystemConfigurationFull()
3630 v->SwathWidthYSingleDPP[k] = v->ViewportWidth[k]; in dml30_ModeSupportAndSystemConfigurationFull()
3631 v->SwathWidthCSingleDPP[k] = v->ViewportWidthChroma[k]; in dml30_ModeSupportAndSystemConfigurationFull()
3633 v->SwathWidthYSingleDPP[k] = v->ViewportHeight[k]; in dml30_ModeSupportAndSystemConfigurationFull()
3634 v->SwathWidthCSingleDPP[k] = v->ViewportHeightChroma[k]; in dml30_ModeSupportAndSystemConfigurationFull()
3637 for (k = 0; k <= v->NumberOfActivePlanes - 1; k++) { in dml30_ModeSupportAndSystemConfigurationFull()
3638v->ReadBandwidthLuma[k] = v->SwathWidthYSingleDPP[k] * dml_ceil(v->BytePerPixelInDETY[k], 1.0) / ( in dml30_ModeSupportAndSystemConfigurationFull()
3639v->ReadBandwidthChroma[k] = v->SwathWidthYSingleDPP[k] / 2 * dml_ceil(v->BytePerPixelInDETC[k], 2.… in dml30_ModeSupportAndSystemConfigurationFull()
3641 for (k = 0; k <= v->NumberOfActivePlanes - 1; k++) { in dml30_ModeSupportAndSystemConfigurationFull()
3642 if (v->WritebackEnable[k] == true in dml30_ModeSupportAndSystemConfigurationFull()
3643 && v->WritebackPixelFormat[k] == dm_444_64) { in dml30_ModeSupportAndSystemConfigurationFull()
3644 v->WriteBandwidth[k] = v->WritebackDestinationWidth[k] in dml30_ModeSupportAndSystemConfigurationFull()
3645 * v->WritebackDestinationHeight[k] in dml30_ModeSupportAndSystemConfigurationFull()
3646 / (v->WritebackSourceHeight[k] in dml30_ModeSupportAndSystemConfigurationFull()
3647 * v->HTotal[k] in dml30_ModeSupportAndSystemConfigurationFull()
3648 / v->PixelClock[k]) * 8.0; in dml30_ModeSupportAndSystemConfigurationFull()
3649 } else if (v->WritebackEnable[k] == true) { in dml30_ModeSupportAndSystemConfigurationFull()
3650 v->WriteBandwidth[k] = v->WritebackDestinationWidth[k] in dml30_ModeSupportAndSystemConfigurationFull()
3651 * v->WritebackDestinationHeight[k] in dml30_ModeSupportAndSystemConfigurationFull()
3652 / (v->WritebackSourceHeight[k] in dml30_ModeSupportAndSystemConfigurationFull()
3653 * v->HTotal[k] in dml30_ModeSupportAndSystemConfigurationFull()
3654 / v->PixelClock[k]) * 4.0; in dml30_ModeSupportAndSystemConfigurationFull()
3656 v->WriteBandwidth[k] = 0.0; in dml30_ModeSupportAndSystemConfigurationFull()
3662 v->WritebackLatencySupport = true; in dml30_ModeSupportAndSystemConfigurationFull()
3663 for (k = 0; k <= v->NumberOfActivePlanes - 1; k++) { in dml30_ModeSupportAndSystemConfigurationFull()
3664 if (v->WritebackEnable[k] == true) { in dml30_ModeSupportAndSystemConfigurationFull()
3665 if (v->WritebackConfiguration == dm_whole_buffer_for_single_stream_no_interleave || in dml30_ModeSupportAndSystemConfigurationFull()
3666 v->WritebackConfiguration == dm_whole_buffer_for_single_stream_interleave) { in dml30_ModeSupportAndSystemConfigurationFull()
3667 if (v->WriteBandwidth[k] in dml30_ModeSupportAndSystemConfigurationFull()
3668 > 2.0 * v->WritebackInterfaceBufferSize * 1024 in dml30_ModeSupportAndSystemConfigurationFull()
3669 / v->WritebackLatency) { in dml30_ModeSupportAndSystemConfigurationFull()
3670 v->WritebackLatencySupport = false; in dml30_ModeSupportAndSystemConfigurationFull()
3673 if (v->WriteBandwidth[k] in dml30_ModeSupportAndSystemConfigurationFull()
3674 > v->WritebackInterfaceBufferSize * 1024 in dml30_ModeSupportAndSystemConfigurationFull()
3675 / v->WritebackLatency) { in dml30_ModeSupportAndSystemConfigurationFull()
3676 v->WritebackLatencySupport = false; in dml30_ModeSupportAndSystemConfigurationFull()
3684 v->TotalNumberOfActiveWriteback = 0; in dml30_ModeSupportAndSystemConfigurationFull()
3685 for (k = 0; k <= v->NumberOfActivePlanes - 1; k++) { in dml30_ModeSupportAndSystemConfigurationFull()
3686 if (v->WritebackEnable[k] == true) { in dml30_ModeSupportAndSystemConfigurationFull()
3687 v->TotalNumberOfActiveWriteback = in dml30_ModeSupportAndSystemConfigurationFull()
3688 v->TotalNumberOfActiveWriteback + 1; in dml30_ModeSupportAndSystemConfigurationFull()
3692 if (v->TotalNumberOfActiveWriteback > v->MaxNumWriteback) { in dml30_ModeSupportAndSystemConfigurationFull()
3695 if (!v->WritebackSupportInterleaveAndUsingWholeBufferForASingleStream in dml30_ModeSupportAndSystemConfigurationFull()
3696 && (v->WritebackConfiguration == dm_whole_buffer_for_single_stream_no_interleave in dml30_ModeSupportAndSystemConfigurationFull()
3697 || v->WritebackConfiguration == dm_whole_buffer_for_single_stream_interleave)) { in dml30_ModeSupportAndSystemConfigurationFull()
3701 …if (v->WritebackConfiguration == dm_whole_buffer_for_single_stream_no_interleave && v->TotalNumber… in dml30_ModeSupportAndSystemConfigurationFull()
3707 v->WritebackScaleRatioAndTapsSupport = true; in dml30_ModeSupportAndSystemConfigurationFull()
3708 for (k = 0; k <= v->NumberOfActivePlanes - 1; k++) { in dml30_ModeSupportAndSystemConfigurationFull()
3709 if (v->WritebackEnable[k] == true) { in dml30_ModeSupportAndSystemConfigurationFull()
3710 if (v->WritebackHRatio[k] > v->WritebackMaxHSCLRatio in dml30_ModeSupportAndSystemConfigurationFull()
3711 || v->WritebackVRatio[k] in dml30_ModeSupportAndSystemConfigurationFull()
3712 > v->WritebackMaxVSCLRatio in dml30_ModeSupportAndSystemConfigurationFull()
3713 || v->WritebackHRatio[k] in dml30_ModeSupportAndSystemConfigurationFull()
3714 < v->WritebackMinHSCLRatio in dml30_ModeSupportAndSystemConfigurationFull()
3715 || v->WritebackVRatio[k] in dml30_ModeSupportAndSystemConfigurationFull()
3716 < v->WritebackMinVSCLRatio in dml30_ModeSupportAndSystemConfigurationFull()
3717 || v->WritebackHTaps[k] in dml30_ModeSupportAndSystemConfigurationFull()
3718 > v->WritebackMaxHSCLTaps in dml30_ModeSupportAndSystemConfigurationFull()
3719 || v->WritebackVTaps[k] in dml30_ModeSupportAndSystemConfigurationFull()
3720 > v->WritebackMaxVSCLTaps in dml30_ModeSupportAndSystemConfigurationFull()
3721 || v->WritebackHRatio[k] in dml30_ModeSupportAndSystemConfigurationFull()
3722 > v->WritebackHTaps[k] in dml30_ModeSupportAndSystemConfigurationFull()
3723 || v->WritebackVRatio[k] in dml30_ModeSupportAndSystemConfigurationFull()
3724 > v->WritebackVTaps[k] in dml30_ModeSupportAndSystemConfigurationFull()
3725 || (v->WritebackHTaps[k] > 2.0 in dml30_ModeSupportAndSystemConfigurationFull()
3726 && ((v->WritebackHTaps[k] % 2) in dml30_ModeSupportAndSystemConfigurationFull()
3728 v->WritebackScaleRatioAndTapsSupport = false; in dml30_ModeSupportAndSystemConfigurationFull()
3730 …if (2.0 * v->WritebackDestinationWidth[k] * (v->WritebackVTaps[k] - 1) * 57 > v->WritebackLineBuff… in dml30_ModeSupportAndSystemConfigurationFull()
3731 v->WritebackScaleRatioAndTapsSupport = false; in dml30_ModeSupportAndSystemConfigurationFull()
3737 v->WritebackRequiredDISPCLK = 0.0; in dml30_ModeSupportAndSystemConfigurationFull()
3738 for (k = 0; k <= v->NumberOfActivePlanes - 1; k++) { in dml30_ModeSupportAndSystemConfigurationFull()
3739 if (v->WritebackEnable[k] == true) { in dml30_ModeSupportAndSystemConfigurationFull()
3740 v->WritebackRequiredDISPCLK = dml_max(v->WritebackRequiredDISPCLK, in dml30_ModeSupportAndSystemConfigurationFull()
3742 v->WritebackPixelFormat[k], in dml30_ModeSupportAndSystemConfigurationFull()
3743 v->PixelClock[k], in dml30_ModeSupportAndSystemConfigurationFull()
3744 v->WritebackHRatio[k], in dml30_ModeSupportAndSystemConfigurationFull()
3745 v->WritebackVRatio[k], in dml30_ModeSupportAndSystemConfigurationFull()
3746 v->WritebackHTaps[k], in dml30_ModeSupportAndSystemConfigurationFull()
3747 v->WritebackVTaps[k], in dml30_ModeSupportAndSystemConfigurationFull()
3748 v->WritebackSourceWidth[k], in dml30_ModeSupportAndSystemConfigurationFull()
3749 v->WritebackDestinationWidth[k], in dml30_ModeSupportAndSystemConfigurationFull()
3750 v->HTotal[k], in dml30_ModeSupportAndSystemConfigurationFull()
3751 v->WritebackLineBufferSize)); in dml30_ModeSupportAndSystemConfigurationFull()
3754 for (k = 0; k <= v->NumberOfActivePlanes - 1; k++) { in dml30_ModeSupportAndSystemConfigurationFull()
3755 if (v->HRatio[k] > 1.0) { in dml30_ModeSupportAndSystemConfigurationFull()
3756v->PSCL_FACTOR[k] = dml_min(v->MaxDCHUBToPSCLThroughput, v->MaxPSCLToLBThroughput * v->HRatio[k] /… in dml30_ModeSupportAndSystemConfigurationFull()
3758 v->PSCL_FACTOR[k] = dml_min(v->MaxDCHUBToPSCLThroughput, v->MaxPSCLToLBThroughput); in dml30_ModeSupportAndSystemConfigurationFull()
3760 if (v->BytePerPixelC[k] == 0.0) { in dml30_ModeSupportAndSystemConfigurationFull()
3761 v->PSCL_FACTOR_CHROMA[k] = 0.0; in dml30_ModeSupportAndSystemConfigurationFull()
3762 v->MinDPPCLKUsingSingleDPP[k] = v->PixelClock[k] in dml30_ModeSupportAndSystemConfigurationFull()
3763 …* dml_max3(v->vtaps[k] / 6.0 * dml_min(1.0, v->HRatio[k]), v->HRatio[k] * v->VRatio[k] / v->PSCL_F… in dml30_ModeSupportAndSystemConfigurationFull()
3764 …if ((v->htaps[k] > 6.0 || v->vtaps[k] > 6.0) && v->MinDPPCLKUsingSingleDPP[k] < 2.0 * v->PixelCloc… in dml30_ModeSupportAndSystemConfigurationFull()
3765 v->MinDPPCLKUsingSingleDPP[k] = 2.0 * v->PixelClock[k]; in dml30_ModeSupportAndSystemConfigurationFull()
3768 if (v->HRatioChroma[k] > 1.0) { in dml30_ModeSupportAndSystemConfigurationFull()
3769 v->PSCL_FACTOR_CHROMA[k] = dml_min(v->MaxDCHUBToPSCLThroughput, in dml30_ModeSupportAndSystemConfigurationFull()
3770 v->MaxPSCLToLBThroughput * v->HRatioChroma[k] / dml_ceil(v->HTAPsChroma[k] / 6.0, 1.0)); in dml30_ModeSupportAndSystemConfigurationFull()
3772 v->PSCL_FACTOR_CHROMA[k] = dml_min(v->MaxDCHUBToPSCLThroughput, v->MaxPSCLToLBThroughput); in dml30_ModeSupportAndSystemConfigurationFull()
3774v->MinDPPCLKUsingSingleDPP[k] = v->PixelClock[k] * dml_max5(v->vtaps[k] / 6.0 * dml_min(1.0, v->HR… in dml30_ModeSupportAndSystemConfigurationFull()
3775 v->HRatio[k] * v->VRatio[k] / v->PSCL_FACTOR[k], in dml30_ModeSupportAndSystemConfigurationFull()
3776 v->VTAPsChroma[k] / 6.0 * dml_min(1.0, v->HRatioChroma[k]), in dml30_ModeSupportAndSystemConfigurationFull()
3777 v->HRatioChroma[k] * v->VRatioChroma[k] / v->PSCL_FACTOR_CHROMA[k], in dml30_ModeSupportAndSystemConfigurationFull()
3779 … if ((v->htaps[k] > 6.0 || v->vtaps[k] > 6.0 || v->HTAPsChroma[k] > 6.0 || v->VTAPsChroma[k] > 6.0) in dml30_ModeSupportAndSystemConfigurationFull()
3780 && v->MinDPPCLKUsingSingleDPP[k] < 2.0 * v->PixelClock[k]) { in dml30_ModeSupportAndSystemConfigurationFull()
3781 v->MinDPPCLKUsingSingleDPP[k] = 2.0 * v->PixelClock[k]; in dml30_ModeSupportAndSystemConfigurationFull()
3785 for (k = 0; k <= v->NumberOfActivePlanes - 1; k++) { in dml30_ModeSupportAndSystemConfigurationFull()
3789 if (v->SurfaceTiling[k] == dm_sw_linear) { in dml30_ModeSupportAndSystemConfigurationFull()
3791 } else if (v->SourceScan[k] == dm_vert && v->BytePerPixelC[k] > 0) { in dml30_ModeSupportAndSystemConfigurationFull()
3797 …if (v->SourcePixelFormat[k] == dm_420_8 || v->SourcePixelFormat[k] == dm_420_10 || v->SourcePixelF… in dml30_ModeSupportAndSystemConfigurationFull()
3802v->MaximumSwathWidthInLineBufferLuma = v->LineBufferSize * dml_max(v->HRatio[k], 1.0) / v->LBBitPe… in dml30_ModeSupportAndSystemConfigurationFull()
3803 / (v->vtaps[k] + dml_max(dml_ceil(v->VRatio[k], 1.0) - 2, 0.0)); in dml30_ModeSupportAndSystemConfigurationFull()
3804 if (v->BytePerPixelC[k] == 0.0) { in dml30_ModeSupportAndSystemConfigurationFull()
3805 v->MaximumSwathWidthInLineBufferChroma = 0; in dml30_ModeSupportAndSystemConfigurationFull()
3807v->MaximumSwathWidthInLineBufferChroma = v->LineBufferSize * dml_max(v->HRatioChroma[k], 1.0) / v-… in dml30_ModeSupportAndSystemConfigurationFull()
3808 / (v->VTAPsChroma[k] + dml_max(dml_ceil(v->VRatioChroma[k], 1.0) - 2, 0.0)); in dml30_ModeSupportAndSystemConfigurationFull()
3810v->MaximumSwathWidthLuma[k] = dml_min(MaximumSwathWidthSupportLuma, v->MaximumSwathWidthInLineBuff… in dml30_ModeSupportAndSystemConfigurationFull()
3811v->MaximumSwathWidthChroma[k] = dml_min(MaximumSwathWidthSupportChroma, v->MaximumSwathWidthInLine… in dml30_ModeSupportAndSystemConfigurationFull()
3816 v->NumberOfActivePlanes, in dml30_ModeSupportAndSystemConfigurationFull()
3817 v->DETBufferSizeInKByte[0], in dml30_ModeSupportAndSystemConfigurationFull()
3818 v->MaximumSwathWidthLuma, in dml30_ModeSupportAndSystemConfigurationFull()
3819 v->MaximumSwathWidthChroma, in dml30_ModeSupportAndSystemConfigurationFull()
3820 v->SourceScan, in dml30_ModeSupportAndSystemConfigurationFull()
3821 v->SourcePixelFormat, in dml30_ModeSupportAndSystemConfigurationFull()
3822 v->SurfaceTiling, in dml30_ModeSupportAndSystemConfigurationFull()
3823 v->ViewportWidth, in dml30_ModeSupportAndSystemConfigurationFull()
3824 v->ViewportHeight, in dml30_ModeSupportAndSystemConfigurationFull()
3825 v->SurfaceWidthY, in dml30_ModeSupportAndSystemConfigurationFull()
3826 v->SurfaceWidthC, in dml30_ModeSupportAndSystemConfigurationFull()
3827 v->SurfaceHeightY, in dml30_ModeSupportAndSystemConfigurationFull()
3828 v->SurfaceHeightC, in dml30_ModeSupportAndSystemConfigurationFull()
3829 v->Read256BlockHeightY, in dml30_ModeSupportAndSystemConfigurationFull()
3830 v->Read256BlockHeightC, in dml30_ModeSupportAndSystemConfigurationFull()
3831 v->Read256BlockWidthY, in dml30_ModeSupportAndSystemConfigurationFull()
3832 v->Read256BlockWidthC, in dml30_ModeSupportAndSystemConfigurationFull()
3833 v->odm_combine_dummy, in dml30_ModeSupportAndSystemConfigurationFull()
3834 v->BlendingAndTiming, in dml30_ModeSupportAndSystemConfigurationFull()
3835 v->BytePerPixelY, in dml30_ModeSupportAndSystemConfigurationFull()
3836 v->BytePerPixelC, in dml30_ModeSupportAndSystemConfigurationFull()
3837 v->BytePerPixelInDETY, in dml30_ModeSupportAndSystemConfigurationFull()
3838 v->BytePerPixelInDETC, in dml30_ModeSupportAndSystemConfigurationFull()
3839 v->HActive, in dml30_ModeSupportAndSystemConfigurationFull()
3840 v->HRatio, in dml30_ModeSupportAndSystemConfigurationFull()
3841 v->HRatioChroma, in dml30_ModeSupportAndSystemConfigurationFull()
3842 v->DPPPerPlane, in dml30_ModeSupportAndSystemConfigurationFull()
3843 v->swath_width_luma_ub, in dml30_ModeSupportAndSystemConfigurationFull()
3844 v->swath_width_chroma_ub, in dml30_ModeSupportAndSystemConfigurationFull()
3845 v->SwathWidthY, in dml30_ModeSupportAndSystemConfigurationFull()
3846 v->SwathWidthC, in dml30_ModeSupportAndSystemConfigurationFull()
3847 v->SwathHeightY, in dml30_ModeSupportAndSystemConfigurationFull()
3848 v->SwathHeightC, in dml30_ModeSupportAndSystemConfigurationFull()
3849 v->DETBufferSizeY, in dml30_ModeSupportAndSystemConfigurationFull()
3850 v->DETBufferSizeC, in dml30_ModeSupportAndSystemConfigurationFull()
3851 v->SingleDPPViewportSizeSupportPerPlane, in dml30_ModeSupportAndSystemConfigurationFull()
3852 &v->ViewportSizeSupport[0][0]); in dml30_ModeSupportAndSystemConfigurationFull()
3854 for (i = 0; i < v->soc.num_states; i++) { in dml30_ModeSupportAndSystemConfigurationFull()
3856v->MaxDispclkRoundedDownToDFSGranularity = RoundToDFSGranularityDown(v->MaxDispclk[i], v->DISPCLKD… in dml30_ModeSupportAndSystemConfigurationFull()
3857v->MaxDppclkRoundedDownToDFSGranularity = RoundToDFSGranularityDown(v->MaxDppclk[i], v->DISPCLKDPP… in dml30_ModeSupportAndSystemConfigurationFull()
3858 v->RequiredDISPCLK[i][j] = 0.0; in dml30_ModeSupportAndSystemConfigurationFull()
3859 v->DISPCLK_DPPCLK_Support[i][j] = true; in dml30_ModeSupportAndSystemConfigurationFull()
3860 for (k = 0; k <= v->NumberOfActivePlanes - 1; k++) { in dml30_ModeSupportAndSystemConfigurationFull()
3861v->PlaneRequiredDISPCLKWithoutODMCombine = v->PixelClock[k] * (1.0 + v->DISPCLKDPPCLKDSCCLKDownSpr… in dml30_ModeSupportAndSystemConfigurationFull()
3862 * (1.0 + v->DISPCLKRampingMargin / 100.0); in dml30_ModeSupportAndSystemConfigurationFull()
3863 …if ((v->PlaneRequiredDISPCLKWithoutODMCombine >= v->MaxDispclk[i] && v->MaxDispclk[i] == v->MaxDis… in dml30_ModeSupportAndSystemConfigurationFull()
3864 && v->MaxDppclk[i] == v->MaxDppclk[mode_lib->soc.num_states - 1])) { in dml30_ModeSupportAndSystemConfigurationFull()
3865v->PlaneRequiredDISPCLKWithoutODMCombine = v->PixelClock[k] * (1 + v->DISPCLKDPPCLKDSCCLKDownSprea… in dml30_ModeSupportAndSystemConfigurationFull()
3867v->PlaneRequiredDISPCLKWithODMCombine2To1 = v->PixelClock[k] / 2 * (1 + v->DISPCLKDPPCLKDSCCLKDown… in dml30_ModeSupportAndSystemConfigurationFull()
3868 * (1 + v->DISPCLKRampingMargin / 100.0); in dml30_ModeSupportAndSystemConfigurationFull()
3869 …if ((v->PlaneRequiredDISPCLKWithODMCombine2To1 >= v->MaxDispclk[i] && v->MaxDispclk[i] == v->MaxDi… in dml30_ModeSupportAndSystemConfigurationFull()
3870 && v->MaxDppclk[i] == v->MaxDppclk[mode_lib->soc.num_states - 1])) { in dml30_ModeSupportAndSystemConfigurationFull()
3871v->PlaneRequiredDISPCLKWithODMCombine2To1 = v->PixelClock[k] / 2 * (1 + v->DISPCLKDPPCLKDSCCLKDown… in dml30_ModeSupportAndSystemConfigurationFull()
3873v->PlaneRequiredDISPCLKWithODMCombine4To1 = v->PixelClock[k] / 4 * (1 + v->DISPCLKDPPCLKDSCCLKDown… in dml30_ModeSupportAndSystemConfigurationFull()
3874 * (1 + v->DISPCLKRampingMargin / 100.0); in dml30_ModeSupportAndSystemConfigurationFull()
3875 …if ((v->PlaneRequiredDISPCLKWithODMCombine4To1 >= v->MaxDispclk[i] && v->MaxDispclk[i] == v->MaxDi… in dml30_ModeSupportAndSystemConfigurationFull()
3876 && v->MaxDppclk[i] == v->MaxDppclk[mode_lib->soc.num_states - 1])) { in dml30_ModeSupportAndSystemConfigurationFull()
3877v->PlaneRequiredDISPCLKWithODMCombine4To1 = v->PixelClock[k] / 4 * (1 + v->DISPCLKDPPCLKDSCCLKDown… in dml30_ModeSupportAndSystemConfigurationFull()
3880 if (v->ODMCombinePolicy == dm_odm_combine_policy_none) { in dml30_ModeSupportAndSystemConfigurationFull()
3881 v->ODMCombineEnablePerState[i][k] = dm_odm_combine_mode_disabled; in dml30_ModeSupportAndSystemConfigurationFull()
3882 v->PlaneRequiredDISPCLK = v->PlaneRequiredDISPCLKWithoutODMCombine; in dml30_ModeSupportAndSystemConfigurationFull()
3883 } else if (v->ODMCombinePolicy == dm_odm_combine_policy_2to1) { in dml30_ModeSupportAndSystemConfigurationFull()
3884 v->ODMCombineEnablePerState[i][k] = dm_odm_combine_mode_2to1; in dml30_ModeSupportAndSystemConfigurationFull()
3885 v->PlaneRequiredDISPCLK = v->PlaneRequiredDISPCLKWithODMCombine2To1; in dml30_ModeSupportAndSystemConfigurationFull()
3886 } else if (v->ODMCombinePolicy == dm_odm_combine_policy_4to1 in dml30_ModeSupportAndSystemConfigurationFull()
3887 || v->PlaneRequiredDISPCLKWithODMCombine2To1 > v->MaxDispclkRoundedDownToDFSGranularity) { in dml30_ModeSupportAndSystemConfigurationFull()
3888 v->ODMCombineEnablePerState[i][k] = dm_odm_combine_mode_4to1; in dml30_ModeSupportAndSystemConfigurationFull()
3889 v->PlaneRequiredDISPCLK = v->PlaneRequiredDISPCLKWithODMCombine4To1; in dml30_ModeSupportAndSystemConfigurationFull()
3890 … } else if (v->PlaneRequiredDISPCLKWithoutODMCombine > v->MaxDispclkRoundedDownToDFSGranularity) { in dml30_ModeSupportAndSystemConfigurationFull()
3891 v->ODMCombineEnablePerState[i][k] = dm_odm_combine_mode_2to1; in dml30_ModeSupportAndSystemConfigurationFull()
3892 v->PlaneRequiredDISPCLK = v->PlaneRequiredDISPCLKWithODMCombine2To1; in dml30_ModeSupportAndSystemConfigurationFull()
3894 v->ODMCombineEnablePerState[i][k] = dm_odm_combine_mode_disabled; in dml30_ModeSupportAndSystemConfigurationFull()
3895 v->PlaneRequiredDISPCLK = v->PlaneRequiredDISPCLKWithoutODMCombine; in dml30_ModeSupportAndSystemConfigurationFull()
3897 if (v->DSCEnabled[k] && v->HActive[k] > DCN30_MAX_DSC_IMAGE_WIDTH in dml30_ModeSupportAndSystemConfigurationFull()
3898 && v->ODMCombineEnablePerState[i][k] != dm_odm_combine_mode_4to1) { in dml30_ModeSupportAndSystemConfigurationFull()
3899 if (v->HActive[k] / 2 > DCN30_MAX_DSC_IMAGE_WIDTH) { in dml30_ModeSupportAndSystemConfigurationFull()
3900 v->ODMCombineEnablePerState[i][k] = dm_odm_combine_mode_4to1; in dml30_ModeSupportAndSystemConfigurationFull()
3901 v->PlaneRequiredDISPCLK = v->PlaneRequiredDISPCLKWithODMCombine4To1; in dml30_ModeSupportAndSystemConfigurationFull()
3903 v->ODMCombineEnablePerState[i][k] = dm_odm_combine_mode_2to1; in dml30_ModeSupportAndSystemConfigurationFull()
3904 v->PlaneRequiredDISPCLK = v->PlaneRequiredDISPCLKWithODMCombine2To1; in dml30_ModeSupportAndSystemConfigurationFull()
3907 if (v->OutputFormat[k] == dm_420 && v->HActive[k] > DCN30_MAX_FMT_420_BUFFER_WIDTH in dml30_ModeSupportAndSystemConfigurationFull()
3908 && v->ODMCombineEnablePerState[i][k] != dm_odm_combine_mode_4to1) { in dml30_ModeSupportAndSystemConfigurationFull()
3909 if (v->HActive[k] / 2 > DCN30_MAX_FMT_420_BUFFER_WIDTH) { in dml30_ModeSupportAndSystemConfigurationFull()
3910 v->ODMCombineEnablePerState[i][k] = dm_odm_combine_mode_4to1; in dml30_ModeSupportAndSystemConfigurationFull()
3911 v->PlaneRequiredDISPCLK = v->PlaneRequiredDISPCLKWithODMCombine4To1; in dml30_ModeSupportAndSystemConfigurationFull()
3913 v->ODMCombineEnablePerState[i][k] = dm_odm_combine_mode_2to1; in dml30_ModeSupportAndSystemConfigurationFull()
3914 v->PlaneRequiredDISPCLK = v->PlaneRequiredDISPCLKWithODMCombine2To1; in dml30_ModeSupportAndSystemConfigurationFull()
3917 if (v->ODMCombineEnablePerState[i][k] == dm_odm_combine_mode_4to1) { in dml30_ModeSupportAndSystemConfigurationFull()
3918 v->MPCCombine[i][j][k] = false; in dml30_ModeSupportAndSystemConfigurationFull()
3919 v->NoOfDPP[i][j][k] = 4; in dml30_ModeSupportAndSystemConfigurationFull()
3920v->RequiredDPPCLK[i][j][k] = v->MinDPPCLKUsingSingleDPP[k] * (1 + v->DISPCLKDPPCLKDSCCLKDownSpread… in dml30_ModeSupportAndSystemConfigurationFull()
3921 } else if (v->ODMCombineEnablePerState[i][k] == dm_odm_combine_mode_2to1) { in dml30_ModeSupportAndSystemConfigurationFull()
3922 v->MPCCombine[i][j][k] = false; in dml30_ModeSupportAndSystemConfigurationFull()
3923 v->NoOfDPP[i][j][k] = 2; in dml30_ModeSupportAndSystemConfigurationFull()
3924v->RequiredDPPCLK[i][j][k] = v->MinDPPCLKUsingSingleDPP[k] * (1 + v->DISPCLKDPPCLKDSCCLKDownSpread… in dml30_ModeSupportAndSystemConfigurationFull()
3925 } else if ((v->WhenToDoMPCCombine == dm_mpc_never in dml30_ModeSupportAndSystemConfigurationFull()
3926 …|| (v->MinDPPCLKUsingSingleDPP[k] * (1 + v->DISPCLKDPPCLKDSCCLKDownSpreading / 100.0) <= v->MaxDpp… in dml30_ModeSupportAndSystemConfigurationFull()
3927 && v->SingleDPPViewportSizeSupportPerPlane[k] == true))) { in dml30_ModeSupportAndSystemConfigurationFull()
3928 v->MPCCombine[i][j][k] = false; in dml30_ModeSupportAndSystemConfigurationFull()
3929 v->NoOfDPP[i][j][k] = 1; in dml30_ModeSupportAndSystemConfigurationFull()
3930v->RequiredDPPCLK[i][j][k] = v->MinDPPCLKUsingSingleDPP[k] * (1.0 + v->DISPCLKDPPCLKDSCCLKDownSpre… in dml30_ModeSupportAndSystemConfigurationFull()
3932 v->MPCCombine[i][j][k] = true; in dml30_ModeSupportAndSystemConfigurationFull()
3933 v->NoOfDPP[i][j][k] = 2; in dml30_ModeSupportAndSystemConfigurationFull()
3934v->RequiredDPPCLK[i][j][k] = v->MinDPPCLKUsingSingleDPP[k] * (1.0 + v->DISPCLKDPPCLKDSCCLKDownSpre… in dml30_ModeSupportAndSystemConfigurationFull()
3936 v->RequiredDISPCLK[i][j] = dml_max(v->RequiredDISPCLK[i][j], v->PlaneRequiredDISPCLK); in dml30_ModeSupportAndSystemConfigurationFull()
3937 …if ((v->MinDPPCLKUsingSingleDPP[k] / v->NoOfDPP[i][j][k] * (1.0 + v->DISPCLKDPPCLKDSCCLKDownSpread… in dml30_ModeSupportAndSystemConfigurationFull()
3938 …> v->MaxDppclkRoundedDownToDFSGranularity) || (v->PlaneRequiredDISPCLK > v->MaxDispclkRoundedDownT… in dml30_ModeSupportAndSystemConfigurationFull()
3939 v->DISPCLK_DPPCLK_Support[i][j] = false; in dml30_ModeSupportAndSystemConfigurationFull()
3942 v->TotalNumberOfActiveDPP[i][j] = 0; in dml30_ModeSupportAndSystemConfigurationFull()
3943 v->TotalNumberOfSingleDPPPlanes[i][j] = 0; in dml30_ModeSupportAndSystemConfigurationFull()
3944 for (k = 0; k <= v->NumberOfActivePlanes - 1; k++) { in dml30_ModeSupportAndSystemConfigurationFull()
3945 v->TotalNumberOfActiveDPP[i][j] = v->TotalNumberOfActiveDPP[i][j] + v->NoOfDPP[i][j][k]; in dml30_ModeSupportAndSystemConfigurationFull()
3946 if (v->NoOfDPP[i][j][k] == 1) in dml30_ModeSupportAndSystemConfigurationFull()
3947 v->TotalNumberOfSingleDPPPlanes[i][j] = v->TotalNumberOfSingleDPPPlanes[i][j] + 1; in dml30_ModeSupportAndSystemConfigurationFull()
3949 if (j == 1 && v->WhenToDoMPCCombine != dm_mpc_never) { in dml30_ModeSupportAndSystemConfigurationFull()
3950 …while (!(v->TotalNumberOfActiveDPP[i][j] >= v->MaxNumDPP || v->TotalNumberOfSingleDPPPlanes[i][j] … in dml30_ModeSupportAndSystemConfigurationFull()
3955 for (k = 0; k < v->NumberOfActivePlanes; ++k) { in dml30_ModeSupportAndSystemConfigurationFull()
3956 if (v->ReadBandwidthLuma[k] + v->ReadBandwidthChroma[k] > BWOfNonSplitPlaneOfMaximumBandwidth in dml30_ModeSupportAndSystemConfigurationFull()
3957 …&& v->ODMCombineEnablePerState[i][k] == dm_odm_combine_mode_disabled && v->MPCCombine[i][j][k] == … in dml30_ModeSupportAndSystemConfigurationFull()
3958 BWOfNonSplitPlaneOfMaximumBandwidth = v->ReadBandwidthLuma[k] + v->ReadBandwidthChroma[k]; in dml30_ModeSupportAndSystemConfigurationFull()
3962 v->MPCCombine[i][j][NumberOfNonSplitPlaneOfMaximumBandwidth] = true; in dml30_ModeSupportAndSystemConfigurationFull()
3963 v->NoOfDPP[i][j][NumberOfNonSplitPlaneOfMaximumBandwidth] = 2; in dml30_ModeSupportAndSystemConfigurationFull()
3964v->RequiredDPPCLK[i][j][NumberOfNonSplitPlaneOfMaximumBandwidth] = v->MinDPPCLKUsingSingleDPP[Numb… in dml30_ModeSupportAndSystemConfigurationFull()
3965 * (1 + v->DISPCLKDPPCLKDSCCLKDownSpreading / 100) / 2; in dml30_ModeSupportAndSystemConfigurationFull()
3966 v->TotalNumberOfActiveDPP[i][j] = v->TotalNumberOfActiveDPP[i][j] + 1; in dml30_ModeSupportAndSystemConfigurationFull()
3967 v->TotalNumberOfSingleDPPPlanes[i][j] = v->TotalNumberOfSingleDPPPlanes[i][j] - 1; in dml30_ModeSupportAndSystemConfigurationFull()
3970 if (v->TotalNumberOfActiveDPP[i][j] > v->MaxNumDPP) { in dml30_ModeSupportAndSystemConfigurationFull()
3971 v->RequiredDISPCLK[i][j] = 0.0; in dml30_ModeSupportAndSystemConfigurationFull()
3972 v->DISPCLK_DPPCLK_Support[i][j] = true; in dml30_ModeSupportAndSystemConfigurationFull()
3973 for (k = 0; k <= v->NumberOfActivePlanes - 1; k++) { in dml30_ModeSupportAndSystemConfigurationFull()
3974 v->ODMCombineEnablePerState[i][k] = dm_odm_combine_mode_disabled; in dml30_ModeSupportAndSystemConfigurationFull()
3975 …if (v->SingleDPPViewportSizeSupportPerPlane[k] == false && v->WhenToDoMPCCombine != dm_mpc_never) { in dml30_ModeSupportAndSystemConfigurationFull()
3976 v->MPCCombine[i][j][k] = true; in dml30_ModeSupportAndSystemConfigurationFull()
3977 v->NoOfDPP[i][j][k] = 2; in dml30_ModeSupportAndSystemConfigurationFull()
3978v->RequiredDPPCLK[i][j][k] = v->MinDPPCLKUsingSingleDPP[k] * (1.0 + v->DISPCLKDPPCLKDSCCLKDownSpre… in dml30_ModeSupportAndSystemConfigurationFull()
3980 v->MPCCombine[i][j][k] = false; in dml30_ModeSupportAndSystemConfigurationFull()
3981 v->NoOfDPP[i][j][k] = 1; in dml30_ModeSupportAndSystemConfigurationFull()
3982v->RequiredDPPCLK[i][j][k] = v->MinDPPCLKUsingSingleDPP[k] * (1.0 + v->DISPCLKDPPCLKDSCCLKDownSpre… in dml30_ModeSupportAndSystemConfigurationFull()
3984 …if (!(v->MaxDispclk[i] == v->MaxDispclk[v->soc.num_states - 1] && v->MaxDppclk[i] == v->MaxDppclk[ in dml30_ModeSupportAndSystemConfigurationFull()
3985v->PlaneRequiredDISPCLK = v->PixelClock[k] * (1.0 + v->DISPCLKDPPCLKDSCCLKDownSpreading / 100.0) in dml30_ModeSupportAndSystemConfigurationFull()
3986 * (1.0 + v->DISPCLKRampingMargin / 100.0); in dml30_ModeSupportAndSystemConfigurationFull()
3988v->PlaneRequiredDISPCLK = v->PixelClock[k] * (1.0 + v->DISPCLKDPPCLKDSCCLKDownSpreading / 100.0); in dml30_ModeSupportAndSystemConfigurationFull()
3990 v->RequiredDISPCLK[i][j] = dml_max(v->RequiredDISPCLK[i][j], v->PlaneRequiredDISPCLK); in dml30_ModeSupportAndSystemConfigurationFull()
3991 …if ((v->MinDPPCLKUsingSingleDPP[k] / v->NoOfDPP[i][j][k] * (1.0 + v->DISPCLKDPPCLKDSCCLKDownSpread… in dml30_ModeSupportAndSystemConfigurationFull()
3992 …> v->MaxDppclkRoundedDownToDFSGranularity) || (v->PlaneRequiredDISPCLK > v->MaxDispclkRoundedDownT… in dml30_ModeSupportAndSystemConfigurationFull()
3993 v->DISPCLK_DPPCLK_Support[i][j] = false; in dml30_ModeSupportAndSystemConfigurationFull()
3996 v->TotalNumberOfActiveDPP[i][j] = 0.0; in dml30_ModeSupportAndSystemConfigurationFull()
3997 for (k = 0; k <= v->NumberOfActivePlanes - 1; k++) { in dml30_ModeSupportAndSystemConfigurationFull()
3998 v->TotalNumberOfActiveDPP[i][j] = v->TotalNumberOfActiveDPP[i][j] + v->NoOfDPP[i][j][k]; in dml30_ModeSupportAndSystemConfigurationFull()
4001 v->RequiredDISPCLK[i][j] = dml_max(v->RequiredDISPCLK[i][j], v->WritebackRequiredDISPCLK); in dml30_ModeSupportAndSystemConfigurationFull()
4002 if (v->MaxDispclkRoundedDownToDFSGranularity < v->WritebackRequiredDISPCLK) { in dml30_ModeSupportAndSystemConfigurationFull()
4003 v->DISPCLK_DPPCLK_Support[i][j] = false; in dml30_ModeSupportAndSystemConfigurationFull()
4010 for (i = 0; i < v->soc.num_states; i++) { in dml30_ModeSupportAndSystemConfigurationFull()
4012 if (v->TotalNumberOfActiveDPP[i][j] <= v->MaxNumDPP) { in dml30_ModeSupportAndSystemConfigurationFull()
4013 v->TotalAvailablePipesSupport[i][j] = true; in dml30_ModeSupportAndSystemConfigurationFull()
4015 v->TotalAvailablePipesSupport[i][j] = false; in dml30_ModeSupportAndSystemConfigurationFull()
4021 v->NonsupportedDSCInputBPC = false; in dml30_ModeSupportAndSystemConfigurationFull()
4022 for (k = 0; k <= v->NumberOfActivePlanes - 1; k++) { in dml30_ModeSupportAndSystemConfigurationFull()
4023 if (!(v->DSCInputBitPerComponent[k] == 12.0 in dml30_ModeSupportAndSystemConfigurationFull()
4024 || v->DSCInputBitPerComponent[k] == 10.0 in dml30_ModeSupportAndSystemConfigurationFull()
4025 || v->DSCInputBitPerComponent[k] == 8.0)) { in dml30_ModeSupportAndSystemConfigurationFull()
4026 v->NonsupportedDSCInputBPC = true; in dml30_ModeSupportAndSystemConfigurationFull()
4031 for (k = 0; k < v->NumberOfActivePlanes; ++k) { in dml30_ModeSupportAndSystemConfigurationFull()
4032 if (v->BlendingAndTiming[k] == k) { in dml30_ModeSupportAndSystemConfigurationFull()
4033 if (v->PixelClockBackEnd[k] > 3200) { in dml30_ModeSupportAndSystemConfigurationFull()
4034 v->NumberOfDSCSlices[k] = dml_ceil(v->PixelClockBackEnd[k] / 400.0, 4.0); in dml30_ModeSupportAndSystemConfigurationFull()
4035 } else if (v->PixelClockBackEnd[k] > 1360) { in dml30_ModeSupportAndSystemConfigurationFull()
4036 v->NumberOfDSCSlices[k] = 8; in dml30_ModeSupportAndSystemConfigurationFull()
4037 } else if (v->PixelClockBackEnd[k] > 680) { in dml30_ModeSupportAndSystemConfigurationFull()
4038 v->NumberOfDSCSlices[k] = 4; in dml30_ModeSupportAndSystemConfigurationFull()
4039 } else if (v->PixelClockBackEnd[k] > 340) { in dml30_ModeSupportAndSystemConfigurationFull()
4040 v->NumberOfDSCSlices[k] = 2; in dml30_ModeSupportAndSystemConfigurationFull()
4042 v->NumberOfDSCSlices[k] = 1; in dml30_ModeSupportAndSystemConfigurationFull()
4045 v->NumberOfDSCSlices[k] = 0; in dml30_ModeSupportAndSystemConfigurationFull()
4049 for (i = 0; i < v->soc.num_states; i++) { in dml30_ModeSupportAndSystemConfigurationFull()
4050 for (k = 0; k <= v->NumberOfActivePlanes - 1; k++) { in dml30_ModeSupportAndSystemConfigurationFull()
4051 v->RequiresDSC[i][k] = false; in dml30_ModeSupportAndSystemConfigurationFull()
4052 v->RequiresFEC[i][k] = false; in dml30_ModeSupportAndSystemConfigurationFull()
4053 if (v->BlendingAndTiming[k] == k) { in dml30_ModeSupportAndSystemConfigurationFull()
4054 if (v->Output[k] == dm_hdmi) { in dml30_ModeSupportAndSystemConfigurationFull()
4055 v->RequiresDSC[i][k] = false; in dml30_ModeSupportAndSystemConfigurationFull()
4056 v->RequiresFEC[i][k] = false; in dml30_ModeSupportAndSystemConfigurationFull()
4057 v->OutputBppPerState[i][k] = TruncToValidBPP( in dml30_ModeSupportAndSystemConfigurationFull()
4058 dml_min(600.0, v->PHYCLKPerState[i]) * 10, in dml30_ModeSupportAndSystemConfigurationFull()
4060 v->HTotal[k], in dml30_ModeSupportAndSystemConfigurationFull()
4061 v->HActive[k], in dml30_ModeSupportAndSystemConfigurationFull()
4062 v->PixelClockBackEnd[k], in dml30_ModeSupportAndSystemConfigurationFull()
4063 v->ForcedOutputLinkBPP[k], in dml30_ModeSupportAndSystemConfigurationFull()
4065 v->Output[k], in dml30_ModeSupportAndSystemConfigurationFull()
4066 v->OutputFormat[k], in dml30_ModeSupportAndSystemConfigurationFull()
4067 v->DSCInputBitPerComponent[k], in dml30_ModeSupportAndSystemConfigurationFull()
4068 v->NumberOfDSCSlices[k], in dml30_ModeSupportAndSystemConfigurationFull()
4069 v->AudioSampleRate[k], in dml30_ModeSupportAndSystemConfigurationFull()
4070 v->AudioSampleLayout[k], in dml30_ModeSupportAndSystemConfigurationFull()
4071 v->ODMCombineEnablePerState[i][k]); in dml30_ModeSupportAndSystemConfigurationFull()
4072 } else if (v->Output[k] == dm_dp || v->Output[k] == dm_edp) { in dml30_ModeSupportAndSystemConfigurationFull()
4073 if (v->DSCEnable[k] == true) { in dml30_ModeSupportAndSystemConfigurationFull()
4074 v->RequiresDSC[i][k] = true; in dml30_ModeSupportAndSystemConfigurationFull()
4075 v->LinkDSCEnable = true; in dml30_ModeSupportAndSystemConfigurationFull()
4076 if (v->Output[k] == dm_dp) { in dml30_ModeSupportAndSystemConfigurationFull()
4077 v->RequiresFEC[i][k] = true; in dml30_ModeSupportAndSystemConfigurationFull()
4079 v->RequiresFEC[i][k] = false; in dml30_ModeSupportAndSystemConfigurationFull()
4082 v->RequiresDSC[i][k] = false; in dml30_ModeSupportAndSystemConfigurationFull()
4083 v->LinkDSCEnable = false; in dml30_ModeSupportAndSystemConfigurationFull()
4084 v->RequiresFEC[i][k] = false; in dml30_ModeSupportAndSystemConfigurationFull()
4087 v->Outbpp = BPP_INVALID; in dml30_ModeSupportAndSystemConfigurationFull()
4088 if (v->PHYCLKPerState[i] >= 270.0) { in dml30_ModeSupportAndSystemConfigurationFull()
4089 v->Outbpp = TruncToValidBPP( in dml30_ModeSupportAndSystemConfigurationFull()
4090 (1.0 - v->Downspreading / 100.0) * 2700, in dml30_ModeSupportAndSystemConfigurationFull()
4091 v->OutputLinkDPLanes[k], in dml30_ModeSupportAndSystemConfigurationFull()
4092 v->HTotal[k], in dml30_ModeSupportAndSystemConfigurationFull()
4093 v->HActive[k], in dml30_ModeSupportAndSystemConfigurationFull()
4094 v->PixelClockBackEnd[k], in dml30_ModeSupportAndSystemConfigurationFull()
4095 v->ForcedOutputLinkBPP[k], in dml30_ModeSupportAndSystemConfigurationFull()
4096 v->LinkDSCEnable, in dml30_ModeSupportAndSystemConfigurationFull()
4097 v->Output[k], in dml30_ModeSupportAndSystemConfigurationFull()
4098 v->OutputFormat[k], in dml30_ModeSupportAndSystemConfigurationFull()
4099 v->DSCInputBitPerComponent[k], in dml30_ModeSupportAndSystemConfigurationFull()
4100 v->NumberOfDSCSlices[k], in dml30_ModeSupportAndSystemConfigurationFull()
4101 v->AudioSampleRate[k], in dml30_ModeSupportAndSystemConfigurationFull()
4102 v->AudioSampleLayout[k], in dml30_ModeSupportAndSystemConfigurationFull()
4103 v->ODMCombineEnablePerState[i][k]); in dml30_ModeSupportAndSystemConfigurationFull()
4104 v->OutputBppPerState[i][k] = v->Outbpp; in dml30_ModeSupportAndSystemConfigurationFull()
4108 if (v->Outbpp == BPP_INVALID && v->PHYCLKPerState[i] >= 540.0) { in dml30_ModeSupportAndSystemConfigurationFull()
4109 v->Outbpp = TruncToValidBPP( in dml30_ModeSupportAndSystemConfigurationFull()
4110 (1.0 - v->Downspreading / 100.0) * 5400, in dml30_ModeSupportAndSystemConfigurationFull()
4111 v->OutputLinkDPLanes[k], in dml30_ModeSupportAndSystemConfigurationFull()
4112 v->HTotal[k], in dml30_ModeSupportAndSystemConfigurationFull()
4113 v->HActive[k], in dml30_ModeSupportAndSystemConfigurationFull()
4114 v->PixelClockBackEnd[k], in dml30_ModeSupportAndSystemConfigurationFull()
4115 v->ForcedOutputLinkBPP[k], in dml30_ModeSupportAndSystemConfigurationFull()
4116 v->LinkDSCEnable, in dml30_ModeSupportAndSystemConfigurationFull()
4117 v->Output[k], in dml30_ModeSupportAndSystemConfigurationFull()
4118 v->OutputFormat[k], in dml30_ModeSupportAndSystemConfigurationFull()
4119 v->DSCInputBitPerComponent[k], in dml30_ModeSupportAndSystemConfigurationFull()
4120 v->NumberOfDSCSlices[k], in dml30_ModeSupportAndSystemConfigurationFull()
4121 v->AudioSampleRate[k], in dml30_ModeSupportAndSystemConfigurationFull()
4122 v->AudioSampleLayout[k], in dml30_ModeSupportAndSystemConfigurationFull()
4123 v->ODMCombineEnablePerState[i][k]); in dml30_ModeSupportAndSystemConfigurationFull()
4124 v->OutputBppPerState[i][k] = v->Outbpp; in dml30_ModeSupportAndSystemConfigurationFull()
4128 if (v->Outbpp == BPP_INVALID && v->PHYCLKPerState[i] >= 810.0) { in dml30_ModeSupportAndSystemConfigurationFull()
4129 v->Outbpp = TruncToValidBPP( in dml30_ModeSupportAndSystemConfigurationFull()
4130 (1.0 - v->Downspreading / 100.0) * 8100, in dml30_ModeSupportAndSystemConfigurationFull()
4131 v->OutputLinkDPLanes[k], in dml30_ModeSupportAndSystemConfigurationFull()
4132 v->HTotal[k], in dml30_ModeSupportAndSystemConfigurationFull()
4133 v->HActive[k], in dml30_ModeSupportAndSystemConfigurationFull()
4134 v->PixelClockBackEnd[k], in dml30_ModeSupportAndSystemConfigurationFull()
4135 v->ForcedOutputLinkBPP[k], in dml30_ModeSupportAndSystemConfigurationFull()
4136 v->LinkDSCEnable, in dml30_ModeSupportAndSystemConfigurationFull()
4137 v->Output[k], in dml30_ModeSupportAndSystemConfigurationFull()
4138 v->OutputFormat[k], in dml30_ModeSupportAndSystemConfigurationFull()
4139 v->DSCInputBitPerComponent[k], in dml30_ModeSupportAndSystemConfigurationFull()
4140 v->NumberOfDSCSlices[k], in dml30_ModeSupportAndSystemConfigurationFull()
4141 v->AudioSampleRate[k], in dml30_ModeSupportAndSystemConfigurationFull()
4142 v->AudioSampleLayout[k], in dml30_ModeSupportAndSystemConfigurationFull()
4143 v->ODMCombineEnablePerState[i][k]); in dml30_ModeSupportAndSystemConfigurationFull()
4144 if (v->Outbpp == BPP_INVALID && v->ForcedOutputLinkBPP[k] == 0) { in dml30_ModeSupportAndSystemConfigurationFull()
4146 v->RequiresDSC[i][k] = true; in dml30_ModeSupportAndSystemConfigurationFull()
4147 v->LinkDSCEnable = true; in dml30_ModeSupportAndSystemConfigurationFull()
4148 if (v->Output[k] == dm_dp) { in dml30_ModeSupportAndSystemConfigurationFull()
4149 v->RequiresFEC[i][k] = true; in dml30_ModeSupportAndSystemConfigurationFull()
4151 v->Outbpp = TruncToValidBPP( in dml30_ModeSupportAndSystemConfigurationFull()
4152 (1.0 - v->Downspreading / 100.0) * 8100, in dml30_ModeSupportAndSystemConfigurationFull()
4153 v->OutputLinkDPLanes[k], in dml30_ModeSupportAndSystemConfigurationFull()
4154 v->HTotal[k], in dml30_ModeSupportAndSystemConfigurationFull()
4155 v->HActive[k], in dml30_ModeSupportAndSystemConfigurationFull()
4156 v->PixelClockBackEnd[k], in dml30_ModeSupportAndSystemConfigurationFull()
4157 v->ForcedOutputLinkBPP[k], in dml30_ModeSupportAndSystemConfigurationFull()
4158 v->LinkDSCEnable, in dml30_ModeSupportAndSystemConfigurationFull()
4159 v->Output[k], in dml30_ModeSupportAndSystemConfigurationFull()
4160 v->OutputFormat[k], in dml30_ModeSupportAndSystemConfigurationFull()
4161 v->DSCInputBitPerComponent[k], in dml30_ModeSupportAndSystemConfigurationFull()
4162 v->NumberOfDSCSlices[k], in dml30_ModeSupportAndSystemConfigurationFull()
4163 v->AudioSampleRate[k], in dml30_ModeSupportAndSystemConfigurationFull()
4164 v->AudioSampleLayout[k], in dml30_ModeSupportAndSystemConfigurationFull()
4165 v->ODMCombineEnablePerState[i][k]); in dml30_ModeSupportAndSystemConfigurationFull()
4167 v->OutputBppPerState[i][k] = v->Outbpp; in dml30_ModeSupportAndSystemConfigurationFull()
4173 v->OutputBppPerState[i][k] = 0; in dml30_ModeSupportAndSystemConfigurationFull()
4177 for (i = 0; i < v->soc.num_states; i++) { in dml30_ModeSupportAndSystemConfigurationFull()
4178 v->DIOSupport[i] = true; in dml30_ModeSupportAndSystemConfigurationFull()
4179 for (k = 0; k <= v->NumberOfActivePlanes - 1; k++) { in dml30_ModeSupportAndSystemConfigurationFull()
4180 …if (!v->skip_dio_check[k] && v->BlendingAndTiming[k] == k && (v->Output[k] == dm_dp || v->Output[k… in dml30_ModeSupportAndSystemConfigurationFull()
4181 && (v->OutputBppPerState[i][k] == 0 in dml30_ModeSupportAndSystemConfigurationFull()
4182 …|| (v->OutputFormat[k] == dm_420 && v->Interlace[k] == true && v->ProgressiveToInterlaceUnitInOPP … in dml30_ModeSupportAndSystemConfigurationFull()
4183 v->DIOSupport[i] = false; in dml30_ModeSupportAndSystemConfigurationFull()
4188 for (i = 0; i < v->soc.num_states; ++i) { in dml30_ModeSupportAndSystemConfigurationFull()
4189 v->ODMCombine4To1SupportCheckOK[i] = true; in dml30_ModeSupportAndSystemConfigurationFull()
4190 for (k = 0; k < v->NumberOfActivePlanes; ++k) { in dml30_ModeSupportAndSystemConfigurationFull()
4191 if (v->BlendingAndTiming[k] == k && v->ODMCombineEnablePerState[i][k] == dm_odm_combine_mode_4to1 in dml30_ModeSupportAndSystemConfigurationFull()
4192 …&& (v->ODMCombine4To1Supported == false || v->Output[k] == dm_dp || v->Output[k] == dm_edp || v->O… in dml30_ModeSupportAndSystemConfigurationFull()
4193 v->ODMCombine4To1SupportCheckOK[i] = false; in dml30_ModeSupportAndSystemConfigurationFull()
4200 for (i = 0; i < v->soc.num_states; i++) { in dml30_ModeSupportAndSystemConfigurationFull()
4201 v->NotEnoughDSCUnits[i] = false; in dml30_ModeSupportAndSystemConfigurationFull()
4202 v->TotalDSCUnitsRequired = 0.0; in dml30_ModeSupportAndSystemConfigurationFull()
4203 for (k = 0; k <= v->NumberOfActivePlanes - 1; k++) { in dml30_ModeSupportAndSystemConfigurationFull()
4204 if (v->RequiresDSC[i][k] == true) { in dml30_ModeSupportAndSystemConfigurationFull()
4205 if (v->ODMCombineEnablePerState[i][k] == dm_odm_combine_mode_4to1) { in dml30_ModeSupportAndSystemConfigurationFull()
4206 v->TotalDSCUnitsRequired = v->TotalDSCUnitsRequired + 4.0; in dml30_ModeSupportAndSystemConfigurationFull()
4207 } else if (v->ODMCombineEnablePerState[i][k] == dm_odm_combine_mode_2to1) { in dml30_ModeSupportAndSystemConfigurationFull()
4208 v->TotalDSCUnitsRequired = v->TotalDSCUnitsRequired + 2.0; in dml30_ModeSupportAndSystemConfigurationFull()
4210 v->TotalDSCUnitsRequired = v->TotalDSCUnitsRequired + 1.0; in dml30_ModeSupportAndSystemConfigurationFull()
4214 if (v->TotalDSCUnitsRequired > v->NumberOfDSC) { in dml30_ModeSupportAndSystemConfigurationFull()
4215 v->NotEnoughDSCUnits[i] = true; in dml30_ModeSupportAndSystemConfigurationFull()
4220 for (i = 0; i < v->soc.num_states; i++) { in dml30_ModeSupportAndSystemConfigurationFull()
4221 for (k = 0; k <= v->NumberOfActivePlanes - 1; k++) { in dml30_ModeSupportAndSystemConfigurationFull()
4222 if (v->OutputBppPerState[i][k] == BPP_INVALID) { in dml30_ModeSupportAndSystemConfigurationFull()
4223 v->BPP = 0.0; in dml30_ModeSupportAndSystemConfigurationFull()
4225 v->BPP = v->OutputBppPerState[i][k]; in dml30_ModeSupportAndSystemConfigurationFull()
4227 if (v->RequiresDSC[i][k] == true && v->BPP != 0.0) { in dml30_ModeSupportAndSystemConfigurationFull()
4228 if (v->ODMCombineEnablePerState[i][k] == dm_odm_combine_mode_disabled) { in dml30_ModeSupportAndSystemConfigurationFull()
4229 v->DSCDelayPerState[i][k] = dscceComputeDelay( in dml30_ModeSupportAndSystemConfigurationFull()
4230 v->DSCInputBitPerComponent[k], in dml30_ModeSupportAndSystemConfigurationFull()
4231 v->BPP, in dml30_ModeSupportAndSystemConfigurationFull()
4232 dml_ceil(1.0 * v->HActive[k] / v->NumberOfDSCSlices[k], 1.0), in dml30_ModeSupportAndSystemConfigurationFull()
4233 v->NumberOfDSCSlices[k], in dml30_ModeSupportAndSystemConfigurationFull()
4234 v->OutputFormat[k], in dml30_ModeSupportAndSystemConfigurationFull()
4235 v->Output[k]) + dscComputeDelay(v->OutputFormat[k], v->Output[k]); in dml30_ModeSupportAndSystemConfigurationFull()
4236 } else if (v->ODMCombineEnablePerState[i][k] == dm_odm_combine_mode_2to1) { in dml30_ModeSupportAndSystemConfigurationFull()
4237 v->DSCDelayPerState[i][k] = 2.0 in dml30_ModeSupportAndSystemConfigurationFull()
4239 v->DSCInputBitPerComponent[k], in dml30_ModeSupportAndSystemConfigurationFull()
4240 v->BPP, in dml30_ModeSupportAndSystemConfigurationFull()
4241 dml_ceil(1.0 * v->HActive[k] / v->NumberOfDSCSlices[k], 1.0), in dml30_ModeSupportAndSystemConfigurationFull()
4242 v->NumberOfDSCSlices[k] / 2, in dml30_ModeSupportAndSystemConfigurationFull()
4243 v->OutputFormat[k], in dml30_ModeSupportAndSystemConfigurationFull()
4244 v->Output[k]) + dscComputeDelay(v->OutputFormat[k], v->Output[k]); in dml30_ModeSupportAndSystemConfigurationFull()
4246 v->DSCDelayPerState[i][k] = 4.0 in dml30_ModeSupportAndSystemConfigurationFull()
4248 v->DSCInputBitPerComponent[k], in dml30_ModeSupportAndSystemConfigurationFull()
4249 v->BPP, in dml30_ModeSupportAndSystemConfigurationFull()
4250 dml_ceil(1.0 * v->HActive[k] / v->NumberOfDSCSlices[k], 1.0), in dml30_ModeSupportAndSystemConfigurationFull()
4251 v->NumberOfDSCSlices[k] / 4, in dml30_ModeSupportAndSystemConfigurationFull()
4252 v->OutputFormat[k], in dml30_ModeSupportAndSystemConfigurationFull()
4253 v->Output[k]) + dscComputeDelay(v->OutputFormat[k], v->Output[k])); in dml30_ModeSupportAndSystemConfigurationFull()
4255v->DSCDelayPerState[i][k] = v->DSCDelayPerState[i][k] * v->PixelClock[k] / v->PixelClockBackEnd[k]; in dml30_ModeSupportAndSystemConfigurationFull()
4257 v->DSCDelayPerState[i][k] = 0.0; in dml30_ModeSupportAndSystemConfigurationFull()
4260 for (k = 0; k <= v->NumberOfActivePlanes - 1; k++) { in dml30_ModeSupportAndSystemConfigurationFull()
4261 for (m = 0; m <= v->NumberOfActivePlanes - 1; m++) { in dml30_ModeSupportAndSystemConfigurationFull()
4262 if (v->BlendingAndTiming[k] == m && v->RequiresDSC[i][m] == true) { in dml30_ModeSupportAndSystemConfigurationFull()
4263 v->DSCDelayPerState[i][k] = v->DSCDelayPerState[i][m]; in dml30_ModeSupportAndSystemConfigurationFull()
4273 for (k = 0; k < v->NumberOfActivePlanes; ++k) { in dml30_ModeSupportAndSystemConfigurationFull()
4274 v->RequiredDPPCLKThisState[k] = v->RequiredDPPCLK[i][j][k]; in dml30_ModeSupportAndSystemConfigurationFull()
4275 v->NoOfDPPThisState[k] = v->NoOfDPP[i][j][k]; in dml30_ModeSupportAndSystemConfigurationFull()
4276 v->ODMCombineEnableThisState[k] = v->ODMCombineEnablePerState[i][k]; in dml30_ModeSupportAndSystemConfigurationFull()
4281 v->NumberOfActivePlanes, in dml30_ModeSupportAndSystemConfigurationFull()
4282 v->DETBufferSizeInKByte[0], in dml30_ModeSupportAndSystemConfigurationFull()
4283 v->MaximumSwathWidthLuma, in dml30_ModeSupportAndSystemConfigurationFull()
4284 v->MaximumSwathWidthChroma, in dml30_ModeSupportAndSystemConfigurationFull()
4285 v->SourceScan, in dml30_ModeSupportAndSystemConfigurationFull()
4286 v->SourcePixelFormat, in dml30_ModeSupportAndSystemConfigurationFull()
4287 v->SurfaceTiling, in dml30_ModeSupportAndSystemConfigurationFull()
4288 v->ViewportWidth, in dml30_ModeSupportAndSystemConfigurationFull()
4289 v->ViewportHeight, in dml30_ModeSupportAndSystemConfigurationFull()
4290 v->SurfaceWidthY, in dml30_ModeSupportAndSystemConfigurationFull()
4291 v->SurfaceWidthC, in dml30_ModeSupportAndSystemConfigurationFull()
4292 v->SurfaceHeightY, in dml30_ModeSupportAndSystemConfigurationFull()
4293 v->SurfaceHeightC, in dml30_ModeSupportAndSystemConfigurationFull()
4294 v->Read256BlockHeightY, in dml30_ModeSupportAndSystemConfigurationFull()
4295 v->Read256BlockHeightC, in dml30_ModeSupportAndSystemConfigurationFull()
4296 v->Read256BlockWidthY, in dml30_ModeSupportAndSystemConfigurationFull()
4297 v->Read256BlockWidthC, in dml30_ModeSupportAndSystemConfigurationFull()
4298 v->ODMCombineEnableThisState, in dml30_ModeSupportAndSystemConfigurationFull()
4299 v->BlendingAndTiming, in dml30_ModeSupportAndSystemConfigurationFull()
4300 v->BytePerPixelY, in dml30_ModeSupportAndSystemConfigurationFull()
4301 v->BytePerPixelC, in dml30_ModeSupportAndSystemConfigurationFull()
4302 v->BytePerPixelInDETY, in dml30_ModeSupportAndSystemConfigurationFull()
4303 v->BytePerPixelInDETC, in dml30_ModeSupportAndSystemConfigurationFull()
4304 v->HActive, in dml30_ModeSupportAndSystemConfigurationFull()
4305 v->HRatio, in dml30_ModeSupportAndSystemConfigurationFull()
4306 v->HRatioChroma, in dml30_ModeSupportAndSystemConfigurationFull()
4307 v->NoOfDPPThisState, in dml30_ModeSupportAndSystemConfigurationFull()
4308 v->swath_width_luma_ub_this_state, in dml30_ModeSupportAndSystemConfigurationFull()
4309 v->swath_width_chroma_ub_this_state, in dml30_ModeSupportAndSystemConfigurationFull()
4310 v->SwathWidthYThisState, in dml30_ModeSupportAndSystemConfigurationFull()
4311 v->SwathWidthCThisState, in dml30_ModeSupportAndSystemConfigurationFull()
4312 v->SwathHeightYThisState, in dml30_ModeSupportAndSystemConfigurationFull()
4313 v->SwathHeightCThisState, in dml30_ModeSupportAndSystemConfigurationFull()
4314 v->DETBufferSizeYThisState, in dml30_ModeSupportAndSystemConfigurationFull()
4315 v->DETBufferSizeCThisState, in dml30_ModeSupportAndSystemConfigurationFull()
4316 v->dummystring, in dml30_ModeSupportAndSystemConfigurationFull()
4317 &v->ViewportSizeSupport[i][j]); in dml30_ModeSupportAndSystemConfigurationFull()
4319 for (k = 0; k < v->NumberOfActivePlanes; ++k) { in dml30_ModeSupportAndSystemConfigurationFull()
4320 v->swath_width_luma_ub_all_states[i][j][k] = v->swath_width_luma_ub_this_state[k]; in dml30_ModeSupportAndSystemConfigurationFull()
4321 v->swath_width_chroma_ub_all_states[i][j][k] = v->swath_width_chroma_ub_this_state[k]; in dml30_ModeSupportAndSystemConfigurationFull()
4322 v->SwathWidthYAllStates[i][j][k] = v->SwathWidthYThisState[k]; in dml30_ModeSupportAndSystemConfigurationFull()
4323 v->SwathWidthCAllStates[i][j][k] = v->SwathWidthCThisState[k]; in dml30_ModeSupportAndSystemConfigurationFull()
4324 v->SwathHeightYAllStates[i][j][k] = v->SwathHeightYThisState[k]; in dml30_ModeSupportAndSystemConfigurationFull()
4325 v->SwathHeightCAllStates[i][j][k] = v->SwathHeightCThisState[k]; in dml30_ModeSupportAndSystemConfigurationFull()
4326 v->DETBufferSizeYAllStates[i][j][k] = v->DETBufferSizeYThisState[k]; in dml30_ModeSupportAndSystemConfigurationFull()
4327 v->DETBufferSizeCAllStates[i][j][k] = v->DETBufferSizeCThisState[k]; in dml30_ModeSupportAndSystemConfigurationFull()
4332 for (k = 0; k < v->NumberOfActivePlanes; ++k) { in dml30_ModeSupportAndSystemConfigurationFull()
4333v->cursor_bw[k] = v->NumberOfCursors[k] * v->CursorWidth[k][0] * v->CursorBPP[k][0] / 8.0 / (v->HT… in dml30_ModeSupportAndSystemConfigurationFull()
4336 for (i = 0; i < v->soc.num_states; i++) { in dml30_ModeSupportAndSystemConfigurationFull()
4338 for (k = 0; k <= v->NumberOfActivePlanes - 1; k++) { in dml30_ModeSupportAndSystemConfigurationFull()
4339 v->swath_width_luma_ub_this_state[k] = v->swath_width_luma_ub_all_states[i][j][k]; in dml30_ModeSupportAndSystemConfigurationFull()
4340 v->swath_width_chroma_ub_this_state[k] = v->swath_width_chroma_ub_all_states[i][j][k]; in dml30_ModeSupportAndSystemConfigurationFull()
4341 v->SwathWidthYThisState[k] = v->SwathWidthYAllStates[i][j][k]; in dml30_ModeSupportAndSystemConfigurationFull()
4342 v->SwathWidthCThisState[k] = v->SwathWidthCAllStates[i][j][k]; in dml30_ModeSupportAndSystemConfigurationFull()
4343 v->SwathHeightYThisState[k] = v->SwathHeightYAllStates[i][j][k]; in dml30_ModeSupportAndSystemConfigurationFull()
4344 v->SwathHeightCThisState[k] = v->SwathHeightCAllStates[i][j][k]; in dml30_ModeSupportAndSystemConfigurationFull()
4345 v->DETBufferSizeYThisState[k] = v->DETBufferSizeYAllStates[i][j][k]; in dml30_ModeSupportAndSystemConfigurationFull()
4346 v->DETBufferSizeCThisState[k] = v->DETBufferSizeCAllStates[i][j][k]; in dml30_ModeSupportAndSystemConfigurationFull()
4349 v->TotalNumberOfDCCActiveDPP[i][j] = 0; in dml30_ModeSupportAndSystemConfigurationFull()
4350 for (k = 0; k < v->NumberOfActivePlanes; ++k) { in dml30_ModeSupportAndSystemConfigurationFull()
4351 if (v->DCCEnable[k] == true) { in dml30_ModeSupportAndSystemConfigurationFull()
4352 v->TotalNumberOfDCCActiveDPP[i][j] = v->TotalNumberOfDCCActiveDPP[i][j] + v->NoOfDPP[i][j][k]; in dml30_ModeSupportAndSystemConfigurationFull()
4356 for (k = 0; k <= v->NumberOfActivePlanes - 1; k++) { in dml30_ModeSupportAndSystemConfigurationFull()
4357 …if (v->SourcePixelFormat[k] == dm_420_8 || v->SourcePixelFormat[k] == dm_420_10 || v->SourcePixelF… in dml30_ModeSupportAndSystemConfigurationFull()
4358 || v->SourcePixelFormat[k] == dm_rgbe_alpha) { in dml30_ModeSupportAndSystemConfigurationFull()
4360 …if ((v->SourcePixelFormat[k] == dm_420_10 || v->SourcePixelFormat[k] == dm_420_12) && v->SourceSca… in dml30_ModeSupportAndSystemConfigurationFull()
4361v->PTEBufferSizeInRequestsForLuma = (v->PTEBufferSizeInRequestsLuma + v->PTEBufferSizeInRequestsCh… in dml30_ModeSupportAndSystemConfigurationFull()
4362 v->PTEBufferSizeInRequestsForChroma = v->PTEBufferSizeInRequestsForLuma; in dml30_ModeSupportAndSystemConfigurationFull()
4364 v->PTEBufferSizeInRequestsForLuma = v->PTEBufferSizeInRequestsLuma; in dml30_ModeSupportAndSystemConfigurationFull()
4365 v->PTEBufferSizeInRequestsForChroma = v->PTEBufferSizeInRequestsChroma; in dml30_ModeSupportAndSystemConfigurationFull()
4368 v->PDEAndMetaPTEBytesPerFrameC = CalculateVMAndRowBytes( in dml30_ModeSupportAndSystemConfigurationFull()
4370 v->DCCEnable[k], in dml30_ModeSupportAndSystemConfigurationFull()
4371 v->Read256BlockHeightC[k], in dml30_ModeSupportAndSystemConfigurationFull()
4372 v->Read256BlockWidthY[k], in dml30_ModeSupportAndSystemConfigurationFull()
4373 v->SourcePixelFormat[k], in dml30_ModeSupportAndSystemConfigurationFull()
4374 v->SurfaceTiling[k], in dml30_ModeSupportAndSystemConfigurationFull()
4375 v->BytePerPixelC[k], in dml30_ModeSupportAndSystemConfigurationFull()
4376 v->SourceScan[k], in dml30_ModeSupportAndSystemConfigurationFull()
4377 v->SwathWidthCThisState[k], in dml30_ModeSupportAndSystemConfigurationFull()
4378 v->ViewportHeightChroma[k], in dml30_ModeSupportAndSystemConfigurationFull()
4379 v->GPUVMEnable, in dml30_ModeSupportAndSystemConfigurationFull()
4380 v->HostVMEnable, in dml30_ModeSupportAndSystemConfigurationFull()
4381 v->HostVMMaxNonCachedPageTableLevels, in dml30_ModeSupportAndSystemConfigurationFull()
4382 v->GPUVMMinPageSize, in dml30_ModeSupportAndSystemConfigurationFull()
4383 v->HostVMMinPageSize, in dml30_ModeSupportAndSystemConfigurationFull()
4384 v->PTEBufferSizeInRequestsForChroma, in dml30_ModeSupportAndSystemConfigurationFull()
4385 v->PitchC[k], in dml30_ModeSupportAndSystemConfigurationFull()
4387 &v->MacroTileWidthC[k], in dml30_ModeSupportAndSystemConfigurationFull()
4388 &v->MetaRowBytesC, in dml30_ModeSupportAndSystemConfigurationFull()
4389 &v->DPTEBytesPerRowC, in dml30_ModeSupportAndSystemConfigurationFull()
4390 &v->PTEBufferSizeNotExceededC[i][j][k], in dml30_ModeSupportAndSystemConfigurationFull()
4391 &v->dummyinteger7, in dml30_ModeSupportAndSystemConfigurationFull()
4392 &v->dpte_row_height_chroma[k], in dml30_ModeSupportAndSystemConfigurationFull()
4393 &v->dummyinteger28, in dml30_ModeSupportAndSystemConfigurationFull()
4394 &v->dummyinteger26, in dml30_ModeSupportAndSystemConfigurationFull()
4395 &v->dummyinteger23, in dml30_ModeSupportAndSystemConfigurationFull()
4396 &v->meta_row_height_chroma[k], in dml30_ModeSupportAndSystemConfigurationFull()
4397 &v->dummyinteger8, in dml30_ModeSupportAndSystemConfigurationFull()
4398 &v->dummyinteger9, in dml30_ModeSupportAndSystemConfigurationFull()
4399 &v->dummyinteger19, in dml30_ModeSupportAndSystemConfigurationFull()
4400 &v->dummyinteger20, in dml30_ModeSupportAndSystemConfigurationFull()
4401 &v->dummyinteger17, in dml30_ModeSupportAndSystemConfigurationFull()
4402 &v->dummyinteger10, in dml30_ModeSupportAndSystemConfigurationFull()
4403 &v->dummyinteger11); in dml30_ModeSupportAndSystemConfigurationFull()
4405 v->PrefetchLinesC[i][j][k] = CalculatePrefetchSourceLines( in dml30_ModeSupportAndSystemConfigurationFull()
4407 v->VRatioChroma[k], in dml30_ModeSupportAndSystemConfigurationFull()
4408 v->VTAPsChroma[k], in dml30_ModeSupportAndSystemConfigurationFull()
4409 v->Interlace[k], in dml30_ModeSupportAndSystemConfigurationFull()
4410 v->ProgressiveToInterlaceUnitInOPP, in dml30_ModeSupportAndSystemConfigurationFull()
4411 v->SwathHeightCThisState[k], in dml30_ModeSupportAndSystemConfigurationFull()
4412 v->ViewportYStartC[k], in dml30_ModeSupportAndSystemConfigurationFull()
4413 &v->PrefillC[k], in dml30_ModeSupportAndSystemConfigurationFull()
4414 &v->MaxNumSwC[k]); in dml30_ModeSupportAndSystemConfigurationFull()
4416v->PTEBufferSizeInRequestsForLuma = v->PTEBufferSizeInRequestsLuma + v->PTEBufferSizeInRequestsChr… in dml30_ModeSupportAndSystemConfigurationFull()
4417 v->PTEBufferSizeInRequestsForChroma = 0; in dml30_ModeSupportAndSystemConfigurationFull()
4418 v->PDEAndMetaPTEBytesPerFrameC = 0.0; in dml30_ModeSupportAndSystemConfigurationFull()
4419 v->MetaRowBytesC = 0.0; in dml30_ModeSupportAndSystemConfigurationFull()
4420 v->DPTEBytesPerRowC = 0.0; in dml30_ModeSupportAndSystemConfigurationFull()
4421 v->PrefetchLinesC[i][j][k] = 0.0; in dml30_ModeSupportAndSystemConfigurationFull()
4422 v->PTEBufferSizeNotExceededC[i][j][k] = true; in dml30_ModeSupportAndSystemConfigurationFull()
4424 v->PDEAndMetaPTEBytesPerFrameY = CalculateVMAndRowBytes( in dml30_ModeSupportAndSystemConfigurationFull()
4426 v->DCCEnable[k], in dml30_ModeSupportAndSystemConfigurationFull()
4427 v->Read256BlockHeightY[k], in dml30_ModeSupportAndSystemConfigurationFull()
4428 v->Read256BlockWidthY[k], in dml30_ModeSupportAndSystemConfigurationFull()
4429 v->SourcePixelFormat[k], in dml30_ModeSupportAndSystemConfigurationFull()
4430 v->SurfaceTiling[k], in dml30_ModeSupportAndSystemConfigurationFull()
4431 v->BytePerPixelY[k], in dml30_ModeSupportAndSystemConfigurationFull()
4432 v->SourceScan[k], in dml30_ModeSupportAndSystemConfigurationFull()
4433 v->SwathWidthYThisState[k], in dml30_ModeSupportAndSystemConfigurationFull()
4434 v->ViewportHeight[k], in dml30_ModeSupportAndSystemConfigurationFull()
4435 v->GPUVMEnable, in dml30_ModeSupportAndSystemConfigurationFull()
4436 v->HostVMEnable, in dml30_ModeSupportAndSystemConfigurationFull()
4437 v->HostVMMaxNonCachedPageTableLevels, in dml30_ModeSupportAndSystemConfigurationFull()
4438 v->GPUVMMinPageSize, in dml30_ModeSupportAndSystemConfigurationFull()
4439 v->HostVMMinPageSize, in dml30_ModeSupportAndSystemConfigurationFull()
4440 v->PTEBufferSizeInRequestsForLuma, in dml30_ModeSupportAndSystemConfigurationFull()
4441 v->PitchY[k], in dml30_ModeSupportAndSystemConfigurationFull()
4442 v->DCCMetaPitchY[k], in dml30_ModeSupportAndSystemConfigurationFull()
4443 &v->MacroTileWidthY[k], in dml30_ModeSupportAndSystemConfigurationFull()
4444 &v->MetaRowBytesY, in dml30_ModeSupportAndSystemConfigurationFull()
4445 &v->DPTEBytesPerRowY, in dml30_ModeSupportAndSystemConfigurationFull()
4446 &v->PTEBufferSizeNotExceededY[i][j][k], in dml30_ModeSupportAndSystemConfigurationFull()
4447 v->dummyinteger4, in dml30_ModeSupportAndSystemConfigurationFull()
4448 &v->dpte_row_height[k], in dml30_ModeSupportAndSystemConfigurationFull()
4449 &v->dummyinteger29, in dml30_ModeSupportAndSystemConfigurationFull()
4450 &v->dummyinteger27, in dml30_ModeSupportAndSystemConfigurationFull()
4451 &v->dummyinteger24, in dml30_ModeSupportAndSystemConfigurationFull()
4452 &v->meta_row_height[k], in dml30_ModeSupportAndSystemConfigurationFull()
4453 &v->dummyinteger25, in dml30_ModeSupportAndSystemConfigurationFull()
4454 &v->dpte_group_bytes[k], in dml30_ModeSupportAndSystemConfigurationFull()
4455 &v->dummyinteger21, in dml30_ModeSupportAndSystemConfigurationFull()
4456 &v->dummyinteger22, in dml30_ModeSupportAndSystemConfigurationFull()
4457 &v->dummyinteger18, in dml30_ModeSupportAndSystemConfigurationFull()
4458 &v->dummyinteger5, in dml30_ModeSupportAndSystemConfigurationFull()
4459 &v->dummyinteger6); in dml30_ModeSupportAndSystemConfigurationFull()
4460 v->PrefetchLinesY[i][j][k] = CalculatePrefetchSourceLines( in dml30_ModeSupportAndSystemConfigurationFull()
4462 v->VRatio[k], in dml30_ModeSupportAndSystemConfigurationFull()
4463 v->vtaps[k], in dml30_ModeSupportAndSystemConfigurationFull()
4464 v->Interlace[k], in dml30_ModeSupportAndSystemConfigurationFull()
4465 v->ProgressiveToInterlaceUnitInOPP, in dml30_ModeSupportAndSystemConfigurationFull()
4466 v->SwathHeightYThisState[k], in dml30_ModeSupportAndSystemConfigurationFull()
4467 v->ViewportYStartY[k], in dml30_ModeSupportAndSystemConfigurationFull()
4468 &v->PrefillY[k], in dml30_ModeSupportAndSystemConfigurationFull()
4469 &v->MaxNumSwY[k]); in dml30_ModeSupportAndSystemConfigurationFull()
4470v->PDEAndMetaPTEBytesPerFrame[i][j][k] = v->PDEAndMetaPTEBytesPerFrameY + v->PDEAndMetaPTEBytesPer… in dml30_ModeSupportAndSystemConfigurationFull()
4471 v->MetaRowBytes[i][j][k] = v->MetaRowBytesY + v->MetaRowBytesC; in dml30_ModeSupportAndSystemConfigurationFull()
4472 v->DPTEBytesPerRow[i][j][k] = v->DPTEBytesPerRowY + v->DPTEBytesPerRowC; in dml30_ModeSupportAndSystemConfigurationFull()
4475 v->GPUVMEnable, in dml30_ModeSupportAndSystemConfigurationFull()
4476 v->SourcePixelFormat[k], in dml30_ModeSupportAndSystemConfigurationFull()
4477 v->VRatio[k], in dml30_ModeSupportAndSystemConfigurationFull()
4478 v->VRatioChroma[k], in dml30_ModeSupportAndSystemConfigurationFull()
4479 v->DCCEnable[k], in dml30_ModeSupportAndSystemConfigurationFull()
4480 v->HTotal[k] / v->PixelClock[k], in dml30_ModeSupportAndSystemConfigurationFull()
4481 v->MetaRowBytesY, in dml30_ModeSupportAndSystemConfigurationFull()
4482 v->MetaRowBytesC, in dml30_ModeSupportAndSystemConfigurationFull()
4483 v->meta_row_height[k], in dml30_ModeSupportAndSystemConfigurationFull()
4484 v->meta_row_height_chroma[k], in dml30_ModeSupportAndSystemConfigurationFull()
4485 v->DPTEBytesPerRowY, in dml30_ModeSupportAndSystemConfigurationFull()
4486 v->DPTEBytesPerRowC, in dml30_ModeSupportAndSystemConfigurationFull()
4487 v->dpte_row_height[k], in dml30_ModeSupportAndSystemConfigurationFull()
4488 v->dpte_row_height_chroma[k], in dml30_ModeSupportAndSystemConfigurationFull()
4489 &v->meta_row_bandwidth[i][j][k], in dml30_ModeSupportAndSystemConfigurationFull()
4490 &v->dpte_row_bandwidth[i][j][k]); in dml30_ModeSupportAndSystemConfigurationFull()
4492 v->UrgLatency[i] = CalculateUrgentLatency( in dml30_ModeSupportAndSystemConfigurationFull()
4493 v->UrgentLatencyPixelDataOnly, in dml30_ModeSupportAndSystemConfigurationFull()
4494 v->UrgentLatencyPixelMixedWithVMData, in dml30_ModeSupportAndSystemConfigurationFull()
4495 v->UrgentLatencyVMDataOnly, in dml30_ModeSupportAndSystemConfigurationFull()
4496 v->DoUrgentLatencyAdjustment, in dml30_ModeSupportAndSystemConfigurationFull()
4497 v->UrgentLatencyAdjustmentFabricClockComponent, in dml30_ModeSupportAndSystemConfigurationFull()
4498 v->UrgentLatencyAdjustmentFabricClockReference, in dml30_ModeSupportAndSystemConfigurationFull()
4499 v->FabricClockPerState[i]); in dml30_ModeSupportAndSystemConfigurationFull()
4501 for (k = 0; k < v->NumberOfActivePlanes; ++k) { in dml30_ModeSupportAndSystemConfigurationFull()
4503 v->swath_width_luma_ub_this_state[k], in dml30_ModeSupportAndSystemConfigurationFull()
4504 v->swath_width_chroma_ub_this_state[k], in dml30_ModeSupportAndSystemConfigurationFull()
4505 v->DETBufferSizeInKByte[0], in dml30_ModeSupportAndSystemConfigurationFull()
4506 v->SwathHeightYThisState[k], in dml30_ModeSupportAndSystemConfigurationFull()
4507 v->SwathHeightCThisState[k], in dml30_ModeSupportAndSystemConfigurationFull()
4508 v->HTotal[k] / v->PixelClock[k], in dml30_ModeSupportAndSystemConfigurationFull()
4509 v->UrgLatency[i], in dml30_ModeSupportAndSystemConfigurationFull()
4510 v->CursorBufferSize, in dml30_ModeSupportAndSystemConfigurationFull()
4511 v->CursorWidth[k][0], in dml30_ModeSupportAndSystemConfigurationFull()
4512 v->CursorBPP[k][0], in dml30_ModeSupportAndSystemConfigurationFull()
4513 v->VRatio[k], in dml30_ModeSupportAndSystemConfigurationFull()
4514 v->VRatioChroma[k], in dml30_ModeSupportAndSystemConfigurationFull()
4515 v->BytePerPixelInDETY[k], in dml30_ModeSupportAndSystemConfigurationFull()
4516 v->BytePerPixelInDETC[k], in dml30_ModeSupportAndSystemConfigurationFull()
4517 v->DETBufferSizeYThisState[k], in dml30_ModeSupportAndSystemConfigurationFull()
4518 v->DETBufferSizeCThisState[k], in dml30_ModeSupportAndSystemConfigurationFull()
4519 &v->UrgentBurstFactorCursor[k], in dml30_ModeSupportAndSystemConfigurationFull()
4520 &v->UrgentBurstFactorLuma[k], in dml30_ModeSupportAndSystemConfigurationFull()
4521 &v->UrgentBurstFactorChroma[k], in dml30_ModeSupportAndSystemConfigurationFull()
4525 v->NotUrgentLatencyHiding[i][j] = false; in dml30_ModeSupportAndSystemConfigurationFull()
4526 for (k = 0; k < v->NumberOfActivePlanes; ++k) { in dml30_ModeSupportAndSystemConfigurationFull()
4528 v->NotUrgentLatencyHiding[i][j] = true; in dml30_ModeSupportAndSystemConfigurationFull()
4532 for (k = 0; k < v->NumberOfActivePlanes; ++k) { in dml30_ModeSupportAndSystemConfigurationFull()
4533 v->VActivePixelBandwidth[i][j][k] = v->ReadBandwidthLuma[k] * v->UrgentBurstFactorLuma[k] in dml30_ModeSupportAndSystemConfigurationFull()
4534 + v->ReadBandwidthChroma[k] * v->UrgentBurstFactorChroma[k]; in dml30_ModeSupportAndSystemConfigurationFull()
4535 v->VActiveCursorBandwidth[i][j][k] = v->cursor_bw[k] * v->UrgentBurstFactorCursor[k]; in dml30_ModeSupportAndSystemConfigurationFull()
4538 v->TotalVActivePixelBandwidth[i][j] = 0; in dml30_ModeSupportAndSystemConfigurationFull()
4539 v->TotalVActiveCursorBandwidth[i][j] = 0; in dml30_ModeSupportAndSystemConfigurationFull()
4540 v->TotalMetaRowBandwidth[i][j] = 0; in dml30_ModeSupportAndSystemConfigurationFull()
4541 v->TotalDPTERowBandwidth[i][j] = 0; in dml30_ModeSupportAndSystemConfigurationFull()
4542 for (k = 0; k < v->NumberOfActivePlanes; ++k) { in dml30_ModeSupportAndSystemConfigurationFull()
4543v->TotalVActivePixelBandwidth[i][j] = v->TotalVActivePixelBandwidth[i][j] + v->VActivePixelBandwid… in dml30_ModeSupportAndSystemConfigurationFull()
4544v->TotalVActiveCursorBandwidth[i][j] = v->TotalVActiveCursorBandwidth[i][j] + v->VActiveCursorBand… in dml30_ModeSupportAndSystemConfigurationFull()
4545v->TotalMetaRowBandwidth[i][j] = v->TotalMetaRowBandwidth[i][j] + v->NoOfDPP[i][j][k] * v->meta_ro… in dml30_ModeSupportAndSystemConfigurationFull()
4546v->TotalDPTERowBandwidth[i][j] = v->TotalDPTERowBandwidth[i][j] + v->NoOfDPP[i][j][k] * v->dpte_ro… in dml30_ModeSupportAndSystemConfigurationFull()
4551 v->NumberOfActivePlanes, in dml30_ModeSupportAndSystemConfigurationFull()
4552 v->BytePerPixelY, in dml30_ModeSupportAndSystemConfigurationFull()
4553 v->BytePerPixelC, in dml30_ModeSupportAndSystemConfigurationFull()
4554 v->VRatio, in dml30_ModeSupportAndSystemConfigurationFull()
4555 v->VRatioChroma, in dml30_ModeSupportAndSystemConfigurationFull()
4556 v->SwathWidthYThisState, in dml30_ModeSupportAndSystemConfigurationFull()
4557 v->SwathWidthCThisState, in dml30_ModeSupportAndSystemConfigurationFull()
4558 v->NoOfDPPThisState, in dml30_ModeSupportAndSystemConfigurationFull()
4559 v->HRatio, in dml30_ModeSupportAndSystemConfigurationFull()
4560 v->HRatioChroma, in dml30_ModeSupportAndSystemConfigurationFull()
4561 v->PixelClock, in dml30_ModeSupportAndSystemConfigurationFull()
4562 v->PSCL_FACTOR, in dml30_ModeSupportAndSystemConfigurationFull()
4563 v->PSCL_FACTOR_CHROMA, in dml30_ModeSupportAndSystemConfigurationFull()
4564 v->RequiredDPPCLKThisState, in dml30_ModeSupportAndSystemConfigurationFull()
4565 v->ReadBandwidthLuma, in dml30_ModeSupportAndSystemConfigurationFull()
4566 v->ReadBandwidthChroma, in dml30_ModeSupportAndSystemConfigurationFull()
4567 v->ReturnBusWidth, in dml30_ModeSupportAndSystemConfigurationFull()
4568 &v->ProjectedDCFCLKDeepSleep[i][j]); in dml30_ModeSupportAndSystemConfigurationFull()
4576 for (k = 0; k <= v->NumberOfActivePlanes - 1; k++) { in dml30_ModeSupportAndSystemConfigurationFull()
4577 if (v->BlendingAndTiming[k] == k) { in dml30_ModeSupportAndSystemConfigurationFull()
4578 if (v->WritebackEnable[k] == true) { in dml30_ModeSupportAndSystemConfigurationFull()
4579 v->WritebackDelayTime[k] = v->WritebackLatency in dml30_ModeSupportAndSystemConfigurationFull()
4581 v->WritebackPixelFormat[k], in dml30_ModeSupportAndSystemConfigurationFull()
4582 v->WritebackHRatio[k], in dml30_ModeSupportAndSystemConfigurationFull()
4583 v->WritebackVRatio[k], in dml30_ModeSupportAndSystemConfigurationFull()
4584 v->WritebackVTaps[k], in dml30_ModeSupportAndSystemConfigurationFull()
4585 v->WritebackDestinationWidth[k], in dml30_ModeSupportAndSystemConfigurationFull()
4586 v->WritebackDestinationHeight[k], in dml30_ModeSupportAndSystemConfigurationFull()
4587 v->WritebackSourceHeight[k], in dml30_ModeSupportAndSystemConfigurationFull()
4588 v->HTotal[k]) / v->RequiredDISPCLK[i][j]; in dml30_ModeSupportAndSystemConfigurationFull()
4590 v->WritebackDelayTime[k] = 0.0; in dml30_ModeSupportAndSystemConfigurationFull()
4592 for (m = 0; m <= v->NumberOfActivePlanes - 1; m++) { in dml30_ModeSupportAndSystemConfigurationFull()
4593 if (v->BlendingAndTiming[m] == k && v->WritebackEnable[m] == true) { in dml30_ModeSupportAndSystemConfigurationFull()
4594 v->WritebackDelayTime[k] = dml_max( in dml30_ModeSupportAndSystemConfigurationFull()
4595 v->WritebackDelayTime[k], in dml30_ModeSupportAndSystemConfigurationFull()
4596 v->WritebackLatency in dml30_ModeSupportAndSystemConfigurationFull()
4598 v->WritebackPixelFormat[m], in dml30_ModeSupportAndSystemConfigurationFull()
4599 v->WritebackHRatio[m], in dml30_ModeSupportAndSystemConfigurationFull()
4600 v->WritebackVRatio[m], in dml30_ModeSupportAndSystemConfigurationFull()
4601 v->WritebackVTaps[m], in dml30_ModeSupportAndSystemConfigurationFull()
4602 v->WritebackDestinationWidth[m], in dml30_ModeSupportAndSystemConfigurationFull()
4603 v->WritebackDestinationHeight[m], in dml30_ModeSupportAndSystemConfigurationFull()
4604 v->WritebackSourceHeight[m], in dml30_ModeSupportAndSystemConfigurationFull()
4605 v->HTotal[m]) / v->RequiredDISPCLK[i][j]); in dml30_ModeSupportAndSystemConfigurationFull()
4610 for (k = 0; k <= v->NumberOfActivePlanes - 1; k++) { in dml30_ModeSupportAndSystemConfigurationFull()
4611 for (m = 0; m <= v->NumberOfActivePlanes - 1; m++) { in dml30_ModeSupportAndSystemConfigurationFull()
4612 if (v->BlendingAndTiming[k] == m) { in dml30_ModeSupportAndSystemConfigurationFull()
4613 v->WritebackDelayTime[k] = v->WritebackDelayTime[m]; in dml30_ModeSupportAndSystemConfigurationFull()
4617 v->MaxMaxVStartup[i][j] = 0; in dml30_ModeSupportAndSystemConfigurationFull()
4618 for (k = 0; k <= v->NumberOfActivePlanes - 1; k++) { in dml30_ModeSupportAndSystemConfigurationFull()
4619 v->MaximumVStartup[i][j][k] = v->VTotal[k] - v->VActive[k] in dml30_ModeSupportAndSystemConfigurationFull()
4620 … - dml_max(1.0, dml_ceil(1.0 * v->WritebackDelayTime[k] / (v->HTotal[k] / v->PixelClock[k]), 1.0)); in dml30_ModeSupportAndSystemConfigurationFull()
4621 v->MaxMaxVStartup[i][j] = dml_max(v->MaxMaxVStartup[i][j], v->MaximumVStartup[i][j][k]); in dml30_ModeSupportAndSystemConfigurationFull()
4626 ReorderingBytes = v->NumberOfChannels in dml30_ModeSupportAndSystemConfigurationFull()
4628 v->UrgentOutOfOrderReturnPerChannelPixelDataOnly, in dml30_ModeSupportAndSystemConfigurationFull()
4629 v->UrgentOutOfOrderReturnPerChannelPixelMixedWithVMData, in dml30_ModeSupportAndSystemConfigurationFull()
4630 v->UrgentOutOfOrderReturnPerChannelVMDataOnly); in dml30_ModeSupportAndSystemConfigurationFull()
4631v->FinalDRAMClockChangeLatency = (v->DRAMClockChangeLatencyOverride > 0 ? v->DRAMClockChangeLatenc… in dml30_ModeSupportAndSystemConfigurationFull()
4635 v->DCFCLKState[i][j] = v->DCFCLKPerState[i]; in dml30_ModeSupportAndSystemConfigurationFull()
4639 if (v->UseMinimumRequiredDCFCLK == true) { in dml30_ModeSupportAndSystemConfigurationFull()
4640 UseMinimumDCFCLK(mode_lib, v, MaxPrefetchMode, ReorderingBytes); in dml30_ModeSupportAndSystemConfigurationFull()
4642 if (v->ClampMinDCFCLK) { in dml30_ModeSupportAndSystemConfigurationFull()
4646 if (v->DCFCLKState[i][j] < mode_lib->soc.min_dcfclk) { in dml30_ModeSupportAndSystemConfigurationFull()
4647 v->DCFCLKState[i][j] = mode_lib->soc.min_dcfclk; in dml30_ModeSupportAndSystemConfigurationFull()
4656 v->IdealSDPPortBandwidthPerState[i][j] = dml_min3( in dml30_ModeSupportAndSystemConfigurationFull()
4657 v->ReturnBusWidth * v->DCFCLKState[i][j], in dml30_ModeSupportAndSystemConfigurationFull()
4658 v->DRAMSpeedPerState[i] * v->NumberOfChannels * v->DRAMChannelWidth, in dml30_ModeSupportAndSystemConfigurationFull()
4659 v->FabricClockPerState[i] * v->FabricDatapathToDCNDataReturn); in dml30_ModeSupportAndSystemConfigurationFull()
4660 if (v->HostVMEnable != true) { in dml30_ModeSupportAndSystemConfigurationFull()
4661v->ReturnBWPerState[i][j] = v->IdealSDPPortBandwidthPerState[i][j] * v->PercentOfIdealDRAMFabricAn… in dml30_ModeSupportAndSystemConfigurationFull()
4664 v->ReturnBWPerState[i][j] = v->IdealSDPPortBandwidthPerState[i][j] in dml30_ModeSupportAndSystemConfigurationFull()
4665 * v->PercentOfIdealDRAMFabricAndSDPPortBWReceivedAfterUrgLatencyPixelMixedWithVMData / 100; in dml30_ModeSupportAndSystemConfigurationFull()
4674 if ((v->ROBBufferSizeInKByte - v->PixelChunkSizeInKByte) * 1024 / v->ReturnBWPerState[i][j] in dml30_ModeSupportAndSystemConfigurationFull()
4675 …> (v->RoundTripPingLatencyCycles + 32) / v->DCFCLKState[i][j] + ReorderingBytes / v->ReturnBWPerSt… in dml30_ModeSupportAndSystemConfigurationFull()
4676 v->ROBSupport[i][j] = true; in dml30_ModeSupportAndSystemConfigurationFull()
4678 v->ROBSupport[i][j] = false; in dml30_ModeSupportAndSystemConfigurationFull()
4686 for (k = 0; k < v->NumberOfActivePlanes; ++k) { in dml30_ModeSupportAndSystemConfigurationFull()
4687 …MaxTotalVActiveRDBandwidth = MaxTotalVActiveRDBandwidth + v->ReadBandwidthLuma[k] + v->ReadBandwid… in dml30_ModeSupportAndSystemConfigurationFull()
4692 v->MaxTotalVerticalActiveAvailableBandwidth[i][j] = dml_min( in dml30_ModeSupportAndSystemConfigurationFull()
4693v->IdealSDPPortBandwidthPerState[i][j] * v->MaxAveragePercentOfIdealSDPPortBWDisplayCanUseInNormal… in dml30_ModeSupportAndSystemConfigurationFull()
4694v->DRAMSpeedPerState[i] * v->NumberOfChannels * v->DRAMChannelWidth * v->MaxAveragePercentOfIdealD… in dml30_ModeSupportAndSystemConfigurationFull()
4696 if (MaxTotalVActiveRDBandwidth <= v->MaxTotalVerticalActiveAvailableBandwidth[i][j]) { in dml30_ModeSupportAndSystemConfigurationFull()
4697 v->TotalVerticalActiveBandwidthSupport[i][j] = true; in dml30_ModeSupportAndSystemConfigurationFull()
4699 v->TotalVerticalActiveBandwidthSupport[i][j] = false; in dml30_ModeSupportAndSystemConfigurationFull()
4710 v->TimeCalc = 24 / v->ProjectedDCFCLKDeepSleep[i][j]; in dml30_ModeSupportAndSystemConfigurationFull()
4712 v->BandwidthWithoutPrefetchSupported[i][j] = true; in dml30_ModeSupportAndSystemConfigurationFull()
4713 …if (v->TotalVActivePixelBandwidth[i][j] + v->TotalVActiveCursorBandwidth[i][j] + v->TotalMetaRowBa… in dml30_ModeSupportAndSystemConfigurationFull()
4714 > v->ReturnBWPerState[i][j] || v->NotUrgentLatencyHiding[i][j]) { in dml30_ModeSupportAndSystemConfigurationFull()
4715 v->BandwidthWithoutPrefetchSupported[i][j] = false; in dml30_ModeSupportAndSystemConfigurationFull()
4718 for (k = 0; k < v->NumberOfActivePlanes; ++k) { in dml30_ModeSupportAndSystemConfigurationFull()
4719 v->NoOfDPPThisState[k] = v->NoOfDPP[i][j][k]; in dml30_ModeSupportAndSystemConfigurationFull()
4720 v->swath_width_luma_ub_this_state[k] = v->swath_width_luma_ub_all_states[i][j][k]; in dml30_ModeSupportAndSystemConfigurationFull()
4721 v->swath_width_chroma_ub_this_state[k] = v->swath_width_chroma_ub_all_states[i][j][k]; in dml30_ModeSupportAndSystemConfigurationFull()
4722 v->SwathWidthYThisState[k] = v->SwathWidthYAllStates[i][j][k]; in dml30_ModeSupportAndSystemConfigurationFull()
4723 v->SwathWidthCThisState[k] = v->SwathWidthCAllStates[i][j][k]; in dml30_ModeSupportAndSystemConfigurationFull()
4724 v->SwathHeightYThisState[k] = v->SwathHeightYAllStates[i][j][k]; in dml30_ModeSupportAndSystemConfigurationFull()
4725 v->SwathHeightCThisState[k] = v->SwathHeightCAllStates[i][j][k]; in dml30_ModeSupportAndSystemConfigurationFull()
4726 v->DETBufferSizeYThisState[k] = v->DETBufferSizeYAllStates[i][j][k]; in dml30_ModeSupportAndSystemConfigurationFull()
4727 v->DETBufferSizeCThisState[k] = v->DETBufferSizeCAllStates[i][j][k]; in dml30_ModeSupportAndSystemConfigurationFull()
4728 v->ODMCombineEnabled[k] = v->ODMCombineEnablePerState[i][k]; in dml30_ModeSupportAndSystemConfigurationFull()
4731 v->ExtraLatency = CalculateExtraLatency( in dml30_ModeSupportAndSystemConfigurationFull()
4732 v->RoundTripPingLatencyCycles, in dml30_ModeSupportAndSystemConfigurationFull()
4734 v->DCFCLKState[i][j], in dml30_ModeSupportAndSystemConfigurationFull()
4735 v->TotalNumberOfActiveDPP[i][j], in dml30_ModeSupportAndSystemConfigurationFull()
4736 v->PixelChunkSizeInKByte, in dml30_ModeSupportAndSystemConfigurationFull()
4737 v->TotalNumberOfDCCActiveDPP[i][j], in dml30_ModeSupportAndSystemConfigurationFull()
4738 v->MetaChunkSize, in dml30_ModeSupportAndSystemConfigurationFull()
4739 v->ReturnBWPerState[i][j], in dml30_ModeSupportAndSystemConfigurationFull()
4740 v->GPUVMEnable, in dml30_ModeSupportAndSystemConfigurationFull()
4741 v->HostVMEnable, in dml30_ModeSupportAndSystemConfigurationFull()
4742 v->NumberOfActivePlanes, in dml30_ModeSupportAndSystemConfigurationFull()
4743 v->NoOfDPPThisState, in dml30_ModeSupportAndSystemConfigurationFull()
4744 v->dpte_group_bytes, in dml30_ModeSupportAndSystemConfigurationFull()
4745 v->PercentOfIdealDRAMFabricAndSDPPortBWReceivedAfterUrgLatencyPixelMixedWithVMData, in dml30_ModeSupportAndSystemConfigurationFull()
4746 v->PercentOfIdealDRAMFabricAndSDPPortBWReceivedAfterUrgLatencyVMDataOnly, in dml30_ModeSupportAndSystemConfigurationFull()
4747 v->HostVMMinPageSize, in dml30_ModeSupportAndSystemConfigurationFull()
4748 v->HostVMMaxNonCachedPageTableLevels); in dml30_ModeSupportAndSystemConfigurationFull()
4750 v->NextMaxVStartup = v->MaxMaxVStartup[i][j]; in dml30_ModeSupportAndSystemConfigurationFull()
4752 v->PrefetchModePerState[i][j] = NextPrefetchModeState; in dml30_ModeSupportAndSystemConfigurationFull()
4753 v->MaxVStartup = v->NextMaxVStartup; in dml30_ModeSupportAndSystemConfigurationFull()
4755v->TWait = CalculateTWait(v->PrefetchModePerState[i][j], v->FinalDRAMClockChangeLatency, v->UrgLat… in dml30_ModeSupportAndSystemConfigurationFull()
4757 for (k = 0; k <= v->NumberOfActivePlanes - 1; k++) { in dml30_ModeSupportAndSystemConfigurationFull()
4760 myPipe.DPPCLK = v->RequiredDPPCLK[i][j][k]; in dml30_ModeSupportAndSystemConfigurationFull()
4761 myPipe.DISPCLK = v->RequiredDISPCLK[i][j]; in dml30_ModeSupportAndSystemConfigurationFull()
4762 myPipe.PixelClock = v->PixelClock[k]; in dml30_ModeSupportAndSystemConfigurationFull()
4763 myPipe.DCFCLKDeepSleep = v->ProjectedDCFCLKDeepSleep[i][j]; in dml30_ModeSupportAndSystemConfigurationFull()
4764 myPipe.DPPPerPlane = v->NoOfDPP[i][j][k]; in dml30_ModeSupportAndSystemConfigurationFull()
4765 myPipe.ScalerEnabled = v->ScalerEnabled[k]; in dml30_ModeSupportAndSystemConfigurationFull()
4766 myPipe.SourceScan = v->SourceScan[k]; in dml30_ModeSupportAndSystemConfigurationFull()
4767 myPipe.BlockWidth256BytesY = v->Read256BlockWidthY[k]; in dml30_ModeSupportAndSystemConfigurationFull()
4768 myPipe.BlockHeight256BytesY = v->Read256BlockHeightY[k]; in dml30_ModeSupportAndSystemConfigurationFull()
4769 myPipe.BlockWidth256BytesC = v->Read256BlockWidthC[k]; in dml30_ModeSupportAndSystemConfigurationFull()
4770 myPipe.BlockHeight256BytesC = v->Read256BlockHeightC[k]; in dml30_ModeSupportAndSystemConfigurationFull()
4771 myPipe.InterlaceEnable = v->Interlace[k]; in dml30_ModeSupportAndSystemConfigurationFull()
4772 myPipe.NumberOfCursors = v->NumberOfCursors[k]; in dml30_ModeSupportAndSystemConfigurationFull()
4773 myPipe.VBlank = v->VTotal[k] - v->VActive[k]; in dml30_ModeSupportAndSystemConfigurationFull()
4774 myPipe.HTotal = v->HTotal[k]; in dml30_ModeSupportAndSystemConfigurationFull()
4775 myPipe.DCCEnable = v->DCCEnable[k]; in dml30_ModeSupportAndSystemConfigurationFull()
4776 myPipe.ODMCombineEnabled = !!v->ODMCombineEnabled[k]; in dml30_ModeSupportAndSystemConfigurationFull()
4778 v->NoTimeForPrefetch[i][j][k] = CalculatePrefetchSchedule( in dml30_ModeSupportAndSystemConfigurationFull()
4780 v->PercentOfIdealDRAMFabricAndSDPPortBWReceivedAfterUrgLatencyPixelMixedWithVMData, in dml30_ModeSupportAndSystemConfigurationFull()
4781 v->PercentOfIdealDRAMFabricAndSDPPortBWReceivedAfterUrgLatencyVMDataOnly, in dml30_ModeSupportAndSystemConfigurationFull()
4783 v->DSCDelayPerState[i][k], in dml30_ModeSupportAndSystemConfigurationFull()
4784 v->DPPCLKDelaySubtotal + v->DPPCLKDelayCNVCFormater, in dml30_ModeSupportAndSystemConfigurationFull()
4785 v->DPPCLKDelaySCL, in dml30_ModeSupportAndSystemConfigurationFull()
4786 v->DPPCLKDelaySCLLBOnly, in dml30_ModeSupportAndSystemConfigurationFull()
4787 v->DPPCLKDelayCNVCCursor, in dml30_ModeSupportAndSystemConfigurationFull()
4788 v->DISPCLKDelaySubtotal, in dml30_ModeSupportAndSystemConfigurationFull()
4789 v->SwathWidthYThisState[k] / v->HRatio[k], in dml30_ModeSupportAndSystemConfigurationFull()
4790 v->OutputFormat[k], in dml30_ModeSupportAndSystemConfigurationFull()
4791 v->MaxInterDCNTileRepeaters, in dml30_ModeSupportAndSystemConfigurationFull()
4792 dml_min(v->MaxVStartup, v->MaximumVStartup[i][j][k]), in dml30_ModeSupportAndSystemConfigurationFull()
4793 v->MaximumVStartup[i][j][k], in dml30_ModeSupportAndSystemConfigurationFull()
4794 v->GPUVMMaxPageTableLevels, in dml30_ModeSupportAndSystemConfigurationFull()
4795 v->GPUVMEnable, in dml30_ModeSupportAndSystemConfigurationFull()
4796 v->HostVMEnable, in dml30_ModeSupportAndSystemConfigurationFull()
4797 v->HostVMMaxNonCachedPageTableLevels, in dml30_ModeSupportAndSystemConfigurationFull()
4798 v->HostVMMinPageSize, in dml30_ModeSupportAndSystemConfigurationFull()
4799 v->DynamicMetadataEnable[k], in dml30_ModeSupportAndSystemConfigurationFull()
4800 v->DynamicMetadataVMEnabled, in dml30_ModeSupportAndSystemConfigurationFull()
4801 v->DynamicMetadataLinesBeforeActiveRequired[k], in dml30_ModeSupportAndSystemConfigurationFull()
4802 v->DynamicMetadataTransmittedBytes[k], in dml30_ModeSupportAndSystemConfigurationFull()
4803 v->UrgLatency[i], in dml30_ModeSupportAndSystemConfigurationFull()
4804 v->ExtraLatency, in dml30_ModeSupportAndSystemConfigurationFull()
4805 v->TimeCalc, in dml30_ModeSupportAndSystemConfigurationFull()
4806 v->PDEAndMetaPTEBytesPerFrame[i][j][k], in dml30_ModeSupportAndSystemConfigurationFull()
4807 v->MetaRowBytes[i][j][k], in dml30_ModeSupportAndSystemConfigurationFull()
4808 v->DPTEBytesPerRow[i][j][k], in dml30_ModeSupportAndSystemConfigurationFull()
4809 v->PrefetchLinesY[i][j][k], in dml30_ModeSupportAndSystemConfigurationFull()
4810 v->SwathWidthYThisState[k], in dml30_ModeSupportAndSystemConfigurationFull()
4811 v->BytePerPixelY[k], in dml30_ModeSupportAndSystemConfigurationFull()
4812 v->PrefillY[k], in dml30_ModeSupportAndSystemConfigurationFull()
4813 v->MaxNumSwY[k], in dml30_ModeSupportAndSystemConfigurationFull()
4814 v->PrefetchLinesC[i][j][k], in dml30_ModeSupportAndSystemConfigurationFull()
4815 v->SwathWidthCThisState[k], in dml30_ModeSupportAndSystemConfigurationFull()
4816 v->BytePerPixelC[k], in dml30_ModeSupportAndSystemConfigurationFull()
4817 v->PrefillC[k], in dml30_ModeSupportAndSystemConfigurationFull()
4818 v->MaxNumSwC[k], in dml30_ModeSupportAndSystemConfigurationFull()
4819 v->swath_width_luma_ub_this_state[k], in dml30_ModeSupportAndSystemConfigurationFull()
4820 v->swath_width_chroma_ub_this_state[k], in dml30_ModeSupportAndSystemConfigurationFull()
4821 v->SwathHeightYThisState[k], in dml30_ModeSupportAndSystemConfigurationFull()
4822 v->SwathHeightCThisState[k], in dml30_ModeSupportAndSystemConfigurationFull()
4823 v->TWait, in dml30_ModeSupportAndSystemConfigurationFull()
4824 v->ProgressiveToInterlaceUnitInOPP, in dml30_ModeSupportAndSystemConfigurationFull()
4825 &v->DSTXAfterScaler[k], in dml30_ModeSupportAndSystemConfigurationFull()
4826 &v->DSTYAfterScaler[k], in dml30_ModeSupportAndSystemConfigurationFull()
4827 &v->LineTimesForPrefetch[k], in dml30_ModeSupportAndSystemConfigurationFull()
4828 &v->PrefetchBW[k], in dml30_ModeSupportAndSystemConfigurationFull()
4829 &v->LinesForMetaPTE[k], in dml30_ModeSupportAndSystemConfigurationFull()
4830 &v->LinesForMetaAndDPTERow[k], in dml30_ModeSupportAndSystemConfigurationFull()
4831 &v->VRatioPreY[i][j][k], in dml30_ModeSupportAndSystemConfigurationFull()
4832 &v->VRatioPreC[i][j][k], in dml30_ModeSupportAndSystemConfigurationFull()
4833 &v->RequiredPrefetchPixelDataBWLuma[i][j][k], in dml30_ModeSupportAndSystemConfigurationFull()
4834 &v->RequiredPrefetchPixelDataBWChroma[i][j][k], in dml30_ModeSupportAndSystemConfigurationFull()
4835 &v->NoTimeForDynamicMetadata[i][j][k], in dml30_ModeSupportAndSystemConfigurationFull()
4836 &v->Tno_bw[k], in dml30_ModeSupportAndSystemConfigurationFull()
4837 &v->prefetch_vmrow_bw[k], in dml30_ModeSupportAndSystemConfigurationFull()
4838 &v->Tdmdl_vm[k], in dml30_ModeSupportAndSystemConfigurationFull()
4839 &v->Tdmdl[k], in dml30_ModeSupportAndSystemConfigurationFull()
4840 &v->VUpdateOffsetPix[k], in dml30_ModeSupportAndSystemConfigurationFull()
4841 &v->VUpdateWidthPix[k], in dml30_ModeSupportAndSystemConfigurationFull()
4842 &v->VReadyOffsetPix[k]); in dml30_ModeSupportAndSystemConfigurationFull()
4845 for (k = 0; k <= v->NumberOfActivePlanes - 1; k++) { in dml30_ModeSupportAndSystemConfigurationFull()
4847 v->swath_width_luma_ub_this_state[k], in dml30_ModeSupportAndSystemConfigurationFull()
4848 v->swath_width_chroma_ub_this_state[k], in dml30_ModeSupportAndSystemConfigurationFull()
4849 v->DETBufferSizeInKByte[0], in dml30_ModeSupportAndSystemConfigurationFull()
4850 v->SwathHeightYThisState[k], in dml30_ModeSupportAndSystemConfigurationFull()
4851 v->SwathHeightCThisState[k], in dml30_ModeSupportAndSystemConfigurationFull()
4852 v->HTotal[k] / v->PixelClock[k], in dml30_ModeSupportAndSystemConfigurationFull()
4853 v->UrgLatency[i], in dml30_ModeSupportAndSystemConfigurationFull()
4854 v->CursorBufferSize, in dml30_ModeSupportAndSystemConfigurationFull()
4855 v->CursorWidth[k][0], in dml30_ModeSupportAndSystemConfigurationFull()
4856 v->CursorBPP[k][0], in dml30_ModeSupportAndSystemConfigurationFull()
4857 v->VRatioPreY[i][j][k], in dml30_ModeSupportAndSystemConfigurationFull()
4858 v->VRatioPreC[i][j][k], in dml30_ModeSupportAndSystemConfigurationFull()
4859 v->BytePerPixelInDETY[k], in dml30_ModeSupportAndSystemConfigurationFull()
4860 v->BytePerPixelInDETC[k], in dml30_ModeSupportAndSystemConfigurationFull()
4861 v->DETBufferSizeYThisState[k], in dml30_ModeSupportAndSystemConfigurationFull()
4862 v->DETBufferSizeCThisState[k], in dml30_ModeSupportAndSystemConfigurationFull()
4863 &v->UrgentBurstFactorCursorPre[k], in dml30_ModeSupportAndSystemConfigurationFull()
4864 &v->UrgentBurstFactorLumaPre[k], in dml30_ModeSupportAndSystemConfigurationFull()
4865 &v->UrgentBurstFactorChromaPre[k], in dml30_ModeSupportAndSystemConfigurationFull()
4866 &v->NoUrgentLatencyHidingPre[k]); in dml30_ModeSupportAndSystemConfigurationFull()
4869 v->MaximumReadBandwidthWithPrefetch = 0.0; in dml30_ModeSupportAndSystemConfigurationFull()
4870 for (k = 0; k <= v->NumberOfActivePlanes - 1; k++) { in dml30_ModeSupportAndSystemConfigurationFull()
4871v->cursor_bw_pre[k] = v->NumberOfCursors[k] * v->CursorWidth[k][0] * v->CursorBPP[k][0] / 8.0 / (v in dml30_ModeSupportAndSystemConfigurationFull()
4872 * v->VRatioPreY[i][j][k]; in dml30_ModeSupportAndSystemConfigurationFull()
4874 v->MaximumReadBandwidthWithPrefetch = v->MaximumReadBandwidthWithPrefetch in dml30_ModeSupportAndSystemConfigurationFull()
4876 v->VActivePixelBandwidth[i][j][k], in dml30_ModeSupportAndSystemConfigurationFull()
4877 v->VActiveCursorBandwidth[i][j][k] in dml30_ModeSupportAndSystemConfigurationFull()
4878 … + v->NoOfDPP[i][j][k] * (v->meta_row_bandwidth[i][j][k] + v->dpte_row_bandwidth[i][j][k]), in dml30_ModeSupportAndSystemConfigurationFull()
4879 v->NoOfDPP[i][j][k] * v->prefetch_vmrow_bw[k], in dml30_ModeSupportAndSystemConfigurationFull()
4880 v->NoOfDPP[i][j][k] in dml30_ModeSupportAndSystemConfigurationFull()
4881 * (v->RequiredPrefetchPixelDataBWLuma[i][j][k] * v->UrgentBurstFactorLumaPre[k] in dml30_ModeSupportAndSystemConfigurationFull()
4882 + v->RequiredPrefetchPixelDataBWChroma[i][j][k] in dml30_ModeSupportAndSystemConfigurationFull()
4883 * v->UrgentBurstFactorChromaPre[k]) in dml30_ModeSupportAndSystemConfigurationFull()
4884 + v->cursor_bw_pre[k] * v->UrgentBurstFactorCursorPre[k]); in dml30_ModeSupportAndSystemConfigurationFull()
4887 v->NotEnoughUrgentLatencyHidingPre = false; in dml30_ModeSupportAndSystemConfigurationFull()
4888 for (k = 0; k <= v->NumberOfActivePlanes - 1; k++) { in dml30_ModeSupportAndSystemConfigurationFull()
4889 if (v->NoUrgentLatencyHidingPre[k] == true) { in dml30_ModeSupportAndSystemConfigurationFull()
4890 v->NotEnoughUrgentLatencyHidingPre = true; in dml30_ModeSupportAndSystemConfigurationFull()
4894 v->PrefetchSupported[i][j] = true; in dml30_ModeSupportAndSystemConfigurationFull()
4895 …if (v->BandwidthWithoutPrefetchSupported[i][j] == false || v->MaximumReadBandwidthWithPrefetch > v in dml30_ModeSupportAndSystemConfigurationFull()
4896 || v->NotEnoughUrgentLatencyHidingPre == 1) { in dml30_ModeSupportAndSystemConfigurationFull()
4897 v->PrefetchSupported[i][j] = false; in dml30_ModeSupportAndSystemConfigurationFull()
4899 for (k = 0; k <= v->NumberOfActivePlanes - 1; k++) { in dml30_ModeSupportAndSystemConfigurationFull()
4900 …if (v->LineTimesForPrefetch[k] < 2.0 || v->LinesForMetaPTE[k] >= 32.0 || v->LinesForMetaAndDPTERow… in dml30_ModeSupportAndSystemConfigurationFull()
4901 || v->NoTimeForPrefetch[i][j][k] == true) { in dml30_ModeSupportAndSystemConfigurationFull()
4902 v->PrefetchSupported[i][j] = false; in dml30_ModeSupportAndSystemConfigurationFull()
4906 v->DynamicMetadataSupported[i][j] = true; in dml30_ModeSupportAndSystemConfigurationFull()
4907 for (k = 0; k < v->NumberOfActivePlanes; ++k) { in dml30_ModeSupportAndSystemConfigurationFull()
4908 if (v->NoTimeForDynamicMetadata[i][j][k] == true) { in dml30_ModeSupportAndSystemConfigurationFull()
4909 v->DynamicMetadataSupported[i][j] = false; in dml30_ModeSupportAndSystemConfigurationFull()
4913 v->VRatioInPrefetchSupported[i][j] = true; in dml30_ModeSupportAndSystemConfigurationFull()
4914 for (k = 0; k <= v->NumberOfActivePlanes - 1; k++) { in dml30_ModeSupportAndSystemConfigurationFull()
4915 …if (v->VRatioPreY[i][j][k] > 4.0 || v->VRatioPreC[i][j][k] > 4.0 || v->NoTimeForPrefetch[i][j][k] … in dml30_ModeSupportAndSystemConfigurationFull()
4916 v->VRatioInPrefetchSupported[i][j] = false; in dml30_ModeSupportAndSystemConfigurationFull()
4919 v->AnyLinesForVMOrRowTooLarge = false; in dml30_ModeSupportAndSystemConfigurationFull()
4920 for (k = 0; k < v->NumberOfActivePlanes; ++k) { in dml30_ModeSupportAndSystemConfigurationFull()
4921 if (v->LinesForMetaAndDPTERow[k] >= 16 || v->LinesForMetaPTE[k] >= 32) { in dml30_ModeSupportAndSystemConfigurationFull()
4922 v->AnyLinesForVMOrRowTooLarge = true; in dml30_ModeSupportAndSystemConfigurationFull()
4926 if (v->PrefetchSupported[i][j] == true && v->VRatioInPrefetchSupported[i][j] == true) { in dml30_ModeSupportAndSystemConfigurationFull()
4927 v->BandwidthAvailableForImmediateFlip = v->ReturnBWPerState[i][j]; in dml30_ModeSupportAndSystemConfigurationFull()
4928 for (k = 0; k <= v->NumberOfActivePlanes - 1; k++) { in dml30_ModeSupportAndSystemConfigurationFull()
4929 v->BandwidthAvailableForImmediateFlip = v->BandwidthAvailableForImmediateFlip in dml30_ModeSupportAndSystemConfigurationFull()
4931 v->VActivePixelBandwidth[i][j][k] + v->VActiveCursorBandwidth[i][j][k], in dml30_ModeSupportAndSystemConfigurationFull()
4932 v->NoOfDPP[i][j][k] in dml30_ModeSupportAndSystemConfigurationFull()
4933 * (v->RequiredPrefetchPixelDataBWLuma[i][j][k] * v->UrgentBurstFactorLumaPre[k] in dml30_ModeSupportAndSystemConfigurationFull()
4934 + v->RequiredPrefetchPixelDataBWChroma[i][j][k] in dml30_ModeSupportAndSystemConfigurationFull()
4935 * v->UrgentBurstFactorChromaPre[k]) in dml30_ModeSupportAndSystemConfigurationFull()
4936 + v->cursor_bw_pre[k] * v->UrgentBurstFactorCursorPre[k]); in dml30_ModeSupportAndSystemConfigurationFull()
4938 v->TotImmediateFlipBytes = 0.0; in dml30_ModeSupportAndSystemConfigurationFull()
4939 for (k = 0; k <= v->NumberOfActivePlanes - 1; k++) { in dml30_ModeSupportAndSystemConfigurationFull()
4940v->TotImmediateFlipBytes = v->TotImmediateFlipBytes + v->NoOfDPP[i][j][k] * (v->PDEAndMetaPTEBytes… in dml30_ModeSupportAndSystemConfigurationFull()
4941 + v->MetaRowBytes[i][j][k] + v->DPTEBytesPerRow[i][j][k]); in dml30_ModeSupportAndSystemConfigurationFull()
4944 for (k = 0; k <= v->NumberOfActivePlanes - 1; k++) { in dml30_ModeSupportAndSystemConfigurationFull()
4947 v->PercentOfIdealDRAMFabricAndSDPPortBWReceivedAfterUrgLatencyPixelMixedWithVMData, in dml30_ModeSupportAndSystemConfigurationFull()
4948 v->PercentOfIdealDRAMFabricAndSDPPortBWReceivedAfterUrgLatencyVMDataOnly, in dml30_ModeSupportAndSystemConfigurationFull()
4949 v->ExtraLatency, in dml30_ModeSupportAndSystemConfigurationFull()
4950 v->UrgLatency[i], in dml30_ModeSupportAndSystemConfigurationFull()
4951 v->GPUVMMaxPageTableLevels, in dml30_ModeSupportAndSystemConfigurationFull()
4952 v->HostVMEnable, in dml30_ModeSupportAndSystemConfigurationFull()
4953 v->HostVMMaxNonCachedPageTableLevels, in dml30_ModeSupportAndSystemConfigurationFull()
4954 v->GPUVMEnable, in dml30_ModeSupportAndSystemConfigurationFull()
4955 v->HostVMMinPageSize, in dml30_ModeSupportAndSystemConfigurationFull()
4956 v->PDEAndMetaPTEBytesPerFrame[i][j][k], in dml30_ModeSupportAndSystemConfigurationFull()
4957 v->MetaRowBytes[i][j][k], in dml30_ModeSupportAndSystemConfigurationFull()
4958 v->DPTEBytesPerRow[i][j][k], in dml30_ModeSupportAndSystemConfigurationFull()
4959 v->BandwidthAvailableForImmediateFlip, in dml30_ModeSupportAndSystemConfigurationFull()
4960 v->TotImmediateFlipBytes, in dml30_ModeSupportAndSystemConfigurationFull()
4961 v->SourcePixelFormat[k], in dml30_ModeSupportAndSystemConfigurationFull()
4962 v->HTotal[k] / v->PixelClock[k], in dml30_ModeSupportAndSystemConfigurationFull()
4963 v->VRatio[k], in dml30_ModeSupportAndSystemConfigurationFull()
4964 v->VRatioChroma[k], in dml30_ModeSupportAndSystemConfigurationFull()
4965 v->Tno_bw[k], in dml30_ModeSupportAndSystemConfigurationFull()
4966 v->DCCEnable[k], in dml30_ModeSupportAndSystemConfigurationFull()
4967 v->dpte_row_height[k], in dml30_ModeSupportAndSystemConfigurationFull()
4968 v->meta_row_height[k], in dml30_ModeSupportAndSystemConfigurationFull()
4969 v->dpte_row_height_chroma[k], in dml30_ModeSupportAndSystemConfigurationFull()
4970 v->meta_row_height_chroma[k], in dml30_ModeSupportAndSystemConfigurationFull()
4971 &v->DestinationLinesToRequestVMInImmediateFlip[k], in dml30_ModeSupportAndSystemConfigurationFull()
4972 &v->DestinationLinesToRequestRowInImmediateFlip[k], in dml30_ModeSupportAndSystemConfigurationFull()
4973 &v->final_flip_bw[k], in dml30_ModeSupportAndSystemConfigurationFull()
4974 &v->ImmediateFlipSupportedForPipe[k]); in dml30_ModeSupportAndSystemConfigurationFull()
4976 v->total_dcn_read_bw_with_flip = 0.0; in dml30_ModeSupportAndSystemConfigurationFull()
4977 for (k = 0; k <= v->NumberOfActivePlanes - 1; k++) { in dml30_ModeSupportAndSystemConfigurationFull()
4978 v->total_dcn_read_bw_with_flip = v->total_dcn_read_bw_with_flip in dml30_ModeSupportAndSystemConfigurationFull()
4980 v->NoOfDPP[i][j][k] * v->prefetch_vmrow_bw[k], in dml30_ModeSupportAndSystemConfigurationFull()
4981 v->NoOfDPP[i][j][k] * v->final_flip_bw[k] + v->VActivePixelBandwidth[i][j][k] in dml30_ModeSupportAndSystemConfigurationFull()
4982 + v->VActiveCursorBandwidth[i][j][k], in dml30_ModeSupportAndSystemConfigurationFull()
4983 v->NoOfDPP[i][j][k] in dml30_ModeSupportAndSystemConfigurationFull()
4984 * (v->final_flip_bw[k] in dml30_ModeSupportAndSystemConfigurationFull()
4985 + v->RequiredPrefetchPixelDataBWLuma[i][j][k] in dml30_ModeSupportAndSystemConfigurationFull()
4986 * v->UrgentBurstFactorLumaPre[k] in dml30_ModeSupportAndSystemConfigurationFull()
4987 + v->RequiredPrefetchPixelDataBWChroma[i][j][k] in dml30_ModeSupportAndSystemConfigurationFull()
4988 * v->UrgentBurstFactorChromaPre[k]) in dml30_ModeSupportAndSystemConfigurationFull()
4989 + v->cursor_bw_pre[k] * v->UrgentBurstFactorCursorPre[k]); in dml30_ModeSupportAndSystemConfigurationFull()
4991 v->ImmediateFlipSupportedForState[i][j] = true; in dml30_ModeSupportAndSystemConfigurationFull()
4992 if (v->total_dcn_read_bw_with_flip > v->ReturnBWPerState[i][j]) { in dml30_ModeSupportAndSystemConfigurationFull()
4993 v->ImmediateFlipSupportedForState[i][j] = false; in dml30_ModeSupportAndSystemConfigurationFull()
4995 for (k = 0; k <= v->NumberOfActivePlanes - 1; k++) { in dml30_ModeSupportAndSystemConfigurationFull()
4996 if (v->ImmediateFlipSupportedForPipe[k] == false) { in dml30_ModeSupportAndSystemConfigurationFull()
4997 v->ImmediateFlipSupportedForState[i][j] = false; in dml30_ModeSupportAndSystemConfigurationFull()
5001 v->ImmediateFlipSupportedForState[i][j] = false; in dml30_ModeSupportAndSystemConfigurationFull()
5003 if (v->MaxVStartup <= 13 || v->AnyLinesForVMOrRowTooLarge == false) { in dml30_ModeSupportAndSystemConfigurationFull()
5004 v->NextMaxVStartup = v->MaxMaxVStartup[i][j]; in dml30_ModeSupportAndSystemConfigurationFull()
5007 v->NextMaxVStartup = v->NextMaxVStartup - 1; in dml30_ModeSupportAndSystemConfigurationFull()
5009 …} while (!((v->PrefetchSupported[i][j] == true && v->DynamicMetadataSupported[i][j] == true && v->… in dml30_ModeSupportAndSystemConfigurationFull()
5010 && ((v->HostVMEnable == false && v->ImmediateFlipRequirement[0] != dm_immediate_flip_required) in dml30_ModeSupportAndSystemConfigurationFull()
5011 || v->ImmediateFlipSupportedForState[i][j] == true)) in dml30_ModeSupportAndSystemConfigurationFull()
5012 … || (v->NextMaxVStartup == v->MaxMaxVStartup[i][j] && NextPrefetchModeState > MaxPrefetchMode))); in dml30_ModeSupportAndSystemConfigurationFull()
5016 v->PrefetchModePerState[i][j], in dml30_ModeSupportAndSystemConfigurationFull()
5017 v->NumberOfActivePlanes, in dml30_ModeSupportAndSystemConfigurationFull()
5018 v->MaxLineBufferLines, in dml30_ModeSupportAndSystemConfigurationFull()
5019 v->LineBufferSize, in dml30_ModeSupportAndSystemConfigurationFull()
5020 v->DPPOutputBufferPixels, in dml30_ModeSupportAndSystemConfigurationFull()
5021 v->DETBufferSizeInKByte[0], in dml30_ModeSupportAndSystemConfigurationFull()
5022 v->WritebackInterfaceBufferSize, in dml30_ModeSupportAndSystemConfigurationFull()
5023 v->DCFCLKState[i][j], in dml30_ModeSupportAndSystemConfigurationFull()
5024 v->ReturnBWPerState[i][j], in dml30_ModeSupportAndSystemConfigurationFull()
5025 v->GPUVMEnable, in dml30_ModeSupportAndSystemConfigurationFull()
5026 v->dpte_group_bytes, in dml30_ModeSupportAndSystemConfigurationFull()
5027 v->MetaChunkSize, in dml30_ModeSupportAndSystemConfigurationFull()
5028 v->UrgLatency[i], in dml30_ModeSupportAndSystemConfigurationFull()
5029 v->ExtraLatency, in dml30_ModeSupportAndSystemConfigurationFull()
5030 v->WritebackLatency, in dml30_ModeSupportAndSystemConfigurationFull()
5031 v->WritebackChunkSize, in dml30_ModeSupportAndSystemConfigurationFull()
5032 v->SOCCLKPerState[i], in dml30_ModeSupportAndSystemConfigurationFull()
5033 v->FinalDRAMClockChangeLatency, in dml30_ModeSupportAndSystemConfigurationFull()
5034 v->SRExitTime, in dml30_ModeSupportAndSystemConfigurationFull()
5035 v->SREnterPlusExitTime, in dml30_ModeSupportAndSystemConfigurationFull()
5036 v->ProjectedDCFCLKDeepSleep[i][j], in dml30_ModeSupportAndSystemConfigurationFull()
5037 v->NoOfDPPThisState, in dml30_ModeSupportAndSystemConfigurationFull()
5038 v->DCCEnable, in dml30_ModeSupportAndSystemConfigurationFull()
5039 v->RequiredDPPCLKThisState, in dml30_ModeSupportAndSystemConfigurationFull()
5040 v->DETBufferSizeYThisState, in dml30_ModeSupportAndSystemConfigurationFull()
5041 v->DETBufferSizeCThisState, in dml30_ModeSupportAndSystemConfigurationFull()
5042 v->SwathHeightYThisState, in dml30_ModeSupportAndSystemConfigurationFull()
5043 v->SwathHeightCThisState, in dml30_ModeSupportAndSystemConfigurationFull()
5044 v->LBBitPerPixel, in dml30_ModeSupportAndSystemConfigurationFull()
5045 v->SwathWidthYThisState, in dml30_ModeSupportAndSystemConfigurationFull()
5046 v->SwathWidthCThisState, in dml30_ModeSupportAndSystemConfigurationFull()
5047 v->HRatio, in dml30_ModeSupportAndSystemConfigurationFull()
5048 v->HRatioChroma, in dml30_ModeSupportAndSystemConfigurationFull()
5049 v->vtaps, in dml30_ModeSupportAndSystemConfigurationFull()
5050 v->VTAPsChroma, in dml30_ModeSupportAndSystemConfigurationFull()
5051 v->VRatio, in dml30_ModeSupportAndSystemConfigurationFull()
5052 v->VRatioChroma, in dml30_ModeSupportAndSystemConfigurationFull()
5053 v->HTotal, in dml30_ModeSupportAndSystemConfigurationFull()
5054 v->PixelClock, in dml30_ModeSupportAndSystemConfigurationFull()
5055 v->BlendingAndTiming, in dml30_ModeSupportAndSystemConfigurationFull()
5056 v->BytePerPixelInDETY, in dml30_ModeSupportAndSystemConfigurationFull()
5057 v->BytePerPixelInDETC, in dml30_ModeSupportAndSystemConfigurationFull()
5058 v->DSTXAfterScaler, in dml30_ModeSupportAndSystemConfigurationFull()
5059 v->DSTYAfterScaler, in dml30_ModeSupportAndSystemConfigurationFull()
5060 v->WritebackEnable, in dml30_ModeSupportAndSystemConfigurationFull()
5061 v->WritebackPixelFormat, in dml30_ModeSupportAndSystemConfigurationFull()
5062 v->WritebackDestinationWidth, in dml30_ModeSupportAndSystemConfigurationFull()
5063 v->WritebackDestinationHeight, in dml30_ModeSupportAndSystemConfigurationFull()
5064 v->WritebackSourceHeight, in dml30_ModeSupportAndSystemConfigurationFull()
5065 &v->DRAMClockChangeSupport[i][j], in dml30_ModeSupportAndSystemConfigurationFull()
5066 &v->UrgentWatermark, in dml30_ModeSupportAndSystemConfigurationFull()
5067 &v->WritebackUrgentWatermark, in dml30_ModeSupportAndSystemConfigurationFull()
5068 &v->DRAMClockChangeWatermark, in dml30_ModeSupportAndSystemConfigurationFull()
5069 &v->WritebackDRAMClockChangeWatermark, in dml30_ModeSupportAndSystemConfigurationFull()
5070 &v->StutterExitWatermark, in dml30_ModeSupportAndSystemConfigurationFull()
5071 &v->StutterEnterPlusExitWatermark, in dml30_ModeSupportAndSystemConfigurationFull()
5072 &v->MinActiveDRAMClockChangeLatencySupported); in dml30_ModeSupportAndSystemConfigurationFull()
5078 for (i = 0; i < v->soc.num_states; i++) { in dml30_ModeSupportAndSystemConfigurationFull()
5080 v->PTEBufferSizeNotExceeded[i][j] = true; in dml30_ModeSupportAndSystemConfigurationFull()
5081 for (k = 0; k <= v->NumberOfActivePlanes - 1; k++) { in dml30_ModeSupportAndSystemConfigurationFull()
5082 …if (v->PTEBufferSizeNotExceededY[i][j][k] == false || v->PTEBufferSizeNotExceededC[i][j][k] == fal… in dml30_ModeSupportAndSystemConfigurationFull()
5083 v->PTEBufferSizeNotExceeded[i][j] = false; in dml30_ModeSupportAndSystemConfigurationFull()
5090 v->CursorSupport = true; in dml30_ModeSupportAndSystemConfigurationFull()
5091 for (k = 0; k <= v->NumberOfActivePlanes - 1; k++) { in dml30_ModeSupportAndSystemConfigurationFull()
5092 if (v->CursorWidth[k][0] > 0.0) { in dml30_ModeSupportAndSystemConfigurationFull()
5093 if (v->CursorBPP[k][0] == 64 && v->Cursor64BppSupport == false) { in dml30_ModeSupportAndSystemConfigurationFull()
5094 v->CursorSupport = false; in dml30_ModeSupportAndSystemConfigurationFull()
5100 v->PitchSupport = true; in dml30_ModeSupportAndSystemConfigurationFull()
5101 for (k = 0; k <= v->NumberOfActivePlanes - 1; k++) { in dml30_ModeSupportAndSystemConfigurationFull()
5102 v->AlignedYPitch[k] = dml_ceil(dml_max(v->PitchY[k], v->SurfaceWidthY[k]), v->MacroTileWidthY[k]); in dml30_ModeSupportAndSystemConfigurationFull()
5103 if (v->DCCEnable[k] == true) { in dml30_ModeSupportAndSystemConfigurationFull()
5104v->AlignedDCCMetaPitchY[k] = dml_ceil(dml_max(v->DCCMetaPitchY[k], v->SurfaceWidthY[k]), 64.0 * v-… in dml30_ModeSupportAndSystemConfigurationFull()
5106 v->AlignedDCCMetaPitchY[k] = v->DCCMetaPitchY[k]; in dml30_ModeSupportAndSystemConfigurationFull()
5108 …if (v->SourcePixelFormat[k] != dm_444_64 && v->SourcePixelFormat[k] != dm_444_32 && v->SourcePixel… in dml30_ModeSupportAndSystemConfigurationFull()
5109 && v->SourcePixelFormat[k] != dm_rgbe && v->SourcePixelFormat[k] != dm_mono_8) { in dml30_ModeSupportAndSystemConfigurationFull()
5110v->AlignedCPitch[k] = dml_ceil(dml_max(v->PitchC[k], v->SurfaceWidthC[k]), v->MacroTileWidthC[k]); in dml30_ModeSupportAndSystemConfigurationFull()
5111 if (v->DCCEnable[k] == true) { in dml30_ModeSupportAndSystemConfigurationFull()
5112v->AlignedDCCMetaPitchC[k] = dml_ceil(dml_max(v->DCCMetaPitchC[k], v->SurfaceWidthC[k]), 64.0 * v-… in dml30_ModeSupportAndSystemConfigurationFull()
5114 v->AlignedDCCMetaPitchC[k] = v->DCCMetaPitchC[k]; in dml30_ModeSupportAndSystemConfigurationFull()
5117 v->AlignedCPitch[k] = v->PitchC[k]; in dml30_ModeSupportAndSystemConfigurationFull()
5118 v->AlignedDCCMetaPitchC[k] = v->DCCMetaPitchC[k]; in dml30_ModeSupportAndSystemConfigurationFull()
5120 …if (v->AlignedYPitch[k] > v->PitchY[k] || v->AlignedCPitch[k] > v->PitchC[k] || v->AlignedDCCMetaP… in dml30_ModeSupportAndSystemConfigurationFull()
5121 || v->AlignedDCCMetaPitchC[k] > v->DCCMetaPitchC[k]) { in dml30_ModeSupportAndSystemConfigurationFull()
5122 v->PitchSupport = false; in dml30_ModeSupportAndSystemConfigurationFull()
5126 for (k = 0; k <= v->NumberOfActivePlanes - 1; k++) { in dml30_ModeSupportAndSystemConfigurationFull()
5127 if (v->ViewportWidth[k] > v->SurfaceWidthY[k] || v->ViewportHeight[k] > v->SurfaceHeightY[k]) in dml30_ModeSupportAndSystemConfigurationFull()
5130 …if (v->SourcePixelFormat[k] != dm_444_64 && v->SourcePixelFormat[k] != dm_444_32 && v->SourcePixel… in dml30_ModeSupportAndSystemConfigurationFull()
5131 …&& v->SourcePixelFormat[k] != dm_444_16 && v->SourcePixelFormat[k] != dm_444_8 && v->SourcePixelFo… in dml30_ModeSupportAndSystemConfigurationFull()
5132 …if (v->ViewportWidthChroma[k] > v->SurfaceWidthC[k] || v->ViewportHeightChroma[k] > v->SurfaceHeig… in dml30_ModeSupportAndSystemConfigurationFull()
5139 for (i = v->soc.num_states - 1; i >= 0; i--) { in dml30_ModeSupportAndSystemConfigurationFull()
5141 …if (v->ScaleRatioAndTapsSupport == 1 && v->SourceFormatPixelAndScanSupport == 1 && v->ViewportSize… in dml30_ModeSupportAndSystemConfigurationFull()
5142 && v->DIOSupport[i] == 1 && v->ODMCombine4To1SupportCheckOK[i] == 1 in dml30_ModeSupportAndSystemConfigurationFull()
5143 && v->NotEnoughDSCUnits[i] == 0 in dml30_ModeSupportAndSystemConfigurationFull()
5144 && v->DTBCLKRequiredMoreThanSupported[i] == 0 in dml30_ModeSupportAndSystemConfigurationFull()
5145 …&& v->ROBSupport[i][j] == 1 && v->DISPCLK_DPPCLK_Support[i][j] == 1 && v->TotalAvailablePipesSuppo… in dml30_ModeSupportAndSystemConfigurationFull()
5147 …&& v->WritebackLatencySupport == 1 && v->WritebackScaleRatioAndTapsSupport == 1 && v->CursorSuppor… in dml30_ModeSupportAndSystemConfigurationFull()
5148 …&& ViewportExceedsSurface == 0 && v->PrefetchSupported[i][j] == 1 && v->DynamicMetadataSupported[i… in dml30_ModeSupportAndSystemConfigurationFull()
5149 && v->TotalVerticalActiveBandwidthSupport[i][j] == 1 && v->VRatioInPrefetchSupported[i][j] == 1 in dml30_ModeSupportAndSystemConfigurationFull()
5150 && v->PTEBufferSizeNotExceeded[i][j] == 1 && v->NonsupportedDSCInputBPC == 0 in dml30_ModeSupportAndSystemConfigurationFull()
5151 && ((v->HostVMEnable == 0 && v->ImmediateFlipRequirement[0] != dm_immediate_flip_required) in dml30_ModeSupportAndSystemConfigurationFull()
5152 || v->ImmediateFlipSupportedForState[i][j] == true)) { in dml30_ModeSupportAndSystemConfigurationFull()
5153 v->ModeSupport[i][j] = true; in dml30_ModeSupportAndSystemConfigurationFull()
5155 v->ModeSupport[i][j] = false; in dml30_ModeSupportAndSystemConfigurationFull()
5161 for (i = v->soc.num_states; i >= 0; i--) { in dml30_ModeSupportAndSystemConfigurationFull()
5162 if (i == v->soc.num_states || v->ModeSupport[i][0] == true || v->ModeSupport[i][1] == true) { in dml30_ModeSupportAndSystemConfigurationFull()
5163 v->VoltageLevel = i; in dml30_ModeSupportAndSystemConfigurationFull()
5164 v->ModeIsSupported = v->ModeSupport[i][0] == true || v->ModeSupport[i][1] == true; in dml30_ModeSupportAndSystemConfigurationFull()
5165 if (v->ModeSupport[i][1] == true) { in dml30_ModeSupportAndSystemConfigurationFull()
5172 v->ImmediateFlipSupport = v->ImmediateFlipSupportedForState[v->VoltageLevel][MaximumMPCCombine]; in dml30_ModeSupportAndSystemConfigurationFull()
5173 for (k = 0; k <= v->NumberOfActivePlanes - 1; k++) { in dml30_ModeSupportAndSystemConfigurationFull()
5174 v->MPCCombineEnable[k] = v->MPCCombine[v->VoltageLevel][MaximumMPCCombine][k]; in dml30_ModeSupportAndSystemConfigurationFull()
5175 v->DPPPerPlane[k] = v->NoOfDPP[v->VoltageLevel][MaximumMPCCombine][k]; in dml30_ModeSupportAndSystemConfigurationFull()
5177 v->DCFCLK = v->DCFCLKState[v->VoltageLevel][MaximumMPCCombine]; in dml30_ModeSupportAndSystemConfigurationFull()
5178 v->DRAMSpeed = v->DRAMSpeedPerState[v->VoltageLevel]; in dml30_ModeSupportAndSystemConfigurationFull()
5179 v->FabricClock = v->FabricClockPerState[v->VoltageLevel]; in dml30_ModeSupportAndSystemConfigurationFull()
5180 v->SOCCLK = v->SOCCLKPerState[v->VoltageLevel]; in dml30_ModeSupportAndSystemConfigurationFull()
5181 v->ReturnBW = v->ReturnBWPerState[v->VoltageLevel][MaximumMPCCombine]; in dml30_ModeSupportAndSystemConfigurationFull()
5182 v->maxMpcComb = MaximumMPCCombine; in dml30_ModeSupportAndSystemConfigurationFull()
6497 struct vba_vars_st *v, in UseMinimumDCFCLK() argument
6506 …NormalEfficiency = (v->HostVMEnable == true ? v->PercentOfIdealDRAMFabricAndSDPPortBWReceivedAfte… in UseMinimumDCFCLK()
6507 : v->PercentOfIdealDRAMFabricAndSDPPortBWReceivedAfterUrgLatencyPixelDataOnly) / 100.0; in UseMinimumDCFCLK()
6508 …PTEEfficiency = (v->HostVMEnable == true ? v->PercentOfIdealDRAMFabricAndSDPPortBWReceivedAfterUr… in UseMinimumDCFCLK()
6509 / v->PercentOfIdealDRAMFabricAndSDPPortBWReceivedAfterUrgLatencyPixelMixedWithVMData : 1.0); in UseMinimumDCFCLK()
6527 for (k = 0; k < v->NumberOfActivePlanes; ++k) { in UseMinimumDCFCLK()
6529 … + v->NoOfDPP[i][j][k] * v->DPTEBytesPerRow[i][j][k] / (15.75 * v->HTotal[k] / v->PixelClock[k]); in UseMinimumDCFCLK()
6532 for (k = 0; k <= v->NumberOfActivePlanes - 1; ++k) { in UseMinimumDCFCLK()
6533 NoOfDPPState[k] = v->NoOfDPP[i][j][k]; in UseMinimumDCFCLK()
6536 …MinimumTWait = CalculateTWait(MaxPrefetchMode, v->FinalDRAMClockChangeLatency, v->UrgLatency[i], v in UseMinimumDCFCLK()
6537 …NonDPTEBandwidth = v->TotalVActivePixelBandwidth[i][j] + v->TotalVActiveCursorBandwidth[i][j] + v-… in UseMinimumDCFCLK()
6538 …DPTEBandwidth = (v->HostVMEnable == true || v->ImmediateFlipRequirement[0] == dm_immediate_flip_r… in UseMinimumDCFCLK()
6539 TotalMaxPrefetchFlipDPTERowBandwidth[i][j] : v->TotalDPTERowBandwidth[i][j]; in UseMinimumDCFCLK()
6540 DCFCLKRequiredForAverageBandwidth = dml_max3(v->ProjectedDCFCLKDeepSleep[i][j], in UseMinimumDCFCLK()
6541 …(NonDPTEBandwidth + v->TotalDPTERowBandwidth[i][j]) / v->ReturnBusWidth / (v->MaxAveragePercentOfI… in UseMinimumDCFCLK()
6542 (NonDPTEBandwidth + DPTEBandwidth / PTEEfficiency) / NormalEfficiency / v->ReturnBusWidth); in UseMinimumDCFCLK()
6544 …= CalculateExtraLatencyBytes(ReorderingBytes, v->TotalNumberOfActiveDPP[i][j], v->PixelChunkSizeIn… in UseMinimumDCFCLK()
6545v->MetaChunkSize, v->GPUVMEnable, v->HostVMEnable, v->NumberOfActivePlanes, NoOfDPPState, v->dpte_… in UseMinimumDCFCLK()
6546v->PercentOfIdealDRAMFabricAndSDPPortBWReceivedAfterUrgLatencyPixelMixedWithVMData, v->PercentOfId… in UseMinimumDCFCLK()
6547 v->HostVMMinPageSize, v->HostVMMaxNonCachedPageTableLevels); in UseMinimumDCFCLK()
6548 …ExtraLatencyCycles = v->RoundTripPingLatencyCycles + 32 + ExtraLatencyBytes / NormalEfficiency / v in UseMinimumDCFCLK()
6549 for (k = 0; k < v->NumberOfActivePlanes; ++k) { in UseMinimumDCFCLK()
6554 …elDCFCLKCyclesRequiredInPrefetch[k] = (v->PrefetchLinesY[i][j][k] * v->swath_width_luma_ub_all_sta… in UseMinimumDCFCLK()
6555 …+ v->PrefetchLinesC[i][j][k] * v->swath_width_chroma_ub_all_states[i][j][k] * v->BytePerPixelC[k])… in UseMinimumDCFCLK()
6556 …DCFCLKCyclesRequiredInPrefetch = 2 * ExtraLatencyCycles / NoOfDPPState[k] + v->PDEAndMetaPTEBytesP… in UseMinimumDCFCLK()
6557 …/ NormalEfficiency / v->ReturnBusWidth * (v->GPUVMMaxPageTableLevels > 2 ? 1 : 0) + 2 * v->DPTEBy… in UseMinimumDCFCLK()
6558 …/ NormalEfficiency / v->ReturnBusWidth + 2 * v->MetaRowBytes[i][j][k] / NormalEfficiency / v->Retu… in UseMinimumDCFCLK()
6559 …PrefetchPixelLinesTime[k] = dml_max(v->PrefetchLinesY[i][j][k], v->PrefetchLinesC[i][j][k]) * v->H… in UseMinimumDCFCLK()
6560 …refetchBWAcceleration = (v->VActivePixelBandwidth[i][j][k] + v->VActiveCursorBandwidth[i][j][k]) /… in UseMinimumDCFCLK()
6561 …DynamicMetadataVMExtraLatency[k] = (v->GPUVMEnable == true && v->DynamicMetadataEnable[k] == true … in UseMinimumDCFCLK()
6562v->UrgLatency[i] * v->GPUVMMaxPageTableLevels * (v->HostVMEnable == true ? v->HostVMMaxNonCachedP… in UseMinimumDCFCLK()
6563 …me = (v->MaximumVStartup[i][j][k] - 1) * v->HTotal[k] / v->PixelClock[k] - MinimumTWait - v->UrgLa… in UseMinimumDCFCLK()
6564 …: v->GPUVMMaxPageTableLevels - 2) * (v->HostVMEnable == true ? v->HostVMMaxNonCachedPageTableLevel… in UseMinimumDCFCLK()
6571 if (v->HostVMEnable == true || v->ImmediateFlipRequirement[0] == dm_immediate_flip_required) { in UseMinimumDCFCLK()
6573 + NoOfDPPState[k] * DPTEBandwidth / PTEEfficiency / NormalEfficiency / v->ReturnBusWidth; in UseMinimumDCFCLK()
6576 DCFCLKRequiredForPeakBandwidthPerPlane[k] = v->DCFCLKPerState[i]; in UseMinimumDCFCLK()
6578 if (v->DynamicMetadataEnable[k] == true) { in UseMinimumDCFCLK()
6586 v->MaxInterDCNTileRepeaters, in UseMinimumDCFCLK()
6587 v->RequiredDPPCLK[i][j][k], in UseMinimumDCFCLK()
6588 v->RequiredDISPCLK[i][j], in UseMinimumDCFCLK()
6589 v->ProjectedDCFCLKDeepSleep[i][j], in UseMinimumDCFCLK()
6590 v->PixelClock[k], in UseMinimumDCFCLK()
6591 v->HTotal[k], in UseMinimumDCFCLK()
6592 v->VTotal[k] - v->VActive[k], in UseMinimumDCFCLK()
6593 v->DynamicMetadataTransmittedBytes[k], in UseMinimumDCFCLK()
6594 v->DynamicMetadataLinesBeforeActiveRequired[k], in UseMinimumDCFCLK()
6595 v->Interlace[k], in UseMinimumDCFCLK()
6596 v->ProgressiveToInterlaceUnitInOPP, in UseMinimumDCFCLK()
6601 …AllowedTimeForUrgentExtraLatency = v->MaximumVStartup[i][j][k] * v->HTotal[k] / v->PixelClock[k] -… in UseMinimumDCFCLK()
6607 DCFCLKRequiredForPeakBandwidthPerPlane[k] = v->DCFCLKPerState[i]; in UseMinimumDCFCLK()
6612 for (k = 0; k <= v->NumberOfActivePlanes - 1; ++k) { in UseMinimumDCFCLK()
6615 MinimumTvmPlus2Tr0 = v->UrgLatency[i] * (v->GPUVMEnable == true ? (v->HostVMEnable == true ? in UseMinimumDCFCLK()
6616 …(v->GPUVMMaxPageTableLevels + 2) * (v->HostVMMaxNonCachedPageTableLevels + 1) - 1 : v->GPUVMMaxPag… in UseMinimumDCFCLK()
6617 for (k = 0; k < v->NumberOfActivePlanes; ++k) { in UseMinimumDCFCLK()
6619 …MaximumTvmPlus2Tr0PlusTsw = (v->MaximumVStartup[i][j][k] - 2) * v->HTotal[k] / v->PixelClock[k] - … in UseMinimumDCFCLK()
6621 DCFCLKRequiredForPeakBandwidth = v->DCFCLKPerState[i]; in UseMinimumDCFCLK()
6628v->DCFCLKState[i][j] = dml_min(v->DCFCLKPerState[i], 1.05 * (1 + mode_lib->vba.PercentMarginOverMi… in UseMinimumDCFCLK()