2022-08-25 22:59:32

by Nate Yocom

[permalink] [raw]
Subject: [PATCH v5 2/4] Input: joystick: xpad: Add ABS_PROFILE axis value to uapi

Add an ABS_PROFILE axis for input devices which need it, e.g. X-Box
Adaptive Controller and X-Box Elite 2.
---
include/uapi/linux/input-event-codes.h | 1 +
1 file changed, 1 insertion(+)

diff --git a/include/uapi/linux/input-event-codes.h b/include/uapi/linux/input-event-codes.h
index dff8e7f17074..7ad931a32970 100644
--- a/include/uapi/linux/input-event-codes.h
+++ b/include/uapi/linux/input-event-codes.h
@@ -862,6 +862,7 @@
#define ABS_TOOL_WIDTH 0x1c

#define ABS_VOLUME 0x20
+#define ABS_PROFILE 0x21

#define ABS_MISC 0x28

--
2.30.2


2022-08-27 11:06:50

by Bastien Nocera

[permalink] [raw]
Subject: Re: [PATCH v5 2/4] Input: joystick: xpad: Add ABS_PROFILE axis value to uapi

On Thu, 2022-08-25 at 15:24 -0700, Nate Yocom wrote:
> Add an ABS_PROFILE axis for input devices which need it, e.g. X-Box
> Adaptive Controller and X-Box Elite 2.
> ---
>  include/uapi/linux/input-event-codes.h | 1 +
>  1 file changed, 1 insertion(+)
>
> diff --git a/include/uapi/linux/input-event-codes.h
> b/include/uapi/linux/input-event-codes.h
> index dff8e7f17074..7ad931a32970 100644
> --- a/include/uapi/linux/input-event-codes.h
> +++ b/include/uapi/linux/input-event-codes.h
> @@ -862,6 +862,7 @@
>  #define ABS_TOOL_WIDTH         0x1c
>  
>  #define ABS_VOLUME             0x20
> +#define ABS_PROFILE            0x21
>  
>  #define ABS_MISC               0x28
>  


You probably also want to add it to the absolutes array in
drivers/hid/hid-debug.c.

Again, you might want to wait for confirmation from Dmitry that this is
the right way to do this for the profiles.

2022-08-29 19:48:53

by Nate Yocom

[permalink] [raw]
Subject: Re: [PATCH v5 2/4] Input: joystick: xpad: Add ABS_PROFILE axis value to uapi

On Sat, Aug 27, 2022 at 12:40:46PM +0200, Bastien Nocera wrote:
> On Thu, 2022-08-25 at 15:24 -0700, Nate Yocom wrote:
> > Add an ABS_PROFILE axis for input devices which need it, e.g. X-Box
> > Adaptive Controller and X-Box Elite 2.
> > ---
> >  include/uapi/linux/input-event-codes.h | 1 +
> >  1 file changed, 1 insertion(+)
> >
> > diff --git a/include/uapi/linux/input-event-codes.h
> > b/include/uapi/linux/input-event-codes.h
> > index dff8e7f17074..7ad931a32970 100644
> > --- a/include/uapi/linux/input-event-codes.h
> > +++ b/include/uapi/linux/input-event-codes.h
> > @@ -862,6 +862,7 @@
> >  #define ABS_TOOL_WIDTH         0x1c
> >  
> >  #define ABS_VOLUME             0x20
> > +#define ABS_PROFILE            0x21
> >  
> >  #define ABS_MISC               0x28
> >  
>
>
> You probably also want to add it to the absolutes array in
> drivers/hid/hid-debug.c.

doh, roger.

> Again, you might want to wait for confirmation from Dmitry that this is
> the right way to do this for the profiles.

Makes sense. Dmitry?

2022-09-07 15:46:35

by Bastien Nocera

[permalink] [raw]
Subject: Re: [PATCH v5 2/4] Input: joystick: xpad: Add ABS_PROFILE axis value to uapi

