diff options
author | Wei Hu <weh@microsoft.com> | 2019-12-09 10:57:49 +0300 |
---|---|---|
committer | Sasha Levin <sashal@kernel.org> | 2020-01-27 05:22:19 +0300 |
commit | 3a6fb6c4255c3893ab61e2bd4e9ae01ca6bbcd94 (patch) | |
tree | 2776381ec574f12994318fc8b56c06473df48939 /drivers/video/fbdev/Kconfig | |
parent | ddc9d357b991838c2d975e8d7e4e9db26f37a7ff (diff) | |
download | linux-3a6fb6c4255c3893ab61e2bd4e9ae01ca6bbcd94.tar.xz |
video: hyperv: hyperv_fb: Use physical memory for fb on HyperV Gen 1 VMs.
On Hyper-V, Generation 1 VMs can directly use VM's physical memory for
their framebuffers. This can improve the efficiency of framebuffer and
overall performence for VM. The physical memory assigned to framebuffer
must be contiguous. We use CMA allocator to get contiguouse physicial
memory when the framebuffer size is greater than 4MB. For size under
4MB, we use alloc_pages to achieve this.
To enable framebuffer memory allocation from CMA, supply a kernel
parameter to give enough space to CMA allocator at boot time. For
example:
cma=130m
This gives 130MB memory to CAM allocator that can be allocated to
framebuffer. If this fails, we fall back to the old way of using
mmio for framebuffer.
Reported-by: kbuild test robot <lkp@intel.com>
Signed-off-by: Wei Hu <weh@microsoft.com>
Acked-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'drivers/video/fbdev/Kconfig')
-rw-r--r-- | drivers/video/fbdev/Kconfig | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig index aa9541bf964b..f65991a67af2 100644 --- a/drivers/video/fbdev/Kconfig +++ b/drivers/video/fbdev/Kconfig @@ -2215,6 +2215,7 @@ config FB_HYPERV select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT select FB_DEFERRED_IO + select DMA_CMA if HAVE_DMA_CONTIGUOUS && CMA help This framebuffer driver supports Microsoft Hyper-V Synthetic Video. |