drivers/firmware/efi/efi-init.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
From: Arnd Bergmann <arnd@arndb.de>
The sysfb_primary_display structure is now part of efi-init.c but
conditionally defined. One of the users is missing in the condition:
aarch64-linux-ld: drivers/video/fbdev/core/fbmon.o: in function `fb_firmware_edid':
fbmon.c:(.text.fb_firmware_edid+0x3c): undefined reference to `sysfb_primary_display'
Export it whenever CONFIG_FIRMWARE_EDID is set, so the fbdev core
code can use it.
Fixes: 4fcae6358871 ("sysfb: Move edid_info into sysfb_primary_display")
Reported-by: kernel test robot <lkp@intel.com>
Closes: https://lore.kernel.org/oe-kbuild-all/202602111543.Do4nkY5l-lkp@intel.com/
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
Sorry for missing this earlier, I had a local fixup in my randconfig
tree but never sent it out until I stumbled over it today. The
broken commit is now merged in mainline for 7.0, and I think this one
is needed as a regression fix.
---
drivers/firmware/efi/efi-init.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/firmware/efi/efi-init.c b/drivers/firmware/efi/efi-init.c
index 9fc501fbc870..850f85f04520 100644
--- a/drivers/firmware/efi/efi-init.c
+++ b/drivers/firmware/efi/efi-init.c
@@ -61,7 +61,7 @@ extern __weak const efi_config_table_type_t efi_arch_tables[];
* x86 defines its own instance of sysfb_primary_display and uses
* it even without EFI, everything else can get them from here.
*/
-#if !defined(CONFIG_X86) && (defined(CONFIG_SYSFB) || defined(CONFIG_EFI_EARLYCON))
+#if !defined(CONFIG_X86) && (defined(CONFIG_SYSFB) || defined(CONFIG_EFI_EARLYCON)) || defined(CONFIG_FIRMWARE_EDID)
struct sysfb_display_info sysfb_primary_display __section(".data");
EXPORT_SYMBOL_GPL(sysfb_primary_display);
#endif
--
2.39.5
Am 13.02.26 um 17:51 schrieb Arnd Bergmann:
> From: Arnd Bergmann <arnd@arndb.de>
>
> The sysfb_primary_display structure is now part of efi-init.c but
> conditionally defined. One of the users is missing in the condition:
>
> aarch64-linux-ld: drivers/video/fbdev/core/fbmon.o: in function `fb_firmware_edid':
> fbmon.c:(.text.fb_firmware_edid+0x3c): undefined reference to `sysfb_primary_display'
>
> Export it whenever CONFIG_FIRMWARE_EDID is set, so the fbdev core
> code can use it.
>
> Fixes: 4fcae6358871 ("sysfb: Move edid_info into sysfb_primary_display")
> Reported-by: kernel test robot <lkp@intel.com>
> Closes: https://lore.kernel.org/oe-kbuild-all/202602111543.Do4nkY5l-lkp@intel.com/
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Thomas Zimmermann <tzimmermann@suse.de>
Thanks for the fix.
> ---
> Sorry for missing this earlier, I had a local fixup in my randconfig
> tree but never sent it out until I stumbled over it today. The
> broken commit is now merged in mainline for 7.0, and I think this one
> is needed as a regression fix.
> ---
> drivers/firmware/efi/efi-init.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/firmware/efi/efi-init.c b/drivers/firmware/efi/efi-init.c
> index 9fc501fbc870..850f85f04520 100644
> --- a/drivers/firmware/efi/efi-init.c
> +++ b/drivers/firmware/efi/efi-init.c
> @@ -61,7 +61,7 @@ extern __weak const efi_config_table_type_t efi_arch_tables[];
> * x86 defines its own instance of sysfb_primary_display and uses
> * it even without EFI, everything else can get them from here.
> */
> -#if !defined(CONFIG_X86) && (defined(CONFIG_SYSFB) || defined(CONFIG_EFI_EARLYCON))
> +#if !defined(CONFIG_X86) && (defined(CONFIG_SYSFB) || defined(CONFIG_EFI_EARLYCON)) || defined(CONFIG_FIRMWARE_EDID)
> struct sysfb_display_info sysfb_primary_display __section(".data");
> EXPORT_SYMBOL_GPL(sysfb_primary_display);
> #endif
--
--
Thomas Zimmermann
Graphics Driver Developer
SUSE Software Solutions Germany GmbH
Frankenstr. 146, 90461 Nürnberg, Germany, www.suse.com
GF: Jochen Jaser, Andrew McDonald, Werner Knoblich, (HRB 36809, AG Nürnberg)
On Fri, 13 Feb 2026, at 19:17, Thomas Zimmermann wrote:
> Am 13.02.26 um 17:51 schrieb Arnd Bergmann:
>> From: Arnd Bergmann <arnd@arndb.de>
>>
>> The sysfb_primary_display structure is now part of efi-init.c but
>> conditionally defined. One of the users is missing in the condition:
>>
>> aarch64-linux-ld: drivers/video/fbdev/core/fbmon.o: in function `fb_firmware_edid':
>> fbmon.c:(.text.fb_firmware_edid+0x3c): undefined reference to `sysfb_primary_display'
>>
>> Export it whenever CONFIG_FIRMWARE_EDID is set, so the fbdev core
>> code can use it.
>>
>> Fixes: 4fcae6358871 ("sysfb: Move edid_info into sysfb_primary_display")
>> Reported-by: kernel test robot <lkp@intel.com>
>> Closes: https://lore.kernel.org/oe-kbuild-all/202602111543.Do4nkY5l-lkp@intel.com/
>> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
>
> Acked-by: Thomas Zimmermann <tzimmermann@suse.de>
>
> Thanks for the fix.
>
Indeed, thanks for the fix. I'll queue this up and get it out soon.
© 2016 - 2026 Red Hat, Inc.