All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v3 0/5] Add support for fetching EDID from ACPI _DDC
@ 2024-02-01 22:11 Mario Limonciello
  2024-02-01 22:11 ` [PATCH v3 1/5] ACPI: video: Handle fetching EDID that is longer than 256 bytes Mario Limonciello
                   ` (4 more replies)
  0 siblings, 5 replies; 14+ messages in thread
From: Mario Limonciello @ 2024-02-01 22:11 UTC (permalink / raw)
  To: amd-gfx, Alex Deucher, Harry Wentland, Rafael J . Wysocki,
	Hans de Goede
  Cc: open list:ACPI, open list, open list:DRM DRIVERS, Melissa Wen,
	Mark Pearson, Mario Limonciello

Some laptops ship an EDID in the BIOS encoded in the _DDC method that
differs than the EDID directly on the laptop panel for $REASONS.

This is the EDID that is used by the AMD Windows driver, and so sometimes
different results are found in different operating systems.

This series adds a new DRM helper that will use acpi_video to fetch the
EDID.

On amdgpu when an eDP panel is found the BIOS
is checked first for an EDID and that used as a preference if found.

On nouveau it replaces the previous local function doing a similar role.

This does *not* use struct drm_edid as this will require more involved
amdgpu display driver work that will come separately as part of follow-ups
to: https://lore.kernel.org/amd-gfx/20240126163429.56714-1-mwen@igalia.com/

v2-v3:
 * Clean up some of the 'select ACPI_VIDEO' kconfig spaghetti reported by LKP
 * Drop the 'select ACPI_VIDEO' from the DRM drivers

Mario Limonciello (5):
  ACPI: video: Handle fetching EDID that is longer than 256 bytes
  drm: Add drm_get_acpi_edid() helper
  drm/amd: Fetch the EDID from _DDC if available for eDP
  drm/nouveau: Use drm_get_acpi_edid() helper
  drm: Drop unneeded selects in DRM drivers

 drivers/acpi/acpi_video.c                     | 25 +++----
 drivers/gpu/drm/Kconfig                       |  5 ++
 drivers/gpu/drm/amd/amdgpu/Kconfig            |  7 --
 drivers/gpu/drm/amd/amdgpu/amdgpu.h           |  1 +
 .../gpu/drm/amd/amdgpu/amdgpu_connectors.c    |  4 +
 drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c       |  8 ++
 .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 10 ++-
 .../amd/display/amdgpu_dm/amdgpu_dm_helpers.c |  9 ++-
 drivers/gpu/drm/drm_edid.c                    | 73 +++++++++++++++++++
 drivers/gpu/drm/gma500/Kconfig                |  6 --
 drivers/gpu/drm/i915/Kconfig                  |  7 --
 drivers/gpu/drm/nouveau/nouveau_acpi.c        | 27 -------
 drivers/gpu/drm/nouveau/nouveau_acpi.h        |  2 -
 drivers/gpu/drm/nouveau/nouveau_connector.c   |  2 +-
 drivers/gpu/drm/radeon/Kconfig                |  7 --
 drivers/gpu/drm/xe/Kconfig                    |  6 --
 include/drm/drm_edid.h                        |  1 +
 17 files changed, 116 insertions(+), 84 deletions(-)

-- 
2.34.1


^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2024-02-06 19:43 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-02-01 22:11 [PATCH v3 0/5] Add support for fetching EDID from ACPI _DDC Mario Limonciello
2024-02-01 22:11 ` [PATCH v3 1/5] ACPI: video: Handle fetching EDID that is longer than 256 bytes Mario Limonciello
2024-02-02 16:07   ` Rafael J. Wysocki
2024-02-02 16:09     ` Mario Limonciello
2024-02-06 19:43       ` Rafael J. Wysocki
2024-02-01 22:11 ` [PATCH v3 2/5] drm: Add drm_get_acpi_edid() helper Mario Limonciello
2024-02-02 10:24   ` Pranjal Ramajor Asha Kanojiya
2024-02-02 10:29   ` Jani Nikula
2024-02-02 15:19     ` Mario Limonciello
2024-02-01 22:11 ` [PATCH v3 3/5] drm/amd: Fetch the EDID from _DDC if available for eDP Mario Limonciello
2024-02-03 12:53   ` kernel test robot
2024-02-01 22:11 ` [PATCH v3 4/5] drm/nouveau: Use drm_get_acpi_edid() helper Mario Limonciello
2024-02-01 22:11 ` [PATCH v3 5/5] drm: Drop unneeded selects in DRM drivers Mario Limonciello
2024-02-02 10:12   ` Pranjal Ramajor Asha Kanojiya

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.