From: Jani Nikula <jani.nikula@intel.com>
To: Lyude Paul <lyude@redhat.com>, Adam Jackson <ajax@redhat.com>,
"20191004215851.31446-1-shawn.c.lee@intel.com"
<20191004215851.31446-1-shawn.c.lee@intel.com>,
"intel-gfx@lists.freedesktop.org"
<intel-gfx@lists.freedesktop.org>,
"dri-devel@lists.freedesktop.org"
<dri-devel@lists.freedesktop.org>
Cc: "Chiou, Cooper" <cooper.chiou@intel.com>,
Gustavo Padovan <gustavo@padovan.org>
Subject: Re: [Intel-gfx] [PATCH] drm/i915: customize DPCD brightness control for specific panel
Date: Wed, 27 Nov 2019 12:38:20 +0200 [thread overview]
Message-ID: <87muchob8j.fsf@intel.com> (raw)
In-Reply-To: <ef19849f04e05f239c5459bc05a541412792fb58.camel@redhat.com>
On Tue, 26 Nov 2019, Lyude Paul <lyude@redhat.com> wrote:
> I'm about to post some more review comments for the v2 version of this, but
> some comments down below...
>
> On Tue, 2019-10-08 at 12:19 +0300, Jani Nikula wrote:
>> On Mon, 07 Oct 2019, Adam Jackson <ajax@redhat.com> wrote:
>> > On Mon, 2019-10-07 at 12:08 +0300, Jani Nikula wrote:
>> >
>> > > The problem with the EDID quirks is that exposing the quirks sticks out
>> > > like a sore thumb. Thus far all of it has been contained in drm_edid.c
>> > > and they affect how the EDID gets parsed, for all drivers. Obviously
>> > > this could be changed, but is it the right thing to do?
>> > >
>> > > What I suggested was, check the OUI only, and if it matches, do
>> > > more. Perhaps there's something in the 0x300 range of DPCD offsets that
>> > > you can read? Or perhaps you need to write the source OUI first, and
>> > > then do that.
>> >
>> > My issue isn't really with identifying the panel from EDID rather than
>> > DPCD, whichever identifier is most specific is probably the best thing
>> > to use. It's more that this quirk is identified in common code but only
>> > applied in one driver. If this panel were ever to be attached to some
>> > other source, they might well want to apply the same kind of fix. My
>> > (admittedly naïve) reading of the OUI handshake process is that when
>> > the source device writes an OUI to DP_SOURCE_OUI it is telling the sink
>> > "I'm about to issue commands that conform to _this_ vendor's own
>> > conventions". If that convention communicates information that is
>> > entirely contained within AUXCH transactions (and doesn't, for example,
>> > require looking at some other strapping pin or external device) then in
>> > principle it doesn't matter if the source device "matches" that OUI; it
>> > would be legal for an AMD GPU to write the same sequence and expect the
>> > same reaction, should that panel be attached to an AMD GPU.
>> >
>> > So, it would be nice to know exactly what that protocol is meant to do,
>> > if it applies only to this specific panel or anything else with the
>> > same TCON, how one would identify such TCONs in the wild other than
>> > EDID, if it relies on an external PWM or something, etc. And it might
>> > make sense for now to make this a (shudder) driver-specific EDID quirk
>> > rather than match by DPCD, at least until we know if the panel is ever
>> > seen attached to other source devices and if the OUI convention is
>> > self-contained.
>>
>> Thanks for clarifying. Pretty much agreed, unfortunately also on the
>> "would be nice to know more" part...
>>
>> If this were to be an EDID quirk after all, I wonder if it would be
>> better to store the parsed quirks to, say, struct drm_display_info, and
>> have a drm_connector_has_quirk() function similar to drm_dp_has_quirk().
>>
>> This would also allow us to not return quirks from
>> drm_add_display_info(), which would arguably clean up the interface.
>
> Did anyone check if this is specified in the vbios? There appears to be a
> field defined for this right...
>
> enum intel_backlight_type {
> INTEL_BACKLIGHT_PMIC,
> INTEL_BACKLIGHT_LPSS,
> INTEL_BACKLIGHT_DISPLAY_DDI,
> INTEL_BACKLIGHT_DSI_DCS,
> INTEL_BACKLIGHT_PANEL_DRIVER_INTERFACE, /* <- ... over here */
> INTEL_BACKLIGHT_VESA_EDP_AUX_INTERFACE,
> };
Would just need /sys/kernel/debug/dri/0/i915_vbt on the affected machine
to check.
BR,
Jani.
>
>>
>> BR,
>> Jani.
>>
>>
--
Jani Nikula, Intel Open Source Graphics Center
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
WARNING: multiple messages have this Message-ID (diff)
From: Jani Nikula <jani.nikula@intel.com>
To: Lyude Paul <lyude@redhat.com>, Adam Jackson <ajax@redhat.com>,
"20191004215851.31446-1-shawn.c.lee\@intel.com"
<20191004215851.31446-1-shawn.c.lee@intel.com>,
"intel-gfx\@lists.freedesktop.org"
<intel-gfx@lists.freedesktop.org>,
"dri-devel\@lists.freedesktop.org"
<dri-devel@lists.freedesktop.org>
Cc: "Chiou, Cooper" <cooper.chiou@intel.com>,
Gustavo Padovan <gustavo@padovan.org>
Subject: Re: [Intel-gfx] [PATCH] drm/i915: customize DPCD brightness control for specific panel
Date: Wed, 27 Nov 2019 12:38:20 +0200 [thread overview]
Message-ID: <87muchob8j.fsf@intel.com> (raw)
Message-ID: <20191127103820.P1gb5FWvMuL-zTZeHS5x3Ju2LhtSYhFGvr14HFKmXIQ@z> (raw)
In-Reply-To: <ef19849f04e05f239c5459bc05a541412792fb58.camel@redhat.com>
On Tue, 26 Nov 2019, Lyude Paul <lyude@redhat.com> wrote:
> I'm about to post some more review comments for the v2 version of this, but
> some comments down below...
>
> On Tue, 2019-10-08 at 12:19 +0300, Jani Nikula wrote:
>> On Mon, 07 Oct 2019, Adam Jackson <ajax@redhat.com> wrote:
>> > On Mon, 2019-10-07 at 12:08 +0300, Jani Nikula wrote:
>> >
>> > > The problem with the EDID quirks is that exposing the quirks sticks out
>> > > like a sore thumb. Thus far all of it has been contained in drm_edid.c
>> > > and they affect how the EDID gets parsed, for all drivers. Obviously
>> > > this could be changed, but is it the right thing to do?
>> > >
>> > > What I suggested was, check the OUI only, and if it matches, do
>> > > more. Perhaps there's something in the 0x300 range of DPCD offsets that
>> > > you can read? Or perhaps you need to write the source OUI first, and
>> > > then do that.
>> >
>> > My issue isn't really with identifying the panel from EDID rather than
>> > DPCD, whichever identifier is most specific is probably the best thing
>> > to use. It's more that this quirk is identified in common code but only
>> > applied in one driver. If this panel were ever to be attached to some
>> > other source, they might well want to apply the same kind of fix. My
>> > (admittedly naïve) reading of the OUI handshake process is that when
>> > the source device writes an OUI to DP_SOURCE_OUI it is telling the sink
>> > "I'm about to issue commands that conform to _this_ vendor's own
>> > conventions". If that convention communicates information that is
>> > entirely contained within AUXCH transactions (and doesn't, for example,
>> > require looking at some other strapping pin or external device) then in
>> > principle it doesn't matter if the source device "matches" that OUI; it
>> > would be legal for an AMD GPU to write the same sequence and expect the
>> > same reaction, should that panel be attached to an AMD GPU.
>> >
>> > So, it would be nice to know exactly what that protocol is meant to do,
>> > if it applies only to this specific panel or anything else with the
>> > same TCON, how one would identify such TCONs in the wild other than
>> > EDID, if it relies on an external PWM or something, etc. And it might
>> > make sense for now to make this a (shudder) driver-specific EDID quirk
>> > rather than match by DPCD, at least until we know if the panel is ever
>> > seen attached to other source devices and if the OUI convention is
>> > self-contained.
>>
>> Thanks for clarifying. Pretty much agreed, unfortunately also on the
>> "would be nice to know more" part...
>>
>> If this were to be an EDID quirk after all, I wonder if it would be
>> better to store the parsed quirks to, say, struct drm_display_info, and
>> have a drm_connector_has_quirk() function similar to drm_dp_has_quirk().
>>
>> This would also allow us to not return quirks from
>> drm_add_display_info(), which would arguably clean up the interface.
>
> Did anyone check if this is specified in the vbios? There appears to be a
> field defined for this right...
>
> enum intel_backlight_type {
> INTEL_BACKLIGHT_PMIC,
> INTEL_BACKLIGHT_LPSS,
> INTEL_BACKLIGHT_DISPLAY_DDI,
> INTEL_BACKLIGHT_DSI_DCS,
> INTEL_BACKLIGHT_PANEL_DRIVER_INTERFACE, /* <- ... over here */
> INTEL_BACKLIGHT_VESA_EDP_AUX_INTERFACE,
> };
Would just need /sys/kernel/debug/dri/0/i915_vbt on the affected machine
to check.
BR,
Jani.
>
>>
>> BR,
>> Jani.
>>
>>
--
Jani Nikula, Intel Open Source Graphics Center
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
WARNING: multiple messages have this Message-ID (diff)
From: Jani Nikula <jani.nikula@intel.com>
To: Lyude Paul <lyude@redhat.com>, Adam Jackson <ajax@redhat.com>,
"20191004215851.31446-1-shawn.c.lee\@intel.com"
<20191004215851.31446-1-shawn.c.lee@intel.com>,
"intel-gfx\@lists.freedesktop.org"
<intel-gfx@lists.freedesktop.org>,
"dri-devel\@lists.freedesktop.org"
<dri-devel@lists.freedesktop.org>
Cc: "Chiou, Cooper" <cooper.chiou@intel.com>,
Gustavo Padovan <gustavo@padovan.org>
Subject: Re: [Intel-gfx] [PATCH] drm/i915: customize DPCD brightness control for specific panel
Date: Wed, 27 Nov 2019 12:38:20 +0200 [thread overview]
Message-ID: <87muchob8j.fsf@intel.com> (raw)
Message-ID: <20191127103820.ADMJQOzskNs8aGvnSyru0gouC0Miscyd44kAUY1ggsQ@z> (raw)
In-Reply-To: <ef19849f04e05f239c5459bc05a541412792fb58.camel@redhat.com>
On Tue, 26 Nov 2019, Lyude Paul <lyude@redhat.com> wrote:
> I'm about to post some more review comments for the v2 version of this, but
> some comments down below...
>
> On Tue, 2019-10-08 at 12:19 +0300, Jani Nikula wrote:
>> On Mon, 07 Oct 2019, Adam Jackson <ajax@redhat.com> wrote:
>> > On Mon, 2019-10-07 at 12:08 +0300, Jani Nikula wrote:
>> >
>> > > The problem with the EDID quirks is that exposing the quirks sticks out
>> > > like a sore thumb. Thus far all of it has been contained in drm_edid.c
>> > > and they affect how the EDID gets parsed, for all drivers. Obviously
>> > > this could be changed, but is it the right thing to do?
>> > >
>> > > What I suggested was, check the OUI only, and if it matches, do
>> > > more. Perhaps there's something in the 0x300 range of DPCD offsets that
>> > > you can read? Or perhaps you need to write the source OUI first, and
>> > > then do that.
>> >
>> > My issue isn't really with identifying the panel from EDID rather than
>> > DPCD, whichever identifier is most specific is probably the best thing
>> > to use. It's more that this quirk is identified in common code but only
>> > applied in one driver. If this panel were ever to be attached to some
>> > other source, they might well want to apply the same kind of fix. My
>> > (admittedly naïve) reading of the OUI handshake process is that when
>> > the source device writes an OUI to DP_SOURCE_OUI it is telling the sink
>> > "I'm about to issue commands that conform to _this_ vendor's own
>> > conventions". If that convention communicates information that is
>> > entirely contained within AUXCH transactions (and doesn't, for example,
>> > require looking at some other strapping pin or external device) then in
>> > principle it doesn't matter if the source device "matches" that OUI; it
>> > would be legal for an AMD GPU to write the same sequence and expect the
>> > same reaction, should that panel be attached to an AMD GPU.
>> >
>> > So, it would be nice to know exactly what that protocol is meant to do,
>> > if it applies only to this specific panel or anything else with the
>> > same TCON, how one would identify such TCONs in the wild other than
>> > EDID, if it relies on an external PWM or something, etc. And it might
>> > make sense for now to make this a (shudder) driver-specific EDID quirk
>> > rather than match by DPCD, at least until we know if the panel is ever
>> > seen attached to other source devices and if the OUI convention is
>> > self-contained.
>>
>> Thanks for clarifying. Pretty much agreed, unfortunately also on the
>> "would be nice to know more" part...
>>
>> If this were to be an EDID quirk after all, I wonder if it would be
>> better to store the parsed quirks to, say, struct drm_display_info, and
>> have a drm_connector_has_quirk() function similar to drm_dp_has_quirk().
>>
>> This would also allow us to not return quirks from
>> drm_add_display_info(), which would arguably clean up the interface.
>
> Did anyone check if this is specified in the vbios? There appears to be a
> field defined for this right...
>
> enum intel_backlight_type {
> INTEL_BACKLIGHT_PMIC,
> INTEL_BACKLIGHT_LPSS,
> INTEL_BACKLIGHT_DISPLAY_DDI,
> INTEL_BACKLIGHT_DSI_DCS,
> INTEL_BACKLIGHT_PANEL_DRIVER_INTERFACE, /* <- ... over here */
> INTEL_BACKLIGHT_VESA_EDP_AUX_INTERFACE,
> };
Would just need /sys/kernel/debug/dri/0/i915_vbt on the affected machine
to check.
BR,
Jani.
>
>>
>> BR,
>> Jani.
>>
>>
--
Jani Nikula, Intel Open Source Graphics Center
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
next prev parent reply other threads:[~2019-11-27 10:38 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-10-04 21:58 [PATCH] drm/i915: customize DPCD brightness control for specific panel Lee Shawn C
2019-10-04 15:19 ` Adam Jackson
2019-10-04 18:40 ` Jani Nikula
2019-10-07 4:02 ` Lee, Shawn C
2019-10-07 9:08 ` Jani Nikula
2019-10-07 17:38 ` Adam Jackson
2019-10-08 9:19 ` Jani Nikula
2019-11-27 0:02 ` [Intel-gfx] " Lyude Paul
2019-11-27 0:02 ` Lyude Paul
2019-11-27 10:38 ` Jani Nikula [this message]
2019-11-27 10:38 ` Jani Nikula
2019-11-27 10:38 ` Jani Nikula
2019-10-04 17:08 ` ✗ Fi.CI.CHECKPATCH: warning for " Patchwork
2019-10-04 17:34 ` ✓ Fi.CI.BAT: success " Patchwork
2019-10-05 4:06 ` ✗ Fi.CI.IGT: failure " Patchwork
2019-10-09 12:25 ` ✗ Fi.CI.CHECKPATCH: warning for drm/i915: customize DPCD brightness control for specific panel (rev2) Patchwork
2019-10-09 12:56 ` ✗ Fi.CI.BAT: failure " Patchwork
2019-10-09 16:13 ` [PATCH v2] drm/i915: customize DPCD brightness control for specific panel Lee Shawn C
2019-11-27 0:25 ` Lyude Paul
2019-11-27 0:25 ` [Intel-gfx] " Lyude Paul
2019-11-27 0:25 ` Lyude Paul
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=87muchob8j.fsf@intel.com \
--to=jani.nikula@intel.com \
--cc=20191004215851.31446-1-shawn.c.lee@intel.com \
--cc=ajax@redhat.com \
--cc=cooper.chiou@intel.com \
--cc=dri-devel@lists.freedesktop.org \
--cc=gustavo@padovan.org \
--cc=intel-gfx@lists.freedesktop.org \
--cc=lyude@redhat.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.