Message ID | 20230629121952.10559-2-tzimmermann@suse.de (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | arch,fbdev: Move screen_info into arch/ | expand |
Thomas Zimmermann <tzimmermann@suse.de> writes: > 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>
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. ``` 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: > 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 <suijingfeng@loongson.cn> > --- > 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.c b/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.c b/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)))
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: >> 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 <suijingfeng@loongson.cn> > >> --- >> 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.c >> b/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.c >> b/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))) >
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.c b/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.c b/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)))
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> --- 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(-)