<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers/video/fbdev/hyperv_fb.c, branch v5.5</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/
</subtitle>
<id>https://git.shady.money/linux/atom?h=v5.5</id>
<link rel='self' href='https://git.shady.money/linux/atom?h=v5.5'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/'/>
<updated>2019-11-22T01:10:44Z</updated>
<entry>
<title>video: hyperv: hyperv_fb: Support deferred IO for Hyper-V frame buffer driver</title>
<updated>2019-11-22T01:10:44Z</updated>
<author>
<name>Wei Hu</name>
<email>weh@microsoft.com</email>
</author>
<published>2019-09-18T06:03:20Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=d21987d709e807ba7bbf47044deb56a3c02e8be4'/>
<id>urn:sha1:d21987d709e807ba7bbf47044deb56a3c02e8be4</id>
<content type='text'>
Without deferred IO support, hyperv_fb driver informs the host to refresh
the entire guest frame buffer at fixed rate, e.g. at 20Hz, no matter there
is screen update or not. This patch supports deferred IO for screens in
graphics mode and also enables the frame buffer on-demand refresh. The
highest refresh rate is still set at 20Hz.

Currently Hyper-V only takes a physical address from guest as the starting
address of frame buffer. This implies the guest must allocate contiguous
physical memory for frame buffer. In addition, Hyper-V Gen 2 VMs only
accept address from MMIO region as frame buffer address. Due to these
limitations on Hyper-V host, we keep a shadow copy of frame buffer
in the guest. This means one more copy of the dirty rectangle inside
guest when doing the on-demand refresh. This can be optimized in the
future with help from host. For now the host performance gain from deferred
IO outweighs the shadow copy impact in the guest.

Signed-off-by: Wei Hu &lt;weh@microsoft.com&gt;
Reviewed-by: Dexuan Cui &lt;decui@microsoft.com&gt;
Reviewed-by: Michael Kelley &lt;mikelley@microsoft.com&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
</entry>
<entry>
<title>video: hyperv: hyperv_fb: Obtain screen resolution from Hyper-V host</title>
<updated>2019-11-22T01:10:44Z</updated>
<author>
<name>Wei Hu</name>
<email>weh@microsoft.com</email>
</author>
<published>2019-09-05T09:11:53Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=67e7cdb4829d3246c98f2ec9b771303ebe162eab'/>
<id>urn:sha1:67e7cdb4829d3246c98f2ec9b771303ebe162eab</id>
<content type='text'>
Beginning from Windows 10 RS5+, VM screen resolution is obtained from host.
The "video=hyperv_fb" boot time option is not needed, but still can be
used to overwrite what the host specifies. The VM resolution on the host
could be set by executing the powershell "set-vmvideo" command.

Signed-off-by: Iouri Tarassov &lt;iourit@microsoft.com&gt;
Signed-off-by: Wei Hu &lt;weh@microsoft.com&gt;
Reviewed-by: Michael Kelley &lt;mikelley@microsoft.com&gt;
Reviewed-by: Dexuan Cui &lt;decui@microsoft.com&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
</entry>
<entry>
<title>video: hyperv_fb: Add the support of hibernation</title>
<updated>2019-11-22T01:10:44Z</updated>
<author>
<name>Dexuan Cui</name>
<email>decui@microsoft.com</email>
</author>
<published>2019-09-11T23:34:10Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=1ecf302021040194ae46cceefe33ab75577e356d'/>
<id>urn:sha1:1ecf302021040194ae46cceefe33ab75577e356d</id>
<content type='text'>
This patch depends on the vmbus side change of the definition of
struct hv_driver.

Signed-off-by: Dexuan Cui &lt;decui@microsoft.com&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
</entry>
<entry>
<title>video: fbdev: don't print error message on framebuffer_alloc() failure</title>
<updated>2019-06-28T10:30:08Z</updated>
<author>
<name>Bartlomiej Zolnierkiewicz</name>
<email>b.zolnierkie@samsung.com</email>
</author>
<published>2019-06-28T10:30:08Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=0adcdbcb179624d7b3677264f2cd228e7d89eea9'/>
<id>urn:sha1:0adcdbcb179624d7b3677264f2cd228e7d89eea9</id>
<content type='text'>
framebuffer_alloc() can fail only on kzalloc() memory allocation
failure and since kzalloc() will print error message in such case
we can omit printing extra error message in drivers (which BTW is
what the majority of framebuffer_alloc() users is doing already).

Cc: "Bruno Prémont" &lt;bonbons@linux-vserver.org&gt;
Cc: Jiri Kosina &lt;jikos@kernel.org&gt;
Cc: Benjamin Tissoires &lt;benjamin.tissoires@redhat.com&gt;
Signed-off-by: Bartlomiej Zolnierkiewicz &lt;b.zolnierkie@samsung.com&gt;
</content>
</entry>
<entry>
<title>treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 280</title>
<updated>2019-06-05T15:36:36Z</updated>
<author>
<name>Thomas Gleixner</name>
<email>tglx@linutronix.de</email>
</author>
<published>2019-05-29T14:17:54Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=43aa31327bb36002f52026b13d5f1bde35a1fc14'/>
<id>urn:sha1:43aa31327bb36002f52026b13d5f1bde35a1fc14</id>
<content type='text'>
Based on 1 normalized pattern(s):

  this program is free software you can redistribute it and or modify
  it under the terms of the gnu general public license version 2 as
  published by the free software foundation this program is
  distributed in the hope that it will be useful but without any
  warranty without even the implied warranty of merchantability or
  fitness for a particular purpose good title or non infringement see
  the gnu general public license for more details

