fbdev/hyperv_fb: Remove firmware framebuffers with aperture helpers
authorThomas Zimmermann <tzimmermann@suse.de>
Wed, 3 Jan 2024 10:15:10 +0000 (11:15 +0100)
committerHelge Deller <deller@gmx.de>
Fri, 12 Jan 2024 11:38:37 +0000 (12:38 +0100)
commit0aa0838c84da22cd50d8a92fac26637c630a3235
tree43a9460b71297f9303875e2f24270e56103751db
parent778e73d2411abc8f3a2d60dbf038acaec218792e
fbdev/hyperv_fb: Remove firmware framebuffers with aperture helpers

Replace use of screen_info state with the correct interfaces from
the aperture helpers. The state is only for architecture and firmware
code. It is not guaranteed to contain valid data. Drivers are thus
not allowed to use it.

For removing conflicting firmware framebuffers, there are aperture
helpers. Hence replace screen_info with the correct functions that will
remove conflicting framebuffers for the hypervfb driver. For GEN1 PCI
devices, the driver reads the framebuffer base and size from the PCI
BAR, and uses the range for removing the firmware framebuffer. For
GEN2 VMBUS devices no range can be detected, so the driver clears all
firmware framebuffers.

Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com>
Signed-off-by: Helge Deller <deller@gmx.de>
drivers/video/fbdev/hyperv_fb.c