On Wed, 22 Feb 2017, Javier Martinez Canillas wrote:

> 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 <jav...@osg.samsung.com>

Acked-by: Guennadi Liakhovetski <g.liakhovet...@gmx.de>

> ---
> 
>  drivers/media/i2c/soc_camera/ov5642.c | 9 +++++++++
>  1 file changed, 9 insertions(+)
> 
> diff --git a/drivers/media/i2c/soc_camera/ov5642.c 
> b/drivers/media/i2c/soc_camera/ov5642.c
> index 3d185bd622a3..1926f382dfce 100644
> --- a/drivers/media/i2c/soc_camera/ov5642.c
> +++ b/drivers/media/i2c/soc_camera/ov5642.c
> @@ -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,
> -- 
> 2.9.3
> 

Reply via email to