dri-devel.lists.freedesktop.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v3] drm/virtio: add new virtio gpu capset definitions
@ 2023-10-10 13:57 Huang Rui
  2023-10-10 15:40 ` Dmitry Osipenko
  0 siblings, 1 reply; 7+ messages in thread
From: Huang Rui @ 2023-10-10 13:57 UTC (permalink / raw)
  To: dri-devel, virtualization, linux-kernel, David Airlie,
	Gerd Hoffmann, Gurchetan Singh, Chia-I Wu, Daniel Vetter,
	Akihiko Odaki, Dmitry Osipenko, Marc-André Lureau
  Cc: Honglei Huang, Stefano Stabellini, Xenia Ragiadakou, Chen Jiqian,
	Huang Rui, Alex Deucher, Julia Zhang

These definitions are used fro qemu, and qemu imports this marco in the
headers to enable gfxstream, venus, cross domain, and drm (native
context) for virtio gpu. So it should add them even kernel doesn't use
this.

Signed-off-by: Huang Rui <ray.huang@amd.com>
Reviewed-by: Akihiko Odaki <akihiko.odaki@daynix.com>
---

Changes V1 -> V2:
- Add all capsets including gfxstream and venus in kernel header (Dmitry Osipenko)

Changes V2 -> V3:
- Add missed capsets including cross domain and drm (native context)
  (Dmitry Osipenko)

v1: https://lore.kernel.org/lkml/20230915105918.3763061-1-ray.huang@amd.com/
v2: https://lore.kernel.org/lkml/20231010032553.1138036-1-ray.huang@amd.com/

 include/uapi/linux/virtio_gpu.h | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/include/uapi/linux/virtio_gpu.h b/include/uapi/linux/virtio_gpu.h
index f556fde07b76..240911c8da31 100644
--- a/include/uapi/linux/virtio_gpu.h
+++ b/include/uapi/linux/virtio_gpu.h
@@ -309,6 +309,10 @@ struct virtio_gpu_cmd_submit {
 
 #define VIRTIO_GPU_CAPSET_VIRGL 1
 #define VIRTIO_GPU_CAPSET_VIRGL2 2
+#define VIRTIO_GPU_CAPSET_GFXSTREAM 3
+#define VIRTIO_GPU_CAPSET_VENUS 4
+#define VIRTIO_GPU_CAPSET_CROSS_DOMAIN 5
+#define VIRTIO_GPU_CAPSET_DRM 6
 
 /* VIRTIO_GPU_CMD_GET_CAPSET_INFO */
 struct virtio_gpu_get_capset_info {
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [PATCH v3] drm/virtio: add new virtio gpu capset definitions
  2023-10-10 13:57 [PATCH v3] drm/virtio: add new virtio gpu capset definitions Huang Rui
@ 2023-10-10 15:40 ` Dmitry Osipenko
  2023-10-10 15:52   ` Dmitry Osipenko
  0 siblings, 1 reply; 7+ messages in thread
From: Dmitry Osipenko @ 2023-10-10 15:40 UTC (permalink / raw)
  To: Huang Rui, dri-devel, virtualization, linux-kernel, David Airlie,
	Gerd Hoffmann, Gurchetan Singh, Chia-I Wu, Daniel Vetter,
	Akihiko Odaki, Marc-André Lureau
  Cc: Honglei Huang, Stefano Stabellini, Xenia Ragiadakou, Chen Jiqian,
	Alex Deucher, Julia Zhang

On 10/10/23 16:57, Huang Rui wrote:
> These definitions are used fro qemu, and qemu imports this marco in the
> headers to enable gfxstream, venus, cross domain, and drm (native
> context) for virtio gpu. So it should add them even kernel doesn't use
> this.
> 
> Signed-off-by: Huang Rui <ray.huang@amd.com>
> Reviewed-by: Akihiko Odaki <akihiko.odaki@daynix.com>
> ---
> 
> Changes V1 -> V2:
> - Add all capsets including gfxstream and venus in kernel header (Dmitry Osipenko)
> 
> Changes V2 -> V3:
> - Add missed capsets including cross domain and drm (native context)
>   (Dmitry Osipenko)
> 
> v1: https://lore.kernel.org/lkml/20230915105918.3763061-1-ray.huang@amd.com/
> v2: https://lore.kernel.org/lkml/20231010032553.1138036-1-ray.huang@amd.com/
> 
>  include/uapi/linux/virtio_gpu.h | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/include/uapi/linux/virtio_gpu.h b/include/uapi/linux/virtio_gpu.h
> index f556fde07b76..240911c8da31 100644
> --- a/include/uapi/linux/virtio_gpu.h
> +++ b/include/uapi/linux/virtio_gpu.h
> @@ -309,6 +309,10 @@ struct virtio_gpu_cmd_submit {
>  
>  #define VIRTIO_GPU_CAPSET_VIRGL 1
>  #define VIRTIO_GPU_CAPSET_VIRGL2 2
> +#define VIRTIO_GPU_CAPSET_GFXSTREAM 3

The GFXSTREAM capset isn't correct, it should be GFXSTREAM_VULKAN in
accordance to [1] and [2]. There are more capsets for GFXSTREAM.

[1]
https://github.com/google/crosvm/blob/main/rutabaga_gfx/src/rutabaga_utils.rs#L172

[2]
https://patchwork.kernel.org/project/qemu-devel/patch/20231006010835.444-7-gurchetansingh@chromium.org/

-- 
Best regards,
Dmitry


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH v3] drm/virtio: add new virtio gpu capset definitions
  2023-10-10 15:40 ` Dmitry Osipenko
