Commit c3b3f9ba authored by Alex Deucher's avatar Alex Deucher

drm/amd/display: reduce stack for dml32_CalculateVMRowAndSwath

Move stack variables to dummy structure.
Reviewed-by: default avatarRodrigo Siqueira <Rodrigo.Siqueira@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
Cc: Stephen Rothwell <sfr@canb.auug.org.au>
parent bac4b41d
...@@ -461,6 +461,7 @@ static void DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerforman ...@@ -461,6 +461,7 @@ static void DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerforman
{ {
dml32_CalculateVMRowAndSwath( dml32_CalculateVMRowAndSwath(
&v->dummy_vars.dml32_CalculateVMRowAndSwath,
mode_lib->vba.NumberOfActiveSurfaces, mode_lib->vba.NumberOfActiveSurfaces,
v->dummy_vars.DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation.SurfaceParameters, v->dummy_vars.DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation.SurfaceParameters,
v->SurfaceSizeInMALL, v->SurfaceSizeInMALL,
...@@ -2676,6 +2677,7 @@ void dml32_ModeSupportAndSystemConfigurationFull(struct display_mode_lib *mode_l ...@@ -2676,6 +2677,7 @@ void dml32_ModeSupportAndSystemConfigurationFull(struct display_mode_lib *mode_l
{ {
dml32_CalculateVMRowAndSwath( dml32_CalculateVMRowAndSwath(
&v->dummy_vars.dml32_CalculateVMRowAndSwath,
mode_lib->vba.NumberOfActiveSurfaces, mode_lib->vba.NumberOfActiveSurfaces,
v->dummy_vars.dml32_ModeSupportAndSystemConfigurationFull.SurfParameters, v->dummy_vars.dml32_ModeSupportAndSystemConfigurationFull.SurfParameters,
mode_lib->vba.SurfaceSizeInMALL, mode_lib->vba.SurfaceSizeInMALL,
......
...@@ -1867,6 +1867,7 @@ void dml32_CalculateSurfaceSizeInMall( ...@@ -1867,6 +1867,7 @@ void dml32_CalculateSurfaceSizeInMall(
} // CalculateSurfaceSizeInMall } // CalculateSurfaceSizeInMall
void dml32_CalculateVMRowAndSwath( void dml32_CalculateVMRowAndSwath(
struct dml32_CalculateVMRowAndSwath *st_vars,
unsigned int NumberOfActiveSurfaces, unsigned int NumberOfActiveSurfaces,
DmlPipe myPipe[], DmlPipe myPipe[],
unsigned int SurfaceSizeInMALL[], unsigned int SurfaceSizeInMALL[],
...@@ -1932,21 +1933,6 @@ void dml32_CalculateVMRowAndSwath( ...@@ -1932,21 +1933,6 @@ void dml32_CalculateVMRowAndSwath(
unsigned int BIGK_FRAGMENT_SIZE[]) unsigned int BIGK_FRAGMENT_SIZE[])
{ {
unsigned int k; unsigned int k;
unsigned int PTEBufferSizeInRequestsForLuma[DC__NUM_DPP__MAX];
unsigned int PTEBufferSizeInRequestsForChroma[DC__NUM_DPP__MAX];
unsigned int PDEAndMetaPTEBytesFrameY;
unsigned int PDEAndMetaPTEBytesFrameC;
unsigned int MetaRowByteY[DC__NUM_DPP__MAX];
unsigned int MetaRowByteC[DC__NUM_DPP__MAX];
unsigned int PixelPTEBytesPerRowY[DC__NUM_DPP__MAX];
unsigned int PixelPTEBytesPerRowC[DC__NUM_DPP__MAX];
unsigned int PixelPTEBytesPerRowY_one_row_per_frame[DC__NUM_DPP__MAX];
unsigned int PixelPTEBytesPerRowC_one_row_per_frame[DC__NUM_DPP__MAX];
unsigned int dpte_row_width_luma_ub_one_row_per_frame[DC__NUM_DPP__MAX];
unsigned int dpte_row_height_luma_one_row_per_frame[DC__NUM_DPP__MAX];
unsigned int dpte_row_width_chroma_ub_one_row_per_frame[DC__NUM_DPP__MAX];
unsigned int dpte_row_height_chroma_one_row_per_frame[DC__NUM_DPP__MAX];
bool one_row_per_frame_fits_in_buffer[DC__NUM_DPP__MAX];
for (k = 0; k < NumberOfActiveSurfaces; ++k) { for (k = 0; k < NumberOfActiveSurfaces; ++k) {
if (HostVMEnable == true) { if (HostVMEnable == true) {
...@@ -1968,15 +1954,15 @@ void dml32_CalculateVMRowAndSwath( ...@@ -1968,15 +1954,15 @@ void dml32_CalculateVMRowAndSwath(
myPipe[k].SourcePixelFormat == dm_rgbe_alpha) { myPipe[k].SourcePixelFormat == dm_rgbe_alpha) {
if ((myPipe[k].SourcePixelFormat == dm_420_10 || myPipe[k].SourcePixelFormat == dm_420_12) && if ((myPipe[k].SourcePixelFormat == dm_420_10 || myPipe[k].SourcePixelFormat == dm_420_12) &&
!IsVertical(myPipe[k].SourceRotation)) { !IsVertical(myPipe[k].SourceRotation)) {
PTEBufferSizeInRequestsForLuma[k] = st_vars->PTEBufferSizeInRequestsForLuma[k] =
(PTEBufferSizeInRequestsLuma + PTEBufferSizeInRequestsChroma) / 2; (PTEBufferSizeInRequestsLuma + PTEBufferSizeInRequestsChroma) / 2;
PTEBufferSizeInRequestsForChroma[k] = PTEBufferSizeInRequestsForLuma[k]; st_vars->PTEBufferSizeInRequestsForChroma[k] = st_vars->PTEBufferSizeInRequestsForLuma[k];
} else { } else {
PTEBufferSizeInRequestsForLuma[k] = PTEBufferSizeInRequestsLuma; st_vars->PTEBufferSizeInRequestsForLuma[k] = PTEBufferSizeInRequestsLuma;
PTEBufferSizeInRequestsForChroma[k] = PTEBufferSizeInRequestsChroma; st_vars->PTEBufferSizeInRequestsForChroma[k] = PTEBufferSizeInRequestsChroma;
} }
PDEAndMetaPTEBytesFrameC = dml32_CalculateVMAndRowBytes( st_vars->PDEAndMetaPTEBytesFrameC = dml32_CalculateVMAndRowBytes(
myPipe[k].ViewportStationary, myPipe[k].ViewportStationary,
myPipe[k].DCCEnable, myPipe[k].DCCEnable,
myPipe[k].DPPPerSurface, myPipe[k].DPPPerSurface,
...@@ -1996,21 +1982,21 @@ void dml32_CalculateVMRowAndSwath( ...@@ -1996,21 +1982,21 @@ void dml32_CalculateVMRowAndSwath(
GPUVMMaxPageTableLevels, GPUVMMaxPageTableLevels,
GPUVMMinPageSizeKBytes[k], GPUVMMinPageSizeKBytes[k],
HostVMMinPageSize, HostVMMinPageSize,
PTEBufferSizeInRequestsForChroma[k], st_vars->PTEBufferSizeInRequestsForChroma[k],
myPipe[k].PitchC, myPipe[k].PitchC,
myPipe[k].DCCMetaPitchC, myPipe[k].DCCMetaPitchC,
myPipe[k].BlockWidthC, myPipe[k].BlockWidthC,
myPipe[k].BlockHeightC, myPipe[k].BlockHeightC,
/* Output */ /* Output */
&MetaRowByteC[k], &st_vars->MetaRowByteC[k],
&PixelPTEBytesPerRowC[k], &st_vars->PixelPTEBytesPerRowC[k],
&dpte_row_width_chroma_ub[k], &dpte_row_width_chroma_ub[k],
&dpte_row_height_chroma[k], &dpte_row_height_chroma[k],
&dpte_row_height_linear_chroma[k], &dpte_row_height_linear_chroma[k],
&PixelPTEBytesPerRowC_one_row_per_frame[k], &st_vars->PixelPTEBytesPerRowC_one_row_per_frame[k],
&dpte_row_width_chroma_ub_one_row_per_frame[k], &st_vars->dpte_row_width_chroma_ub_one_row_per_frame[k],
&dpte_row_height_chroma_one_row_per_frame[k], &st_vars->dpte_row_height_chroma_one_row_per_frame[k],
&meta_req_width_chroma[k], &meta_req_width_chroma[k],
&meta_req_height_chroma[k], &meta_req_height_chroma[k],
&meta_row_width_chroma[k], &meta_row_width_chroma[k],
...@@ -2038,19 +2024,19 @@ void dml32_CalculateVMRowAndSwath( ...@@ -2038,19 +2024,19 @@ void dml32_CalculateVMRowAndSwath(
&VInitPreFillC[k], &VInitPreFillC[k],
&MaxNumSwathC[k]); &MaxNumSwathC[k]);
} else { } else {
PTEBufferSizeInRequestsForLuma[k] = PTEBufferSizeInRequestsLuma + PTEBufferSizeInRequestsChroma; st_vars->PTEBufferSizeInRequestsForLuma[k] = PTEBufferSizeInRequestsLuma + PTEBufferSizeInRequestsChroma;
PTEBufferSizeInRequestsForChroma[k] = 0; st_vars->PTEBufferSizeInRequestsForChroma[k] = 0;
PixelPTEBytesPerRowC[k] = 0; st_vars->PixelPTEBytesPerRowC[k] = 0;
PDEAndMetaPTEBytesFrameC = 0; st_vars->PDEAndMetaPTEBytesFrameC = 0;
MetaRowByteC[k] = 0; st_vars->MetaRowByteC[k] = 0;
MaxNumSwathC[k] = 0; MaxNumSwathC[k] = 0;
PrefetchSourceLinesC[k] = 0; PrefetchSourceLinesC[k] = 0;
dpte_row_height_chroma_one_row_per_frame[k] = 0; st_vars->dpte_row_height_chroma_one_row_per_frame[k] = 0;
dpte_row_width_chroma_ub_one_row_per_frame[k] = 0; st_vars->dpte_row_width_chroma_ub_one_row_per_frame[k] = 0;
PixelPTEBytesPerRowC_one_row_per_frame[k] = 0; st_vars->PixelPTEBytesPerRowC_one_row_per_frame[k] = 0;
} }
PDEAndMetaPTEBytesFrameY = dml32_CalculateVMAndRowBytes( st_vars->PDEAndMetaPTEBytesFrameY = dml32_CalculateVMAndRowBytes(
myPipe[k].ViewportStationary, myPipe[k].ViewportStationary,
myPipe[k].DCCEnable, myPipe[k].DCCEnable,
myPipe[k].DPPPerSurface, myPipe[k].DPPPerSurface,
...@@ -2070,21 +2056,21 @@ void dml32_CalculateVMRowAndSwath( ...@@ -2070,21 +2056,21 @@ void dml32_CalculateVMRowAndSwath(
GPUVMMaxPageTableLevels, GPUVMMaxPageTableLevels,
GPUVMMinPageSizeKBytes[k], GPUVMMinPageSizeKBytes[k],
HostVMMinPageSize, HostVMMinPageSize,
PTEBufferSizeInRequestsForLuma[k], st_vars->PTEBufferSizeInRequestsForLuma[k],
myPipe[k].PitchY, myPipe[k].PitchY,
myPipe[k].DCCMetaPitchY, myPipe[k].DCCMetaPitchY,
myPipe[k].BlockWidthY, myPipe[k].BlockWidthY,
myPipe[k].BlockHeightY, myPipe[k].BlockHeightY,
/* Output */ /* Output */
&MetaRowByteY[k], &st_vars->MetaRowByteY[k],
&PixelPTEBytesPerRowY[k], &st_vars->PixelPTEBytesPerRowY[k],
&dpte_row_width_luma_ub[k], &dpte_row_width_luma_ub[k],
&dpte_row_height_luma[k], &dpte_row_height_luma[k],
&dpte_row_height_linear_luma[k], &dpte_row_height_linear_luma[k],
&PixelPTEBytesPerRowY_one_row_per_frame[k], &st_vars->PixelPTEBytesPerRowY_one_row_per_frame[k],
&dpte_row_width_luma_ub_one_row_per_frame[k], &st_vars->dpte_row_width_luma_ub_one_row_per_frame[k],
&dpte_row_height_luma_one_row_per_frame[k], &st_vars->dpte_row_height_luma_one_row_per_frame[k],
&meta_req_width[k], &meta_req_width[k],
&meta_req_height[k], &meta_req_height[k],
&meta_row_width[k], &meta_row_width[k],
...@@ -2112,19 +2098,19 @@ void dml32_CalculateVMRowAndSwath( ...@@ -2112,19 +2098,19 @@ void dml32_CalculateVMRowAndSwath(
&VInitPreFillY[k], &VInitPreFillY[k],
&MaxNumSwathY[k]); &MaxNumSwathY[k]);
PDEAndMetaPTEBytesFrame[k] = PDEAndMetaPTEBytesFrameY + PDEAndMetaPTEBytesFrameC; PDEAndMetaPTEBytesFrame[k] = st_vars->PDEAndMetaPTEBytesFrameY + st_vars->PDEAndMetaPTEBytesFrameC;
MetaRowByte[k] = MetaRowByteY[k] + MetaRowByteC[k]; MetaRowByte[k] = st_vars->MetaRowByteY[k] + st_vars->MetaRowByteC[k];
if (PixelPTEBytesPerRowY[k] <= 64 * PTEBufferSizeInRequestsForLuma[k] && if (st_vars->PixelPTEBytesPerRowY[k] <= 64 * st_vars->PTEBufferSizeInRequestsForLuma[k] &&
PixelPTEBytesPerRowC[k] <= 64 * PTEBufferSizeInRequestsForChroma[k]) { st_vars->PixelPTEBytesPerRowC[k] <= 64 * st_vars->PTEBufferSizeInRequestsForChroma[k]) {
PTEBufferSizeNotExceeded[k] = true; PTEBufferSizeNotExceeded[k] = true;
} else { } else {
PTEBufferSizeNotExceeded[k] = false; PTEBufferSizeNotExceeded[k] = false;
} }
one_row_per_frame_fits_in_buffer[k] = (PixelPTEBytesPerRowY_one_row_per_frame[k] <= 64 * 2 * st_vars->one_row_per_frame_fits_in_buffer[k] = (st_vars->PixelPTEBytesPerRowY_one_row_per_frame[k] <= 64 * 2 *
PTEBufferSizeInRequestsForLuma[k] && st_vars->PTEBufferSizeInRequestsForLuma[k] &&
PixelPTEBytesPerRowC_one_row_per_frame[k] <= 64 * 2 * PTEBufferSizeInRequestsForChroma[k]); st_vars->PixelPTEBytesPerRowC_one_row_per_frame[k] <= 64 * 2 * st_vars->PTEBufferSizeInRequestsForChroma[k]);
} }
dml32_CalculateMALLUseForStaticScreen( dml32_CalculateMALLUseForStaticScreen(
...@@ -2132,7 +2118,7 @@ void dml32_CalculateVMRowAndSwath( ...@@ -2132,7 +2118,7 @@ void dml32_CalculateVMRowAndSwath(
MALLAllocatedForDCN, MALLAllocatedForDCN,
UseMALLForStaticScreen, // mode UseMALLForStaticScreen, // mode
SurfaceSizeInMALL, SurfaceSizeInMALL,
one_row_per_frame_fits_in_buffer, st_vars->one_row_per_frame_fits_in_buffer,
/* Output */ /* Output */
UsesMALLForStaticScreen); // boolen UsesMALLForStaticScreen); // boolen
...@@ -2158,13 +2144,13 @@ void dml32_CalculateVMRowAndSwath( ...@@ -2158,13 +2144,13 @@ void dml32_CalculateVMRowAndSwath(
!(UseMALLForPStateChange[k] == dm_use_mall_pstate_change_full_frame); !(UseMALLForPStateChange[k] == dm_use_mall_pstate_change_full_frame);
if (use_one_row_for_frame[k]) { if (use_one_row_for_frame[k]) {
dpte_row_height_luma[k] = dpte_row_height_luma_one_row_per_frame[k]; dpte_row_height_luma[k] = st_vars->dpte_row_height_luma_one_row_per_frame[k];
dpte_row_width_luma_ub[k] = dpte_row_width_luma_ub_one_row_per_frame[k]; dpte_row_width_luma_ub[k] = st_vars->dpte_row_width_luma_ub_one_row_per_frame[k];
PixelPTEBytesPerRowY[k] = PixelPTEBytesPerRowY_one_row_per_frame[k]; st_vars->PixelPTEBytesPerRowY[k] = st_vars->PixelPTEBytesPerRowY_one_row_per_frame[k];
dpte_row_height_chroma[k] = dpte_row_height_chroma_one_row_per_frame[k]; dpte_row_height_chroma[k] = st_vars->dpte_row_height_chroma_one_row_per_frame[k];
dpte_row_width_chroma_ub[k] = dpte_row_width_chroma_ub_one_row_per_frame[k]; dpte_row_width_chroma_ub[k] = st_vars->dpte_row_width_chroma_ub_one_row_per_frame[k];
PixelPTEBytesPerRowC[k] = PixelPTEBytesPerRowC_one_row_per_frame[k]; st_vars->PixelPTEBytesPerRowC[k] = st_vars->PixelPTEBytesPerRowC_one_row_per_frame[k];
PTEBufferSizeNotExceeded[k] = one_row_per_frame_fits_in_buffer[k]; PTEBufferSizeNotExceeded[k] = st_vars->one_row_per_frame_fits_in_buffer[k];
} }
if (MetaRowByte[k] <= DCCMetaBufferSizeBytes) if (MetaRowByte[k] <= DCCMetaBufferSizeBytes)
...@@ -2172,7 +2158,7 @@ void dml32_CalculateVMRowAndSwath( ...@@ -2172,7 +2158,7 @@ void dml32_CalculateVMRowAndSwath(
else else
DCCMetaBufferSizeNotExceeded[k] = false; DCCMetaBufferSizeNotExceeded[k] = false;
PixelPTEBytesPerRow[k] = PixelPTEBytesPerRowY[k] + PixelPTEBytesPerRowC[k]; PixelPTEBytesPerRow[k] = st_vars->PixelPTEBytesPerRowY[k] + st_vars->PixelPTEBytesPerRowC[k];
if (use_one_row_for_frame[k]) if (use_one_row_for_frame[k])
PixelPTEBytesPerRow[k] = PixelPTEBytesPerRow[k] / 2; PixelPTEBytesPerRow[k] = PixelPTEBytesPerRow[k] / 2;
...@@ -2183,11 +2169,11 @@ void dml32_CalculateVMRowAndSwath( ...@@ -2183,11 +2169,11 @@ void dml32_CalculateVMRowAndSwath(
myPipe[k].VRatioChroma, myPipe[k].VRatioChroma,
myPipe[k].DCCEnable, myPipe[k].DCCEnable,
myPipe[k].HTotal / myPipe[k].PixelClock, myPipe[k].HTotal / myPipe[k].PixelClock,
MetaRowByteY[k], MetaRowByteC[k], st_vars->MetaRowByteY[k], st_vars->MetaRowByteC[k],
meta_row_height[k], meta_row_height[k],
meta_row_height_chroma[k], meta_row_height_chroma[k],
PixelPTEBytesPerRowY[k], st_vars->PixelPTEBytesPerRowY[k],
PixelPTEBytesPerRowC[k], st_vars->PixelPTEBytesPerRowC[k],
dpte_row_height_luma[k], dpte_row_height_luma[k],
dpte_row_height_chroma[k], dpte_row_height_chroma[k],
...@@ -2203,12 +2189,12 @@ void dml32_CalculateVMRowAndSwath( ...@@ -2203,12 +2189,12 @@ void dml32_CalculateVMRowAndSwath(
dml_print("DML::%s: k=%d, dpte_row_height_luma = %d\n", __func__, k, dpte_row_height_luma[k]); dml_print("DML::%s: k=%d, dpte_row_height_luma = %d\n", __func__, k, dpte_row_height_luma[k]);
dml_print("DML::%s: k=%d, dpte_row_width_luma_ub = %d\n", dml_print("DML::%s: k=%d, dpte_row_width_luma_ub = %d\n",
__func__, k, dpte_row_width_luma_ub[k]); __func__, k, dpte_row_width_luma_ub[k]);
dml_print("DML::%s: k=%d, PixelPTEBytesPerRowY = %d\n", __func__, k, PixelPTEBytesPerRowY[k]); dml_print("DML::%s: k=%d, PixelPTEBytesPerRowY = %d\n", __func__, k, st_vars->PixelPTEBytesPerRowY[k]);
dml_print("DML::%s: k=%d, dpte_row_height_chroma = %d\n", dml_print("DML::%s: k=%d, dpte_row_height_chroma = %d\n",
__func__, k, dpte_row_height_chroma[k]); __func__, k, dpte_row_height_chroma[k]);
dml_print("DML::%s: k=%d, dpte_row_width_chroma_ub = %d\n", dml_print("DML::%s: k=%d, dpte_row_width_chroma_ub = %d\n",
__func__, k, dpte_row_width_chroma_ub[k]); __func__, k, dpte_row_width_chroma_ub[k]);
dml_print("DML::%s: k=%d, PixelPTEBytesPerRowC = %d\n", __func__, k, PixelPTEBytesPerRowC[k]); dml_print("DML::%s: k=%d, PixelPTEBytesPerRowC = %d\n", __func__, k, st_vars->PixelPTEBytesPerRowC[k]);
dml_print("DML::%s: k=%d, PixelPTEBytesPerRow = %d\n", __func__, k, PixelPTEBytesPerRow[k]); dml_print("DML::%s: k=%d, PixelPTEBytesPerRow = %d\n", __func__, k, PixelPTEBytesPerRow[k]);
dml_print("DML::%s: k=%d, PTEBufferSizeNotExceeded = %d\n", dml_print("DML::%s: k=%d, PTEBufferSizeNotExceeded = %d\n",
__func__, k, PTEBufferSizeNotExceeded[k]); __func__, k, PTEBufferSizeNotExceeded[k]);
......
...@@ -362,6 +362,7 @@ void dml32_CalculateSurfaceSizeInMall( ...@@ -362,6 +362,7 @@ void dml32_CalculateSurfaceSizeInMall(
bool *ExceededMALLSize); bool *ExceededMALLSize);
void dml32_CalculateVMRowAndSwath( void dml32_CalculateVMRowAndSwath(
struct dml32_CalculateVMRowAndSwath *st_vars,
unsigned int NumberOfActiveSurfaces, unsigned int NumberOfActiveSurfaces,
DmlPipe myPipe[], DmlPipe myPipe[],
unsigned int SurfaceSizeInMALL[], unsigned int SurfaceSizeInMALL[],
......
...@@ -196,6 +196,24 @@ struct dml32_CalculateSwathAndDETConfiguration { ...@@ -196,6 +196,24 @@ struct dml32_CalculateSwathAndDETConfiguration {
unsigned int DETBufferSizeInKByteForSwathCalculation; unsigned int DETBufferSizeInKByteForSwathCalculation;
}; };
struct dml32_CalculateVMRowAndSwath {
unsigned int PTEBufferSizeInRequestsForLuma[DC__NUM_DPP__MAX];
unsigned int PTEBufferSizeInRequestsForChroma[DC__NUM_DPP__MAX];
unsigned int PDEAndMetaPTEBytesFrameY;
unsigned int PDEAndMetaPTEBytesFrameC;
unsigned int MetaRowByteY[DC__NUM_DPP__MAX];
unsigned int MetaRowByteC[DC__NUM_DPP__MAX];
unsigned int PixelPTEBytesPerRowY[DC__NUM_DPP__MAX];
unsigned int PixelPTEBytesPerRowC[DC__NUM_DPP__MAX];
unsigned int PixelPTEBytesPerRowY_one_row_per_frame[DC__NUM_DPP__MAX];
unsigned int PixelPTEBytesPerRowC_one_row_per_frame[DC__NUM_DPP__MAX];
unsigned int dpte_row_width_luma_ub_one_row_per_frame[DC__NUM_DPP__MAX];
unsigned int dpte_row_height_luma_one_row_per_frame[DC__NUM_DPP__MAX];
unsigned int dpte_row_width_chroma_ub_one_row_per_frame[DC__NUM_DPP__MAX];
unsigned int dpte_row_height_chroma_one_row_per_frame[DC__NUM_DPP__MAX];
bool one_row_per_frame_fits_in_buffer[DC__NUM_DPP__MAX];
};
struct DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation { struct DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation {
unsigned int dummy_integer_array[2][DC__NUM_DPP__MAX]; unsigned int dummy_integer_array[2][DC__NUM_DPP__MAX];
double dummy_single_array[2][DC__NUM_DPP__MAX]; double dummy_single_array[2][DC__NUM_DPP__MAX];
...@@ -268,6 +286,7 @@ struct dummy_vars { ...@@ -268,6 +286,7 @@ struct dummy_vars {
DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation; DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation;
struct dml32_ModeSupportAndSystemConfigurationFull dml32_ModeSupportAndSystemConfigurationFull; struct dml32_ModeSupportAndSystemConfigurationFull dml32_ModeSupportAndSystemConfigurationFull;
struct dml32_CalculateSwathAndDETConfiguration dml32_CalculateSwathAndDETConfiguration; struct dml32_CalculateSwathAndDETConfiguration dml32_CalculateSwathAndDETConfiguration;
struct dml32_CalculateVMRowAndSwath dml32_CalculateVMRowAndSwath;
}; };
struct vba_vars_st { struct vba_vars_st {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment