All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jani Nikula <jani.nikula@intel.com>
To: "Hogander, Jouni" <jouni.hogander@intel.com>,
	"intel-xe@lists.freedesktop.org" <intel-xe@lists.freedesktop.org>,
	"Manna, Animesh" <animesh.manna@intel.com>,
	"intel-gfx@lists.freedesktop.org"
	<intel-gfx@lists.freedesktop.org>
Cc: "B, Jeevan" <jeevan.b@intel.com>
Subject: Re: [PATCH v5 5/8] drm/i915/lobf: Add debug interface for lobf
Date: Wed, 12 Mar 2025 16:58:21 +0200	[thread overview]
Message-ID: <87r032e1o2.fsf@intel.com> (raw)
In-Reply-To: <dc8add2f89e5680d4bac347164ac73bc78c50db2.camel@intel.com>

On Fri, 07 Mar 2025, "Hogander, Jouni" <jouni.hogander@intel.com> wrote:
> On Mon, 2025-03-03 at 14:05 +0530, Animesh Manna wrote:
>> Add an interface in debugfs which will help in debugging LOBF
>> feature.
>>
>> v1: Initial version.
>> v2:
>> - Remove FORCE_EN flag. [Jouni]
>> - Change prefix from I915 to INTEL. [Jani]
>> - Use u8 instead of bool for lobf-debug flag. [Jani]
>> v3:
>> - Use intel_connector instead of display. [Jani]
>> - Remove edp connector check as it was already present
>> in caller function. [Jani]
>> - Remove loop of searching edp encoder which is directly
>> accessible from intel_connector. [Jani]
>>
>> Signed-off-by: Animesh Manna <animesh.manna@intel.com>
>> ---
>>  drivers/gpu/drm/i915/display/intel_alpm.c     | 32
>> +++++++++++++++++++
>>  .../drm/i915/display/intel_display_types.h    |  5 +++
>>  2 files changed, 37 insertions(+)
>>
>> diff --git a/drivers/gpu/drm/i915/display/intel_alpm.c
>> b/drivers/gpu/drm/i915/display/intel_alpm.c
>> index f4586c76a7b7..245364d031c1 100644
>> --- a/drivers/gpu/drm/i915/display/intel_alpm.c
>> +++ b/drivers/gpu/drm/i915/display/intel_alpm.c
>> @@ -276,6 +276,9 @@ void intel_alpm_lobf_compute_config(struct
>> intel_dp *intel_dp,
>>       int waketime_in_lines, first_sdp_position;
>>       int context_latency, guardband;
>>
>> +     if (intel_dp->alpm_parameters.lobf_debug &
>> INTEL_LOBF_DEBUG_DISABLE)
>> +             return;
>> +
>>       if (!intel_dp_is_edp(intel_dp))
>>               return;
>>
>> @@ -451,6 +454,32 @@ static int i915_edp_lobf_info_show(struct
>> seq_file *m, void *data)
>>
>>  DEFINE_SHOW_ATTRIBUTE(i915_edp_lobf_info);
>>
>> +static int
>> +i915_edp_lobf_debug_get(void *data, u64 *val)
>> +{
>> +     struct intel_connector *connector = data;
>> +     struct intel_dp *intel_dp = enc_to_intel_dp(connector-
>> >encoder);
>> +
>> +     *val = READ_ONCE(intel_dp->alpm_parameters.lobf_debug);
>> +
>> +     return 0;
>> +}
>> +
>> +static int
>> +i915_edp_lobf_debug_set(void *data, u64 val)
>> +{
>> +     struct intel_connector *connector = data;
>> +     struct intel_dp *intel_dp = enc_to_intel_dp(connector-
>> >encoder);
>> +
>> +     intel_dp->alpm_parameters.lobf_debug = val;
>
> I think you should do some sanity check with the value from user space.

I don't understand why we're doing some bitmask stuff here in the first
place, when it's actually just a true/false thing.

BR,
Jani.


>
>> +     return 0;
>> +}
>> +
>> +DEFINE_SIMPLE_ATTRIBUTE(i915_edp_lobf_debug_fops,
>> +                     i915_edp_lobf_debug_get,
>> i915_edp_lobf_debug_set,
>> +                     "%llu\n");
>> +
>>  void intel_alpm_lobf_debugfs_add(struct intel_connector *connector)
>>  {
>>       struct intel_display *display = to_intel_display(connector);
>> @@ -460,6 +489,9 @@ void intel_alpm_lobf_debugfs_add(struct
>> intel_connector *connector)
>>           connector->base.connector_type !=
>> DRM_MODE_CONNECTOR_eDP)
>>               return;
>>
>> +     debugfs_create_file("i915_edp_lobf_debug", 0644, root,
>> +                         connector, &i915_edp_lobf_debug_fops);
>> +
>>       debugfs_create_file("i915_edp_lobf_info", 0444, root,
>>                           connector, &i915_edp_lobf_info_fops);
>>  }
>> diff --git a/drivers/gpu/drm/i915/display/intel_display_types.h
>> b/drivers/gpu/drm/i915/display/intel_display_types.h
>> index b78721c451b8..b6ec9a8fadd9 100644
>> --- a/drivers/gpu/drm/i915/display/intel_display_types.h
>> +++ b/drivers/gpu/drm/i915/display/intel_display_types.h
>> @@ -1808,6 +1808,11 @@ struct intel_dp {
>>               u8 aux_less_wake_lines;
>>               u8 silence_period_sym_clocks;
>>               u8 lfps_half_cycle_num_of_syms;
>> +
>> +#define INTEL_LOBF_DEBUG_MODE_MASK           0x0f
>
> 0x1?
>
> BR,
>
> Jouni Högander
>
>> +#define INTEL_LOBF_DEBUG_DEFAULT             0x00
>> +#define INTEL_LOBF_DEBUG_DISABLE             0x01
>> +             u8 lobf_debug;
>>       } alpm_parameters;
>>
>>       u8 alpm_dpcd;
>