@ 2023-10-10 15:52   ` Dmitry Osipenko
  2023-10-11  4:40     ` Huang Rui
  0 siblings, 1 reply; 7+ messages in thread
From: Dmitry Osipenko @ 2023-10-10 15:52 UTC (permalink / raw)
  To: Huang Rui, dri-devel, virtualization, linux-kernel, David Airlie,
	Gerd Hoffmann, Gurchetan Singh, Chia-I Wu, Daniel Vetter,
	Akihiko Odaki, Marc-André Lureau
  Cc: Honglei Huang, Stefano Stabellini, Xenia Ragiadakou, Chen Jiqian,
	Alex Deucher, Julia Zhang

On 10/10/23 18:40, Dmitry Osipenko wrote:
> On 10/10/23 16:57, Huang Rui wrote:
>> These definitions are used fro qemu, and qemu imports this marco in the
>> headers to enable gfxstream, venus, cross domain, and drm (native
>> context) for virtio gpu. So it should add them even kernel doesn't use
>> this.
>>
>> Signed-off-by: Huang Rui <ray.huang@amd.com>
>> Reviewed-by: Akihiko Odaki <akihiko.odaki@daynix.com>
>> ---
>>
>> Changes V1 -> V2:
>> - Add all capsets including gfxstream and venus in kernel header (Dmitry Osipenko)
>>
>> Changes V2 -> V3:
>> - Add missed capsets including cross domain and drm (native context)
>>   (Dmitry Osipenko)
>>
>> v1: https://lore.kernel.org/lkml/20230915105918.3763061-1-ray.huang@amd.com/
>> v2: https://lore.kernel.org/lkml/20231010032553.1138036-1-ray.huang@amd.com/
>>
>>  include/uapi/linux/virtio_gpu.h | 4 ++++
>>  1 file changed, 4 insertions(+)
>>
>> diff --git a/include/uapi/linux/virtio_gpu.h b/include/uapi/linux/virtio_gpu.h
>> index f556fde07b76..240911c8da31 100644
>> --- a/include/uapi/linux/virtio_gpu.h
>> +++ b/include/uapi/linux/virtio_gpu.h
>> @@ -309,6 +309,10 @@ struct virtio_gpu_cmd_submit {
>>  
>>  #define VIRTIO_GPU_CAPSET_VIRGL 1
>>  #define VIRTIO_GPU_CAPSET_VIRGL2 2
>> +#define VIRTIO_GPU_CAPSET_GFXSTREAM 3
> 
> The GFXSTREAM capset isn't correct, it should be GFXSTREAM_VULKAN in
> accordance to [1] and [2]. There are more capsets for GFXSTREAM.
> 
> [1]
> https://github.com/google/crosvm/blob/main/rutabaga_gfx/src/rutabaga_utils.rs#L172
> 
> [2]
> https://patchwork.kernel.org/project/qemu-devel/patch/20231006010835.444-7-gurchetansingh@chromium.org/

Though, maybe those are "rutabaga" capsets that not related to
virtio-gpu because crosvm has another defs for virtio-gpu capsets [3].
The DRM capset is oddly missing in [3] and code uses "rutabaga" capset
for DRM and virtio-gpu.

[3]
https://github.com/google/crosvm/blob/main/devices/src/virtio/gpu/protocol.rs#L416

Gurchetan, could you please clarify which capsets definitions are
related to virtio-gpu and gfxstream. The
GFXSTREAM_VULKAN/GLES/MAGMA/COMPOSER or just the single GFXSTREAM?

-- 
Best regards,
Dmitry


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH v3] drm/virtio: add new virtio gpu capset definitions
  2023-10-10 15:52   ` Dmitry Osipenko
@ 2023-10-11  4:40     ` Huang Rui
  2023-10-18 23:25       ` Gurchetan Singh
  0 siblings, 1 reply; 7+ messages in thread
From: Huang Rui @ 2023-10-11  4:40 UTC (permalink / raw)
  To: Dmitry Osipenko
  Cc: Huang, Honglei1, Zhang, Julia, Akihiko Odaki, Stabellini,
	Stefano, Daniel Vetter, Ragiadakou, Xenia, linux-kernel,
	dri-devel, Gurchetan Singh, Chen, Jiqian, Marc-André Lureau,
	Gerd Hoffmann, Deucher, Alexander, David Airlie, virtualization

On Tue, Oct 10, 2023 at 11:52:14PM +0800, Dmitry Osipenko wrote:
> On 10/10/23 18:40, Dmitry Osipenko wrote:
> > On 10/10/23 16:57, Huang Rui wrote:
> >> These definitions are used fro qemu, and qemu imports this marco in the
> >> headers to enable gfxstream, venus, cross domain, and drm (native
> >> context) for virtio gpu. So it should add them even kernel doesn't use
> >> this.
> >>
> >> Signed-off-by: Huang Rui <ray.huang@amd.com>
> >> Reviewed-by: Akihiko Odaki <akihiko.odaki@daynix.com>
> >> ---
> >>
> >> Changes V1 -> V2:
> >> - Add all capsets including gfxstream and venus in kernel header (Dmitry Osipenko)
> >>
> >> Changes V2 -> V3:
> >> - Add missed capsets including cross domain and drm (native context)
> >>   (Dmitry Osipenko)
> >>
> >> v1: https://lore.kernel.org/lkml/20230915105918.3763061-1-ray.huang@amd.com/
> >> v2: https://lore.kernel.org/lkml/20231010032553.1138036-1-ray.huang@amd.com/
> >>
> >>  include/uapi/linux/virtio_gpu.h | 4 ++++
> >>  1 file changed, 4 insertions(+)
> >>
> >> diff --git a/include/uapi/linux/virtio_gpu.h b/include/uapi/linux/virtio_gpu.h
> >> index f556fde07b76..240911c8da31 100644
> >> --- a/include/uapi/linux/virtio_gpu.h
> >> +++ b/include/uapi/linux/virtio_gpu.h
> >> @@ -309,6 +309,10 @@ struct virtio_gpu_cmd_submit {
> >>  
> >>  #define VIRTIO_GPU_CAPSET_VIRGL 1
> >>  #define VIRTIO_GPU_CAPSET_VIRGL2 2
> >> +#define VIRTIO_GPU_CAPSET_GFXSTREAM 3
> > 
> > The GFXSTREAM capset isn't correct, it should be GFXSTREAM_VULKAN in
> > accordance to [1] and [2]. There are more capsets for GFXSTREAM.
> > 
> > [1]
> > https://github.com/google/crosvm/blob/main/rutabaga_gfx/src/rutabaga_utils.rs#L172
> > 
> > [2]
> > https://patchwork.kernel.org/project/qemu-devel/patch/20231006010835.444-7-gurchetansingh@chromium.org/
> 
> Though, maybe those are "rutabaga" capsets that not related to
> virtio-gpu because crosvm has another defs for virtio-gpu capsets [3].
> The DRM capset is oddly missing in [3] and code uses "rutabaga" capset
> for DRM and virtio-gpu.
> 
> [3]
> https://github.com/google/crosvm/blob/main/devices/src/virtio/gpu/protocol.rs#L416

Yes, [3] is the file that I referred to add these capsets definitions. And
it's defined as gfxstream not gfxstream_vulkan.

> 
> Gurchetan, could you please clarify which capsets definitions are
> related to virtio-gpu and gfxstream. The
> GFXSTREAM_VULKAN/GLES/MAGMA/COMPOSER or just the single GFXSTREAM?
> 

Gurchetan, may we have your insight?

Thanks,
Ray

> -- 
> Best regards,
> Dmitry
> 

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH v3] drm/virtio: add new virtio gpu capset definitions
  2023-10-11  4:40     ` Huang Rui
