LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
* [PATCH 1/3] input: xpad: avoid using __set_bit() for capabilities
@ 2018-03-31 11:21 Marcus Folkesson
  2018-03-31 11:21 ` [PATCH 2/3] input: as5011: " Marcus Folkesson
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Marcus Folkesson @ 2018-03-31 11:21 UTC (permalink / raw)
  To: Dmitry Torokhov; +Cc: Marcus Folkesson, linux-input, linux-kernel

input_set_capability() and input_set_abs_param() will do it for you.

Signed-off-by: Marcus Folkesson <marcus.folkesson@gmail.com>
---
 drivers/input/joystick/xpad.c | 15 ++++++---------
 1 file changed, 6 insertions(+), 9 deletions(-)

diff --git a/drivers/input/joystick/xpad.c b/drivers/input/joystick/xpad.c
index 9d2688f3f961..cbf54082281d 100644
--- a/drivers/input/joystick/xpad.c
+++ b/drivers/input/joystick/xpad.c
@@ -1568,7 +1568,6 @@ static void xpad_close(struct input_dev *dev)
 static void xpad_set_up_abs(struct input_dev *input_dev, signed short abs)
 {
 	struct usb_xpad *xpad = input_get_drvdata(input_dev);
-	set_bit(abs, input_dev->absbit);
 
 	switch (abs) {
 	case ABS_X:
@@ -1628,10 +1627,7 @@ static int xpad_init_input(struct usb_xpad *xpad)
 		input_dev->close = xpad_close;
 	}
 
-	__set_bit(EV_KEY, input_dev->evbit);
-
 	if (!(xpad->mapping & MAP_STICKS_TO_NULL)) {
-		__set_bit(EV_ABS, input_dev->evbit);
 		/* set up axes */
 		for (i = 0; xpad_abs[i] >= 0; i++)
 			xpad_set_up_abs(input_dev, xpad_abs[i]);
@@ -1639,21 +1635,21 @@ static int xpad_init_input(struct usb_xpad *xpad)
 
 	/* set up standard buttons */
 	for (i = 0; xpad_common_btn[i] >= 0; i++)
-		__set_bit(xpad_common_btn[i], input_dev->keybit);
+		input_set_capability(input_dev, EV_KEY, xpad_common_btn[i]);
 
 	/* set up model-specific ones */
 	if (xpad->xtype == XTYPE_XBOX360 || xpad->xtype == XTYPE_XBOX360W ||
 	    xpad->xtype == XTYPE_XBOXONE) {
 		for (i = 0; xpad360_btn[i] >= 0; i++)
-			__set_bit(xpad360_btn[i], input_dev->keybit);
+			input_set_capability(input_dev, EV_KEY, xpad360_btn[i]);
 	} else {
 		for (i = 0; xpad_btn[i] >= 0; i++)
-			__set_bit(xpad_btn[i], input_dev->keybit);
+			input_set_capability(input_dev, EV_KEY, xpad_btn[i]);
 	}
 
 	if (xpad->mapping & MAP_DPAD_TO_BUTTONS) {
 		for (i = 0; xpad_btn_pad[i] >= 0; i++)
-			__set_bit(xpad_btn_pad[i], input_dev->keybit);
+			input_set_capability(input_dev, EV_KEY, xpad_btn_pad[i]);
 	}
 
 	/*
@@ -1670,7 +1666,8 @@ static int xpad_init_input(struct usb_xpad *xpad)
 
 	if (xpad->mapping & MAP_TRIGGERS_TO_BUTTONS) {
 		for (i = 0; xpad_btn_triggers[i] >= 0; i++)
-			__set_bit(xpad_btn_triggers[i], input_dev->keybit);
+			input_set_capability(input_dev, EV_KEY,
+					xpad_btn_triggers[i]);
 	} else {
 		for (i = 0; xpad_abs_triggers[i] >= 0; i++)
 			xpad_set_up_abs(input_dev, xpad_abs_triggers[i]);
-- 
2.16.2

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

* [PATCH 2/3] input: as5011: avoid using __set_bit() for capabilities
  2018-03-31 11:21 [PATCH 1/3] input: xpad: avoid using __set_bit() for capabilities Marcus Folkesson
@ 2018-03-31 11:21 ` Marcus Folkesson
  2018-05-08 22:32   ` Dmitry Torokhov
  2018-03-31 11:21 ` [PATCH 3/3] input: gamecon: " Marcus Folkesson
  2018-05-08 22:32 ` [PATCH 1/3] input: xpad: " Dmitry Torokhov
  2 siblings, 1 reply; 6+ messages in thread
From: Marcus Folkesson @ 2018-03-31 11:21 UTC (permalink / raw)
  To: Dmitry Torokhov; +Cc: Marcus Folkesson, linux-input, linux-kernel

input_set_capability() and input_set_abs_param() will do it for you.

Signed-off-by: Marcus Folkesson <marcus.folkesson@gmail.com>
---
 drivers/input/joystick/as5011.c | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/drivers/input/joystick/as5011.c b/drivers/input/joystick/as5011.c
index 005d852a06e9..f051993c568e 100644
--- a/drivers/input/joystick/as5011.c
+++ b/drivers/input/joystick/as5011.c
@@ -269,9 +269,7 @@ static int as5011_probe(struct i2c_client *client,
 	input_dev->id.bustype = BUS_I2C;
 	input_dev->dev.parent = &client->dev;
 
-	__set_bit(EV_KEY, input_dev->evbit);
-	__set_bit(EV_ABS, input_dev->evbit);
-	__set_bit(BTN_JOYSTICK, input_dev->keybit);
+	input_set_capability(input_dev, EV_KEY, BTN_JOYSTICK);
 
 	input_set_abs_params(input_dev, ABS_X,
 		AS5011_MIN_AXIS, AS5011_MAX_AXIS, AS5011_FUZZ, AS5011_FLAT);
-- 
2.16.2

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

* [PATCH 3/3] input: gamecon: avoid using __set_bit() for capabilities
  2018-03-31 11:21 [PATCH 1/3] input: xpad: avoid using __set_bit() for capabilities Marcus Folkesson
  2018-03-31 11:21 ` [PATCH 2/3] input: as5011: " Marcus Folkesson
