mirror of
https://github.com/Dasharo/linux.git
synced 2026-03-06 15:25:10 -08:00
drivers/video: add Hyper-V Synthetic Video Frame Buffer Driver
This is the driver for the Hyper-V Synthetic Video, which supports screen resolution up to Full HD 1920x1080 on Windows Server 2012 host, and 1600x1200 on Windows Server 2008 R2 or earlier. It also solves the double mouse cursor issue of the emulated video mode. Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com> Reviewed-by: K. Y. Srinivasan <kys@microsoft.com> Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>, Cc: Olaf Hering <olaf@aepfle.de> Cc: Geert Uytterhoeven <geert@linux-m68k.org> Cc: Florian Tobias Schandinat <FlorianSchandinat@gmx.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
committed by
Linus Torvalds
parent
6cd472d3d2
commit
68a2d20b79
@@ -2440,6 +2440,15 @@ config FB_PUV3_UNIGFX
|
||||
Choose this option if you want to use the Unigfx device as a
|
||||
framebuffer device. Without the support of PCI & AGP.
|
||||
|
||||
config FB_HYPERV
|
||||
tristate "Microsoft Hyper-V Synthetic Video support"
|
||||
depends on FB && HYPERV
|
||||
select FB_CFB_FILLRECT
|
||||
select FB_CFB_COPYAREA
|
||||
select FB_CFB_IMAGEBLIT
|
||||
help
|
||||
This framebuffer driver supports Microsoft Hyper-V Synthetic Video.
|
||||
|
||||
source "drivers/video/omap/Kconfig"
|
||||
source "drivers/video/omap2/Kconfig"
|
||||
source "drivers/video/exynos/Kconfig"
|
||||
|
||||
@@ -149,6 +149,7 @@ obj-$(CONFIG_FB_MSM) += msm/
|
||||
obj-$(CONFIG_FB_NUC900) += nuc900fb.o
|
||||
obj-$(CONFIG_FB_JZ4740) += jz4740_fb.o
|
||||
obj-$(CONFIG_FB_PUV3_UNIGFX) += fb-puv3.o
|
||||
obj-$(CONFIG_FB_HYPERV) += hyperv_fb.o
|
||||
|
||||
# Platform or fallback drivers go here
|
||||
obj-$(CONFIG_FB_UVESA) += uvesafb.o
|
||||
|
||||
829
drivers/video/hyperv_fb.c
Normal file
829
drivers/video/hyperv_fb.c
Normal file
File diff suppressed because it is too large
Load Diff
@@ -1317,6 +1317,17 @@ void vmbus_driver_unregister(struct hv_driver *hv_driver);
|
||||
0x29, 0x2e, 0xfa, 0x35, 0x23, 0xea, 0x36, 0x42, \
|
||||
0x96, 0xae, 0x3a, 0x6e, 0xba, 0xcb, 0xa4, 0x40 \
|
||||
}
|
||||
/*
|
||||
* Synthetic Video GUID
|
||||
* {DA0A7802-E377-4aac-8E77-0558EB1073F8}
|
||||
*/
|
||||
#define HV_SYNTHVID_GUID \
|
||||
.guid = { \
|
||||
0x02, 0x78, 0x0a, 0xda, 0x77, 0xe3, 0xac, 0x4a, \
|
||||
0x8e, 0x77, 0x05, 0x58, 0xeb, 0x10, 0x73, 0xf8 \
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Common header for Hyper-V ICs
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user