From: Dmitry Torokhov <dmitry.torokhov@gmail.com>
To: Vasyl Vavrychuk <vasyl.vavrychuk@opensynergy.com>
Cc: virtualization@lists.linux-foundation.org,
linux-kernel@vger.kernel.org, linux-input@vger.kernel.org,
stable@vger.kernel.org, "Michael S. Tsirkin" <mst@redhat.com>,
Jason Wang <jasowang@redhat.com>,
Gerd Hoffmann <kraxel@redhat.com>,
Henrik Rydberg <rydberg@bitmath.org>,
Mathias Crombez <mathias.crombez@faurecia.com>
Subject: Re: [PATCH RESEND v2] virtio-input: add multi-touch support
Date: Tue, 8 Dec 2020 14:05:05 -0800 [thread overview]
Message-ID: <X8/4kRLsr8755i01@google.com> (raw)
In-Reply-To: <20201208210150.20001-1-vasyl.vavrychuk@opensynergy.com>
Hi Vasyl,
On Tue, Dec 08, 2020 at 11:01:50PM +0200, Vasyl Vavrychuk wrote:
> From: Mathias Crombez <mathias.crombez@faurecia.com>
>
> Without multi-touch slots allocated, ABS_MT_SLOT events will be lost by
> input_handle_abs_event.
>
> Signed-off-by: Mathias Crombez <mathias.crombez@faurecia.com>
> Signed-off-by: Vasyl Vavrychuk <vasyl.vavrychuk@opensynergy.com>
> Tested-by: Vasyl Vavrychuk <vasyl.vavrychuk@opensynergy.com>
> ---
> v2: fix patch corrupted by corporate email server
>
> drivers/virtio/Kconfig | 11 +++++++++++
> drivers/virtio/virtio_input.c | 8 ++++++++
> 2 files changed, 19 insertions(+)
>
> diff --git a/drivers/virtio/Kconfig b/drivers/virtio/Kconfig
> index 7b41130d3f35..2cfd5b01d96d 100644
> --- a/drivers/virtio/Kconfig
> +++ b/drivers/virtio/Kconfig
> @@ -111,6 +111,17 @@ config VIRTIO_INPUT
>
> If unsure, say M.
>
> +config VIRTIO_INPUT_MULTITOUCH_SLOTS
> + depends on VIRTIO_INPUT
> + int "Number of multitouch slots"
> + range 0 64
> + default 10
> + help
> + Define the number of multitouch slots used. Default to 10.
> + This parameter is unused if there is no multitouch capability.
I believe the number of slots should be communicated to the guest by
the host, similarly to how the rest of input device capabilities is
transferred, instead of having static compile-time option.
> +
> + 0 will disable the feature.
> +
> config VIRTIO_MMIO
> tristate "Platform bus driver for memory mapped virtio devices"
> depends on HAS_IOMEM && HAS_DMA
> diff --git a/drivers/virtio/virtio_input.c b/drivers/virtio/virtio_input.c
> index f1f6208edcf5..13f3d90e6c30 100644
> --- a/drivers/virtio/virtio_input.c
> +++ b/drivers/virtio/virtio_input.c
> @@ -7,6 +7,7 @@
>
> #include <uapi/linux/virtio_ids.h>
> #include <uapi/linux/virtio_input.h>
> +#include <linux/input/mt.h>
>
> struct virtio_input {
> struct virtio_device *vdev;
> @@ -205,6 +206,7 @@ static int virtinput_probe(struct virtio_device *vdev)
> unsigned long flags;
> size_t size;
> int abs, err;
> + bool is_mt = false;
>
> if (!virtio_has_feature(vdev, VIRTIO_F_VERSION_1))
> return -ENODEV;
> @@ -287,9 +289,15 @@ static int virtinput_probe(struct virtio_device *vdev)
> for (abs = 0; abs < ABS_CNT; abs++) {
> if (!test_bit(abs, vi->idev->absbit))
> continue;
> + if (input_is_mt_value(abs))
> + is_mt = true;
> virtinput_cfg_abs(vi, abs);
> }
> }
> + if (is_mt)
> + input_mt_init_slots(vi->idev,
> + CONFIG_VIRTIO_INPUT_MULTITOUCH_SLOTS,
> + INPUT_MT_DIRECT);
Here errors need to be handled.
>
> virtio_device_ready(vdev);
> vi->ready = true;
> --
> 2.23.0
>
Thanks.
--
Dmitry
WARNING: multiple messages have this Message-ID (diff)
From: Dmitry Torokhov <dmitry.torokhov@gmail.com>
To: Vasyl Vavrychuk <vasyl.vavrychuk@opensynergy.com>
Cc: "Michael S. Tsirkin" <mst@redhat.com>,
Henrik Rydberg <rydberg@bitmath.org>,
linux-kernel@vger.kernel.org, stable@vger.kernel.org,
virtualization@lists.linux-foundation.org,
Mathias Crombez <mathias.crombez@faurecia.com>,
linux-input@vger.kernel.org
Subject: Re: [PATCH RESEND v2] virtio-input: add multi-touch support
Date: Tue, 8 Dec 2020 14:05:05 -0800 [thread overview]
Message-ID: <X8/4kRLsr8755i01@google.com> (raw)
In-Reply-To: <20201208210150.20001-1-vasyl.vavrychuk@opensynergy.com>
Hi Vasyl,
On Tue, Dec 08, 2020 at 11:01:50PM +0200, Vasyl Vavrychuk wrote:
> From: Mathias Crombez <mathias.crombez@faurecia.com>
>
> Without multi-touch slots allocated, ABS_MT_SLOT events will be lost by
> input_handle_abs_event.
>
> Signed-off-by: Mathias Crombez <mathias.crombez@faurecia.com>
> Signed-off-by: Vasyl Vavrychuk <vasyl.vavrychuk@opensynergy.com>
> Tested-by: Vasyl Vavrychuk <vasyl.vavrychuk@opensynergy.com>
> ---
> v2: fix patch corrupted by corporate email server
>
> drivers/virtio/Kconfig | 11 +++++++++++
> drivers/virtio/virtio_input.c | 8 ++++++++
> 2 files changed, 19 insertions(+)
>
> diff --git a/drivers/virtio/Kconfig b/drivers/virtio/Kconfig
> index 7b41130d3f35..2cfd5b01d96d 100644
> --- a/drivers/virtio/Kconfig
> +++ b/drivers/virtio/Kconfig
> @@ -111,6 +111,17 @@ config VIRTIO_INPUT
>
> If unsure, say M.
>
> +config VIRTIO_INPUT_MULTITOUCH_SLOTS
> + depends on VIRTIO_INPUT
> + int "Number of multitouch slots"
> + range 0 64
> + default 10
> + help
> + Define the number of multitouch slots used. Default to 10.
> + This parameter is unused if there is no multitouch capability.
I believe the number of slots should be communicated to the guest by
the host, similarly to how the rest of input device capabilities is
transferred, instead of having static compile-time option.
> +
> + 0 will disable the feature.
> +
> config VIRTIO_MMIO
> tristate "Platform bus driver for memory mapped virtio devices"
> depends on HAS_IOMEM && HAS_DMA
> diff --git a/drivers/virtio/virtio_input.c b/drivers/virtio/virtio_input.c
> index f1f6208edcf5..13f3d90e6c30 100644
> --- a/drivers/virtio/virtio_input.c
> +++ b/drivers/virtio/virtio_input.c
> @@ -7,6 +7,7 @@
>
> #include <uapi/linux/virtio_ids.h>
> #include <uapi/linux/virtio_input.h>
> +#include <linux/input/mt.h>
>
> struct virtio_input {
> struct virtio_device *vdev;
> @@ -205,6 +206,7 @@ static int virtinput_probe(struct virtio_device *vdev)
> unsigned long flags;
> size_t size;
> int abs, err;
> + bool is_mt = false;
>
> if (!virtio_has_feature(vdev, VIRTIO_F_VERSION_1))
> return -ENODEV;
> @@ -287,9 +289,15 @@ static int virtinput_probe(struct virtio_device *vdev)
> for (abs = 0; abs < ABS_CNT; abs++) {
> if (!test_bit(abs, vi->idev->absbit))
> continue;
> + if (input_is_mt_value(abs))
> + is_mt = true;
> virtinput_cfg_abs(vi, abs);
> }
> }
> + if (is_mt)
> + input_mt_init_slots(vi->idev,
> + CONFIG_VIRTIO_INPUT_MULTITOUCH_SLOTS,
> + INPUT_MT_DIRECT);
Here errors need to be handled.
>
> virtio_device_ready(vdev);
> vi->ready = true;
> --
> 2.23.0
>
Thanks.
--
Dmitry
_______________________________________________
Virtualization mailing list
Virtualization@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/virtualization
next prev parent reply other threads:[~2020-12-08 22:06 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-12-08 21:01 [PATCH RESEND v2] virtio-input: add multi-touch support Vasyl Vavrychuk
2020-12-08 21:01 ` Vasyl Vavrychuk
2020-12-08 22:05 ` Dmitry Torokhov [this message]
2020-12-08 22:05 ` Dmitry Torokhov
2020-12-18 23:20 ` Vasyl Vavrychuk
2020-12-18 23:20 ` Vasyl Vavrychuk
2020-12-09 7:01 ` Greg KH
2020-12-09 7:01 ` Greg KH
2020-12-09 8:28 ` Michael S. Tsirkin
2020-12-09 8:28 ` Michael S. Tsirkin
2020-12-18 23:25 ` Vasyl Vavrychuk
2020-12-18 23:25 ` Vasyl Vavrychuk
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=X8/4kRLsr8755i01@google.com \
--to=dmitry.torokhov@gmail.com \
--cc=jasowang@redhat.com \
--cc=kraxel@redhat.com \
--cc=linux-input@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mathias.crombez@faurecia.com \
--cc=mst@redhat.com \
--cc=rydberg@bitmath.org \
--cc=stable@vger.kernel.org \
--cc=vasyl.vavrychuk@opensynergy.com \
--cc=virtualization@lists.linux-foundation.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.