Commit cdd469ad authored by Javier Martinez Canillas's avatar Javier Martinez Canillas Committed by Jonathan Cameron

iio: Export I2C module alias information

The I2C drivers have an i2c_device_id array but that information isn't
exported to the modules using the MODULE_DEVICE_TABLE() macro. So the
modules autoloading won't work if the I2C device is registered using
OF or legacy board files due missing alias information in the modules.

The issue was found using Kieran Bingham's coccinelle semantic patch:
https://lkml.org/lkml/2016/5/10/520Signed-off-by: default avatarJavier Martinez Canillas <javier@osg.samsung.com>
Signed-off-by: default avatarJonathan Cameron <jic23@kernel.org>
parent 194dc4c7
...@@ -278,6 +278,7 @@ static const struct i2c_device_id am2315_i2c_id[] = { ...@@ -278,6 +278,7 @@ static const struct i2c_device_id am2315_i2c_id[] = {
{"am2315", 0}, {"am2315", 0},
{} {}
}; };
MODULE_DEVICE_TABLE(i2c, am2315_i2c_id);
static const struct acpi_device_id am2315_acpi_id[] = { static const struct acpi_device_id am2315_acpi_id[] = {
{"AOS2315", 0}, {"AOS2315", 0},
......
...@@ -236,6 +236,7 @@ static const struct i2c_device_id htu21_id[] = { ...@@ -236,6 +236,7 @@ static const struct i2c_device_id htu21_id[] = {
{"ms8607-humidity", MS8607}, {"ms8607-humidity", MS8607},
{} {}
}; };
MODULE_DEVICE_TABLE(i2c, htu21_id);
static struct i2c_driver htu21_driver = { static struct i2c_driver htu21_driver = {
.probe = htu21_probe, .probe = htu21_probe,
......
...@@ -401,6 +401,7 @@ static const struct i2c_device_id hp206c_id[] = { ...@@ -401,6 +401,7 @@ static const struct i2c_device_id hp206c_id[] = {
{"hp206c"}, {"hp206c"},
{} {}
}; };
MODULE_DEVICE_TABLE(i2c, hp206c_id);
#ifdef CONFIG_ACPI #ifdef CONFIG_ACPI
static const struct acpi_device_id hp206c_acpi_match[] = { static const struct acpi_device_id hp206c_acpi_match[] = {
......
...@@ -173,6 +173,7 @@ static const struct i2c_device_id ms5637_id[] = { ...@@ -173,6 +173,7 @@ static const struct i2c_device_id ms5637_id[] = {
{"ms8607-temppressure", 1}, {"ms8607-temppressure", 1},
{} {}
}; };
MODULE_DEVICE_TABLE(i2c, ms5637_id);
static struct i2c_driver ms5637_driver = { static struct i2c_driver ms5637_driver = {
.probe = ms5637_probe, .probe = ms5637_probe,
......
...@@ -174,6 +174,7 @@ static const struct i2c_device_id tsys02d_id[] = { ...@@ -174,6 +174,7 @@ static const struct i2c_device_id tsys02d_id[] = {
{"tsys02d", 0}, {"tsys02d", 0},
{} {}
}; };
MODULE_DEVICE_TABLE(i2c, tsys02d_id);
static struct i2c_driver tsys02d_driver = { static struct i2c_driver tsys02d_driver = {
.probe = tsys02d_probe, .probe = tsys02d_probe,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment