(was: drm: Generic fbdev and vga-switcheroo) This patchset fixes how fbdev helpers interact with vga-switcheroo. The first two patches are bug fixes for the existing code. The third patch cleans up the drivers. Patch 1 fixes i915 to do the correct thing if the device has not been initialized yet. Switching to the device is only possible after the initialization, but switching away is always possible. Patch 2 is the original patch without the amdgpu changes. Installs the fbdev framebuffer in vga-switcheroo for the PCI device. Does nothing for drivers without vga-switcheroo. Patch 3 cleans up vga_switcheroo_process_delayed_switch() in amdgpu and the other related drivers (i.e., i915, nouveau and radeon). The call is now located at the end of drm_lastclose() and drivers do not need their own lastclose helpers any longer. I kept the r-bs from v1, but patch 1 is entirely new and patch 3 has significantly grown in size. v3: * include drm_fb_helper.h in radeon_drv.c v2: * expand to patch series * fix i915, nouveau and radeon Thomas Zimmermann (3): drm/i915: Allow switching away via vga-switcheroo if uninitialized drm/fb-helper: Set framebuffer for vga-switcheroo clients drm: Call vga_switcheroo_process_delayed_switch() in drm_lastclose drivers/gpu/drm/amd/amdgpu/amdgpu.h | 1 - drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c | 2 -- drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c | 13 ------------- drivers/gpu/drm/drm_fb_helper.c | 8 ++++++++ drivers/gpu/drm/drm_file.c | 3 +++ drivers/gpu/drm/i915/i915_driver.c | 26 ++----------------------- drivers/gpu/drm/i915/i915_switcheroo.c | 6 +++++- drivers/gpu/drm/nouveau/nouveau_drm.c | 1 - drivers/gpu/drm/nouveau/nouveau_vga.c | 7 ------- drivers/gpu/drm/nouveau/nouveau_vga.h | 1 - drivers/gpu/drm/radeon/radeon_drv.c | 3 ++- drivers/gpu/drm/radeon/radeon_drv.h | 1 - drivers/gpu/drm/radeon/radeon_kms.c | 18 ----------------- drivers/gpu/vga/vga_switcheroo.c | 4 ++-- 14 files changed, 22 insertions(+), 72 deletions(-) base-commit: 68d139b609a97a83e7c231189d4864aba4e1679b prerequisite-patch-id: 0aa359f6144c4015c140c8a6750be19099c676fb prerequisite-patch-id: c67e5d886a47b7d0266d81100837557fda34cb24 prerequisite-patch-id: 3f204510fcbf9530d6540bd8e6128cce598988b6 -- 2.39.0