On Mon, 2022-08-29 at 12:07 -0700, Nate Yocom wrote:
> On Sat, Aug 27, 2022 at 12:40:46PM +0200, Bastien Nocera wrote:
> > On Thu, 2022-08-25 at 15:24 -0700, Nate Yocom wrote:
> > > Add an ABS_PROFILE axis for input devices which need it, e.g. X-
> > > Box
> > > Adaptive Controller and X-Box Elite 2.
> > > ---
> > >  include/uapi/linux/input-event-codes.h | 1 +
> > >  1 file changed, 1 insertion(+)
> > >
> > > diff --git a/include/uapi/linux/input-event-codes.h
> > > b/include/uapi/linux/input-event-codes.h
> > > index dff8e7f17074..7ad931a32970 100644
> > > --- a/include/uapi/linux/input-event-codes.h
> > > +++ b/include/uapi/linux/input-event-codes.h
> > > @@ -862,6 +862,7 @@
> > >  #define ABS_TOOL_WIDTH         0x1c
> > >  
> > >  #define ABS_VOLUME             0x20
> > > +#define ABS_PROFILE            0x21
> > >  
> > >  #define ABS_MISC               0x28
> > >  
> >
> >
> > You probably also want to add it to the absolutes array in
> > drivers/hid/hid-debug.c.
>
> doh, roger.
>
> > Again, you might want to wait for confirmation from Dmitry that
> > this is
> > the right way to do this for the profiles.
>
> Makes sense.  Dmitry?

Dmitry, could you please confirm whether ABS_PROFILE definition is
correct?

Then Nate can update his patch so we can land the support for that
controller.

Thanks!

2022-09-08 05:48:07

by Dmitry Torokhov

[permalink] [raw]
Subject: Re: [PATCH v5 2/4] Input: joystick: xpad: Add ABS_PROFILE axis value to uapi

On Wed, Sep 07, 2022 at 05:41:08PM +0200, Bastien Nocera wrote:
> On Mon, 2022-08-29 at 12:07 -0700, Nate Yocom wrote:
> > On Sat, Aug 27, 2022 at 12:40:46PM +0200, Bastien Nocera wrote:
> > > On Thu, 2022-08-25 at 15:24 -0700, Nate Yocom wrote:
> > > > Add an ABS_PROFILE axis for input devices which need it, e.g. X-
> > > > Box
> > > > Adaptive Controller and X-Box Elite 2.
> > > > ---
> > > > ?include/uapi/linux/input-event-codes.h | 1 +
> > > > ?1 file changed, 1 insertion(+)
> > > >
> > > > diff --git a/include/uapi/linux/input-event-codes.h
> > > > b/include/uapi/linux/input-event-codes.h
> > > > index dff8e7f17074..7ad931a32970 100644
> > > > --- a/include/uapi/linux/input-event-codes.h
> > > > +++ b/include/uapi/linux/input-event-codes.h
> > > > @@ -862,6 +862,7 @@
> > > > ?#define ABS_TOOL_WIDTH?????????0x1c
> > > > ?
> > > > ?#define ABS_VOLUME?????????????0x20
> > > > +#define ABS_PROFILE????????????0x21
> > > > ?
> > > > ?#define ABS_MISC???????????????0x28
> > > > ?
> > >
> > >
> > > You probably also want to add it to the absolutes array in
> > > drivers/hid/hid-debug.c.
> >
> > doh, roger.
> >
> > > Again, you might want to wait for confirmation from Dmitry that
> > > this is
> > > the right way to do this for the profiles.
> >
> > Makes sense.? Dmitry?
>
> Dmitry, could you please confirm whether ABS_PROFILE definition is
> correct?

Yes, I think this makes sense. Do we have a buy in from userspace folks
(Peter H, etc) for this?

I'd like some documentation added to Documentation/input/event-codes.rst
and potentially to Documentation/input/gamepad.rst even though profile
does not have to be gamepad specific event.

Thanks.

--
Dmitry

2022-09-08 07:03:56

by Benjamin Tissoires

[permalink] [raw]
Subject: Re: [PATCH v5 2/4] Input: joystick: xpad: Add ABS_PROFILE axis value to uapi

