Input: qt1070 - add OF device ID table
authorJavier Martinez Canillas <javier@osg.samsung.com>
Thu, 23 Mar 2017 20:33:12 +0000 (13:33 -0700)
committerDmitry Torokhov <dmitry.torokhov@gmail.com>
Thu, 23 Mar 2017 21:46:33 +0000 (14:46 -0700)
The driver doesn't have a struct of_device_id table but supported devices
are registered via Device Trees. This is working on the assumption that a
I2C device registered via OF will always match a legacy I2C device ID and
that the MODALIAS reported will always be of the form i2c:<device>.

But this could change in the future so the correct approach is to have an
OF device ID table if the devices are registered via OF.

The compatible strings don't have a vendor prefix because that's how it's
used currently, and changing this will be a Device Tree ABI break.

Signed-off-by: Javier Martinez Canillas <javier@osg.samsung.com>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
drivers/input/keyboard/qt1070.c

index 5a57787..76bb513 100644 (file)
@@ -274,9 +274,18 @@ static const struct i2c_device_id qt1070_id[] = {
 };
 MODULE_DEVICE_TABLE(i2c, qt1070_id);
 
+#ifdef CONFIG_OF
+static const struct of_device_id qt1070_of_match[] = {
+       { .compatible = "qt1070", },
+       { },
+};
+MODULE_DEVICE_TABLE(of, qt1070_of_match);
+#endif
+
 static struct i2c_driver qt1070_driver = {
        .driver = {
                .name   = "qt1070",
+               .of_match_table = of_match_ptr(qt1070_of_match),
                .pm     = &qt1070_pm_ops,
        },
        .id_table       = qt1070_id,