From c61c79ed791a4aea5da382256da9ffad8d5b751d Mon Sep 17 00:00:00 2001 From: foreman Date: Thu, 21 Mar 2019 14:27:18 -0400 Subject: [PATCH] P4 to Git Change 1759681 by asalmanp@asalmanp-ocl-stg on 2019/03/21 14:04:11 SWDEV-132899 - use the correct target names for Navi12 (gfx1011) and Navi14 (gfx1012) and add support for Navi21 (gfx1030) ReviewRequestURL = http://ocltc.amd.com/reviews/r/16993/ Affected files ... ... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palbedefs#32 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/pal/paldefs.hpp#49 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/pal/paldevice.cpp#128 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palsettings.cpp#72 edit [ROCm/clr commit: b611f3844e4616165a5f5a07965512dcafbfb46d] --- .../clr/rocclr/runtime/device/pal/paldefs.hpp | 16 ++++++++++------ .../clr/rocclr/runtime/device/pal/paldevice.cpp | 15 +++++++++++++++ .../rocclr/runtime/device/pal/palsettings.cpp | 2 +- 3 files changed, 26 insertions(+), 7 deletions(-) diff --git a/projects/clr/rocclr/runtime/device/pal/paldefs.hpp b/projects/clr/rocclr/runtime/device/pal/paldefs.hpp index abe0ab112e..1097501827 100644 --- a/projects/clr/rocclr/runtime/device/pal/paldefs.hpp +++ b/projects/clr/rocclr/runtime/device/pal/paldefs.hpp @@ -182,12 +182,16 @@ static const AMDDeviceInfo Gfx9PlusSubDeviceInfo[] = { /* Navi10 XNACK */{"gfx1010", "gfx1010", "gfx1010", 4, 16, 1, 256, 64 * Ki, 32, 1010, 1010, true}, /* Navi10Lite */{"gfx1000", "gfx1000","gfx1000", 4, 16, 1, 256, 64 * Ki, 32, 1000, 1000, false}, /* Navi10Lite XNACK */{"gfx1000", "gfx1000", "gfx1000", 4, 16, 1, 256, 64 * Ki, 32, 1000, 1000, true}, - /* Navi12 */{ "gfx1010", "gfx1010", "gfx1010", 4, 16, 1, 256, 64 * Ki, 32, 1010, 1010, false }, - /* Navi12 XNACK */{ "gfx1010", "gfx1010", "gfx1010", 4, 16, 1, 256, 64 * Ki, 32, 1010, 1010, true }, - /* Navi12Lite */{ "gfx1010", "gfx1010", "gfx1010", 4, 16, 1, 256, 64 * Ki, 32, 1010, 1010, false }, - /* Navi12Lite XNACK */{ "gfx1010", "gfx1010", "gfx1010", 4, 16, 1, 256, 64 * Ki, 32, 1010, 1010, true }, - /* Navi14 */{ "gfx1010", "gfx1010", "gfx1010", 4, 16, 1, 256, 64 * Ki, 32, 1010, 1010, false }, - /* Navi14 XNACK */{ "gfx1010", "gfx1010", "gfx1010", 4, 16, 1, 256, 64 * Ki, 32, 1010, 1010, true }, + /* Navi12 */{ "gfx1011", "gfx1011", "gfx1011", 4, 16, 1, 256, 64 * Ki, 32, 1011, 1011, false }, + /* Navi12 XNACK */{ "gfx1011", "gfx1011", "gfx1011", 4, 16, 1, 256, 64 * Ki, 32, 1011, 1011, true }, + /* Navi12Lite */{ "gfx1011", "gfx1011", "gfx1011", 4, 16, 1, 256, 64 * Ki, 32, 1011, 1011, false }, + /* Navi12Lite XNACK */{ "gfx1011", "gfx1011", "gfx1011", 4, 16, 1, 256, 64 * Ki, 32, 1011, 1011, true }, + /* Navi14 */{ "gfx1012", "gfx1012", "gfx1012", 4, 16, 1, 256, 64 * Ki, 32, 1012, 1012, false }, + /* Navi14 XNACK */{ "gfx1012", "gfx1012", "gfx1012", 4, 16, 1, 256, 64 * Ki, 32, 1012, 1012, true }, + /* UnknownDevice3 */{ "gfx1030", "gfx1030", "gfx1030", 4, 16, 1, 256, 64 * Ki, 32, 1030, 1030, false }, + /* UnknownDevice3 XNACK */{ "gfx1030", "gfx1030", "gfx1030", 4, 16, 1, 256, 64 * Ki, 32, 1030, 1030, true }, + /* UnknownDevice2 */{ "gfx1030", "gfx1030", "gfx1030", 4, 16, 1, 256, 64 * Ki, 32, 1030, 1030, false }, + /* UnknownDevice2 XNACK */{ "gfx1030", "gfx1030", "gfx1030", 4, 16, 1, 256, 64 * Ki, 32, 1030, 1030, true }, }; diff --git a/projects/clr/rocclr/runtime/device/pal/paldevice.cpp b/projects/clr/rocclr/runtime/device/pal/paldevice.cpp index 3d0ef1858d..716fe684a0 100644 --- a/projects/clr/rocclr/runtime/device/pal/paldevice.cpp +++ b/projects/clr/rocclr/runtime/device/pal/paldevice.cpp @@ -180,6 +180,12 @@ bool NullDevice::init() { case 1: ipLevel = Pal::GfxIpLevel::GfxIp10_1; break; + case 2: + ipLevel = Pal::GfxIpLevel::GfxIp10_2; + break; + case 3: + ipLevel = Pal::GfxIpLevel::GfxIp10_3; + break; } } @@ -209,6 +215,15 @@ bool NullDevice::init() { case 1010: revision = Pal::AsicRevision::Navi10; break; + case 1011: + revision = Pal::AsicRevision::Navi12; + break; + case 1012: + revision = Pal::AsicRevision::Navi14; + break; + case 1030: + ShouldNotReachHere(); + break; } NullDevice* dev = new NullDevice(); diff --git a/projects/clr/rocclr/runtime/device/pal/palsettings.cpp b/projects/clr/rocclr/runtime/device/pal/palsettings.cpp index 54887d0253..b5978da435 100644 --- a/projects/clr/rocclr/runtime/device/pal/palsettings.cpp +++ b/projects/clr/rocclr/runtime/device/pal/palsettings.cpp @@ -186,7 +186,7 @@ bool Settings::create(const Pal::DeviceProperties& palProp, assert(0 && "Unknown GfxIP type!"); return false; } - case Pal::AsicRevision::Navi12: + case Pal::AsicRevision::Navi12: case Pal::AsicRevision::Navi14: case Pal::AsicRevision::Navi10: case Pal::AsicRevision::Navi10Lite: