[media] soc-camera: ov5642: Add OF device ID table
authorJavier Martinez Canillas <javier@osg.samsung.com>
Wed, 22 Feb 2017 16:11:27 +0000 (13:11 -0300)
committerMauro Carvalho Chehab <mchehab@s-opensource.com>
Wed, 22 Mar 2017 14:54:29 +0000 (11:54 -0300)
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.

Signed-off-by: Javier Martinez Canillas <javier@osg.samsung.com>
Acked-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
drivers/media/i2c/soc_camera/ov5642.c

index 3d185bd622a3173c1e9d453f37304d42a90cd16a..1926f382dfcea5ff25dd6ab92552715c2382b436 100644 (file)
@@ -1063,9 +1063,18 @@ static const struct i2c_device_id ov5642_id[] = {
 };
 MODULE_DEVICE_TABLE(i2c, ov5642_id);
 
+#if IS_ENABLED(CONFIG_OF)
+static const struct of_device_id ov5642_of_match[] = {
+       { .compatible = "ovti,ov5642" },
+       { },
+};
+MODULE_DEVICE_TABLE(of, ov5642_of_match);
+#endif
+
 static struct i2c_driver ov5642_i2c_driver = {
        .driver = {
                .name = "ov5642",
+               .of_match_table = of_match_ptr(ov5642_of_match),
        },
        .probe          = ov5642_probe,
        .remove         = ov5642_remove,