On Tue, 21 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 a
> 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 <jav...@osg.samsung.com>
> ---
> 
>  drivers/mfd/tps6105x.c | 8 ++++++++
>  1 file changed, 8 insertions(+)

Likewise.

> diff --git a/drivers/mfd/tps6105x.c b/drivers/mfd/tps6105x.c
> index baa12ea666fb..29f86b8eebc5 100644
> --- a/drivers/mfd/tps6105x.c
> +++ b/drivers/mfd/tps6105x.c
> @@ -173,9 +173,17 @@ static const struct i2c_device_id tps6105x_id[] = {
>  };
>  MODULE_DEVICE_TABLE(i2c, tps6105x_id);
>  
> +static const struct of_device_id tps6105x_of_match[] = {
> +     { .compatible = "tps61050" },
> +     { .compatible = "tps61052" },
> +     { },
> +};
> +MODULE_DEVICE_TABLE(of, tps6105x_of_match);
> +
>  static struct i2c_driver tps6105x_driver = {
>       .driver = {
>               .name   = "tps6105x",
> +             .of_match_table = of_match_ptr(tps6105x_of_match),
>       },
>       .probe          = tps6105x_probe,
>       .remove         = tps6105x_remove,

-- 
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org │ Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog

Reply via email to