drm/amdgpu/nbio7.4: add hw bug workaround for vega20
Configure PCIE_CI_CNTL to work around a hw bug that affects some multi-GPU compute workloads. Acked-by: Feifei Xu <Feifei.Xu@amd.com> Reviewed-by: Harish Kasiviswanathan <Harish.Kasiviswanathan@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
parent
40978ac636
commit
e01f2d4189
@ -31,6 +31,7 @@
|
|||||||
|
|
||||||
#define smnCPM_CONTROL 0x11180460
|
#define smnCPM_CONTROL 0x11180460
|
||||||
#define smnPCIE_CNTL2 0x11180070
|
#define smnPCIE_CNTL2 0x11180070
|
||||||
|
#define smnPCIE_CI_CNTL 0x11180080
|
||||||
|
|
||||||
static u32 nbio_v7_4_get_rev_id(struct amdgpu_device *adev)
|
static u32 nbio_v7_4_get_rev_id(struct amdgpu_device *adev)
|
||||||
{
|
{
|
||||||
@ -222,7 +223,13 @@ static void nbio_v7_4_detect_hw_virt(struct amdgpu_device *adev)
|
|||||||
|
|
||||||
static void nbio_v7_4_init_registers(struct amdgpu_device *adev)
|
static void nbio_v7_4_init_registers(struct amdgpu_device *adev)
|
||||||
{
|
{
|
||||||
|
uint32_t def, data;
|
||||||
|
|
||||||
|
def = data = RREG32_PCIE(smnPCIE_CI_CNTL);
|
||||||
|
data = REG_SET_FIELD(data, PCIE_CI_CNTL, CI_SLV_ORDERING_DIS, 1);
|
||||||
|
|
||||||
|
if (def != data)
|
||||||
|
WREG32_PCIE(smnPCIE_CI_CNTL, data);
|
||||||
}
|
}
|
||||||
|
|
||||||
const struct amdgpu_nbio_funcs nbio_v7_4_funcs = {
|
const struct amdgpu_nbio_funcs nbio_v7_4_funcs = {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user