[Mesa-dev] [PATCH 018/140] amdgpu/addrlib: force all zero tile info for linear general.

Marek Olšák maraeo at gmail.com
Mon Mar 20 22:42:28 UTC 2017


From: Carlos Xiong <clever.xiong at amd.com>

---
 src/amd/addrlib/r800/ciaddrlib.cpp | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/src/amd/addrlib/r800/ciaddrlib.cpp b/src/amd/addrlib/r800/ciaddrlib.cpp
index f72f5a2..d4f8c64 100644
--- a/src/amd/addrlib/r800/ciaddrlib.cpp
+++ b/src/amd/addrlib/r800/ciaddrlib.cpp
@@ -548,21 +548,30 @@ ADDR_E_RETURNCODE CiAddrLib::HwlSetupTileCfg(
     ADDR_TILEINFO*  pInfo,          ///< [out] Tile Info
     AddrTileMode*   pMode,          ///< [out] Tile mode
     AddrTileType*   pType           ///< [out] Tile type
     ) const
 {
     ADDR_E_RETURNCODE returnCode = ADDR_OK;
 
     // Global flag to control usage of tileIndex
     if (UseTileIndex(index))
     {
-        if (static_cast<UINT_32>(index) >= m_noOfEntries)
+        if (index == TileIndexLinearGeneral)
+        {
+            pInfo->banks = 2;
+            pInfo->bankWidth = 1;
+            pInfo->bankHeight = 1;
+            pInfo->macroAspectRatio = 1;
+            pInfo->tileSplitBytes = 64;
+            pInfo->pipeConfig = ADDR_PIPECFG_P2;
+        }
+        else if (static_cast<UINT_32>(index) >= m_noOfEntries)
         {
             returnCode = ADDR_INVALIDPARAMS;
         }
         else
         {
             const ADDR_TILECONFIG* pCfgTable = GetTileSetting(index);
 
             if (pInfo != NULL)
             {
                 if (IsMacroTiled(pCfgTable->mode))
-- 
2.7.4



More information about the mesa-dev mailing list