Skip to contentSkip to conversation

Input: - fix incorrect size when reading product ID

PATCH In review Dmitry Torokhov 2 participants 3 messages Aug 20, 2024

Subsystems (3)
lore
Share & tools
lore

Dmitry Torokhov

author maintainer
#0 lore raw

PATCH 1/1 Input: - fix incorrect size when reading product ID

We need to read a u32 value (4 bytes), not size of a pointer to that value.

Also, himax_read_mcu() wrapper is an overkill, remove it and use himax_bus_read() directly.

Fixes 0944829d491e ("Input: himax_hx83112b - implement MCU register reading")
---
 drivers/input/touchscreen/himax_hx83112b.c | 14 ++------------
 1 file changed, 2 insertions(+), 12 deletions(-)
drivers/input/touchscreen/himax_hx83112b.c +2 -12
index 9ed3bccde4ac..896a145ddb2b 100644
@@ -130,17 +130,6 @@ static int himax_bus_read(struct himax_ts_data *ts, u32 address, void *dst,
 	return 0;
 }
 
-static int himax_read_mcu(struct himax_ts_data *ts, u32 address, u32 *dst)
-{
-	int error;
-
-	error = himax_bus_read(ts, address, dst, sizeof(dst));
-	if (error)
-		return error;
-
-	return 0;
-}
-
 static void himax_reset(struct himax_ts_data *ts)
 {
 	gpiod_set_value_cansleep(ts->gpiod_rst, 1);
@@ -160,7 +149,8 @@ static int himax_read_product_id(struct himax_ts_data *ts, u32 *product_id)
 {
 	int error;
 
-	error = himax_read_mcu(ts, HIMAX_REG_ADDR_ICID, product_id);
+	error = himax_bus_read(ts, HIMAX_REG_ADDR_ICID, product_id,
+			       sizeof(*product_id));
 	if (error)
 		return error;
 
Signature · 5 lines
2.46.0.184.g6999bdac58-goog


-- 
Dmitry
author maintainer
#2 lore raw
Quoted 5 lines · Felix Kaechele

Thanks for fixing my rookie mistakes ;-)

Just tested it on my Lenovo ThinkSmart View and it works fine.

Thanks for the quick test.

Signature · 1 line
Dmitry