[AMD Public Use] This give us time for the rest of the enablement we're doing. However, we should fix the fundamental problem in the near future. Regards, Alejandro S. > -----Original Message----- > From: amd-gfx <amd-gfx-bounces@xxxxxxxxxxxxxxxxxxxxx> On Behalf Of > Christian König > Sent: Monday, November 16, 2020 5:31 AM > To: Sierra Guiza, Alejandro (Alex) <Alex.Sierra@xxxxxxx>; amd- > gfx@xxxxxxxxxxxxxxxxxxxxx; Koenig, Christian <Christian.Koenig@xxxxxxx> > Cc: Kuehling, Felix <Felix.Kuehling@xxxxxxx> > Subject: Re: [PATCH] drm/amdgpu: enable 48-bit IH timestamp counter > > Feel free to keep my rb for this, but is 455 days enough in general or should > we add wrap around handling? > > Christian. > > Am 10.11.20 um 18:57 schrieb Sierra Guiza, Alejandro (Alex): > > [AMD Public Use] > > > > I just added support for vega10_ih too. > > > > Regards, > > Alex > > > >> -----Original Message----- > >> From: Sierra Guiza, Alejandro (Alex) <Alex.Sierra@xxxxxxx> > >> Sent: Tuesday, November 10, 2020 11:55 AM > >> To: amd-gfx@xxxxxxxxxxxxxxxxxxxxx > >> Cc: Koenig, Christian <Christian.Koenig@xxxxxxx>; Kuehling, Felix > >> <Felix.Kuehling@xxxxxxx>; Sierra Guiza, Alejandro (Alex) > >> <Alex.Sierra@xxxxxxx> > >> Subject: [PATCH] drm/amdgpu: enable 48-bit IH timestamp counter > >> > >> By default this timestamp is based on a 32 bit counter. > >> This is used by the amdgpu_gmc_filter_faults, to avoid process the > >> same interrupt in retry configuration. > >> Apparently there's a problem when the timestamp coming from IH > >> overflows and compares against timestamp coming from the the hash > table. > >> This patch only extends the time overflow from 10 minutes to aprx 455 > days. > >> > >> Signed-off-by: Alex Sierra <alex.sierra@xxxxxxx> > >> --- > >> drivers/gpu/drm/amd/amdgpu/navi10_ih.c | 6 ++++++ > >> drivers/gpu/drm/amd/amdgpu/vega10_ih.c | 6 ++++++ > >> 2 files changed, 12 insertions(+) > >> > >> diff --git a/drivers/gpu/drm/amd/amdgpu/navi10_ih.c > >> b/drivers/gpu/drm/amd/amdgpu/navi10_ih.c > >> index 837769fcb35b..bda916f33805 100644 > >> --- a/drivers/gpu/drm/amd/amdgpu/navi10_ih.c > >> +++ b/drivers/gpu/drm/amd/amdgpu/navi10_ih.c > >> @@ -94,6 +94,8 @@ static void navi10_ih_enable_interrupts(struct > >> amdgpu_device *adev) > >> > >> ih_rb_cntl = REG_SET_FIELD(ih_rb_cntl, IH_RB_CNTL, RB_ENABLE, 1); > >> ih_rb_cntl = REG_SET_FIELD(ih_rb_cntl, IH_RB_CNTL, ENABLE_INTR, > >> 1); > >> + ih_rb_cntl = REG_SET_FIELD(ih_rb_cntl, IH_RB_CNTL, > >> + RB_GPU_TS_ENABLE, 1); > >> if (amdgpu_sriov_vf(adev) && adev->asic_type < CHIP_NAVI10) { > >> if (psp_reg_program(&adev->psp, PSP_REG_IH_RB_CNTL, > >> ih_rb_cntl)) { > >> DRM_ERROR("PSP program IH_RB_CNTL failed!\n"); > @@ -109,6 +111,8 > >> @@ static void navi10_ih_enable_interrupts(struct > >> amdgpu_device *adev) > >> ih_rb_cntl = RREG32_SOC15(OSSSYS, 0, > mmIH_RB_CNTL_RING1); > >> ih_rb_cntl = REG_SET_FIELD(ih_rb_cntl, IH_RB_CNTL_RING1, > >> RB_ENABLE, 1); > >> + ih_rb_cntl = REG_SET_FIELD(ih_rb_cntl, IH_RB_CNTL_RING1, > >> + RB_GPU_TS_ENABLE, 1); > >> if (amdgpu_sriov_vf(adev) && adev->asic_type < > >> CHIP_NAVI10) { > >> if (psp_reg_program(&adev->psp, > >> PSP_REG_IH_RB_CNTL_RING1, > >> ih_rb_cntl)) { > >> @@ -125,6 +129,8 @@ static void navi10_ih_enable_interrupts(struct > >> amdgpu_device *adev) > >> ih_rb_cntl = RREG32_SOC15(OSSSYS, 0, > mmIH_RB_CNTL_RING2); > >> ih_rb_cntl = REG_SET_FIELD(ih_rb_cntl, IH_RB_CNTL_RING2, > >> RB_ENABLE, 1); > >> + ih_rb_cntl = REG_SET_FIELD(ih_rb_cntl, IH_RB_CNTL_RING2, > >> + RB_GPU_TS_ENABLE, 1); > >> if (amdgpu_sriov_vf(adev) && adev->asic_type < > >> CHIP_NAVI10) { > >> if (psp_reg_program(&adev->psp, > >> PSP_REG_IH_RB_CNTL_RING2, > >> ih_rb_cntl)) { > >> diff --git a/drivers/gpu/drm/amd/amdgpu/vega10_ih.c > >> b/drivers/gpu/drm/amd/amdgpu/vega10_ih.c > >> index 407c6093c2ec..35d68bc5d95e 100644 > >> --- a/drivers/gpu/drm/amd/amdgpu/vega10_ih.c > >> +++ b/drivers/gpu/drm/amd/amdgpu/vega10_ih.c > >> @@ -50,6 +50,8 @@ static void vega10_ih_enable_interrupts(struct > >> amdgpu_device *adev) > >> > >> ih_rb_cntl = REG_SET_FIELD(ih_rb_cntl, IH_RB_CNTL, RB_ENABLE, 1); > >> ih_rb_cntl = REG_SET_FIELD(ih_rb_cntl, IH_RB_CNTL, ENABLE_INTR, > >> 1); > >> + ih_rb_cntl = REG_SET_FIELD(ih_rb_cntl, IH_RB_CNTL, > >> + RB_GPU_TS_ENABLE, 1); > >> if (amdgpu_sriov_vf(adev)) { > >> if (psp_reg_program(&adev->psp, PSP_REG_IH_RB_CNTL, > >> ih_rb_cntl)) { > >> DRM_ERROR("PSP program IH_RB_CNTL failed!\n"); > @@ -64,6 +66,8 @@ > >> static void vega10_ih_enable_interrupts(struct > >> amdgpu_device *adev) > >> ih_rb_cntl = RREG32_SOC15(OSSSYS, 0, > mmIH_RB_CNTL_RING1); > >> ih_rb_cntl = REG_SET_FIELD(ih_rb_cntl, IH_RB_CNTL_RING1, > >> RB_ENABLE, 1); > >> + ih_rb_cntl = REG_SET_FIELD(ih_rb_cntl, IH_RB_CNTL_RING1, > >> + RB_GPU_TS_ENABLE, 1); > >> if (amdgpu_sriov_vf(adev)) { > >> if (psp_reg_program(&adev->psp, > >> PSP_REG_IH_RB_CNTL_RING1, > >> ih_rb_cntl)) { > >> @@ -80,6 +84,8 @@ static void vega10_ih_enable_interrupts(struct > >> amdgpu_device *adev) > >> ih_rb_cntl = RREG32_SOC15(OSSSYS, 0, > mmIH_RB_CNTL_RING2); > >> ih_rb_cntl = REG_SET_FIELD(ih_rb_cntl, IH_RB_CNTL_RING2, > >> RB_ENABLE, 1); > >> + ih_rb_cntl = REG_SET_FIELD(ih_rb_cntl, IH_RB_CNTL_RING2, > >> + RB_GPU_TS_ENABLE, 1); > >> if (amdgpu_sriov_vf(adev)) { > >> if (psp_reg_program(&adev->psp, > >> PSP_REG_IH_RB_CNTL_RING2, > >> ih_rb_cntl)) { > >> -- > >> 2.17.1 > > _______________________________________________ > > amd-gfx mailing list > > amd-gfx@xxxxxxxxxxxxxxxxxxxxx > > https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Flist > > s.freedesktop.org%2Fmailman%2Flistinfo%2Famd- > gfx&data=04%7C01%7Cal > > > ex.sierra%40amd.com%7C2fd98389222842a15da008d887e93049%7C3dd8961f > e4884 > > > e608e11a82d994e183d%7C0%7C0%7C637408783493249465%7CUnknown%7C > TWFpbGZsb > > > 3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0 > %3D% > > > 7C3000&sdata=NyKN4mVAmDfq4zFl5rbuth551l8nYyQh2LQ3icSXojM%3 > D&re > > served=0 > > _______________________________________________ > amd-gfx mailing list > amd-gfx@xxxxxxxxxxxxxxxxxxxxx > https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Flists. > freedesktop.org%2Fmailman%2Flistinfo%2Famd- > gfx&data=04%7C01%7Calex.sierra%40amd.com%7C2fd98389222842a15 > da008d887e93049%7C3dd8961fe4884e608e11a82d994e183d%7C0%7C0%7C63 > 7408783493249465%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMD > AiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata= > NyKN4mVAmDfq4zFl5rbuth551l8nYyQh2LQ3icSXojM%3D&reserved=0 _______________________________________________ amd-gfx mailing list amd-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/amd-gfx