-- 
Jani Nikula, Intel

  reply	other threads:[~2025-03-12 14:58 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-03-03  8:35 [PATCH v5 0/8] LOBF enablement fix Animesh Manna
2025-03-03  8:35 ` [PATCH v5 1/8] drm/i915/lobf: Add lobf enablement in post plane update Animesh Manna
2025-03-03  8:35 ` [PATCH v5 2/8] drm/i915/lobf: Disintegrate alpm_disable from psr_disable Animesh Manna
2025-03-03  8:35 ` [PATCH v5 3/8] drm/i915/lobf: Add fixed refresh rate check in compute_config() Animesh Manna
2025-03-03  8:35 ` [PATCH v5 4/8] drm/i915/lobf: Update lobf if any change in dependent parameters Animesh Manna
2025-03-07 13:32   ` Hogander, Jouni
2025-03-03  8:35 ` [PATCH v5 5/8] drm/i915/lobf: Add debug interface for lobf Animesh Manna
2025-03-07 13:37   ` Hogander, Jouni
2025-03-12 14:58     ` Jani Nikula [this message]
2025-03-03  8:35 ` [PATCH v5 6/8] drm/i915/lobf: Check for sink error and disable LOBF Animesh Manna
2025-03-07 14:01   ` Hogander, Jouni
2025-03-03  8:35 ` [PATCH v5 7/8] drm/i915/lobf: Add mutex for alpm update Animesh Manna
2025-03-03  8:35 ` [PATCH v5 8/8] drm/i915/lobf: Add debug print for LOBF Animesh Manna
2025-03-03  9:05 ` ✓ CI.Patch_applied: success for LOBF enablement fix (rev4) Patchwork
2025-03-03  9:06 ` ✗ CI.checkpatch: warning " Patchwork
2025-03-03  9:07 ` ✓ CI.KUnit: success " Patchwork
2025-03-03  9:23 ` ✓ CI.Build: " Patchwork
2025-03-03  9:26 ` ✓ CI.Hooks: " Patchwork
2025-03-03  9:27 ` ✗ CI.checksparse: warning " Patchwork
2025-03-03  9:46 ` ✓ Xe.CI.BAT: success " Patchwork
2025-03-03  9:54 ` ✗ Fi.CI.CHECKPATCH: warning for LOBF enablement fix (rev5) Patchwork
2025-03-03  9:55 ` ✗ Fi.CI.SPARSE: " Patchwork
2025-03-03 10:15 ` ✓ i915.CI.BAT: success " Patchwork
2025-03-03 10:59 ` ✗ Xe.CI.Full: failure for LOBF enablement fix (rev4) Patchwork
2025-03-03 11:59 ` ✗ i915.CI.Full: failure for LOBF enablement fix (rev5) Patchwork

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87r032e1o2.fsf@intel.com \
    --to=jani.nikula@intel.com \
    --cc=animesh.manna@intel.com \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=intel-xe@lists.freedesktop.org \
    --cc=jeevan.b@intel.com \
    --cc=jouni.hogander@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.