@ 2023-10-18 23:25       ` Gurchetan Singh
  2023-10-18 23:35         ` Dmitry Osipenko
  2023-10-19  4:23         ` Akihiko Odaki
  0 siblings, 2 replies; 7+ messages in thread
From: Gurchetan Singh @ 2023-10-18 23:25 UTC (permalink / raw)
  To: Huang Rui
  Cc: Huang, Honglei1, Akihiko Odaki, Stabellini, Stefano,
	Daniel Vetter, Ragiadakou, Xenia, linux-kernel, dri-devel,
	virtualization, Chen, Jiqian, Marc-André Lureau,
	Gerd Hoffmann, Dmitry Osipenko, Deucher, Alexander, David Airlie,
	Zhang, Julia

[-- Attachment #1: Type: text/plain, Size: 3068 bytes --]

On Tue, Oct 10, 2023 at 9:41 PM Huang Rui <ray.huang@amd.com> wrote:

> On Tue, Oct 10, 2023 at 11:52:14PM +0800, Dmitry Osipenko wrote:
> > On 10/10/23 18:40, Dmitry Osipenko wrote:
> > > On 10/10/23 16:57, Huang Rui wrote:
> > >> These definitions are used fro qemu, and qemu imports this marco in
> the
> > >> headers to enable gfxstream, venus, cross domain, and drm (native
> > >> context) for virtio gpu. So it should add them even kernel doesn't use
> > >> this.
> > >>
> > >> Signed-off-by: Huang Rui <ray.huang@amd.com>
> > >> Reviewed-by: Akihiko Odaki <akihiko.odaki@daynix.com>
> > >> ---
> > >>
> > >> Changes V1 -> V2:
> > >> - Add all capsets including gfxstream and venus in kernel header
> (Dmitry Osipenko)
> > >>
> > >> Changes V2 -> V3:
> > >> - Add missed capsets including cross domain and drm (native context)
> > >>   (Dmitry Osipenko)
> > >>
> > >> v1:
> https://lore.kernel.org/lkml/20230915105918.3763061-1-ray.huang@amd.com/
> > >> v2:
> https://lore.kernel.org/lkml/20231010032553.1138036-1-ray.huang@amd.com/
> > >>
> > >>  include/uapi/linux/virtio_gpu.h | 4 ++++
> > >>  1 file changed, 4 insertions(+)
> > >>
> > >> diff --git a/include/uapi/linux/virtio_gpu.h
> b/include/uapi/linux/virtio_gpu.h
> > >> index f556fde07b76..240911c8da31 100644
> > >> --- a/include/uapi/linux/virtio_gpu.h
> > >> +++ b/include/uapi/linux/virtio_gpu.h
> > >> @@ -309,6 +309,10 @@ struct virtio_gpu_cmd_submit {
> > >>
> > >>  #define VIRTIO_GPU_CAPSET_VIRGL 1
> > >>  #define VIRTIO_GPU_CAPSET_VIRGL2 2
> > >> +#define VIRTIO_GPU_CAPSET_GFXSTREAM 3
> > >
> > > The GFXSTREAM capset isn't correct, it should be GFXSTREAM_VULKAN in
> > > accordance to [1] and [2]. There are more capsets for GFXSTREAM.
> > >
> > > [1]
> > >
> https://github.com/google/crosvm/blob/main/rutabaga_gfx/src/rutabaga_utils.rs#L172
> > >
> > > [2]
> > >
> https://patchwork.kernel.org/project/qemu-devel/patch/20231006010835.444-7-gurchetansingh@chromium.org/
> >
> > Though, maybe those are "rutabaga" capsets that not related to
> > virtio-gpu because crosvm has another defs for virtio-gpu capsets [3].
> > The DRM capset is oddly missing in [3] and code uses "rutabaga" capset
> > for DRM and virtio-gpu.
> >
> > [3]
> >
> https://github.com/google/crosvm/blob/main/devices/src/virtio/gpu/protocol.rs#L416
>
> Yes, [3] is the file that I referred to add these capsets definitions. And
> it's defined as gfxstream not gfxstream_vulkan.
>
> >
> > Gurchetan, could you please clarify which capsets definitions are
> > related to virtio-gpu and gfxstream. The
> > GFXSTREAM_VULKAN/GLES/MAGMA/COMPOSER or just the single GFXSTREAM?


It should be GFXSTREAM_VULKAN.  The rest are more experimental and easy to
modify in terms of the enum value, should the need arise.

I imagine the virtio-spec update to reflect the GFXSTREAM to
GFXSTREAM_VULKAN change will happen eventually.


> >
>
> Gurchetan, may we have your insight?
>
> Thanks,
> Ray
>
> > --
> > Best regards,
> > Dmitry
> >
>

[-- Attachment #2: Type: text/html, Size: 4901 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH v3] drm/virtio: add new virtio gpu capset definitions
  2023-10-18 23:25       ` Gurchetan Singh
