diff options
-rw-r--r-- | drivers/gpu/drm/msm/adreno/a6xx_gmu.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/gpu/drm/msm/adreno/a6xx_gmu.c b/drivers/gpu/drm/msm/adreno/a6xx_gmu.c index bf7f855f4a34..452beb90d53c 100644 --- a/drivers/gpu/drm/msm/adreno/a6xx_gmu.c +++ b/drivers/gpu/drm/msm/adreno/a6xx_gmu.c @@ -791,6 +791,12 @@ static int a6xx_gmu_fw_start(struct a6xx_gmu *gmu, unsigned int state) (1 << 31) | (0xa << 18) | (0xa0)); /* + * Snapshots toggle the NMI bit which will result in a jump to the NMI + * handler instead of __main. Set the M3 config value to avoid that. + */ + gmu_write(gmu, REG_A6XX_GMU_CM3_CFG, 0x4052); + + /* * Note that the GMU has a slightly different layout for * chip_id, for whatever reason, so a bit of massaging * is needed. The upper 16b are the same, but minor and |