Message ID | 20201211171421.4048499-2-gwan-gyeong.mun@intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [v5,1/2] drm/i915/display: Support PSR Multiple Transcoders | expand |
On 2020-12-11 at 19:14:21 +0200, Gwan-gyeong Mun wrote: > In order to support the PSR state of each transcoder, it adds > i915_psr_status to sub-directory of each transcoder. > > v2: Change using of Symbolic permissions 'S_IRUGO' to using of octal > permissions '0444' > v5: Addressed JJani Nikula's review comments > - Remove checking of Gen12 for i915_psr_status. > - Add check of HAS_PSR() > - Remove meaningless check routine. > > Signed-off-by: Gwan-gyeong Mun <gwan-gyeong.mun@intel.com> > Cc: José Roberto de Souza <jose.souza@intel.com> > Cc: Jani Nikula <jani.nikula@intel.com> > Cc: Anshuman Gupta <anshuman.gupta@intel.com> > --- > .../gpu/drm/i915/display/intel_display_debugfs.c | 16 ++++++++++++++++ > 1 file changed, 16 insertions(+) > > diff --git a/drivers/gpu/drm/i915/display/intel_display_debugfs.c b/drivers/gpu/drm/i915/display/intel_display_debugfs.c > index 041053167d7f..d2dd61c4ee0b 100644 > --- a/drivers/gpu/drm/i915/display/intel_display_debugfs.c > +++ b/drivers/gpu/drm/i915/display/intel_display_debugfs.c > @@ -2224,6 +2224,16 @@ static int i915_hdcp_sink_capability_show(struct seq_file *m, void *data) > } > DEFINE_SHOW_ATTRIBUTE(i915_hdcp_sink_capability); > > +static int i915_psr_status_show(struct seq_file *m, void *data) > +{ > + struct drm_connector *connector = m->private; > + struct intel_dp *intel_dp = > + intel_attached_dp(to_intel_connector(connector)); > + > + return intel_psr_status(m, intel_dp); > +} > +DEFINE_SHOW_ATTRIBUTE(i915_psr_status); > + > #define LPSP_CAPABLE(COND) (COND ? seq_puts(m, "LPSP: capable\n") : \ > seq_puts(m, "LPSP: incapable\n")) > > @@ -2399,6 +2409,12 @@ int intel_connector_debugfs_add(struct drm_connector *connector) > connector, &i915_psr_sink_status_fops); > } > > + if (HAS_PSR(dev_priv) && > + connector->connector_type == DRM_MODE_CONNECTOR_eDP) { > + debugfs_create_file("i915_psr_status", 0444, root, Could we keep the file name as i915_edp_psr_status, as we have today? with that addressed. Reviewed-by: Anshuman Gupta <anshuman.gupta@intel.com> > + connector, &i915_psr_status_fops); > + } > + > if (connector->connector_type == DRM_MODE_CONNECTOR_DisplayPort || > connector->connector_type == DRM_MODE_CONNECTOR_HDMIA || > connector->connector_type == DRM_MODE_CONNECTOR_HDMIB) { > -- > 2.25.0 >
On Mon, 14 Dec 2020, Anshuman Gupta <anshuman.gupta@intel.com> wrote: > On 2020-12-11 at 19:14:21 +0200, Gwan-gyeong Mun wrote: >> In order to support the PSR state of each transcoder, it adds >> i915_psr_status to sub-directory of each transcoder. >> >> v2: Change using of Symbolic permissions 'S_IRUGO' to using of octal >> permissions '0444' >> v5: Addressed JJani Nikula's review comments >> - Remove checking of Gen12 for i915_psr_status. >> - Add check of HAS_PSR() >> - Remove meaningless check routine. >> >> Signed-off-by: Gwan-gyeong Mun <gwan-gyeong.mun@intel.com> >> Cc: José Roberto de Souza <jose.souza@intel.com> >> Cc: Jani Nikula <jani.nikula@intel.com> >> Cc: Anshuman Gupta <anshuman.gupta@intel.com> >> --- >> .../gpu/drm/i915/display/intel_display_debugfs.c | 16 ++++++++++++++++ >> 1 file changed, 16 insertions(+) >> >> diff --git a/drivers/gpu/drm/i915/display/intel_display_debugfs.c b/drivers/gpu/drm/i915/display/intel_display_debugfs.c >> index 041053167d7f..d2dd61c4ee0b 100644 >> --- a/drivers/gpu/drm/i915/display/intel_display_debugfs.c >> +++ b/drivers/gpu/drm/i915/display/intel_display_debugfs.c >> @@ -2224,6 +2224,16 @@ static int i915_hdcp_sink_capability_show(struct seq_file *m, void *data) >> } >> DEFINE_SHOW_ATTRIBUTE(i915_hdcp_sink_capability); >> >> +static int i915_psr_status_show(struct seq_file *m, void *data) >> +{ >> + struct drm_connector *connector = m->private; >> + struct intel_dp *intel_dp = >> + intel_attached_dp(to_intel_connector(connector)); >> + >> + return intel_psr_status(m, intel_dp); >> +} >> +DEFINE_SHOW_ATTRIBUTE(i915_psr_status); >> + >> #define LPSP_CAPABLE(COND) (COND ? seq_puts(m, "LPSP: capable\n") : \ >> seq_puts(m, "LPSP: incapable\n")) >> >> @@ -2399,6 +2409,12 @@ int intel_connector_debugfs_add(struct drm_connector *connector) >> connector, &i915_psr_sink_status_fops); >> } >> >> + if (HAS_PSR(dev_priv) && >> + connector->connector_type == DRM_MODE_CONNECTOR_eDP) { >> + debugfs_create_file("i915_psr_status", 0444, root, > Could we keep the file name as i915_edp_psr_status, as we have today? > with that addressed. Depends on whether the plan is to use the same file for regular DP panel replay in the future. Then edp would be misleading. BR, Jani. > Reviewed-by: Anshuman Gupta <anshuman.gupta@intel.com> >> + connector, &i915_psr_status_fops); >> + } >> + >> if (connector->connector_type == DRM_MODE_CONNECTOR_DisplayPort || >> connector->connector_type == DRM_MODE_CONNECTOR_HDMIA || >> connector->connector_type == DRM_MODE_CONNECTOR_HDMIB) { >> -- >> 2.25.0 >>
On Mon, 2020-12-14 at 13:35 +0200, Jani Nikula wrote: > On Mon, 14 Dec 2020, Anshuman Gupta <anshuman.gupta@intel.com> wrote: > > On 2020-12-11 at 19:14:21 +0200, Gwan-gyeong Mun wrote: > > > In order to support the PSR state of each transcoder, it adds > > > i915_psr_status to sub-directory of each transcoder. > > > > > > v2: Change using of Symbolic permissions 'S_IRUGO' to using of > > > octal > > > permissions '0444' > > > v5: Addressed JJani Nikula's review comments > > > - Remove checking of Gen12 for i915_psr_status. > > > - Add check of HAS_PSR() > > > - Remove meaningless check routine. > > > > > > Signed-off-by: Gwan-gyeong Mun <gwan-gyeong.mun@intel.com> > > > Cc: José Roberto de Souza <jose.souza@intel.com> > > > Cc: Jani Nikula <jani.nikula@intel.com> > > > Cc: Anshuman Gupta <anshuman.gupta@intel.com> > > > --- > > > .../gpu/drm/i915/display/intel_display_debugfs.c | 16 > > > ++++++++++++++++ > > > 1 file changed, 16 insertions(+) > > > > > > diff --git a/drivers/gpu/drm/i915/display/intel_display_debugfs.c > > > b/drivers/gpu/drm/i915/display/intel_display_debugfs.c > > > index 041053167d7f..d2dd61c4ee0b 100644 > > > --- a/drivers/gpu/drm/i915/display/intel_display_debugfs.c > > > +++ b/drivers/gpu/drm/i915/display/intel_display_debugfs.c > > > @@ -2224,6 +2224,16 @@ static int > > > i915_hdcp_sink_capability_show(struct seq_file *m, void *data) > > > } > > > DEFINE_SHOW_ATTRIBUTE(i915_hdcp_sink_capability); > > > > > > +static int i915_psr_status_show(struct seq_file *m, void *data) > > > +{ > > > + struct drm_connector *connector = m->private; > > > + struct intel_dp *intel_dp = > > > + intel_attached_dp(to_intel_connector(connector)); > > > + > > > + return intel_psr_status(m, intel_dp); > > > +} > > > +DEFINE_SHOW_ATTRIBUTE(i915_psr_status); > > > + > > > #define LPSP_CAPABLE(COND) (COND ? seq_puts(m, "LPSP: > > > capable\n") : \ > > > seq_puts(m, "LPSP: incapable\n")) > > > > > > @@ -2399,6 +2409,12 @@ int intel_connector_debugfs_add(struct > > > drm_connector *connector) > > > connector, > > > &i915_psr_sink_status_fops); > > > } > > > > > > + if (HAS_PSR(dev_priv) && > > > + connector->connector_type == DRM_MODE_CONNECTOR_eDP) { > > > + debugfs_create_file("i915_psr_status", 0444, root, > > Could we keep the file name as i915_edp_psr_status, as we have > > today? > > with that addressed. > > Depends on whether the plan is to use the same file for regular DP > panel > replay in the future. Then edp would be misleading. > yes, Jani points out the right point. The feature between edp PSR and DP PanelReplay is almost the same, therefore this debug file can be used for edp PSR and DP PR. and the feature can not exist at the same time on both edp and dp connector. so I think we don't need to add additional files for a similar feature. > BR, > Jani. > > > Reviewed-by: Anshuman Gupta <anshuman.gupta@intel.com> > > > + connector, &i915_psr_status_fops); > > > + } > > > + > > > if (connector->connector_type == DRM_MODE_CONNECTOR_DisplayPort > > > || > > > connector->connector_type == DRM_MODE_CONNECTOR_HDMIA || > > > connector->connector_type == DRM_MODE_CONNECTOR_HDMIB) { > > > -- > > > 2.25.0 > > >
diff --git a/drivers/gpu/drm/i915/display/intel_display_debugfs.c b/drivers/gpu/drm/i915/display/intel_display_debugfs.c index 041053167d7f..d2dd61c4ee0b 100644 --- a/drivers/gpu/drm/i915/display/intel_display_debugfs.c +++ b/drivers/gpu/drm/i915/display/intel_display_debugfs.c @@ -2224,6 +2224,16 @@ static int i915_hdcp_sink_capability_show(struct seq_file *m, void *data) } DEFINE_SHOW_ATTRIBUTE(i915_hdcp_sink_capability); +static int i915_psr_status_show(struct seq_file *m, void *data) +{ + struct drm_connector *connector = m->private; + struct intel_dp *intel_dp = + intel_attached_dp(to_intel_connector(connector)); + + return intel_psr_status(m, intel_dp); +} +DEFINE_SHOW_ATTRIBUTE(i915_psr_status); + #define LPSP_CAPABLE(COND) (COND ? seq_puts(m, "LPSP: capable\n") : \ seq_puts(m, "LPSP: incapable\n")) @@ -2399,6 +2409,12 @@ int intel_connector_debugfs_add(struct drm_connector *connector) connector, &i915_psr_sink_status_fops); } + if (HAS_PSR(dev_priv) && + connector->connector_type == DRM_MODE_CONNECTOR_eDP) { + debugfs_create_file("i915_psr_status", 0444, root, + connector, &i915_psr_status_fops); + } + if (connector->connector_type == DRM_MODE_CONNECTOR_DisplayPort || connector->connector_type == DRM_MODE_CONNECTOR_HDMIA || connector->connector_type == DRM_MODE_CONNECTOR_HDMIB) {
In order to support the PSR state of each transcoder, it adds i915_psr_status to sub-directory of each transcoder. v2: Change using of Symbolic permissions 'S_IRUGO' to using of octal permissions '0444' v5: Addressed JJani Nikula's review comments - Remove checking of Gen12 for i915_psr_status. - Add check of HAS_PSR() - Remove meaningless check routine. Signed-off-by: Gwan-gyeong Mun <gwan-gyeong.mun@intel.com> Cc: José Roberto de Souza <jose.souza@intel.com> Cc: Jani Nikula <jani.nikula@intel.com> Cc: Anshuman Gupta <anshuman.gupta@intel.com> --- .../gpu/drm/i915/display/intel_display_debugfs.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+)