On Wed, Feb 09, 2022 at 01:19:26AM +0100, Javier Martinez Canillas wrote: > On 2/8/22 22:08, Daniel Vetter wrote: > > This reverts commit fb561bf9abde49f7e00fdbf9ed2ccf2d86cac8ee. > > > > With > > > > commit 27599aacbaefcbf2af7b06b0029459bbf682000d > > Author: Thomas Zimmermann <tzimmermann@xxxxxxx> > > 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). > > > > Unfortunately this hack can't be reverted yet. Thomas' patch solves the issue > of platform devices matched with fbdev drivers to be properly unregistered if > a DRM driver attempts to remove all the conflicting framebuffers. > > But the problem that fb561bf9abde ("fbdev: Prevent probing generic drivers if > a FB is already registered") worked around is different. It happens when the > DRM driver is probed before the {efi,simple}fb and other fbdev drivers, the > kicking out of conflicting framebuffers already happened and these drivers > will be allowed to probe even when a DRM driver is already present. > > We need a clearer way to prevent it, but can't revert fb561bf9abde until that. Yeah that entire area is a mess still, ideally we'd have something else creating the platform devices, and efifb/offb and all these would just bind against them. Hm one idea that just crossed my mind: Could we have a flag in fb_info for fw drivers, and check this in framebuffer_register? Then at least all the logic would be in the fbdev core. -Daniel -- Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch