linux/include/video
Thomas Zimmermann 32ae90c66f drm/sysfb: Add efidrm for EFI displays
Add support for screen_info setups with VIDEO_TYPE_EFI. Provide the
minimum functionality of reading modes, updating and clearing the display.

There is existing support for these displays provided by simpledrm with
CONFIG_SYSFB_SIMPLEFB=y. Using efidrm over simpledrm will allows for the
mapping of video memory with correct caching. Simpledrm always assumes WC
caching, while fully cached memory is possible with efidrm. Efidrm will
also allow for the use of additional functionality provided by EFI, such
as EDID information.

In addition to efidrm, add struct pixel_format plus initializer macros.
The type and macros describe pixel formats in a generic way on order to
find the DRM format from the screen_info settings. Similar existing code
in SIMPLEFB_FORMATS and fbdev is not really what is needed in efidrm,
but SIMPLEFB_FORMATS can later be converted to struct pixel_format.

v4:
- depend on CONFIG_EFI
- disallow module for now as efi_mem_desc_lookup() is not exported
v3:
- depend on !SYSFB_SIMPLEFB (Javier)

Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com>
Link: https://lore.kernel.org/r/20250401094056.32904-15-tzimmermann@suse.de
2025-04-07 11:02:07 +02:00
..
atmel_lcdc.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
aty128.h
broadsheetfb.h
cirrus.h
cmdline.h video/cmdline: Hide __video_get_options() behind CONFIG_FB_CORE 2024-01-23 10:11:34 +01:00
cvisionppc.h
display_timing.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 428 2019-06-05 17:37:16 +02:00
edid.h
gbe.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 351 2019-06-05 17:37:08 +02:00
hecubafb.h
ili9320.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
imx-ipu-image-convert.h gpu: ipu-v3: Remove unused ipu_image_convert_* functions 2025-03-01 11:29:03 +02:00
imx-ipu-v3.h gpu: ipu-v3 ipu-cpmem: Remove unused functions 2025-03-01 11:29:03 +02:00
kyro.h fbdev: kyro: Remove unused declarations 2023-08-15 23:39:33 +02:00
mach64.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
maxinefb.h
metronomefb.h
mipi_display.h drm/dsi: rename MIPI_DCS_SET_PARTIAL_AREA to MIPI_DCS_SET_PARTIAL_ROWS 2019-11-07 14:59:56 +02:00
mmp_disp.h fbdev: mmp: Constify struct mmp_overlay_ops 2024-06-25 14:40:01 +02:00
neomagic.h
newport.h
nomodeset.h drm: Move nomodeset kernel parameter to drivers/video 2022-11-16 13:26:12 +01:00
of_display_timing.h video: of_display_timing.h: include errno.h 2022-07-06 17:16:20 +02:00
of_videomode.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 428 2019-06-05 17:37:16 +02:00
omapfb_dss.h fbdev: omapfb: use new of_graph functions 2024-10-24 16:35:48 -05:00
omapvrfb.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 333 2019-06-05 17:37:06 +02:00
permedia2.h
pixel_format.h drm/sysfb: Add efidrm for EFI displays 2025-04-07 11:02:07 +02:00
platform_lcd.h backlight: platform_lcd: Remove match_fb from struct plat_lcd_data 2024-09-30 16:49:42 +01:00
pm3fb.h
pmag-ba-fb.h
pmagb-b-fb.h
pxa168fb.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
radeon.h video: fbdev: radeon: Fix spelling typo in comment 2022-05-26 13:38:59 +02:00
s1d13xxxfb.h
sa1100fb.h
samsung_fimd.h drm/exynos: fimd: add BGR support for exynos4/5 2022-03-04 17:13:52 +09:00
sh_mobile_lcdc.h video: fbdev: sh_mobile_lcdcfb: remove unused MERAM support 2018-05-14 15:47:30 +02:00
sisfb.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 27 2019-05-24 17:27:10 +02:00
sstfb.h video: fbdev: sstfb: Updated logging to fix set but not used warnings 2020-11-30 20:04:59 +01:00
sticore.h video/sticore: Remove info field from STI struct 2024-01-12 12:38:37 +01:00
tdfx.h
tgafb.h
trident.h
udlfb.h udlfb: introduce a rendering mutex 2019-04-01 17:46:57 +02:00
uvesafb.h fbdev: uvesafb: Remove uvesafb_exec() prototype from include/video/uvesafb.h 2023-10-16 23:19:34 +02:00
vga.h video: Handle HAS_IOPORT dependencies 2024-07-29 10:16:11 +02:00
videomode.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 428 2019-06-05 17:37:16 +02:00