Re: [01/12] efi: Do not include <linux/screen_info.h> from EFI header
From: Thomas Zimmermann <tzimmermann@suse.de>
Date: 2023-07-05 08:00:20
Also in:
dri-devel, linux-alpha, linux-arch, linux-arm-kernel, linux-efi, linux-hyperv, linux-mips, linux-riscv, linux-sh, linux-staging, linuxppc-dev, lkml, loongarch, sparclinux
Hi Am 05.07.23 um 03:40 schrieb Sui Jingfeng:
Hi, Thomas I love your patch, LoongArch also have UEFI GOP support, Maybe the arch/loongarch/kernel/efi.c don't include the '#include <linux/screen_info.h>' explicitly.
Oh, thank you for testing. I try to build arch/ changes on all of the affected platforms, but I cannot build for all of them. I have no means of building for loongarch ATM. I'll update the patch according to your feedback. Best regards Thomas
diff --git a/arch/loongarch/kernel/efi.c b/arch/loongarch/kernel/efi.c index 3d448fef3af4..04f4d217aefb 100644 --- a/arch/loongarch/kernel/efi.c +++ b/arch/loongarch/kernel/efi.c @@ -19,6 +19,7 @@ #include <linux/memblock.h> #include <linux/reboot.h> #include <linux/uaccess.h> +#include <linux/screen_info.h> #include <asm/early_ioremap.h> #include <asm/efi.h>On 2023/6/29 19:45, Thomas Zimmermann wrote:quoted
The header file <linux/efi.h> does not need anything from <linux/screen_info.h>. Declare struct screen_info and remove the include statements. Update a number of source files that require struct screen_info's definition. Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de> Cc: Ard Biesheuvel <ardb@kernel.org> Cc: Russell King <linux@armlinux.org.uk> Cc: Catalin Marinas <catalin.marinas@arm.com> Cc: Will Deacon <will@kernel.org> Reviewed-by: Javier Martinez Canillas <javierm@redhat.com>With the above issue solved, please take my R-B if you would like. Reviewed-by: Sui Jingfeng <redacted>quoted
--- arch/arm/kernel/efi.c | 2 ++ arch/arm64/kernel/efi.c | 1 + drivers/firmware/efi/libstub/efi-stub-entry.c | 2 ++ drivers/firmware/efi/libstub/screen_info.c | 2 ++ include/linux/efi.h | 3 ++- 5 files changed, 9 insertions(+), 1 deletion(-)diff --git a/arch/arm/kernel/efi.c b/arch/arm/kernel/efi.c index e2b9d2618c672..e94655ef16bb3 100644 --- a/arch/arm/kernel/efi.c +++ b/arch/arm/kernel/efi.c@@ -5,6 +5,8 @@#include <linux/efi.h> #include <linux/memblock.h> +#include <linux/screen_info.h> + #include <asm/efi.h> #include <asm/mach/map.h> #include <asm/mmu_context.h>diff --git a/arch/arm64/kernel/efi.c b/arch/arm64/kernel/efi.c index baab8dd3ead3c..3afbe503b066f 100644 --- a/arch/arm64/kernel/efi.c +++ b/arch/arm64/kernel/efi.c@@ -9,6 +9,7 @@#include <linux/efi.h> #include <linux/init.h> +#include <linux/screen_info.h> #include <asm/efi.h> #include <asm/stacktrace.h>diff --git a/drivers/firmware/efi/libstub/efi-stub-entry.cb/drivers/firmware/efi/libstub/efi-stub-entry.c index cc4dcaea67fa6..2f1902e5d4075 100644--- a/drivers/firmware/efi/libstub/efi-stub-entry.c +++ b/drivers/firmware/efi/libstub/efi-stub-entry.c@@ -1,6 +1,8 @@// SPDX-License-Identifier: GPL-2.0-only #include <linux/efi.h> +#include <linux/screen_info.h> + #include <asm/efi.h> #include "efistub.h"diff --git a/drivers/firmware/efi/libstub/screen_info.cb/drivers/firmware/efi/libstub/screen_info.c index 4be1c4d1f922b..a51ec201ca3cb 100644--- a/drivers/firmware/efi/libstub/screen_info.c +++ b/drivers/firmware/efi/libstub/screen_info.c@@ -1,6 +1,8 @@// SPDX-License-Identifier: GPL-2.0 #include <linux/efi.h> +#include <linux/screen_info.h> + #include <asm/efi.h> #include "efistub.h"diff --git a/include/linux/efi.h b/include/linux/efi.h index 571d1a6e1b744..360895a5572c0 100644 --- a/include/linux/efi.h +++ b/include/linux/efi.h@@ -24,10 +24,11 @@#include <linux/range.h> #include <linux/reboot.h> #include <linux/uuid.h> -#include <linux/screen_info.h> #include <asm/page.h> +struct screen_info; + #define EFI_SUCCESS 0 #define EFI_LOAD_ERROR ( 1 | (1UL << (BITS_PER_LONG-1))) #define EFI_INVALID_PARAMETER ( 2 | (1UL << (BITS_PER_LONG-1)))
-- Thomas Zimmermann Graphics Driver Developer SUSE Software Solutions Germany GmbH Frankenstrasse 146, 90461 Nuernberg, Germany GF: Ivo Totev, Andrew Myers, Andrew McDonald, Boudien Moerman HRB 36809 (AG Nuernberg)
Attachments
- OpenPGP_signature [application/pgp-signature] 840 bytes