drm/i915/display: move device info and params handling to snapshot
Snapshot display device and runtime info as well as display parameters in display snapshot. Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/5aa52749d6adce6d9c85cb8d8395bbf4db0e76a2.1726151571.git.jani.nikula@intel.com Signed-off-by: Jani Nikula <jani.nikula@intel.com>
This commit is contained in:
@@ -3,10 +3,18 @@
|
||||
|
||||
#include <linux/slab.h>
|
||||
|
||||
#include "i915_drv.h"
|
||||
#include "intel_display_device.h"
|
||||
#include "intel_display_params.h"
|
||||
#include "intel_display_snapshot.h"
|
||||
#include "intel_overlay.h"
|
||||
|
||||
struct intel_display_snapshot {
|
||||
struct intel_display *display;
|
||||
|
||||
struct intel_display_device_info info;
|
||||
struct intel_display_runtime_info runtime_info;
|
||||
struct intel_display_params params;
|
||||
struct intel_overlay_snapshot *overlay;
|
||||
};
|
||||
|
||||
@@ -18,6 +26,14 @@ struct intel_display_snapshot *intel_display_snapshot_capture(struct intel_displ
|
||||
if (!snapshot)
|
||||
return NULL;
|
||||
|
||||
snapshot->display = display;
|
||||
|
||||
memcpy(&snapshot->info, DISPLAY_INFO(display), sizeof(snapshot->info));
|
||||
memcpy(&snapshot->runtime_info, DISPLAY_RUNTIME_INFO(display),
|
||||
sizeof(snapshot->runtime_info));
|
||||
|
||||
intel_display_params_copy(&snapshot->params);
|
||||
|
||||
snapshot->overlay = intel_overlay_snapshot_capture(display);
|
||||
|
||||
return snapshot;
|
||||
@@ -26,9 +42,16 @@ struct intel_display_snapshot *intel_display_snapshot_capture(struct intel_displ
|
||||
void intel_display_snapshot_print(const struct intel_display_snapshot *snapshot,
|
||||
struct drm_printer *p)
|
||||
{
|
||||
struct intel_display *display;
|
||||
|
||||
if (!snapshot)
|
||||
return;
|
||||
|
||||
display = snapshot->display;
|
||||
|
||||
intel_display_device_info_print(&snapshot->info, &snapshot->runtime_info, p);
|
||||
intel_display_params_dump(&snapshot->params, display->drm->driver->name, p);
|
||||
|
||||
intel_overlay_snapshot_print(snapshot->overlay, p);
|
||||
}
|
||||
|
||||
@@ -37,6 +60,8 @@ void intel_display_snapshot_free(struct intel_display_snapshot *snapshot)
|
||||
if (!snapshot)
|
||||
return;
|
||||
|
||||
intel_display_params_free(&snapshot->params);
|
||||
|
||||
kfree(snapshot->overlay);
|
||||
kfree(snapshot);
|
||||
}
|
||||
|
||||
@@ -651,8 +651,6 @@ static void err_print_capabilities(struct drm_i915_error_state_buf *m,
|
||||
struct drm_printer p = i915_error_printer(m);
|
||||
|
||||
intel_device_info_print(&error->device_info, &error->runtime_info, &p);
|
||||
intel_display_device_info_print(&error->display_device_info,
|
||||
&error->display_runtime_info, &p);
|
||||
intel_driver_caps_print(&error->driver_caps, &p);
|
||||
}
|
||||
|
||||
@@ -660,10 +658,8 @@ static void err_print_params(struct drm_i915_error_state_buf *m,
|
||||
const struct i915_params *params)
|
||||
{
|
||||
struct drm_printer p = i915_error_printer(m);
|
||||
struct intel_display *display = &m->i915->display;
|
||||
|
||||
i915_params_dump(params, &p);
|
||||
intel_display_params_dump(&display->params, display->drm->driver->name, &p);
|
||||
}
|
||||
|
||||
static void err_print_pciid(struct drm_i915_error_state_buf *m,
|
||||
@@ -1031,7 +1027,6 @@ static void i915_vma_coredump_free(struct i915_vma_coredump *vma)
|
||||
static void cleanup_params(struct i915_gpu_coredump *error)
|
||||
{
|
||||
i915_params_free(&error->params);
|
||||
intel_display_params_free(&error->display_params);
|
||||
}
|
||||
|
||||
static void cleanup_uc(struct intel_uc_coredump *uc)
|
||||
@@ -1992,17 +1987,12 @@ static void capture_gen(struct i915_gpu_coredump *error)
|
||||
error->suspend_count = i915->suspend_count;
|
||||
|
||||
i915_params_copy(&error->params, &i915->params);
|
||||
intel_display_params_copy(&error->display_params);
|
||||
memcpy(&error->device_info,
|
||||
INTEL_INFO(i915),
|
||||
sizeof(error->device_info));
|
||||
memcpy(&error->runtime_info,
|
||||
RUNTIME_INFO(i915),
|
||||
sizeof(error->runtime_info));
|
||||
memcpy(&error->display_device_info, DISPLAY_INFO(i915),
|
||||
sizeof(error->display_device_info));
|
||||
memcpy(&error->display_runtime_info, DISPLAY_RUNTIME_INFO(i915),
|
||||
sizeof(error->display_runtime_info));
|
||||
error->driver_caps = i915->caps;
|
||||
}
|
||||
|
||||
|
||||
@@ -14,8 +14,6 @@
|
||||
|
||||
#include <drm/drm_mm.h>
|
||||
|
||||
#include "display/intel_display_device.h"
|
||||
#include "display/intel_display_params.h"
|
||||
#include "gt/intel_engine.h"
|
||||
#include "gt/intel_engine_types.h"
|
||||
#include "gt/intel_gt_types.h"
|
||||
@@ -212,11 +210,8 @@ struct i915_gpu_coredump {
|
||||
|
||||
struct intel_device_info device_info;
|
||||
struct intel_runtime_info runtime_info;
|
||||
struct intel_display_device_info display_device_info;
|
||||
struct intel_display_runtime_info display_runtime_info;
|
||||
struct intel_driver_caps driver_caps;
|
||||
struct i915_params params;
|
||||
struct intel_display_params display_params;
|
||||
|
||||
struct scatterlist *sgl, *fit;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user