Skip to contentSkip to conversation

Input: touchscreen - Fix backport of a02dcde595f7cbd240ccd64de96034ad91cffc40

PATCH Applied Nathan Chancellor 2 participants 3 messages Jan 3, 2022 – Jan 5, 2022

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 Input: touchscreen - Fix backport of a02dcde595f7cbd240ccd64de96034ad91cffc40

Upstream commit a02dcde595f7 ("Input: touchscreen - avoid bitwise vs logical OR warning") was applied as commit f6e9e7be9b80 ("Input:
touchscreen - avoid bitwise vs logical OR warning") in linux-5.4.y but it did not properly account for commit d9265e8a878a ("Input:
of_touchscreen - add support for touchscreen-min-x|y"), which means the warning mentioned in the commit message is not fully fixed:

drivers/input/touchscreen/of_touchscreen.c:78:17: warning: use of bitwise '|' with boolean operands [-Wbitwise-instead-of-logical]
data_present = touchscreen_get_prop_u32(dev, "touchscreen-min-x",
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/input/touchscreen/of_touchscreen.c:78:17: note: cast one or both operands to int to silence this warning drivers/input/touchscreen/of_touchscreen.c:92:17: warning: use of bitwise '|' with boolean operands [-Wbitwise-instead-of-logical]
data_present = touchscreen_get_prop_u32(dev, "touchscreen-min-y",
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/input/touchscreen/of_touchscreen.c:92:17: note: cast one or both operands to int to silence this warning 2 warnings generated.

It seems like the 4.19 backport was applied to the 5.4 tree, which did not have any conflicts so no issue was noticed at that point.

Fix up the backport to bring it more in line with the upstream version so that there is no warning.

Fixes f6e9e7be9b80 ("Input: touchscreen - avoid bitwise vs logical OR warning")
---
 drivers/input/touchscreen/of_touchscreen.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)
drivers/input/touchscreen/of_touchscreen.c +4 -4
index 2962c3747adc..ed5fbcb40e3f 100644
@@ -77,8 +77,8 @@ void touchscreen_parse_properties(struct input_dev *input, bool multitouch,
 	axis = multitouch ? ABS_MT_POSITION_X : ABS_X;
 	data_present = touchscreen_get_prop_u32(dev, "touchscreen-min-x",
 						input_abs_get_min(input, axis),
-						&minimum) |
-		       touchscreen_get_prop_u32(dev, "touchscreen-size-x",
+						&minimum);
+	data_present |= touchscreen_get_prop_u32(dev, "touchscreen-size-x",
 						input_abs_get_max(input,
 								  axis) + 1,
 						&maximum);
@@ -91,8 +91,8 @@ void touchscreen_parse_properties(struct input_dev *input, bool multitouch,
 	axis = multitouch ? ABS_MT_POSITION_Y : ABS_Y;
 	data_present = touchscreen_get_prop_u32(dev, "touchscreen-min-y",
 						input_abs_get_min(input, axis),
-						&minimum) |
-		       touchscreen_get_prop_u32(dev, "touchscreen-size-y",
+						&minimum);
+	data_present |= touchscreen_get_prop_u32(dev, "touchscreen-size-y",
 						input_abs_get_max(input,
 								  axis) + 1,
 						&maximum);

base-commit: 4ca2eaf1d477ce4316989b22e765fb915652b86e

Signature · 1 line
2.34.1
#1 lore raw
Quoted 20 lines · Nathan Chancellor

Upstream commit a02dcde595f7 ("Input: touchscreen - avoid bitwise vs logical OR warning") was applied as commit f6e9e7be9b80 ("Input:
touchscreen - avoid bitwise vs logical OR warning") in linux-5.4.y but it did not properly account for commit d9265e8a878a ("Input:
of_touchscreen - add support for touchscreen-min-x|y"), which means the warning mentioned in the commit message is not fully fixed:

drivers/input/touchscreen/of_touchscreen.c:78:17: warning: use of bitwise '|' with boolean operands [-Wbitwise-instead-of-logical]
data_present = touchscreen_get_prop_u32(dev, "touchscreen-min-x",
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/input/touchscreen/of_touchscreen.c:78:17: note: cast one or both operands to int to silence this warning drivers/input/touchscreen/of_touchscreen.c:92:17: warning: use of bitwise '|' with boolean operands [-Wbitwise-instead-of-logical]
data_present = touchscreen_get_prop_u32(dev, "touchscreen-min-y",
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/input/touchscreen/of_touchscreen.c:92:17: note: cast one or both operands to int to silence this warning 2 warnings generated.

It seems like the 4.19 backport was applied to the 5.4 tree, which did not have any conflicts so no issue was noticed at that point.

Quoted 8 lines

Fix up the backport to bring it more in line with the upstream version so that there is no warning.

Fixes f6e9e7be9b80 ("Input: touchscreen - avoid bitwise vs logical OR warning")
---
 drivers/input/touchscreen/of_touchscreen.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

Now queued up,t hanks.

greg k-h

maintainer Applied
#2 lore raw

Patch "Input: touchscreen - Fix backport of a02dcde595f7cbd240ccd64de96034ad91cffc40" has been added to the 5.4-stable tree

In reply to Nathan Chancellor

This is a note to let you know that I've just added the patch titled

    Input: touchscreen - Fix backport of a02dcde595f7cbd240ccd64de96034ad91cffc40

to the 5.4-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:

     input-touchscreen-fix-backport-of-a02dcde595f7cbd240ccd64de96034ad91cffc40.patch

and it can be found in the queue-5.4 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.

From [email protected] Wed Jan 5 16:03:30 2022
From: Nathan Chancellor <[email protected]>
Date: Mon, 3 Jan 2022 12:29:35 -0700
Subject: Input: touchscreen - Fix backport of a02dcde595f7cbd240ccd64de96034ad91cffc40
To: Greg Kroah-Hartman <[email protected]>, Sasha Levin <[email protected]>
Cc: Nick Desaulniers <[email protected]>, [email protected], [email protected], Anders Roxell <[email protected]>, Nathan Chancellor <[email protected]>
Message-ID: <[email protected]>

From: Nathan Chancellor <[email protected]>

Upstream commit a02dcde595f7 ("Input: touchscreen - avoid bitwise vs logical OR warning") was applied as commit f6e9e7be9b80 ("Input:
touchscreen - avoid bitwise vs logical OR warning") in linux-5.4.y but it did not properly account for commit d9265e8a878a ("Input:
of_touchscreen - add support for touchscreen-min-x|y"), which means the warning mentioned in the commit message is not fully fixed:

drivers/input/touchscreen/of_touchscreen.c:78:17: warning: use of bitwise '|' with boolean operands [-Wbitwise-instead-of-logical]
data_present = touchscreen_get_prop_u32(dev, "touchscreen-min-x",
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/input/touchscreen/of_touchscreen.c:78:17: note: cast one or both operands to int to silence this warning drivers/input/touchscreen/of_touchscreen.c:92:17: warning: use of bitwise '|' with boolean operands [-Wbitwise-instead-of-logical]
data_present = touchscreen_get_prop_u32(dev, "touchscreen-min-y",
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/input/touchscreen/of_touchscreen.c:92:17: note: cast one or both operands to int to silence this warning 2 warnings generated.

It seems like the 4.19 backport was applied to the 5.4 tree, which did not have any conflicts so no issue was noticed at that point.

Fix up the backport to bring it more in line with the upstream version so that there is no warning.

Fixes f6e9e7be9b80 ("Input: touchscreen - avoid bitwise vs logical OR warning")
---
 drivers/input/touchscreen/of_touchscreen.c |    8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)
drivers/input/touchscreen/of_touchscreen.c +4 -4
@@ -77,8 +77,8 @@ void touchscreen_parse_properties(struct
 	axis = multitouch ? ABS_MT_POSITION_X : ABS_X;
 	data_present = touchscreen_get_prop_u32(dev, "touchscreen-min-x",
 						input_abs_get_min(input, axis),
-						&minimum) |
-		       touchscreen_get_prop_u32(dev, "touchscreen-size-x",
+						&minimum);
+	data_present |= touchscreen_get_prop_u32(dev, "touchscreen-size-x",
 						input_abs_get_max(input,
 								  axis) + 1,
 						&maximum);
@@ -91,8 +91,8 @@ void touchscreen_parse_properties(struct
 	axis = multitouch ? ABS_MT_POSITION_Y : ABS_Y;
 	data_present = touchscreen_get_prop_u32(dev, "touchscreen-min-y",
 						input_abs_get_min(input, axis),
-						&minimum) |
-		       touchscreen_get_prop_u32(dev, "touchscreen-size-y",
+						&minimum);
+	data_present |= touchscreen_get_prop_u32(dev, "touchscreen-size-y",
 						input_abs_get_max(input,
 								  axis) + 1,
 						&maximum);

Patches currently in stable-queue which might be from [email protected] are

queue-5.4/input-touchscreen-fix-backport-of-a02dcde595f7cbd240ccd64de96034ad91cffc40.patch