@ 2023-10-18 23:35         ` Dmitry Osipenko
  2023-10-19  4:23         ` Akihiko Odaki
  1 sibling, 0 replies; 7+ messages in thread
From: Dmitry Osipenko @ 2023-10-18 23:35 UTC (permalink / raw)
  To: Gurchetan Singh, Huang Rui
  Cc: Huang, Honglei1, Akihiko Odaki, Stabellini, Stefano,
	Daniel Vetter, Ragiadakou, Xenia, linux-kernel, dri-devel,
	virtualization, Chen, Jiqian, Marc-André Lureau,
	Gerd Hoffmann, Deucher, Alexander, David Airlie, Zhang, Julia

On 10/19/23 02:25, Gurchetan Singh wrote:
> On Tue, Oct 10, 2023 at 9:41 PM Huang Rui <ray.huang@amd.com> wrote:
> 
>> On Tue, Oct 10, 2023 at 11:52:14PM +0800, Dmitry Osipenko wrote:
>>> On 10/10/23 18:40, Dmitry Osipenko wrote:
>>>> On 10/10/23 16:57, Huang Rui wrote:
>>>>> These definitions are used fro qemu, and qemu imports this marco in
>> the
>>>>> headers to enable gfxstream, venus, cross domain, and drm (native
>>>>> context) for virtio gpu. So it should add them even kernel doesn't use
>>>>> this.
>>>>>
>>>>> Signed-off-by: Huang Rui <ray.huang@amd.com>
>>>>> Reviewed-by: Akihiko Odaki <akihiko.odaki@daynix.com>
>>>>> ---
>>>>>
>>>>> Changes V1 -> V2:
>>>>> - Add all capsets including gfxstream and venus in kernel header
>> (Dmitry Osipenko)
>>>>>
>>>>> Changes V2 -> V3:
>>>>> - Add missed capsets including cross domain and drm (native context)
>>>>>   (Dmitry Osipenko)
>>>>>
>>>>> v1:
>> https://lore.kernel.org/lkml/20230915105918.3763061-1-ray.huang@amd.com/
>>>>> v2:
>> https://lore.kernel.org/lkml/20231010032553.1138036-1-ray.huang@amd.com/
>>>>>
>>>>>  include/uapi/linux/virtio_gpu.h | 4 ++++
>>>>>  1 file changed, 4 insertions(+)
>>>>>
>>>>> diff --git a/include/uapi/linux/virtio_gpu.h
>> b/include/uapi/linux/virtio_gpu.h
>>>>> index f556fde07b76..240911c8da31 100644
>>>>> --- a/include/uapi/linux/virtio_gpu.h
>>>>> +++ b/include/uapi/linux/virtio_gpu.h
>>>>> @@ -309,6 +309,10 @@ struct virtio_gpu_cmd_submit {
>>>>>
>>>>>  #define VIRTIO_GPU_CAPSET_VIRGL 1
>>>>>  #define VIRTIO_GPU_CAPSET_VIRGL2 2
>>>>> +#define VIRTIO_GPU_CAPSET_GFXSTREAM 3
>>>>
>>>> The GFXSTREAM capset isn't correct, it should be GFXSTREAM_VULKAN in
>>>> accordance to [1] and [2]. There are more capsets for GFXSTREAM.
>>>>
>>>> [1]
>>>>
>> https://github.com/google/crosvm/blob/main/rutabaga_gfx/src/rutabaga_utils.rs#L172
>>>>
>>>> [2]
>>>>
>> https://patchwork.kernel.org/project/qemu-devel/patch/20231006010835.444-7-gurchetansingh@chromium.org/
>>>
>>> Though, maybe those are "rutabaga" capsets that not related to
>>> virtio-gpu because crosvm has another defs for virtio-gpu capsets [3].
>>> The DRM capset is oddly missing in [3] and code uses "rutabaga" capset
>>> for DRM and virtio-gpu.
>>>
>>> [3]
>>>
>> https://github.com/google/crosvm/blob/main/devices/src/virtio/gpu/protocol.rs#L416
>>
>> Yes, [3] is the file that I referred to add these capsets definitions. And
>> it's defined as gfxstream not gfxstream_vulkan.
>>
>>>
>>> Gurchetan, could you please clarify which capsets definitions are
>>> related to virtio-gpu and gfxstream. The
>>> GFXSTREAM_VULKAN/GLES/MAGMA/COMPOSER or just the single GFXSTREAM?
> 
> 
> It should be GFXSTREAM_VULKAN.  The rest are more experimental and easy to
> modify in terms of the enum value, should the need arise.
> 
> I imagine the virtio-spec update to reflect the GFXSTREAM to
> GFXSTREAM_VULKAN change will happen eventually.

Thanks for the clarification. Good point about the spec updating, we
should document DRM context too,

-- 
Best regards,
Dmitry


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH v3] drm/virtio: add new virtio gpu capset definitions
  2023-10-18 23:25       ` Gurchetan Singh
  2023-10-18 23:35         ` Dmitry Osipenko
