[Intel-gfx] [PATCH 5/8] drm/i915/dmc: don't register DMC debugfs file if there's no DMC
Jani Nikula
jani.nikula at intel.com
Fri Mar 18 09:22:40 UTC 2022
On Thu, 17 Mar 2022, Lucas De Marchi <lucas.demarchi at intel.com> wrote:
> On Thu, Mar 17, 2022 at 08:36:17PM +0200, Jani Nikula wrote:
>>Register the DMC debugfs file only on platforms that support
>>DMC. There's no point in having a no-op debugfs file.
>
> It seems this would not change much the behavior (fail on open vs fail
> on read). But the code in igt is suspicious:
>
>
> bool igt_pm_dmc_loaded(int debugfs)
> {
> char buf[15];
> int len;
>
> len = igt_sysfs_read(debugfs, "i915_dmc_info", buf, sizeof(buf) - 1);
> if (len < 0)
> return true; /* no CSR support, no DMC requirement */
>
> From a quick inspection of igt_sysfs_read() it seems it would just
> return 0 if there's nothing to be read. And it would return < 0 on
> failure to open the file.
>
> These would be the affected tests:
>
> tests/i915/i915_pm_rpm.c:
> tests/i915/i915_pm_lpsp.c:
> tests/i915/i915_pm_dc.c:
> igt_require(igt_pm_dmc_loaded(data.debugfs_fd));
Ok, I think I'll just drop this patch for now, don't have the time to go
down that rabbit hole...
Thanks,
Jani.
>
>
> Lucas De Marchi
>
>>
>>Signed-off-by: Jani Nikula <jani.nikula at intel.com>
>>---
>> drivers/gpu/drm/i915/display/intel_dmc.c | 6 +++---
>> 1 file changed, 3 insertions(+), 3 deletions(-)
>>
>>diff --git a/drivers/gpu/drm/i915/display/intel_dmc.c b/drivers/gpu/drm/i915/display/intel_dmc.c
>>index 5de13f978e57..8dfa2aa9f8bd 100644
>>--- a/drivers/gpu/drm/i915/display/intel_dmc.c
>>+++ b/drivers/gpu/drm/i915/display/intel_dmc.c
>>@@ -818,9 +818,6 @@ static int intel_dmc_debugfs_status_show(struct seq_file *m, void *unused)
>> struct intel_dmc *dmc;
>> i915_reg_t dc5_reg, dc6_reg = INVALID_MMIO_REG;
>>
>>- if (!HAS_DMC(i915))
>>- return -ENODEV;
>>-
>> dmc = &i915->dmc;
>>
>> wakeref = intel_runtime_pm_get(&i915->runtime_pm);
>>@@ -890,6 +887,9 @@ void intel_dmc_debugfs_register(struct drm_i915_private *i915)
>> {
>> struct drm_minor *minor = i915->drm.primary;
>>
>>+ if (!HAS_DMC(i915))
>>+ return;
>>+
>> debugfs_create_file("i915_dmc_info", 0444, minor->debugfs_root,
>> i915, &intel_dmc_debugfs_status_fops);
>> }
>>--
>>2.30.2
>>
--
Jani Nikula, Intel Open Source Graphics Center
More information about the Intel-gfx
mailing list