Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit eef0f087 authored by qctecmdr's avatar qctecmdr Committed by Gerrit - the friendly Code Review server
Browse files

Merge "msm: kgsl: Fix recovery in case of fenced write failures"

parents 9be37020 b002e15b
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -1031,6 +1031,7 @@
#define A6XX_GPU_GMU_AO_GPU_CX_BUSY_MASK	0x23B0E
#define A6XX_GMU_AO_AHB_FENCE_CTRL		0x23B10
#define A6XX_GMU_AHB_FENCE_STATUS		0x23B13
#define A6XX_GMU_AHB_FENCE_STATUS_CLR           0x23B14
#define A6XX_GMU_RBBM_INT_UNMASKED_STATUS	0x23B15
#define A6XX_GMU_AO_SPARE_CNTL			0x23B16

+7 −0
Original line number Diff line number Diff line
@@ -1223,6 +1223,13 @@ static int a6xx_gmu_suspend(struct kgsl_device *device)
	/* Check no outstanding RPMh voting */
	a6xx_complete_rpmh_votes(device);

	/* Clear the WRITEDROPPED fields and set fence to allow mode */
	gmu_core_regwrite(device, A6XX_GMU_AHB_FENCE_STATUS_CLR, 0x7);
	gmu_core_regwrite(device, A6XX_GMU_AO_AHB_FENCE_CTRL, 0);

	/* Make sure above writes are committed before we proceed to recovery */
	wmb();

	/*
	 * This is based on the assumption that GMU is the only one controlling
	 * the GX HS. This code path is the only client voting for GX through