On Fri, Jun 30, 2017 at 3:54 AM, Chris Packham
<[email protected]> wrote:
> Use device_property_read_u32 instead of of_property_read_u32_index to
> lookup the "clock-frequency" property.

My comments below.

>
> Signed-off-by: Chris Packham <[email protected]>
> ---
>  drivers/i2c/busses/i2c-pca-platform.c | 9 ++++-----
>  1 file changed, 4 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/i2c/busses/i2c-pca-platform.c 
> b/drivers/i2c/busses/i2c-pca-platform.c
> index 1e3c247de8f8..80420f753a87 100644
> --- a/drivers/i2c/busses/i2c-pca-platform.c
> +++ b/drivers/i2c/busses/i2c-pca-platform.c
> @@ -176,13 +176,12 @@ static int i2c_pca_pf_probe(struct platform_device 
> *pdev)

>         if (platform_data) {
>                 i2c->adap.timeout = platform_data->timeout;
>                 i2c->algo_data.i2c_clock = platform_data->i2c_clock_speed;

>         } else {
>                 i2c->adap.timeout = HZ;
> -               i2c->algo_data.i2c_clock = 59000;
> +               ret = device_property_read_u32(&pdev->dev, "clock-frequency",
> +                                              &i2c->algo_data.i2c_clock);
> +               if (ret)
> +                       i2c->algo_data.i2c_clock = 59000;

My idea is to get rid of legacy platform data completely.
That's why I suggested device_* in the first place.

In similar way like you did with GPIO lookup table, you may use
PROPERTY_ENTRY*() macros in the board files.

Does it make sense?

-- 
With Best Regards,
Andy Shevchenko

Reply via email to