Intel-GFX Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Jani Nikula <jani.nikula@intel.com>
To: Alex Hung <alex.hung@amd.com>, Alex Deucher <alexdeucher@gmail.com>
Cc: Leo Li <sunpeng.li@amd.com>,
	intel-gfx@lists.freedesktop.org,
	Rodrigo Siqueira <Rodrigo.Siqueira@amd.com>,
	amd-gfx@lists.freedesktop.org, "Wang,
	Yu \(Charlie\)" <Yu.Wang4@amd.com>,
	Daniel Wheeler <daniel.wheeler@amd.com>,
	Hersen Wu <hersenxs.wu@amd.com>,
	dri-devel@lists.freedesktop.org,
	Wenchieh Chien <wenchieh.chien@amd.com>,
	Alex Deucher <alexander.deucher@amd.com>
Subject: Re: [Intel-gfx] [PATCH 0/4] drm/amd/display: stop using drm_edid_override_connector_update()
Date: Wed, 30 Aug 2023 10:29:46 +0300	[thread overview]
Message-ID: <87h6oh0yz9.fsf@intel.com> (raw)
In-Reply-To: <1e6aa1ff-9aa9-6b2f-84f4-e0304205085c@amd.com>

On Tue, 29 Aug 2023, Alex Hung <alex.hung@amd.com> wrote:
> On 2023-08-29 11:03, Jani Nikula wrote:
>> On Tue, 29 Aug 2023, Jani Nikula <jani.nikula@intel.com> wrote:
>>> On Tue, 29 Aug 2023, Alex Deucher <alexdeucher@gmail.com> wrote:
>>>> On Tue, Aug 29, 2023 at 6:48 AM Jani Nikula <jani.nikula@intel.com> wrote:
>>>>>
>>>>> On Wed, 23 Aug 2023, Jani Nikula <jani.nikula@intel.com> wrote:
>>>>>> On Tue, 22 Aug 2023, Alex Hung <alex.hung@amd.com> wrote:
>>>>>>> On 2023-08-22 06:01, Jani Nikula wrote:
>>>>>>>> Over the past years I've been trying to unify the override and firmware
>>>>>>>> EDID handling as well as EDID property updates. It won't work if drivers
>>>>>>>> do their own random things.
>>>>>>> Let's check how to replace these references by appropriate ones or fork
>>>>>>> the function as reverting these patches causes regressions.
>>>>>>
>>>>>> I think the fundamental problem you have is conflating connector forcing
>>>>>> with EDID override. They're orthogonal. The .force callback has no
>>>>>> business basing the decisions on connector->edid_override. Force is
>>>>>> force, override is override.
>>>>>>
>>>>>> The driver isn't even supposed to know or care if the EDID originates
>>>>>> from the firmware loader or override EDID debugfs. drm_get_edid() will
>>>>>> handle that for you transparently. It'll return the EDID, and you
>>>>>> shouldn't look at connector->edid_blob_ptr either. Using that will make
>>>>>> future work in drm_edid.c harder.
>>>>>>
>>>>>> You can't fix that with minor tweaks. I think you'll be better off
>>>>>> starting from scratch.
>>>>>>
>>>>>> Also, connector->edid_override is debugfs. You actually can change the
>>>>>> behaviour. If your userspace, whatever it is, has been written to assume
>>>>>> connector forcing if EDID override is set, you *do* have to fix that,
>>>>>> and set both.
>>>>>
>>>>> Any updates on fixing this, or shall we proceed with the reverts?
>
> There is a patch under internal reviews. It removes calls edid_override 
> and drm_edid_override_connector_update as intended in this patchset but 
> does not remove the functionality.

While I am happy to hear there's progress, I'm somewhat baffled the
review is internal. The commits that I suggested to revert were also
only reviewed internally, as far as I can see... And that's kind of the
problem.

Upstream code should be reviewed in public.


BR,
Jani.


