Input: iqs7222 - avoid enabling unused interrupts
Subsystems (2)
PATCH 1/1 Input: iqs7222 - avoid enabling unused interrupts
If a proximity event node is defined so as to specify the wake-up properties of the touch surface, the proximity event interrupt is enabled unconditionally. This may result in unwanted interrupts.
Solve this problem by enabling the interrupt only if the event is mapped to a key or switch code.
--- drivers/input/misc/iqs7222.c | 3 +++ 1 file changed, 3 insertions(+)
drivers/input/misc/iqs7222.c +3 -0
@@ -2424,6 +2424,9 @@ static int iqs7222_parse_chan(struct iqs7222_private *iqs7222,if (error)return error; +if (!iqs7222->kp_type[chan_index][i]) +continue ; +if (!dev_desc->event_offset)continue ;
Signature · 1 line
2.34.1
Dmitry Torokhov
maintainerHi Jeff,
Quoted 6 lines · Jeff LaBundy
If a proximity event node is defined so as to specify the wake-up properties of the touch surface, the proximity event interrupt is enabled unconditionally. This may result in unwanted interrupts.
Solve this problem by enabling the interrupt only if the event is mapped to a key or switch code.
Should I tag this for stable?
Quoted 11 lines
Signed-off-by Jeff LaBundy <[email protected]>--- drivers/input/misc/iqs7222.c | 3 +++ 1 file changed, 3 insertions(+)drivers/input/misc/iqs7222.c +0
-0
drivers/input/misc/iqs7222.c static int iqs7222_parse_chan(struct iqs7222_private *iqs7222, · line 2432
Quoted 9 lines
drivers/input/misc/iqs7222.c +3
-0@@ -2424,6 +2424,9 @@ static int iqs7222_parse_chan(struct iqs7222_private *iqs7222,if (error)return error; +if (!iqs7222->kp_type[chan_index][i]) +continue ; +if (!dev_desc->event_offset)continue ;
Thanks.
Signature · 1 line
Dmitry
Hi Dmitry,
Quoted 11 lines · Dmitry Torokhov
Hi Jeff,
Quoted 6 lines · Jeff LaBundy
If a proximity event node is defined so as to specify the wake-up properties of the touch surface, the proximity event interrupt is enabled unconditionally. This may result in unwanted interrupts.
Solve this problem by enabling the interrupt only if the event is mapped to a key or switch code.
Should I tag this for stable?
Thank you for checking; I'm sorry for the delayed response. Yes, I think it's fine to tag this for stable.
I didn't CC stable@ originally because I saw this patch as more of an optimization than a bug fix, but it's low risk enough that it's fine to include in stable kernels too.
Quoted 15 lines
Quoted 15 lines
Signed-off-by Jeff LaBundy <[email protected]>--- drivers/input/misc/iqs7222.c | 3 +++ 1 file changed, 3 insertions(+)drivers/input/misc/iqs7222.c +0
-0@@ -2424,6 +2424,9 @@ static int iqs7222_parse_chan(struct iqs7222_private *iqs7222,if (error)return error;
Quoted 11 lines
drivers/input/misc/iqs7222.c static int iqs7222_parse_chan(struct iqs7222_private *iqs7222, · line 2432
Quoted 6 lines
drivers/input/misc/iqs7222.c +3
-0+if (!iqs7222->kp_type[chan_index][i]) +continue ; +if (!dev_desc->event_offset)continue ;Thanks.
Signature · 1 line
Dmitry
Kind regards,
Jeff LaBundy
Quoted 13 lines · Jeff LaBundy
Hi Dmitry,
Quoted 10 lines · Dmitry Torokhov
Hi Jeff,
Quoted 6 lines · Jeff LaBundy
If a proximity event node is defined so as to specify the wake-up properties of the touch surface, the proximity event interrupt is enabled unconditionally. This may result in unwanted interrupts.
Solve this problem by enabling the interrupt only if the event is mapped to a key or switch code.
Quoted 8 lines
Quoted 1 line
Should I tag this for stable?
Thank you for checking; I'm sorry for the delayed response. Yes, I think it's fine to tag this for stable.
I didn't CC stable@ originally because I saw this patch as more of an optimization than a bug fix, but it's low risk enough that it's fine to include in stable kernels too.
Applied, thank you.
Signature · 1 line
Dmitry