Re: [PATCH v2] input/iforce: Remove the BTN_DEAD assignment and usage

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Jul 23, 2018 at 10:36:05AM -0700, Dmitry Torokhov wrote:

> On Sun, Jul 22, 2018 at 06:50:39PM +0200, Tim Schumacher wrote:
> > The nonexistent button assigned as BTN_DEAD is constantly
> > creating false inputs (as it gets triggered on every joystick
> > status update), making the task of (as an example)
> > assigning controls unnecessarily hard.
> 
> IIRC BTN_DEAD is a dead-man or safety switch, and is supposed to be
> reported when user stops interacting with the device. I do not think we
> should be removing it unconditionally...
> 
> Let's add Vojtech if he remembers anything more...

That is correct. It's expected to be "pressed" when nobody is holding
the stick and released otherwise.

The stick usually has a reflective optical sensor on the palm side.

It certainly worked well on the devices I tested the driver with back
then.

> > Signed-off-by: Tim Schumacher <timschumi@xxxxxx>
> > ---
> >  drivers/input/joystick/iforce/iforce-main.c    | 1 -
> >  drivers/input/joystick/iforce/iforce-packets.c | 1 -
> >  2 files changed, 2 deletions(-)
> > 
> > diff --git a/drivers/input/joystick/iforce/iforce-main.c b/drivers/input/joystick/iforce/iforce-main.c
> > index 054abed0fdc1..a4ab58633136 100644
> > --- a/drivers/input/joystick/iforce/iforce-main.c
> > +++ b/drivers/input/joystick/iforce/iforce-main.c
> > @@ -388,7 +388,6 @@ int iforce_init_device(struct iforce *iforce)
> >  
> >  	for (i = 0; iforce->type->btn[i] >= 0; i++)
> >  		set_bit(iforce->type->btn[i], input_dev->keybit);
> > -	set_bit(BTN_DEAD, input_dev->keybit);
> >  
> >  	for (i = 0; iforce->type->abs[i] >= 0; i++) {
> >  
> > diff --git a/drivers/input/joystick/iforce/iforce-packets.c b/drivers/input/joystick/iforce/iforce-packets.c
> > index 08f98f2eaf88..d929c6f05275 100644
> > --- a/drivers/input/joystick/iforce/iforce-packets.c
> > +++ b/drivers/input/joystick/iforce/iforce-packets.c
> > @@ -220,7 +220,6 @@ void iforce_process_packet(struct iforce *iforce, u16 cmd, unsigned char *data)
> >  			break;
> >  
> >  		case 0x02:	/* status report */
> > -			input_report_key(dev, BTN_DEAD, data[0] & 0x02);
> >  			input_sync(dev);
> >  
> >  			/* Check if an effect was just started or stopped */
> > -- 
> > 2.18.0
> > 
> 
> -- 
> Dmitry
> 

-- 
Vojtech Pavlik
Director SUSE Labs
--
To unsubscribe from this list: send the line "unsubscribe linux-input" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Media Devel]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Linux Wireless Networking]     [Linux Omap]

  Powered by Linux