>
> With the patch. both following git grep commands return nothing in 
> amd-staging-drm-next.
>
> $ git grep drm_edid_override_connector_update -- drivers/gpu/drm/amd
> $ git grep edid_override -- drivers/gpu/drm/amd
>
> Best regards,
> Alex Hung
>
>>>>
>>>> What is the goal of the reverts?  I don't disagree that we may be
>>>> using the interfaces wrong, but reverting them will regess
>>>> functionality in the driver.
>>>
>>> The commits are in v6.5-rc1, but not yet in a release. No user depends
>>> on them yet. I'd strongly prefer them not reaching v6.5 final and users.
>> 
>> Sorry for confusion here, that's obviously come and gone already. :(
>> 
>>> The firmware EDID, override EDID, connector forcing, the EDID property,
>>> etc. have been and somewhat still are a hairy mess that we must keep
>>> untangling, and this isn't helping.
>>>
>>> I've put in crazy amounts of work on this, and I've added kernel-doc
>>> comments about stuff that should and should not be done, but they go
>>> unread and ignored.
>>>
>>> I really don't want to end up having to clean this up myself before I
>>> can embark on further cleanups and refactoring.
>>>
>>> And again, if the functionality in the driver depends on conflating two
>>> things that should be separate, it's probably not such a hot idea to let
>>> it reach users either. Even if it's just debugfs.
>>>
>>>
>>> BR,
>>> Jani.
>> 

-- 
Jani Nikula, Intel Open Source Graphics Center

  reply	other threads:[~2023-08-30  7:29 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-08-22 12:01 [Intel-gfx] [PATCH 0/4] drm/amd/display: stop using drm_edid_override_connector_update() Jani Nikula
2023-08-22 12:01 ` [Intel-gfx] [PATCH 1/4] Revert "drm/amd/display: drop unused count variable in create_eml_sink()" Jani Nikula
2023-08-22 12:01 ` [Intel-gfx] [PATCH 2/4] Revert "drm/amd/display: assign edid_blob_ptr with edid from debugfs" Jani Nikula
2023-08-22 12:01 ` [Intel-gfx] [PATCH 3/4] Revert "drm/amd/display: mark amdgpu_dm_connector_funcs_force static" Jani Nikula
2023-08-22 12:01 ` [Intel-gfx] [PATCH 4/4] Revert "drm/amd/display: implement force function in amdgpu_dm_connector_funcs" Jani Nikula
2023-08-22 12:06   ` Jani Nikula
2023-08-22 13:22 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for drm/amd/display: stop using drm_edid_override_connector_update() Patchwork
2023-08-22 13:22 ` [Intel-gfx] ✗ Fi.CI.SPARSE: " Patchwork
2023-08-22 13:35 ` [Intel-gfx] ✗ Fi.CI.BAT: failure " Patchwork
2023-08-22 19:38 ` [Intel-gfx] [PATCH 0/4] " Alex Hung
2023-08-23  8:03   ` Jani Nikula
2023-08-29 10:48     ` Jani Nikula
2023-08-29 15:29       ` Wu, Hersen
2023-08-29 15:44       ` Alex Deucher
2023-08-29 16:01         ` Wu, Hersen
2023-08-29 16:20         ` Jani Nikula
2023-08-29 17:03           ` Jani Nikula
2023-08-29 18:53             ` Alex Hung
2023-08-30  7:29               ` Jani Nikula [this message]
2023-08-30  9:42                 ` Daniel Vetter
2023-08-31 22:01                 ` Alex Hung
2023-09-01 12:27                   ` Jani Nikula
2023-09-01 19:00                   ` Alex Deucher
2023-09-04  7:57                     ` Daniel Vetter
2023-08-23  1:14 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for drm/amd/display: stop using drm_edid_override_connector_update() (rev2) Patchwork
2023-08-23  1:14 ` [Intel-gfx] ✗ Fi.CI.SPARSE: " Patchwork
2023-08-23  1:32 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork
2023-08-23 10:43 ` [Intel-gfx] ✓ Fi.CI.IGT: " 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=87h6oh0yz9.fsf@intel.com \
    --to=jani.nikula@intel.com \
    --cc=Rodrigo.Siqueira@amd.com \
    --cc=Yu.Wang4@amd.com \
    --cc=alex.hung@amd.com \
    --cc=alexander.deucher@amd.com \
    --cc=alexdeucher@gmail.com \
    --cc=amd-gfx@lists.freedesktop.org \
    --cc=daniel.wheeler@amd.com \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=hersenxs.wu@amd.com \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=sunpeng.li@amd.com \
    --cc=wenchieh.chien@amd.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox