Input: automatically set EV_ABS bit in input_set_abs_params
Subsystems (2)
Dmitry Torokhov
maintainerPATCH 1/1 Input: automatically set EV_ABS bit in input_set_abs_params
Let's automatically set EV_ABS bit in device's event type list when calling input_set_abs_params() so that drivers do not have to do it explicitly.
These calls are never in a hot paths so we won't lose much time by setting the same bit several times.
--- drivers/input/input.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
drivers/input/input.c +2 -1
@@ -498,7 +498,8 @@ void input_set_abs_params(struct input_dev *dev, unsigned int axis, absinfo->fuzz = fuzz; absinfo->flat = flat; - dev->absbit[BIT_WORD (axis)] |=BIT_MASK (axis); +__set_bit (EV_ABS , dev->evbit); +__set_bit (axis, dev->absbit); }EXPORT_SYMBOL (input_set_abs_params);
Signature · 1 line
Dmitry
Hi
Quoted 5 lines · Dmitry Torokhov
Let's automatically set
EV_ABSbit in device's event type list when callinginput_set_abs_params()so that drivers do not have to do it explicitly.These calls are never in a hot paths so we won't lose much time by setting the same bit several times.
Looks good to me. I mean we already do the absbit-allocation here, so this looks sane to do.
Thanks
David
Quoted 22 lines
Signed-off-by Dmitry Torokhov <[email protected]>--- drivers/input/input.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)drivers/input/input.c +2
-2@@ -498,7 +498,8 @@ void input_set_abs_params(struct input_dev *dev, unsigned int axis, absinfo->fuzz = fuzz; absinfo->flat = flat; - dev->absbit[BIT_WORD (axis)] |=BIT_MASK (axis); +__set_bit (EV_ABS , dev->evbit); +__set_bit (axis, dev->absbit); }EXPORT_SYMBOL (input_set_abs_params); --Dmitry
Quoted 7 lines · Dmitry Torokhov
Let's automatically set
EV_ABSbit in device's event type list when callinginput_set_abs_params()so that drivers do not have to do it explicitly.These calls are never in a hot paths so we won't lose much time by setting the same bit several times.
Signed-off-by Dmitry Torokhov <[email protected]>
Makes sense.
Thanks.
Quoted 17 lines
--- drivers/input/input.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)drivers/input/input.c +2
-1@@ -498,7 +498,8 @@ void input_set_abs_params(struct input_dev *dev, unsigned int axis, absinfo->fuzz = fuzz; absinfo->flat = flat; - dev->absbit[BIT_WORD (axis)] |=BIT_MASK (axis); +__set_bit (EV_ABS , dev->evbit); +__set_bit (axis, dev->absbit); }EXPORT_SYMBOL (input_set_abs_params);
Signature · 2 lines
Jiri Kosina SUSE Labs