[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v8 2/6] ui/console: new dmabuf.h and dmabuf.c for QemuDmaBuf
|
From: |
Daniel P . Berrangé |
|
Subject: |
Re: [PATCH v8 2/6] ui/console: new dmabuf.h and dmabuf.c for QemuDmaBuf struct and helpers |
|
Date: |
Mon, 22 Apr 2024 09:01:38 +0100 |
|
User-agent: |
Mutt/2.2.12 (2023-09-09) |
On Fri, Apr 19, 2024 at 11:59:48AM -0700, dongwon.kim@intel.com wrote:
> From: Dongwon Kim <dongwon.kim@intel.com>
>
> New header and source files are added for containing QemuDmaBuf struct
> definition and newly introduced helpers for creating/freeing the struct
> and accessing its data.
>
> Suggested-by: Marc-André Lureau <marcandre.lureau@redhat.com>
> Cc: Philippe Mathieu-Daudé <philmd@linaro.org>
> Cc: Daniel P. Berrangé <berrange@redhat.com>
> Cc: Vivek Kasireddy <vivek.kasireddy@intel.com>
> Signed-off-by: Dongwon Kim <dongwon.kim@intel.com>
> ---
> include/ui/console.h | 20 +----
> include/ui/dmabuf.h | 81 +++++++++++++++++
> ui/dmabuf.c | 206 +++++++++++++++++++++++++++++++++++++++++++
> ui/meson.build | 1 +
> 4 files changed, 289 insertions(+), 19 deletions(-)
> create mode 100644 include/ui/dmabuf.h
> create mode 100644 ui/dmabuf.c
>
> diff --git a/include/ui/console.h b/include/ui/console.h
> index 0bc7a00ac0..a208a68b88 100644
> --- a/include/ui/console.h
> +++ b/include/ui/console.h
> @@ -7,6 +7,7 @@
> #include "qapi/qapi-types-ui.h"
> #include "ui/input.h"
> #include "ui/surface.h"
> +#include "ui/dmabuf.h"
>
> #define TYPE_QEMU_CONSOLE "qemu-console"
> OBJECT_DECLARE_TYPE(QemuConsole, QemuConsoleClass, QEMU_CONSOLE)
> @@ -185,25 +186,6 @@ struct QEMUGLParams {
> int minor_ver;
> };
>
> -typedef struct QemuDmaBuf {
> - int fd;
> - uint32_t width;
> - uint32_t height;
> - uint32_t stride;
> - uint32_t fourcc;
> - uint64_t modifier;
> - uint32_t texture;
> - uint32_t x;
> - uint32_t y;
> - uint32_t backing_width;
> - uint32_t backing_height;
> - bool y0_top;
> - void *sync;
> - int fence_fd;
> - bool allow_fences;
> - bool draw_submitted;
> -} QemuDmaBuf;
> -
> enum display_scanout {
> SCANOUT_NONE,
> SCANOUT_SURFACE,
> diff --git a/include/ui/dmabuf.h b/include/ui/dmabuf.h
> new file mode 100644
> index 0000000000..e332958c39
> --- /dev/null
> +++ b/include/ui/dmabuf.h
> @@ -0,0 +1,81 @@
> +/*
> + * SPDX-License-Identifier: MIT
QEMU's expected license for new contributions is generally GPL-2.0-or-later.
If you need to diverge from that please explain why.
> + *
> + * QemuDmaBuf struct and helpers used for accessing its data
> + *
> + * Copyright (c) 2024 Dongwon Kim <dongwon.kim@intel.com>
> + *
> + * Permission is hereby granted, free of charge, to any person obtaining a
> copy
> + * of this software and associated documentation files (the "Software"), to
> deal
> + * in the Software without restriction, including without limitation the
> rights
> + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
> + * copies of the Software, and to permit persons to whom the Software is
> + * furnished to do so, subject to the following conditions:
> + *
> + * The above copyright notice and this permission notice shall be included in
> + * all copies or substantial portions of the Software.
> + *
> + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
> + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
> + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
> + * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
> + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
> FROM,
> + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
> + * THE SOFTWARE.
> + */
> diff --git a/ui/dmabuf.c b/ui/dmabuf.c
> new file mode 100644
> index 0000000000..ef3b07956e
> --- /dev/null
> +++ b/ui/dmabuf.c
> @@ -0,0 +1,206 @@
> +/*
> + * SPDX-License-Identifier: MIT
> + *
> + * QemuDmaBuf struct and helpers used for accessing its data
> + *
> + * Copyright (c) 2024 Dongwon Kim <dongwon.kim@intel.com>
> + *
> + * Permission is hereby granted, free of charge, to any person obtaining a
> copy
> + * of this software and associated documentation files (the "Software"), to
> deal
> + * in the Software without restriction, including without limitation the
> rights
> + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
> + * copies of the Software, and to permit persons to whom the Software is
> + * furnished to do so, subject to the following conditions:
> + *
> + * The above copyright notice and this permission notice shall be included in
> + * all copies or substantial portions of the Software.
> + *
> + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
> + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
> + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
> + * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
> + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
> FROM,
> + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
> + * THE SOFTWARE.
> + */
With regards,
Daniel
--
|: https://berrange.com -o- https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org -o- https://fstop138.berrange.com :|
|: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|
- [PATCH v8 0/6] ui/console: Private QemuDmaBuf struct, dongwon . kim, 2024/04/19
- [PATCH v8 1/6] ui/gtk: Check if fence_fd is equal to or greater than 0, dongwon . kim, 2024/04/19
- [PATCH v8 2/6] ui/console: new dmabuf.h and dmabuf.c for QemuDmaBuf struct and helpers, dongwon . kim, 2024/04/19
- Re: [PATCH v8 2/6] ui/console: new dmabuf.h and dmabuf.c for QemuDmaBuf struct and helpers,
Daniel P . Berrangé <=
- [PATCH v8 5/6] ui/console: Use qemu_dmabuf_new() and free() helpers instead, dongwon . kim, 2024/04/19
- [PATCH v8 4/6] ui/console: Use qemu_dmabuf_set_..() helpers instead, dongwon . kim, 2024/04/19
- [PATCH v8 3/6] ui/console: Use qemu_dmabuf_get_..() helpers instead, dongwon . kim, 2024/04/19
- [PATCH v8 6/6] ui/console: move QemuDmaBuf struct def to dmabuf.c, dongwon . kim, 2024/04/19