@ 2023-10-19  4:23         ` Akihiko Odaki
  1 sibling, 0 replies; 7+ messages in thread
From: Akihiko Odaki @ 2023-10-19  4:23 UTC (permalink / raw)
  To: Gurchetan Singh, Huang Rui
  Cc: Huang, Honglei1, Stabellini, Stefano, Daniel Vetter, Ragiadakou,
	Xenia, linux-kernel, dri-devel, virtualization, Chen, Jiqian,
	Marc-André Lureau, Gerd Hoffmann, Dmitry Osipenko, Deucher,
	Alexander, David Airlie, Zhang, Julia

On 2023/10/19 8:25, Gurchetan Singh wrote:
> 
> 
> On Tue, Oct 10, 2023 at 9:41 PM Huang Rui <ray.huang@amd.com 
> <mailto:ray.huang@amd.com>> wrote:
> 
>     On Tue, Oct 10, 2023 at 11:52:14PM +0800, Dmitry Osipenko wrote:
>      > On 10/10/23 18:40, Dmitry Osipenko wrote:
>      > > On 10/10/23 16:57, Huang Rui wrote:
>      > >> These definitions are used fro qemu, and qemu imports this
>     marco in the
>      > >> headers to enable gfxstream, venus, cross domain, and drm (native
>      > >> context) for virtio gpu. So it should add them even kernel
>     doesn't use
>      > >> this.
>      > >>
>      > >> Signed-off-by: Huang Rui <ray.huang@amd.com
>     <mailto:ray.huang@amd.com>>
>      > >> Reviewed-by: Akihiko Odaki <akihiko.odaki@daynix.com
>     <mailto:akihiko.odaki@daynix.com>>
>      > >> ---
>      > >>
>      > >> Changes V1 -> V2:
>      > >> - Add all capsets including gfxstream and venus in kernel
>     header (Dmitry Osipenko)
>      > >>
>      > >> Changes V2 -> V3:
>      > >> - Add missed capsets including cross domain and drm (native
>     context)
>      > >>   (Dmitry Osipenko)
>      > >>
>      > >> v1:
>     https://lore.kernel.org/lkml/20230915105918.3763061-1-ray.huang@amd.com/ <https://lore.kernel.org/lkml/20230915105918.3763061-1-ray.huang@amd.com/>
>      > >> v2:
>     https://lore.kernel.org/lkml/20231010032553.1138036-1-ray.huang@amd.com/ <https://lore.kernel.org/lkml/20231010032553.1138036-1-ray.huang@amd.com/>
>      > >>
>      > >>  include/uapi/linux/virtio_gpu.h | 4 ++++
>      > >>  1 file changed, 4 insertions(+)
>      > >>
>      > >> diff --git a/include/uapi/linux/virtio_gpu.h
>     b/include/uapi/linux/virtio_gpu.h
>      > >> index f556fde07b76..240911c8da31 100644
>      > >> --- a/include/uapi/linux/virtio_gpu.h
>      > >> +++ b/include/uapi/linux/virtio_gpu.h
>      > >> @@ -309,6 +309,10 @@ struct virtio_gpu_cmd_submit {
>      > >>
>      > >>  #define VIRTIO_GPU_CAPSET_VIRGL 1
>      > >>  #define VIRTIO_GPU_CAPSET_VIRGL2 2
>      > >> +#define VIRTIO_GPU_CAPSET_GFXSTREAM 3
>      > >
>      > > The GFXSTREAM capset isn't correct, it should be
>     GFXSTREAM_VULKAN in
>      > > accordance to [1] and [2]. There are more capsets for GFXSTREAM.
>      > >
>      > > [1]
>      > >
>     https://github.com/google/crosvm/blob/main/rutabaga_gfx/src/rutabaga_utils.rs#L172 <https://github.com/google/crosvm/blob/main/rutabaga_gfx/src/rutabaga_utils.rs#L172>
>      > >
>      > > [2]
>      > >
>     https://patchwork.kernel.org/project/qemu-devel/patch/20231006010835.444-7-gurchetansingh@chromium.org/ <https://patchwork.kernel.org/project/qemu-devel/patch/20231006010835.444-7-gurchetansingh@chromium.org/>
>      >
>      > Though, maybe those are "rutabaga" capsets that not related to
>      > virtio-gpu because crosvm has another defs for virtio-gpu capsets
>     [3].
>      > The DRM capset is oddly missing in [3] and code uses "rutabaga"
>     capset
>      > for DRM and virtio-gpu.
>      >
>      > [3]
>      >
>     https://github.com/google/crosvm/blob/main/devices/src/virtio/gpu/protocol.rs#L416 <https://github.com/google/crosvm/blob/main/devices/src/virtio/gpu/protocol.rs#L416>
> 
>     Yes, [3] is the file that I referred to add these capsets
>     definitions. And
>     it's defined as gfxstream not gfxstream_vulkan.
> 
>      >
>      > Gurchetan, could you please clarify which capsets definitions are
>      > related to virtio-gpu and gfxstream. The
>      > GFXSTREAM_VULKAN/GLES/MAGMA/COMPOSER or just the single GFXSTREAM?
> 
> 
> It should be GFXSTREAM_VULKAN.  The rest are more experimental and easy 
> to modify in terms of the enum value, should the need arise.
> 
> I imagine the virtio-spec update to reflect the GFXSTREAM to 
> GFXSTREAM_VULKAN change will happen eventually.

I think this is a matter what the committee should determine, but in 
general I don't think it is OK to change the existing identifier.

I also think even experimental values should be added to virtio spec at 
an early stage unless such an "experiment" is done only on one laptop. 
We can obsolete a capset anytime so it's more important to avoid 
conflicts of capsets.

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2023-10-19  4:23 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-10-10 13:57 [PATCH v3] drm/virtio: add new virtio gpu capset definitions Huang Rui
2023-10-10 15:40 ` Dmitry Osipenko
2023-10-10 15:52   ` Dmitry Osipenko
2023-10-11  4:40     ` Huang Rui
2023-10-18 23:25       ` Gurchetan Singh
2023-10-18 23:35         ` Dmitry Osipenko
2023-10-19  4:23         ` Akihiko Odaki

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).