|
@@ -615,6 +615,14 @@ static void cayman_gpu_init(struct radeon_device *rdev)
|
|
|
}
|
|
|
/* enabled rb are just the one not disabled :) */
|
|
|
disabled_rb_mask = tmp;
|
|
|
+ tmp = 0;
|
|
|
+ for (i = 0; i < (rdev->config.cayman.max_backends_per_se * rdev->config.cayman.max_shader_engines); i++)
|
|
|
+ tmp |= (1 << i);
|
|
|
+ /* if all the backends are disabled, fix it up here */
|
|
|
+ if ((disabled_rb_mask & tmp) == tmp) {
|
|
|
+ for (i = 0; i < (rdev->config.cayman.max_backends_per_se * rdev->config.cayman.max_shader_engines); i++)
|
|
|
+ disabled_rb_mask &= ~(1 << i);
|
|
|
+ }
|
|
|
|
|
|
WREG32(GRBM_GFX_INDEX, INSTANCE_BROADCAST_WRITES | SE_BROADCAST_WRITES);
|
|
|
WREG32(RLC_GFX_INDEX, INSTANCE_BROADCAST_WRITES | SE_BROADCAST_WRITES);
|