~mmach/netext73/mesa-ryzen

« back to all changes in this revision

Viewing changes to docs/drivers/venus.rst

  • Committer: mmach
  • Date: 2023-11-02 21:31:35 UTC
  • Revision ID: netbit73@gmail.com-20231102213135-18d4tzh7tj0uz752
2023-11-02 22:11:57

Show diffs side-by-side

added added

removed removed

Lines of Context:
3
3
 
4
4
Venus is a Virtio-GPU protocol for Vulkan command serialization.  The protocol
5
5
definition and codegen are hosted at `venus-protocol
6
 
<https://gitlab.freedesktop.org/olv/venus-protocol>`__.  The renderer is
 
6
<https://gitlab.freedesktop.org/virgl/venus-protocol>`__.  The renderer is
7
7
hosted at `virglrenderer
8
8
<https://gitlab.freedesktop.org/virgl/virglrenderer>`__.
9
9
 
10
 
The protocol is still under development.  This driver and the renderer are
11
 
both considered experimental.
12
 
 
13
10
Requirements
14
11
------------
15
12
 
34
31
 
35
32
The Venus driver requires supports for
36
33
 
 
34
- ``VIRTGPU_PARAM_3D_FEATURES``
 
35
- ``VIRTGPU_PARAM_CAPSET_QUERY_FIX``
37
36
- ``VIRTGPU_PARAM_RESOURCE_BLOB``
38
37
- ``VIRTGPU_PARAM_HOST_VISIBLE``
39
38
- ``VIRTGPU_PARAM_CROSS_DEVICE``
56
55
 
57
56
    $ git clone https://gitlab.freedesktop.org/virgl/virglrenderer.git
58
57
    $ cd virglrenderer
59
 
    $ meson out -Dvenus-experimental=true
60
 
    $ ninja -C out
61
 
    $ ./out/vtest/virgl_test_server --venus
 
58
    $ meson out -Dvenus=true
 
59
    $ meson compile -C out
 
60
    $ meson devenv -C out
 
61
    $ ./vtest/virgl_test_server --venus
 
62
    $ exit
62
63
 
63
64
In another shell,
64
65
 
100
101
 
101
102
 $ sudo LD_LIBRARY_PATH=<...> VK_ICD_FILENAMES=<...> ./target/debug/crosvm run \
102
103
       --gpu vulkan=true \
 
104
       --gpu-render-server path=<path-to-virglrenderer>/out/server/virgl_render_server \
103
105
       --display-window-keyboard \
104
106
       --display-window-mouse \
105
 
       --host_ip 192.168.0.1 \
106
 
       --netmask 255.255.255.0 \
107
 
       --mac 12:34:56:78:9a:bc \
 
107
       --net "host-ip 192.168.0.1,netmask=255.255.255.0,mac=12:34:56:78:9a:bc" \
108
108
       --rwdisk disk.img \
109
109
       -p root=/dev/vda1 \
110
110
       <path-to-bzImage>
133
133
 $ CFLAGS=-DDRV_<I915-or-your-driver> OUT=out DESTDIR=out/install make install
134
134
 $ cd ../virglrenderer
135
135
 $ meson configure out -Dminigbm_allocation=true
136
 
 $ ninja -C out
 
136
 $ meson compile -C out
137
137
 
138
138
Make sure a host Wayland compositor is running.  Replace
139
139
``--display-window-keyboard --display-window-mouse`` by
146
146
 $ git clone https://chromium.googlesource.com/chromiumos/platform2
147
147
 $ cd platform2/vm_tools/sommelier
148
148
 $ meson out -Dxwayland_path=/usr/bin/Xwayland -Dxwayland_gl_driver_path=/usr/lib/dri
149
 
 $ ninja -C out
 
149
 $ meson compile -C out
150
150
 $ sudo chmod 777 /dev/wl0
151
151
 $ ./out/sommelier -X --glamor
152
152
       --xwayland-gl-driver-path=<path-to-locally-built-gl-driver> \