Commit 30ef2627 authored by Jani Nikula's avatar Jani Nikula
Browse files

drm/i915/bios: move i915_vbt debugfs to intel_bios.c



All things VBT should be placed in intel_bios.c.

While at it, shove in a FIXME comment about VBT possibly originating
from other places than opregion.

Cc: Radhakrishna Sripada <radhakrishna.sripada@intel.com>
Reviewed-by: default avatarRadhakrishna Sripada <radhakrishna.sripada@intel.com>
Signed-off-by: default avatarJani Nikula <jani.nikula@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/5e14a9559b6916022b506e5eb8d943783dc627a2.1704992868.git.jani.nikula@intel.com
parent 0ea5c948
Loading
Loading
Loading
Loading
+25 −0
Original line number Diff line number Diff line
@@ -3656,3 +3656,28 @@ void intel_bios_for_each_encoder(struct drm_i915_private *i915,
	list_for_each_entry(devdata, &i915->display.vbt.display_devices, node)
		func(i915, devdata);
}

static int intel_bios_vbt_show(struct seq_file *m, void *unused)
{
	struct drm_i915_private *i915 = m->private;
	struct intel_opregion *opregion = &i915->display.opregion;

	/*
	 * FIXME: VBT might originate from other places than opregion, and then
	 * this would be incorrect.
	 */
	if (opregion->vbt)
		seq_write(m, opregion->vbt, opregion->vbt_size);

	return 0;
}

DEFINE_SHOW_ATTRIBUTE(intel_bios_vbt);

void intel_bios_debugfs_register(struct drm_i915_private *i915)
{
	struct drm_minor *minor = i915->drm.primary;

	debugfs_create_file("i915_vbt", 0444, minor->debugfs_root,
			    i915, &intel_bios_vbt_fops);
}
+2 −0
Original line number Diff line number Diff line
@@ -280,4 +280,6 @@ void intel_bios_for_each_encoder(struct drm_i915_private *i915,
				 void (*func)(struct drm_i915_private *i915,
					      const struct intel_bios_encoder_data *devdata));

void intel_bios_debugfs_register(struct drm_i915_private *i915);

#endif /* _INTEL_BIOS_H_ */
+1 −12
Original line number Diff line number Diff line
@@ -97,17 +97,6 @@ static int i915_opregion(struct seq_file *m, void *unused)
	return 0;
}

static int i915_vbt(struct seq_file *m, void *unused)
{
	struct drm_i915_private *i915 = node_to_i915(m->private);
	struct intel_opregion *opregion = &i915->display.opregion;

	if (opregion->vbt)
		seq_write(m, opregion->vbt, opregion->vbt_size);

	return 0;
}

static int i915_gem_framebuffer_info(struct seq_file *m, void *data)
{
	struct drm_i915_private *dev_priv = node_to_i915(m->private);
@@ -1067,7 +1056,6 @@ static const struct drm_info_list intel_display_debugfs_list[] = {
	{"i915_frontbuffer_tracking", i915_frontbuffer_tracking, 0},
	{"i915_sr_status", i915_sr_status, 0},
	{"i915_opregion", i915_opregion, 0},
	{"i915_vbt", i915_vbt, 0},
	{"i915_gem_framebuffer", i915_gem_framebuffer_info, 0},
	{"i915_power_domain_info", i915_power_domain_info, 0},
	{"i915_display_info", i915_display_info, 0},
@@ -1105,6 +1093,7 @@ void intel_display_debugfs_register(struct drm_i915_private *i915)
				 ARRAY_SIZE(intel_display_debugfs_list),
				 minor->debugfs_root, minor);

	intel_bios_debugfs_register(i915);
	intel_cdclk_debugfs_register(i915);
	intel_dmc_debugfs_register(i915);
	intel_fbc_debugfs_register(i915);