> > While the FE is an important part of the GPU, which needs to be idle > after reset, all other modules should be idle after a proper reset. > Check all present modules for being idle to determine wether the > reset was successful. > > Signed-off-by: Lucas Stach <[email protected]>
Reviewed-by: Christian Gmeiner <[email protected]> > --- > drivers/gpu/drm/etnaviv/etnaviv_gpu.c | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/drivers/gpu/drm/etnaviv/etnaviv_gpu.c > b/drivers/gpu/drm/etnaviv/etnaviv_gpu.c > index a891d4f1f843..34fff36af450 100644 > --- a/drivers/gpu/drm/etnaviv/etnaviv_gpu.c > +++ b/drivers/gpu/drm/etnaviv/etnaviv_gpu.c > @@ -585,9 +585,9 @@ static int etnaviv_hw_reset(struct etnaviv_gpu *gpu) > /* read idle register. */ > idle = gpu_read(gpu, VIVS_HI_IDLE_STATE); > > - /* try resetting again if FE is not idle */ > - if ((idle & VIVS_HI_IDLE_STATE_FE) == 0) { > - dev_dbg(gpu->dev, "FE is not idle\n"); > + /* try resetting again if any module is not idle */ > + if ((idle & gpu->idle_mask) != gpu->idle_mask) { > + dev_dbg(gpu->dev, "GPU modules not idle\n"); > continue; > } > > -- > 2.47.3 > -- greets -- Christian Gmeiner, MSc https://christian-gmeiner.info/privacypolicy