@ 2018-03-31 11:21 ` Marcus Folkesson
  2018-05-08 22:32   ` Dmitry Torokhov
  2018-05-08 22:32 ` [PATCH 1/3] input: xpad: " Dmitry Torokhov
  2 siblings, 1 reply; 6+ messages in thread
From: Marcus Folkesson @ 2018-03-31 11:21 UTC (permalink / raw)
  To: Dmitry Torokhov; +Cc: Marcus Folkesson, linux-input, linux-kernel

input_set_capability() and input_set_abs_param() will do it for you.

Signed-off-by: Marcus Folkesson <marcus.folkesson@gmail.com>
---
 drivers/input/joystick/gamecon.c | 26 ++++++++++++++------------
 1 file changed, 14 insertions(+), 12 deletions(-)

diff --git a/drivers/input/joystick/gamecon.c b/drivers/input/joystick/gamecon.c
index 2ffb2e8bdc3b..e3a9ef3d5f5a 100644
--- a/drivers/input/joystick/gamecon.c
+++ b/drivers/input/joystick/gamecon.c
@@ -862,7 +862,7 @@ static int gc_setup_pad(struct gc *gc, int idx, int pad_type)
 
 	case GC_N64:
 		for (i = 0; i < 10; i++)
-			__set_bit(gc_n64_btn[i], input_dev->keybit);
+			input_set_capability(input_dev, EV_KEY, gc_n64_btn[i]);
 
 		for (i = 0; i < 2; i++) {
 			input_set_abs_params(input_dev, ABS_X + i, -127, 126, 0, 2);
@@ -879,26 +879,27 @@ static int gc_setup_pad(struct gc *gc, int idx, int pad_type)
 		break;
 
 	case GC_SNESMOUSE:
-		__set_bit(BTN_LEFT, input_dev->keybit);
-		__set_bit(BTN_RIGHT, input_dev->keybit);
-		__set_bit(REL_X, input_dev->relbit);
-		__set_bit(REL_Y, input_dev->relbit);
+		input_set_capability(input_dev, EV_KEY, BTN_LEFT);
+		input_set_capability(input_dev, EV_KEY, BTN_RIGHT);
+		input_set_capability(input_dev, EV_REL, REL_X);
+		input_set_capability(input_dev, EV_REL, REL_Y);
 		break;
 
 	case GC_SNES:
 		for (i = 4; i < 8; i++)
-			__set_bit(gc_snes_btn[i], input_dev->keybit);
+			input_set_capability(input_dev, EV_KEY, gc_snes_btn[i]);
 		/* fall through */
 	case GC_NES:
 		for (i = 0; i < 4; i++)
-			__set_bit(gc_snes_btn[i], input_dev->keybit);
+			input_set_capability(input_dev, EV_KEY, gc_snes_btn[i]);
 		break;
 
 	case GC_MULTI2:
-		__set_bit(BTN_THUMB, input_dev->keybit);
+		input_set_capability(input_dev, EV_KEY, BTN_THUMB);
 		/* fall through */
 	case GC_MULTI:
-		__set_bit(BTN_TRIGGER, input_dev->keybit);
+		input_set_capability(input_dev, EV_KEY, BTN_TRIGGER);
+		/* fall through */
 		break;
 
 	case GC_PSX:
@@ -906,15 +907,16 @@ static int gc_setup_pad(struct gc *gc, int idx, int pad_type)
 			input_set_abs_params(input_dev,
 					     gc_psx_abs[i], 4, 252, 0, 2);
 		for (i = 0; i < 12; i++)
-			__set_bit(gc_psx_btn[i], input_dev->keybit);
+			input_set_capability(input_dev, EV_KEY, gc_psx_btn[i]);
+		break;
 
 		break;
 
 	case GC_DDR:
 		for (i = 0; i < 4; i++)
-			__set_bit(gc_psx_ddr_btn[i], input_dev->keybit);
+			input_set_capability(input_dev, EV_KEY, gc_psx_ddr_btn[i]);
 		for (i = 0; i < 12; i++)
-			__set_bit(gc_psx_btn[i], input_dev->keybit);
+			input_set_capability(input_dev, EV_KEY, gc_psx_btn[i]);
 
 		break;
 	}
-- 
2.16.2

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

* Re: [PATCH 1/3] input: xpad: avoid using __set_bit() for capabilities
  2018-03-31 11:21 [PATCH 1/3] input: xpad: avoid using __set_bit() for capabilities Marcus Folkesson
  2018-03-31 11:21 ` [PATCH 2/3] input: as5011: " Marcus Folkesson
  2018-03-31 11:21 ` [PATCH 3/3] input: gamecon: " Marcus Folkesson
@ 2018-05-08 22:32 ` Dmitry Torokhov
  2 siblings, 0 replies; 6+ messages in thread
