On Fri, Jan 28, 2022 at 06:43:23PM +0800, Yu, Lang wrote: > We observed a GPU hang when querying GMC CG state(i.e., > cat amdgpu_pm_info) on cyan skillfish. Acctually, cyan > skillfish doesn't support any CG features. > > Just prevent cyan skillfish from accessing GMC CG registers. > > Signed-off-by: Lang Yu <Lang.Yu@xxxxxxx> Reviewed-by: Huang Rui <ray.huang@xxxxxxx> > --- > drivers/gpu/drm/amd/amdgpu/gmc_v10_0.c | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/drivers/gpu/drm/amd/amdgpu/gmc_v10_0.c b/drivers/gpu/drm/amd/amdgpu/gmc_v10_0.c > index 73ab0eebe4e2..bddaf2417344 100644 > --- a/drivers/gpu/drm/amd/amdgpu/gmc_v10_0.c > +++ b/drivers/gpu/drm/amd/amdgpu/gmc_v10_0.c > @@ -1156,6 +1156,9 @@ static void gmc_v10_0_get_clockgating_state(void *handle, u32 *flags) > { > struct amdgpu_device *adev = (struct amdgpu_device *)handle; > > + if (adev->ip_versions[GC_HWIP][0] == IP_VERSION(10, 1, 3)) > + return; > + > adev->mmhub.funcs->get_clockgating(adev, flags); > > if (adev->ip_versions[ATHUB_HWIP][0] >= IP_VERSION(2, 1, 0)) > -- > 2.25.1 >