extracted by the scancode license scanner the SPDX license identifier

  GPL-2.0-only

has been chosen to replace the boilerplate/reference in 9 file(s).

Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
Reviewed-by: Alexios Zavras &lt;alexios.zavras@intel.com&gt;
Reviewed-by: Allison Randal &lt;allison@lohutok.net&gt;
Cc: linux-spdx@vger.kernel.org
Link: https://lkml.kernel.org/r/20190529141900.459653302@linutronix.de
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>use the new async probing feature for the hyperv drivers</title>
<updated>2018-07-03T11:02:28Z</updated>
<author>
<name>Arjan van de Ven</name>
<email>arjan@linux.intel.com</email>
</author>
<published>2018-06-05T20:37:49Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=af0a5646cb8d03f33ef028eff5b92996e53da201'/>
<id>urn:sha1:af0a5646cb8d03f33ef028eff5b92996e53da201</id>
<content type='text'>
Recent kernels support asynchronous probing; most hyperv drivers
can be probed async easily so set the required flag for this.

Signed-off-by: Arjan van de Ven &lt;arjan@linux.intel.com&gt;
Signed-off-by: Stephen Hemminger &lt;sthemmin@microsoft.com&gt;
Signed-off-by: K. Y. Srinivasan &lt;kys@microsoft.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>drivers:hv: Use new vmbus_mmio_free() from client drivers.</title>
<updated>2016-04-30T21:01:37Z</updated>
<author>
<name>Jake Oshins</name>
<email>jakeo@microsoft.com</email>
</author>
<published>2016-04-05T17:22:52Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=696ca5e82c057a272381ae6064d59eb97a578397'/>
<id>urn:sha1:696ca5e82c057a272381ae6064d59eb97a578397</id>
<content type='text'>
This patch modifies all the callers of vmbus_mmio_allocate()
to call vmbus_mmio_free() instead of release_mem_region().

Signed-off-by: Jake Oshins &lt;jakeo@microsoft.com&gt;
Signed-off-by: K. Y. Srinivasan &lt;kys@microsoft.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>drivers:hv: Move MMIO range picking from hyper_fb to hv_vmbus</title>
<updated>2015-08-05T18:41:31Z</updated>
<author>
<name>Jake Oshins</name>
<email>jakeo@microsoft.com</email>
</author>
<published>2015-08-05T07:52:37Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=3546448338e76a52d4f86eb3680cb2934e22d89b'/>
<id>urn:sha1:3546448338e76a52d4f86eb3680cb2934e22d89b</id>
<content type='text'>
This patch deletes the logic from hyperv_fb which picked a range of MMIO space
for the frame buffer and adds new logic to hv_vmbus which picks ranges for
child drivers.  The new logic isn't quite the same as the old, as it considers
more possible ranges.

Signed-off-by: Jake Oshins &lt;jakeo@microsoft.com&gt;
Signed-off-by: K. Y. Srinivasan &lt;kys@microsoft.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>drivers:hv: Modify hv_vmbus to search for all MMIO ranges available.</title>
<updated>2015-08-05T18:41:30Z</updated>
<author>
<name>Jake Oshins</name>
<email>jakeo@microsoft.com</email>
</author>
<published>2015-08-05T07:52:36Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=7f163a6fd957a85f7f66a129db1ad243a44399ee'/>
<id>urn:sha1:7f163a6fd957a85f7f66a129db1ad243a44399ee</id>
<content type='text'>
This patch changes the logic in hv_vmbus to record all of the ranges in the
VM's firmware (BIOS or UEFI) that offer regions of memory-mapped I/O space for
use by paravirtual front-end drivers.  The old logic just found one range
above 4GB and called it good.  This logic will find any ranges above 1MB.

It would have been possible with this patch to just use existing resource
allocation functions, rather than keep track of the entire set of Hyper-V
related MMIO regions in VMBus.  This strategy, however, is not sufficient
when the resource allocator needs to be aware of the constraints of a
Hyper-V virtual machine, which is what happens in the next patch in the series.
So this first patch exists to show the first steps in reworking the MMIO
allocation paths for Hyper-V front-end drivers.

Signed-off-by: Jake Oshins &lt;jakeo@microsoft.com&gt;
Signed-off-by: K. Y. Srinivasan &lt;kys@microsoft.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>hyperv: hyperv_fb: match wait_for_completion_timeout return type</title>
<updated>2015-03-10T12:37:46Z</updated>
<author>
<name>Nicholas Mc Guire</name>
<email>der.herr@hofr.at</email>
</author>
<published>2015-01-29T10:24:16Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=7dea97e0379dbb2983a9f009c7cdaeb6bbe4c98e'/>
<id>urn:sha1:7dea97e0379dbb2983a9f009c7cdaeb6bbe4c98e</id>
<content type='text'>
The return type of wait_for_completion_timeout is unsigned long not
int. This patch fixes up the declarations only.

Signed-off-by: Nicholas Mc Guire &lt;der.herr@hofr.at&gt;
Reviewed-by: Vitaly Kuznetsov &lt;vkuznets@redhat.com&gt;
Signed-off-by: Tomi Valkeinen &lt;tomi.valkeinen@ti.com&gt;
</content>
</entry>
</feed>