From: Dmitry Torokhov @ 2018-05-08 22:32 UTC (permalink / raw)
  To: Marcus Folkesson; +Cc: linux-input, linux-kernel

On Sat, Mar 31, 2018 at 01:21:40PM +0200, Marcus Folkesson wrote:
> input_set_capability() and input_set_abs_param() will do it for you.
> 
> Signed-off-by: Marcus Folkesson <marcus.folkesson@gmail.com>
> ---
>  drivers/input/joystick/xpad.c | 15 ++++++---------
>  1 file changed, 6 insertions(+), 9 deletions(-)
> 
> diff --git a/drivers/input/joystick/xpad.c b/drivers/input/joystick/xpad.c
> index 9d2688f3f961..cbf54082281d 100644
> --- a/drivers/input/joystick/xpad.c
> +++ b/drivers/input/joystick/xpad.c
> @@ -1568,7 +1568,6 @@ static void xpad_close(struct input_dev *dev)
>  static void xpad_set_up_abs(struct input_dev *input_dev, signed short abs)
>  {
>  	struct usb_xpad *xpad = input_get_drvdata(input_dev);
> -	set_bit(abs, input_dev->absbit);

The switch below does not cover all possible values of ABS_*, so I stuck
"default" branch there in case we'll ever have ABS_* that is not covered
explicitly.

Applied, thank you.

>  
>  	switch (abs) {
>  	case ABS_X:
> @@ -1628,10 +1627,7 @@ static int xpad_init_input(struct usb_xpad *xpad)

Thanks.

-- 
Dmitry

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

* Re: [PATCH 2/3] input: as5011: avoid using __set_bit() for capabilities
  2018-03-31 11:21 ` [PATCH 2/3] input: as5011: " Marcus Folkesson
@ 2018-05-08 22:32   ` Dmitry Torokhov
  0 siblings, 0 replies; 6+ messages in thread
From: Dmitry Torokhov @ 2018-05-08 22:32 UTC (permalink / raw)
  To: Marcus Folkesson; +Cc: linux-input, linux-kernel

On Sat, Mar 31, 2018 at 01:21:41PM +0200, Marcus Folkesson wrote:
> input_set_capability() and input_set_abs_param() will do it for you.
> 
> Signed-off-by: Marcus Folkesson <marcus.folkesson@gmail.com>

Applied, thank you.

> ---
>  drivers/input/joystick/as5011.c | 4 +---
>  1 file changed, 1 insertion(+), 3 deletions(-)
> 
> diff --git a/drivers/input/joystick/as5011.c b/drivers/input/joystick/as5011.c
> index 005d852a06e9..f051993c568e 100644
> --- a/drivers/input/joystick/as5011.c
> +++ b/drivers/input/joystick/as5011.c
> @@ -269,9 +269,7 @@ static int as5011_probe(struct i2c_client *client,
>  	input_dev->id.bustype = BUS_I2C;
>  	input_dev->dev.parent = &client->dev;
>  
> -	__set_bit(EV_KEY, input_dev->evbit);
> -	__set_bit(EV_ABS, input_dev->evbit);
> -	__set_bit(BTN_JOYSTICK, input_dev->keybit);
> +	input_set_capability(input_dev, EV_KEY, BTN_JOYSTICK);
>  
>  	input_set_abs_params(input_dev, ABS_X,
>  		AS5011_MIN_AXIS, AS5011_MAX_AXIS, AS5011_FUZZ, AS5011_FLAT);
> -- 
> 2.16.2
> 

-- 
Dmitry

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

* Re: [PATCH 3/3] input: gamecon: avoid using __set_bit() for capabilities
  2018-03-31 11:21 ` [PATCH 3/3] input: gamecon: " Marcus Folkesson
@ 2018-05-08 22:32   ` Dmitry Torokhov
  0 siblings, 0 replies; 6+ messages in thread
From: Dmitry Torokhov @ 2018-05-08 22:32 UTC (permalink / raw)
  To: Marcus Folkesson; +Cc: linux-input, linux-kernel

On Sat, Mar 31, 2018 at 01:21:42PM +0200, Marcus Folkesson wrote:
> input_set_capability() and input_set_abs_param() will do it for you.
> 
> Signed-off-by: Marcus Folkesson <marcus.folkesson@gmail.com>

Applied, thank you.

> ---
>  drivers/input/joystick/gamecon.c | 26 ++++++++++++++------------
>  1 file changed, 14 insertions(+), 12 deletions(-)
> 
> diff --git a/drivers/input/joystick/gamecon.c b/drivers/input/joystick/gamecon.c
> index 2ffb2e8bdc3b..e3a9ef3d5f5a 100644
> --- a/drivers/input/joystick/gamecon.c
> +++ b/drivers/input/joystick/gamecon.c
> @@ -862,7 +862,7 @@ static int gc_setup_pad(struct gc *gc, int idx, int pad_type)
>  
>  	case GC_N64:
>  		for (i = 0; i < 10; i++)
> -			__set_bit(gc_n64_btn[i], input_dev->keybit);
> +			input_set_capability(input_dev, EV_KEY, gc_n64_btn[i]);
>  
>  		for (i = 0; i < 2; i++) {
>  			input_set_abs_params(input_dev, ABS_X + i, -127, 126, 0, 2);
> @@ -879,26 +879,27 @@ static int gc_setup_pad(struct gc *gc, int idx, int pad_type)
>  		break;
>  
>  	case GC_SNESMOUSE:
> -		__set_bit(BTN_LEFT, input_dev->keybit);
> -		__set_bit(BTN_RIGHT, input_dev->keybit);
> -		__set_bit(REL_X, input_dev->relbit);
> -		__set_bit(REL_Y, input_dev->relbit);
> +		input_set_capability(input_dev, EV_KEY, BTN_LEFT);
> +		input_set_capability(input_dev, EV_KEY, BTN_RIGHT);
> +		input_set_capability(input_dev, EV_REL, REL_X);
> +		input_set_capability(input_dev, EV_REL, REL_Y);
>  		break;
>  
>  	case GC_SNES:
>  		for (i = 4; i < 8; i++)
> -			__set_bit(gc_snes_btn[i], input_dev->keybit);
> +			input_set_capability(input_dev, EV_KEY, gc_snes_btn[i]);
>  		/* fall through */
>  	case GC_NES:
>  		for (i = 0; i < 4; i++)
> -			__set_bit(gc_snes_btn[i], input_dev->keybit);
> +			input_set_capability(input_dev, EV_KEY, gc_snes_btn[i]);
>  		break;
>  
>  	case GC_MULTI2:
> -		__set_bit(BTN_THUMB, input_dev->keybit);
> +		input_set_capability(input_dev, EV_KEY, BTN_THUMB);
>  		/* fall through */
>  	case GC_MULTI:
> -		__set_bit(BTN_TRIGGER, input_dev->keybit);
> +		input_set_capability(input_dev, EV_KEY, BTN_TRIGGER);
> +		/* fall through */
>  		break;
>  
>  	case GC_PSX:
> @@ -906,15 +907,16 @@ static int gc_setup_pad(struct gc *gc, int idx, int pad_type)
>  			input_set_abs_params(input_dev,
>  					     gc_psx_abs[i], 4, 252, 0, 2);
>  		for (i = 0; i < 12; i++)
> -			__set_bit(gc_psx_btn[i], input_dev->keybit);
> +			input_set_capability(input_dev, EV_KEY, gc_psx_btn[i]);
> +		break;
>  
>  		break;
>  
>  	case GC_DDR:
>  		for (i = 0; i < 4; i++)
> -			__set_bit(gc_psx_ddr_btn[i], input_dev->keybit);
> +			input_set_capability(input_dev, EV_KEY, gc_psx_ddr_btn[i]);
>  		for (i = 0; i < 12; i++)
> -			__set_bit(gc_psx_btn[i], input_dev->keybit);
> +			input_set_capability(input_dev, EV_KEY, gc_psx_btn[i]);
>  
>  		break;
>  	}
> -- 
> 2.16.2
> 

-- 
Dmitry

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

end of thread, other threads:[~2018-05-08 22:32 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-03-31 11:21 [PATCH 1/3] input: xpad: avoid using __set_bit() for capabilities Marcus Folkesson
2018-03-31 11:21 ` [PATCH 2/3] input: as5011: " Marcus Folkesson
2018-05-08 22:32   ` Dmitry Torokhov
2018-03-31 11:21 ` [PATCH 3/3] input: gamecon: " Marcus Folkesson
2018-05-08 22:32   ` Dmitry Torokhov
2018-05-08 22:32 ` [PATCH 1/3] input: xpad: " Dmitry Torokhov

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