Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

Revert "fbdev: Prevent probing generic drivers if a FB is already registered"

This reverts commit fb561bf9abde49f7e00fdbf9ed2ccf2d86cac8ee.

With

commit 27599aacbaefcbf2af7b06b0029459bbf682000d
Author: Thomas Zimmermann <tzimmermann@suse.de>
Date: Tue Jan 25 10:12:18 2022 +0100

fbdev: Hot-unplug firmware fb devices on forced removal

this should be fixed properly and we can remove this somewhat hackish
check here (e.g. this won't catch drm drivers if fbdev emulation isn't
enabled).

Cc: Thomas Zimmermann <tzimmermann@suse.de>
Cc: Zack Rusin <zackr@vmware.com>
Cc: Javier Martinez Canillas <javierm@redhat.com>
Cc: Zack Rusin <zackr@vmware.com>
Cc: Hans de Goede <hdegoede@redhat.com>
Cc: Ilya Trukhanov <lahvuun@gmail.com>
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com>
Cc: Peter Jones <pjones@redhat.com>
Cc: linux-fbdev@vger.kernel.org
Signed-off-by: Javier Martinez Canillas <javierm@redhat.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20220607182338.344270-5-javierm@redhat.com

authored by

Daniel Vetter and committed by
Javier Martinez Canillas
bdde97ac 873eb3b1

-22
-11
drivers/video/fbdev/efifb.c
··· 351 351 char *option = NULL; 352 352 efi_memory_desc_t md; 353 353 354 - /* 355 - * Generic drivers must not be registered if a framebuffer exists. 356 - * If a native driver was probed, the display hardware was already 357 - * taken and attempting to use the system framebuffer is dangerous. 358 - */ 359 - if (num_registered_fb > 0) { 360 - dev_err(&dev->dev, 361 - "efifb: a framebuffer is already registered\n"); 362 - return -EINVAL; 363 - } 364 - 365 354 if (screen_info.orig_video_isVGA != VIDEO_TYPE_EFI || pci_dev_disabled) 366 355 return -ENODEV; 367 356
-11
drivers/video/fbdev/simplefb.c
··· 413 413 struct simplefb_par *par; 414 414 struct resource *res, *mem; 415 415 416 - /* 417 - * Generic drivers must not be registered if a framebuffer exists. 418 - * If a native driver was probed, the display hardware was already 419 - * taken and attempting to use the system framebuffer is dangerous. 420 - */ 421 - if (num_registered_fb > 0) { 422 - dev_err(&pdev->dev, 423 - "simplefb: a framebuffer is already registered\n"); 424 - return -EINVAL; 425 - } 426 - 427 416 if (fb_get_options("simplefb", NULL)) 428 417 return -ENODEV; 429 418