From: Akihiko Odaki <akihiko.odaki@gmail.com>
To: Gurchetan Singh <gurchetansingh@chromium.org>
Cc: qemu-devel@nongnu.org, marcandre.lureau@redhat.com,
kraxel@redhat.com, ray.huang@amd.com, alex.bennee@linaro.org,
shentey@gmail.com, hi@alyssa.is, ernunes@redhat.com
Subject: Re: [PATCH v4 9/9] docs/system: add basic virtio-gpu documentation
Date: Thu, 10 Aug 2023 15:55:41 +0900 [thread overview]
Message-ID: <3fd3467c-e6ea-4cce-9d08-3ad521f66848@gmail.com> (raw)
In-Reply-To: <CAAfnVB=Dbi8SiX1ZgbMHb3udTNNMUxwf78pt9sXjMYftGLveng@mail.gmail.com>
On 2023/08/10 10:11, Gurchetan Singh wrote:
>
>
> On Tue, Aug 8, 2023 at 10:18 PM Akihiko Odaki <akihiko.odaki@gmail.com
> <mailto:akihiko.odaki@gmail.com>> wrote:
>
> On 2023/08/09 11:11, Gurchetan Singh wrote:
> > This adds basic documentation for virtio-gpu.
> >
> > Suggested-by: Akihiko Odaki <akihiko.odaki@daynix.com
> <mailto:akihiko.odaki@daynix.com>>
> > Signed-off-by: Gurchetan Singh <gurchetansingh@chromium.org
> <mailto:gurchetansingh@chromium.org>>
> > ---
> > v2: - Incorporated suggestions by Akihiko Odaki
> > - Listed the currently supported capset_names (Bernard)
> >
> > v3: - Incorporated suggestions by Akihiko Odaki and Alyssa Ross
> >
> > v4: - Incorporated suggestions by Akihiko Odaki
> >
> > docs/system/device-emulation.rst | 1 +
> > docs/system/devices/virtio-gpu.rst | 115
> +++++++++++++++++++++++++++++
> > 2 files changed, 116 insertions(+)
> > create mode 100644 docs/system/devices/virtio-gpu.rst
> >
> > diff --git a/docs/system/device-emulation.rst
> b/docs/system/device-emulation.rst
> > index 4491c4cbf7..1167f3a9f2 100644
> > --- a/docs/system/device-emulation.rst
> > +++ b/docs/system/device-emulation.rst
> > @@ -91,6 +91,7 @@ Emulated Devices
> > devices/nvme.rst
> > devices/usb.rst
> > devices/vhost-user.rst
> > + devices/virtio-gpu.rst
> > devices/virtio-pmem.rst
> > devices/vhost-user-rng.rst
> > devices/canokey.rst
> > diff --git a/docs/system/devices/virtio-gpu.rst
> b/docs/system/devices/virtio-gpu.rst
> > new file mode 100644
> > index 0000000000..d56524270d
> > --- /dev/null
> > +++ b/docs/system/devices/virtio-gpu.rst
> > @@ -0,0 +1,115 @@
> > +..
> > + SPDX-License-Identifier: GPL-2.0
> > +
> > +virtio-gpu
> > +==========
> > +
> > +This document explains the setup and usage of the virtio-gpu device.
> > +The virtio-gpu device paravirtualizes the GPU and display
> controller.
> > +
> > +Linux kernel support
> > +--------------------
> > +
> > +virtio-gpu requires a guest Linux kernel built with the
> > +``CONFIG_DRM_VIRTIO_GPU`` option.
> > +
> > +QEMU virtio-gpu variants
> > +------------------------
> > +
> > +QEMU virtio-gpu device variants come in the following form:
> > +
> > + * ``virtio-vga[-BACKEND]``
> > + * ``virtio-gpu[-BACKEND][-INTERFACE]``
> > + * ``vhost-user-vga``
> > + * ``vhost-user-pci``
> > +
> > +**Backends:** QEMU provides a 2D virtio-gpu backend, and two
> accelerated
> > +backends: virglrenderer ('gl' device label) and rutabaga_gfx
> ('rutabaga'
> > +device label). There is a vhost-user backend that runs the
> graphics stack
> > +in a separate process for improved isolation.
> > +
> > +**Interfaces:** QEMU further categorizes virtio-gpu device
> variants based
> > +on the interface exposed to the guest. The interfaces can be
> classified
> > +into VGA and non-VGA variants. The VGA ones are prefixed with
> virtio-vga
> > +or vhost-user-vga while the non-VGA ones are prefixed with
> virtio-gpu or
> > +vhost-user-gpu.
> > +
> > +The VGA ones always use the PCI interface, but for the non-VGA
> ones, the
> > +user can further pick between MMIO or PCI. For MMIO, the user
> can suffix
> > +the device name with -device, though vhost-user-gpu does not
> support MMIO.
> > +For PCI, the user can suffix it with -pci. Without these
> suffixes, the
> > +platform default will be chosen.
> > +
> > +This document uses the PCI interface in examples.
>
> I think it's better to omit -pci.
>
>
> Are you suggesting to use "-device virtio-gpu-rutabaga" or "-device
> virtio-gpu-gl" in the examples? Or "-device virtio-gpu-rutabaga-device"
> or "-device virtio-gpu-gl-device"? The former I believe wouldn't
> launch, and the examples should ideally be directly applicable to a user.
>
>
> By the way you are not adding the aliases for Rutabaga so please do so.
> You can find the table in: softmmu/qdev-monitor.c
>
>
> I don't follow this comment. Isn't "-device virtio-gpu-rutabaga-pci"
> (along with "-device virtio-gpu-rutabaga-device") an alias for the
> rutabaga device? Where would the alias be placed in the doc (we don't
> explicitly list aliases for other devices either), outside the
> "..parsed-literal::" launch command?
virtio-gpu-gl should work, and you need add an alias definition to get
virtio-gpu-rutabaga work.
Your documentation already says:
> Without these suffixes, the platform default will be chosen.
You should confirm what you say in the documentation and fix the
documentation or code if something is wrong.
next prev parent reply other threads:[~2023-08-10 6:56 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-08-09 2:10 [PATCH v4 0/9] gfxstream + rutabaga_gfx Gurchetan Singh
2023-08-09 2:11 ` [PATCH v4 1/9] virtio: Add shared memory capability Gurchetan Singh
2023-08-09 7:45 ` Huang Rui
2023-08-09 2:11 ` [PATCH v4 2/9] virtio-gpu: CONTEXT_INIT feature Gurchetan Singh
2023-08-09 2:11 ` [PATCH v4 3/9] virtio-gpu: hostmem Gurchetan Singh
2023-08-09 2:11 ` [PATCH v4 4/9] virtio-gpu: blob prep Gurchetan Singh
2023-08-09 2:11 ` [PATCH v4 5/9] gfxstream + rutabaga prep: added need defintions, fields, and options Gurchetan Singh
2023-08-09 2:11 ` [PATCH v4 6/9] gfxstream + rutabaga: add initial support for gfxstream Gurchetan Singh
2023-08-09 5:07 ` Akihiko Odaki
2023-08-09 6:19 ` Huang Rui via
2023-08-09 2:11 ` [PATCH v4 7/9] gfxstream + rutabaga: meson support Gurchetan Singh
2023-08-09 2:11 ` [PATCH v4 8/9] gfxstream + rutabaga: enable rutabaga Gurchetan Singh
2023-08-09 2:11 ` [PATCH v4 9/9] docs/system: add basic virtio-gpu documentation Gurchetan Singh
2023-08-09 5:18 ` Akihiko Odaki
2023-08-10 1:11 ` Gurchetan Singh
2023-08-10 6:55 ` Akihiko Odaki [this message]
2023-08-10 17:54 ` Gurchetan Singh
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=3fd3467c-e6ea-4cce-9d08-3ad521f66848@gmail.com \
--to=akihiko.odaki@gmail.com \
--cc=alex.bennee@linaro.org \
--cc=ernunes@redhat.com \
--cc=gurchetansingh@chromium.org \
--cc=hi@alyssa.is \
--cc=kraxel@redhat.com \
--cc=marcandre.lureau@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=ray.huang@amd.com \
--cc=shentey@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).