aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/video/fbdev/Kconfig
diff options
context:
space:
mode:
authorWei Hu <weh@microsoft.com>2019-12-09 15:57:49 +0800
committerSasha Levin <sashal@kernel.org>2020-01-26 21:22:19 -0500
commit3a6fb6c4255c3893ab61e2bd4e9ae01ca6bbcd94 (patch)
tree2776381ec574f12994318fc8b56c06473df48939 /drivers/video/fbdev/Kconfig
parentDrivers: hv: vmbus: Ignore CHANNELMSG_TL_CONNECT_RESULT(23) (diff)
downloadlinux-dev-3a6fb6c4255c3893ab61e2bd4e9ae01ca6bbcd94.tar.xz
linux-dev-3a6fb6c4255c3893ab61e2bd4e9ae01ca6bbcd94.zip
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/Kconfig1
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.