Skip to contentSkip to conversation

Input: ar1021-i2c - fix too long name in driver's device table

PATCH In review Dmitry Torokhov 4 participants 4 messages Apr 13, 2017 – Apr 15, 2017

Subsystems (2)
lore
Share & tools
lore

Dmitry Torokhov

author maintainer
#0 lore raw

PATCH v2 1/1 Input: ar1021-i2c - fix too long name in driver's device table

The name field in structure i2c_device_id is 20 characters, and we expect it to be NULL-terminated, however we are trying to stuff it with 21 bytes and thus NULL-terminator is lost. This causes issues when one creates device with name "MICROCHIP_AR1021_I2C" as i2c core cuts off the last "C", and automatic module loading by alias does not work as result.

The -I2C suffix in the device name is superfluous, we know what bus we are dealing with, so let's drop it. Also, no other driver uses capitals, and the manufacturer name is normally not included, except in very rare cases of incompatible name collisions.

Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=116211

Fixes dd4cae8bf166 ("Input: Add Microchip AR1021 i2c touchscreen")

---

V2: Changed MICROCHIP_AR1021 -> ar1021 as Jean suggested.

 drivers/input/touchscreen/ar1021_i2c.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
drivers/input/touchscreen/ar1021_i2c.c +1 -1
index 2e7500edd477..6797e123925a 100644
@@ -151,7 +151,7 @@ static int __maybe_unused ar1021_i2c_resume(struct device *dev)
 static SIMPLE_DEV_PM_OPS(ar1021_i2c_pm, ar1021_i2c_suspend, ar1021_i2c_resume);
 
 static const struct i2c_device_id ar1021_i2c_id[] = {
-	{ "MICROCHIP_AR1021_I2C", 0 },
+	{ "ar1021", 0 },
 	{ },
 };
 MODULE_DEVICE_TABLE(i2c, ar1021_i2c_id);
Signature · 5 lines
2.12.2.762.g0e3151a226-goog


-- 
Dmitry
Reviewed-by on v2 1/1
#1 lore raw

2017-04-14 1:32 GMT+02:00 Dmitry Torokhov <[email protected]>:

Quoted 6 lines

The name field in structure i2c_device_id is 20 characters, and we expect it to be NULL-terminated, however we are trying to stuff it with 21 bytes and thus NULL-terminator is lost. This causes issues when one creates device with name "MICROCHIP_AR1021_I2C" as i2c core cuts off the last "C", and automatic module loading by alias does not work as result.

Quoted 8 lines

The -I2C suffix in the device name is superfluous, we know what bus we are dealing with, so let's drop it. Also, no other driver uses capitals, and the manufacturer name is normally not included, except in very rare cases of incompatible name collisions.

Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=116211

Fixes dd4cae8bf166 ("Input: Add Microchip AR1021 i2c touchscreen")

greets
--
Christian Gmeiner, MSc

https://www.youtube.com/user/AloryOFFICIAL
https://soundcloud.com/christian-gmeiner

Tested-by on v2 1/1
#2 lore raw
In reply to Dmitry Torokhov
Quoted 6 lines · Dmitry Torokhov

The name field in structure i2c_device_id is 20 characters, and we expect it to be NULL-terminated, however we are trying to stuff it with 21 bytes and thus NULL-terminator is lost. This causes issues when one creates device with name "MICROCHIP_AR1021_I2C" as i2c core cuts off the last "C", and automatic module loading by alias does not work as result.

Quoted 8 lines

The -I2C suffix in the device name is superfluous, we know what bus we are dealing with, so let's drop it. Also, no other driver uses capitals, and the manufacturer name is normally not included, except in very rare cases of incompatible name collisions.

Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=116211

Fixes dd4cae8bf166 ("Input: Add Microchip AR1021 i2c touchscreen")
Reviewed-by on v2 1/1
#3 lore raw
In reply to Dmitry Torokhov
Quoted 14 lines · Dmitry Torokhov

The name field in structure i2c_device_id is 20 characters, and we expect it to be NULL-terminated, however we are trying to stuff it with 21 bytes and thus NULL-terminator is lost. This causes issues when one creates device with name "MICROCHIP_AR1021_I2C" as i2c core cuts off the last "C", and automatic module loading by alias does not work as result.

The -I2C suffix in the device name is superfluous, we know what bus we are dealing with, so let's drop it. Also, no other driver uses capitals, and the manufacturer name is normally not included, except in very rare cases of incompatible name collisions.

Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=116211

Fixes dd4cae8bf166 ("Input: Add Microchip AR1021 i2c touchscreen")
Quoted 7 lines

---

V2: Changed MICROCHIP_AR1021 -> ar1021 as Jean suggested.

 drivers/input/touchscreen/ar1021_i2c.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

(...)

Quoted 13 lines
drivers/input/touchscreen/ar1021_i2c.c +1 -1
index 2e7500edd477..6797e123925a 100644
@@ -151,7 +151,7 @@ static int __maybe_unused ar1021_i2c_resume(struct device *dev)
 static SIMPLE_DEV_PM_OPS(ar1021_i2c_pm, ar1021_i2c_suspend, ar1021_i2c_resume);
 
 static const struct i2c_device_id ar1021_i2c_id[] = {
-	{ "MICROCHIP_AR1021_I2C", 0 },
+	{ "ar1021", 0 },
 	{ },
 };
 MODULE_DEVICE_TABLE(i2c, ar1021_i2c_id);
Signature · 2 lines
Jean Delvare
SUSE L3 Support