]> git.ipfire.org Git - thirdparty/linux.git/commit
sysfb: Replace screen_info with sysfb_primary_display
authorThomas Zimmermann <tzimmermann@suse.de>
Wed, 26 Nov 2025 16:03:21 +0000 (17:03 +0100)
committerArd Biesheuvel <ardb@kernel.org>
Tue, 16 Dec 2025 13:12:44 +0000 (14:12 +0100)
commita41e0ab394e42c7c09ddd8155d2cc3ca17bdce55
tree3a374077b091def4f2e40b03a3fdd86abac2e2c7
parentb945922619b77b95a48f254582ed86f33d24f560
sysfb: Replace screen_info with sysfb_primary_display

Replace the global screen_info with sysfb_primary_display of type
struct sysfb_display_info. Adapt all users of screen_info.

Instances of screen_info are defined for x86, loongarch and EFI,
with only one instance compiled into a specific build. Replace all
of them with sysfb_primary_display.

All existing users of screen_info are updated by pointing them to
sysfb_primary_display.screen instead. This introduces some churn to
the code, but has no impact on functionality.

Boot parameters and EFI config tables are unchanged. They transfer
screen_info as before. The logic in EFI's alloc_screen_info() changes
slightly, as it now returns the screen field of sysfb_primary_display.

Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Ard Biesheuvel <ardb@kernel.org>
Acked-by: Bjorn Helgaas <bhelgaas@google.com> # drivers/pci/
Reviewed-by: Richard Lyu <richard.lyu@suse.com>
Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
17 files changed:
arch/arm64/kernel/image-vars.h
arch/loongarch/kernel/efi.c
arch/loongarch/kernel/image-vars.h
arch/riscv/kernel/image-vars.h
arch/x86/kernel/kexec-bzimage64.c
arch/x86/kernel/setup.c
arch/x86/video/video-common.c
drivers/firmware/efi/earlycon.c
drivers/firmware/efi/efi-init.c
drivers/firmware/efi/libstub/efi-stub-entry.c
drivers/firmware/efi/sysfb_efi.c
drivers/firmware/sysfb.c
drivers/hv/vmbus_drv.c
drivers/pci/vgaarb.c
drivers/video/screen_info_pci.c
include/linux/screen_info.h
include/linux/sysfb.h