diff options
| author | Thomas Zimmermann <tzimmermann@suse.de> | 2025-11-26 17:03:23 +0100 |
|---|---|---|
| committer | Ard Biesheuvel <ardb@kernel.org> | 2025-12-16 14:12:44 +0100 |
| commit | 4fcae635887195d6ecc427d503d7671ca46bc11b (patch) | |
| tree | 31a42454f03c299d19f655fe42a6328d4ef332f0 /drivers/gpu/drm/sysfb | |
| parent | 08e583ad68577ff5135d2b6fad1d3b4b400074a5 (diff) | |
| download | lwn-4fcae635887195d6ecc427d503d7671ca46bc11b.tar.gz lwn-4fcae635887195d6ecc427d503d7671ca46bc11b.zip | |
sysfb: Move edid_info into sysfb_primary_display
Move x86's edid_info into sysfb_primary_display as a new field named
edid. Adapt all users.
An instance of edid_info has only been defined on x86. With the move
into sysfb_primary_display, it becomes available on all architectures.
Therefore remove this contraint from CONFIG_FIRMWARE_EDID.
x86 fills the EDID data from boot_params.edid_info. DRM drivers pick
up the raw data and make it available to DRM clients. Replace the
drivers' references to edid_info and instead use the sysfb_display_info
as passed from sysfb.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Ard Biesheuvel <ardb@kernel.org>
Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
Diffstat (limited to 'drivers/gpu/drm/sysfb')
| -rw-r--r-- | drivers/gpu/drm/sysfb/efidrm.c | 5 | ||||
| -rw-r--r-- | drivers/gpu/drm/sysfb/vesadrm.c | 5 |
2 files changed, 4 insertions, 6 deletions
diff --git a/drivers/gpu/drm/sysfb/efidrm.c b/drivers/gpu/drm/sysfb/efidrm.c index 29533ae8fbbf..50e0aeef709c 100644 --- a/drivers/gpu/drm/sysfb/efidrm.c +++ b/drivers/gpu/drm/sysfb/efidrm.c @@ -24,7 +24,6 @@ #include <drm/drm_print.h> #include <drm/drm_probe_helper.h> -#include <video/edid.h> #include <video/pixel_format.h> #include "drm_sysfb_helper.h" @@ -207,8 +206,8 @@ static struct efidrm_device *efidrm_device_create(struct drm_driver *drv, &format->format, width, height, stride); #if defined(CONFIG_FIRMWARE_EDID) - if (drm_edid_header_is_valid(edid_info.dummy) == 8) - sysfb->edid = edid_info.dummy; + if (drm_edid_header_is_valid(dpy->edid.dummy) == 8) + sysfb->edid = dpy->edid.dummy; #endif sysfb->fb_mode = drm_sysfb_mode(width, height, 0, 0); sysfb->fb_format = format; diff --git a/drivers/gpu/drm/sysfb/vesadrm.c b/drivers/gpu/drm/sysfb/vesadrm.c index 16fc223f8c5b..0680638b8131 100644 --- a/drivers/gpu/drm/sysfb/vesadrm.c +++ b/drivers/gpu/drm/sysfb/vesadrm.c @@ -25,7 +25,6 @@ #include <drm/drm_print.h> #include <drm/drm_probe_helper.h> -#include <video/edid.h> #include <video/pixel_format.h> #include <video/vga.h> @@ -474,8 +473,8 @@ static struct vesadrm_device *vesadrm_device_create(struct drm_driver *drv, } #if defined(CONFIG_FIRMWARE_EDID) - if (drm_edid_header_is_valid(edid_info.dummy) == 8) - sysfb->edid = edid_info.dummy; + if (drm_edid_header_is_valid(dpy->edid.dummy) == 8) + sysfb->edid = dpy->edid.dummy; #endif sysfb->fb_mode = drm_sysfb_mode(width, height, 0, 0); sysfb->fb_format = format; |