On Thu, Sep 8, 2022 at 7:36 AM Dmitry Torokhov
<[email protected]> wrote:
>
> On Wed, Sep 07, 2022 at 05:41:08PM +0200, Bastien Nocera wrote:
> > On Mon, 2022-08-29 at 12:07 -0700, Nate Yocom wrote:
> > > On Sat, Aug 27, 2022 at 12:40:46PM +0200, Bastien Nocera wrote:
> > > > On Thu, 2022-08-25 at 15:24 -0700, Nate Yocom wrote:
> > > > > Add an ABS_PROFILE axis for input devices which need it, e.g. X-
> > > > > Box
> > > > > Adaptive Controller and X-Box Elite 2.
> > > > > ---
> > > > > include/uapi/linux/input-event-codes.h | 1 +
> > > > > 1 file changed, 1 insertion(+)
> > > > >
> > > > > diff --git a/include/uapi/linux/input-event-codes.h
> > > > > b/include/uapi/linux/input-event-codes.h
> > > > > index dff8e7f17074..7ad931a32970 100644
> > > > > --- a/include/uapi/linux/input-event-codes.h
> > > > > +++ b/include/uapi/linux/input-event-codes.h
> > > > > @@ -862,6 +862,7 @@
> > > > > #define ABS_TOOL_WIDTH 0x1c
> > > > >
> > > > > #define ABS_VOLUME 0x20
> > > > > +#define ABS_PROFILE 0x21
> > > > >
> > > > > #define ABS_MISC 0x28
> > > > >
> > > >
> > > >
> > > > You probably also want to add it to the absolutes array in
> > > > drivers/hid/hid-debug.c.
> > >
> > > doh, roger.
> > >
> > > > Again, you might want to wait for confirmation from Dmitry that
> > > > this is
> > > > the right way to do this for the profiles.
> > >
> > > Makes sense. Dmitry?
> >
> > Dmitry, could you please confirm whether ABS_PROFILE definition is
> > correct?
>
> Yes, I think this makes sense. Do we have a buy in from userspace folks
> (Peter H, etc) for this?

AFAICT, libinput wouldn't use that new axis, simply because it doesn't
care about game controllers.
So it all comes down to game users to validate this (and probably only
android is now the main consumer of these given that SDL and Steam are
directly using hidraw or libusb to talk to controllers).

Cheers,
Benjamin

>
> I'd like some documentation added to Documentation/input/event-codes.rst
> and potentially to Documentation/input/gamepad.rst even though profile
> does not have to be gamepad specific event.
>
> Thanks.
>
> --
> Dmitry
>

2022-09-08 19:14:45

by Nate Yocom

[permalink] [raw]
Subject: Re: [PATCH v5 2/4] Input: joystick: xpad: Add ABS_PROFILE axis value to uapi

On Wed, Sep 07, 2022 at 10:36:35PM -0700, Dmitry Torokhov wrote:
> On Wed, Sep 07, 2022 at 05:41:08PM +0200, Bastien Nocera wrote:
> > On Mon, 2022-08-29 at 12:07 -0700, Nate Yocom wrote:
> > > On Sat, Aug 27, 2022 at 12:40:46PM +0200, Bastien Nocera wrote:
> > > > On Thu, 2022-08-25 at 15:24 -0700, Nate Yocom wrote:
> > > > > Add an ABS_PROFILE axis for input devices which need it, e.g. X-
> > > > > Box
> > > > > Adaptive Controller and X-Box Elite 2.
> > > > > ---
> > > > >  include/uapi/linux/input-event-codes.h | 1 +
> > > > >  1 file changed, 1 insertion(+)
> > > > >
> > > > > diff --git a/include/uapi/linux/input-event-codes.h
> > > > > b/include/uapi/linux/input-event-codes.h
> > > > > index dff8e7f17074..7ad931a32970 100644
> > > > > --- a/include/uapi/linux/input-event-codes.h
> > > > > +++ b/include/uapi/linux/input-event-codes.h
> > > > > @@ -862,6 +862,7 @@
> > > > >  #define ABS_TOOL_WIDTH         0x1c
> > > > >  
> > > > >  #define ABS_VOLUME             0x20
> > > > > +#define ABS_PROFILE            0x21
> > > > >  
> > > > >  #define ABS_MISC               0x28
> > > > >  
> > > >
> > > >
> > > > You probably also want to add it to the absolutes array in
> > > > drivers/hid/hid-debug.c.
> > >
> > > doh, roger.
> > >
> > > > Again, you might want to wait for confirmation from Dmitry that
> > > > this is
> > > > the right way to do this for the profiles.
> > >
> > > Makes sense.  Dmitry?
> >
> > Dmitry, could you please confirm whether ABS_PROFILE definition is
> > correct?
>
> Yes, I think this makes sense. Do we have a buy in from userspace folks
> (Peter H, etc) for this?
>
> I'd like some documentation added to Documentation/input/event-codes.rst
> and potentially to Documentation/input/gamepad.rst even though profile
> does not have to be gamepad specific event.
>

