diff mbox series

efi: Move efifb_setup_from_dmi() prototype from arch headers

Message ID 20211126001333.555514-1-javierm@redhat.com (mailing list archive)
State New, archived
Headers show
Series efi: Move efifb_setup_from_dmi() prototype from arch headers | expand

Commit Message

Javier Martinez Canillas Nov. 26, 2021, 12:13 a.m. UTC
Commit 8633ef82f101 ("drivers/firmware: consolidate EFI framebuffer setup
for all arches") made the Generic System Framebuffers (sysfb) driver able
to be built on non-x86 architectures.

But left the efifb_setup_from_dmi() function prototype declaration in the
architecture specific headers. This could lead to the following compiler
warning as reported by the kernel test robot:

   drivers/firmware/efi/sysfb_efi.c:70:6: warning: no previous prototype for function 'efifb_setup_from_dmi' [-Wmissing-prototypes]
   void efifb_setup_from_dmi(struct screen_info *si, const char *opt)
        ^
   drivers/firmware/efi/sysfb_efi.c:70:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
   void efifb_setup_from_dmi(struct screen_info *si, const char *opt)

Fixes: 8633ef82f101 ("drivers/firmware: consolidate EFI framebuffer setup for all arches")
Reported-by: kernel test robot <lkp@intel.com>
Cc: <stable@vger.kernel.org> # 5.15.x
Signed-off-by: Javier Martinez Canillas <javierm@redhat.com>
---

 arch/arm/include/asm/efi.h   | 1 -
 arch/arm64/include/asm/efi.h | 1 -
 arch/riscv/include/asm/efi.h | 1 -
 arch/x86/include/asm/efi.h   | 2 --
 include/linux/efi.h          | 6 ++++++
 5 files changed, 6 insertions(+), 5 deletions(-)

Comments

Thomas Zimmermann Nov. 29, 2021, 2:39 p.m. UTC | #1
Hi

Am 26.11.21 um 01:13 schrieb Javier Martinez Canillas:
> Commit 8633ef82f101 ("drivers/firmware: consolidate EFI framebuffer setup
> for all arches") made the Generic System Framebuffers (sysfb) driver able
> to be built on non-x86 architectures.
> 
> But left the efifb_setup_from_dmi() function prototype declaration in the
> architecture specific headers. This could lead to the following compiler
> warning as reported by the kernel test robot:
> 
>     drivers/firmware/efi/sysfb_efi.c:70:6: warning: no previous prototype for function 'efifb_setup_from_dmi' [-Wmissing-prototypes]
>     void efifb_setup_from_dmi(struct screen_info *si, const char *opt)
>          ^
>     drivers/firmware/efi/sysfb_efi.c:70:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
>     void efifb_setup_from_dmi(struct screen_info *si, const char *opt)
> 
> Fixes: 8633ef82f101 ("drivers/firmware: consolidate EFI framebuffer setup for all arches")
> Reported-by: kernel test robot <lkp@intel.com>
> Cc: <stable@vger.kernel.org> # 5.15.x
> Signed-off-by: Javier Martinez Canillas <javierm@redhat.com>

Acked-by: Thomas Zimmermann <tzimmermann@suse.de>

> ---
> 
>   arch/arm/include/asm/efi.h   | 1 -
>   arch/arm64/include/asm/efi.h | 1 -
>   arch/riscv/include/asm/efi.h | 1 -
>   arch/x86/include/asm/efi.h   | 2 --
>   include/linux/efi.h          | 6 ++++++
>   5 files changed, 6 insertions(+), 5 deletions(-)
> 
> diff --git a/arch/arm/include/asm/efi.h b/arch/arm/include/asm/efi.h
> index a6f3b179e8a9..27218eabbf9a 100644
> --- a/arch/arm/include/asm/efi.h
> +++ b/arch/arm/include/asm/efi.h
> @@ -17,7 +17,6 @@
>   
>   #ifdef CONFIG_EFI
>   void efi_init(void);
> -extern void efifb_setup_from_dmi(struct screen_info *si, const char *opt);
>   
>   int efi_create_mapping(struct mm_struct *mm, efi_memory_desc_t *md);
>   int efi_set_mapping_permissions(struct mm_struct *mm, efi_memory_desc_t *md);
> diff --git a/arch/arm64/include/asm/efi.h b/arch/arm64/include/asm/efi.h
> index d3e1825337be..ad55079abe47 100644
> --- a/arch/arm64/include/asm/efi.h
> +++ b/arch/arm64/include/asm/efi.h
> @@ -14,7 +14,6 @@
>   
>   #ifdef CONFIG_EFI
>   extern void efi_init(void);
> -extern void efifb_setup_from_dmi(struct screen_info *si, const char *opt);
>   #else
>   #define efi_init()
>   #endif
> diff --git a/arch/riscv/include/asm/efi.h b/arch/riscv/include/asm/efi.h
> index 49b398fe99f1..cc4f6787f937 100644
> --- a/arch/riscv/include/asm/efi.h
> +++ b/arch/riscv/include/asm/efi.h
> @@ -13,7 +13,6 @@
>   
>   #ifdef CONFIG_EFI
>   extern void efi_init(void);
> -extern void efifb_setup_from_dmi(struct screen_info *si, const char *opt);
>   #else
>   #define efi_init()
>   #endif
> diff --git a/arch/x86/include/asm/efi.h b/arch/x86/include/asm/efi.h
> index 4d0b126835b8..63158fd55856 100644
> --- a/arch/x86/include/asm/efi.h
> +++ b/arch/x86/include/asm/efi.h
> @@ -197,8 +197,6 @@ static inline bool efi_runtime_supported(void)
>   
>   extern void parse_efi_setup(u64 phys_addr, u32 data_len);
>   
> -extern void efifb_setup_from_dmi(struct screen_info *si, const char *opt);
> -
>   extern void efi_thunk_runtime_setup(void);
>   efi_status_t efi_set_virtual_address_map(unsigned long memory_map_size,
>   					 unsigned long descriptor_size,
> diff --git a/include/linux/efi.h b/include/linux/efi.h
> index dbd39b20e034..ef8dbc0a1522 100644
> --- a/include/linux/efi.h
> +++ b/include/linux/efi.h
> @@ -1283,4 +1283,10 @@ static inline struct efi_mokvar_table_entry *efi_mokvar_entry_find(
>   }
>   #endif
>   
> +#ifdef CONFIG_SYSFB
> +extern void efifb_setup_from_dmi(struct screen_info *si, const char *opt);
> +#else
> +static inline void efifb_setup_from_dmi(struct screen_info *si, const char *opt) { }
> +#endif
> +
>   #endif /* _LINUX_EFI_H */
>
diff mbox series

Patch

diff --git a/arch/arm/include/asm/efi.h b/arch/arm/include/asm/efi.h
index a6f3b179e8a9..27218eabbf9a 100644
--- a/arch/arm/include/asm/efi.h
+++ b/arch/arm/include/asm/efi.h
@@ -17,7 +17,6 @@ 
 
 #ifdef CONFIG_EFI
 void efi_init(void);
-extern void efifb_setup_from_dmi(struct screen_info *si, const char *opt);
 
 int efi_create_mapping(struct mm_struct *mm, efi_memory_desc_t *md);
 int efi_set_mapping_permissions(struct mm_struct *mm, efi_memory_desc_t *md);
diff --git a/arch/arm64/include/asm/efi.h b/arch/arm64/include/asm/efi.h
index d3e1825337be..ad55079abe47 100644
--- a/arch/arm64/include/asm/efi.h
+++ b/arch/arm64/include/asm/efi.h
@@ -14,7 +14,6 @@ 
 
 #ifdef CONFIG_EFI
 extern void efi_init(void);
-extern void efifb_setup_from_dmi(struct screen_info *si, const char *opt);
 #else
 #define efi_init()
 #endif
diff --git a/arch/riscv/include/asm/efi.h b/arch/riscv/include/asm/efi.h
index 49b398fe99f1..cc4f6787f937 100644
--- a/arch/riscv/include/asm/efi.h
+++ b/arch/riscv/include/asm/efi.h
@@ -13,7 +13,6 @@ 
 
 #ifdef CONFIG_EFI
 extern void efi_init(void);
-extern void efifb_setup_from_dmi(struct screen_info *si, const char *opt);
 #else
 #define efi_init()
 #endif
diff --git a/arch/x86/include/asm/efi.h b/arch/x86/include/asm/efi.h
index 4d0b126835b8..63158fd55856 100644
--- a/arch/x86/include/asm/efi.h
+++ b/arch/x86/include/asm/efi.h
@@ -197,8 +197,6 @@  static inline bool efi_runtime_supported(void)
 
 extern void parse_efi_setup(u64 phys_addr, u32 data_len);
 
-extern void efifb_setup_from_dmi(struct screen_info *si, const char *opt);
-
 extern void efi_thunk_runtime_setup(void);
 efi_status_t efi_set_virtual_address_map(unsigned long memory_map_size,
 					 unsigned long descriptor_size,
diff --git a/include/linux/efi.h b/include/linux/efi.h
index dbd39b20e034..ef8dbc0a1522 100644
--- a/include/linux/efi.h
+++ b/include/linux/efi.h
@@ -1283,4 +1283,10 @@  static inline struct efi_mokvar_table_entry *efi_mokvar_entry_find(
 }
 #endif
 
+#ifdef CONFIG_SYSFB
+extern void efifb_setup_from_dmi(struct screen_info *si, const char *opt);
+#else
+static inline void efifb_setup_from_dmi(struct screen_info *si, const char *opt) { }
+#endif
+
 #endif /* _LINUX_EFI_H */