[Intel-gfx] [PATCH v5] drm/i915: Introduce concept of a sub-platform
Chris Wilson
chris at chris-wilson.co.uk
Fri Mar 15 17:28:11 UTC 2019
Quoting Tvrtko Ursulin (2019-03-15 17:09:28)
> diff --git a/drivers/gpu/drm/i915/i915_gpu_error.c b/drivers/gpu/drm/i915/i915_gpu_error.c
> index 3d8020888604..e3360a31f8d3 100644
> --- a/drivers/gpu/drm/i915/i915_gpu_error.c
> +++ b/drivers/gpu/drm/i915/i915_gpu_error.c
> @@ -677,6 +677,7 @@ static void __err_print_to_sgl(struct drm_i915_error_state_buf *m,
> err_printf(m, "Reset count: %u\n", error->reset_count);
> err_printf(m, "Suspend count: %u\n", error->suspend_count);
> err_printf(m, "Platform: %s\n", intel_platform_name(error->device_info.platform));
> + err_printf(m, "Subplatform: 0x%x\n", intel_subplatform(m->i915));
We didn't take a copy of the runtime_info? Ww should have done at least,
that's even more volatile than device_info.
It'll do for now, but would be nicer if RUNTIME_INFO(i915) wasn't baked
so hard into the subplatform :)
> +void intel_device_info_subplatform_init(struct drm_i915_private *i915)
> +{
> + const unsigned int pi =
> + __platform_mask_index(i915, INTEL_INFO(i915)->platform);
> + const unsigned int pb =
> + __platform_mask_bit(i915, INTEL_INFO(i915)->platform);
> + u16 devid = INTEL_DEVID(i915);
> + u32 mask = 0;
> +
> + RUNTIME_INFO(i915)->platform_mask[pi] = BIT(pb);
> +
> + if (IS_PINEVIEW(i915)) {
> + if (devid == 0xa001)
> + mask |= BIT(INTEL_SUBPLATFORM_PINEVIEW_G);
> + else if (devid == 0xa011)
> + mask |= BIT(INTEL_SUBPLATFORM_PINEVIEW_M);
I take it, leaving is-mobile conversion for the display gurus?
-Chris
More information about the Intel-gfx
mailing list