Will do, v6 incoming shortly.

2022-09-09 01:29:16

by Peter Hutterer

[permalink] [raw]
Subject: Re: [PATCH v5 2/4] Input: joystick: xpad: Add ABS_PROFILE axis value to uapi

On Thu, Sep 08, 2022 at 08:51:57AM +0200, Benjamin Tissoires wrote:
> On Thu, Sep 8, 2022 at 7:36 AM Dmitry Torokhov
> <[email protected]> wrote:
> >
> > On Wed, Sep 07, 2022 at 05:41:08PM +0200, Bastien Nocera wrote:
> > > On Mon, 2022-08-29 at 12:07 -0700, Nate Yocom wrote:
> > > > On Sat, Aug 27, 2022 at 12:40:46PM +0200, Bastien Nocera wrote:
> > > > > On Thu, 2022-08-25 at 15:24 -0700, Nate Yocom wrote:
> > > > > > Add an ABS_PROFILE axis for input devices which need it, e.g. X-
> > > > > > Box
> > > > > > Adaptive Controller and X-Box Elite 2.
> > > > > > ---
> > > > > > include/uapi/linux/input-event-codes.h | 1 +
> > > > > > 1 file changed, 1 insertion(+)
> > > > > >
> > > > > > diff --git a/include/uapi/linux/input-event-codes.h
> > > > > > b/include/uapi/linux/input-event-codes.h
> > > > > > index dff8e7f17074..7ad931a32970 100644
> > > > > > --- a/include/uapi/linux/input-event-codes.h
> > > > > > +++ b/include/uapi/linux/input-event-codes.h
> > > > > > @@ -862,6 +862,7 @@
> > > > > > #define ABS_TOOL_WIDTH 0x1c
> > > > > >
> > > > > > #define ABS_VOLUME 0x20
> > > > > > +#define ABS_PROFILE 0x21
> > > > > >
> > > > > > #define ABS_MISC 0x28
> > > > > >
> > > > >
> > > > >
> > > > > You probably also want to add it to the absolutes array in
> > > > > drivers/hid/hid-debug.c.
> > > >
> > > > doh, roger.
> > > >
> > > > > Again, you might want to wait for confirmation from Dmitry that
> > > > > this is
> > > > > the right way to do this for the profiles.
> > > >
> > > > Makes sense. Dmitry?
> > >
> > > Dmitry, could you please confirm whether ABS_PROFILE definition is
> > > correct?
> >
> > Yes, I think this makes sense. Do we have a buy in from userspace folks
> > (Peter H, etc) for this?
>
> AFAICT, libinput wouldn't use that new axis, simply because it doesn't
> care about game controllers.

yep, that's pretty much the summary from my side so ACK from me.

Cheers,
Peter

> So it all comes down to game users to validate this (and probably only
> android is now the main consumer of these given that SDL and Steam are
> directly using hidraw or libusb to talk to controllers).
>
> Cheers,
> Benjamin
>
> >
> > I'd like some documentation added to Documentation/input/event-codes.rst
> > and potentially to Documentation/input/gamepad.rst even though profile
> > does not have to be gamepad specific event.
> >
> > Thanks.
> >
> > --
> > Dmitry
> >
>