lkml.org 
[lkml]   [2015]   [Apr]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 3/4] clk: si5351: Do not pass struct clk in platform_data
On 30.04.2015 20:30, Michael Welling wrote:
> On Thu, Apr 30, 2015 at 03:20:38PM -0300, Fabio Estevam wrote:
>> On Thu, Apr 30, 2015 at 2:45 PM, Sebastian Hesselbarth
>> <sebastian.hesselbarth@gmail.com> wrote:
>>> @@ -1328,8 +1321,17 @@ static int si5351_i2c_probe(struct i2c_client *client,
>>> i2c_set_clientdata(client, drvdata);
>>> drvdata->client = client;
>>> drvdata->variant = variant;
>>> - drvdata->pxtal = pdata->clk_xtal;
>>> - drvdata->pclkin = pdata->clk_clkin;
>>> + drvdata->pxtal = devm_clk_get(&client->dev, "xtal");
>>> + drvdata->pclkin = devm_clk_get(&client->dev, "clkin");
>>> +
>>> + if (PTR_ERR(drvdata->pxtal) == -EPROBE_DEFER ||
>>> + PTR_ERR(drvdata->pclkin) == -EPROBE_DEFER)
>>> + return -EPROBE_DEFER;
>>> +
>>> + if (IS_ERR(drvdata->pxtal) && IS_ERR(drvdata->pclkin)) {
>>
>> Don't you want || instead?
>
> I doubt it. He is checking if both are not available.
>
> The driver could work with only one of them.
>
> If you use || then you assume to need both.

Fabio,

Michael is right, the check is for bailing out if none of the parent
clocks is available.

But thanks for looking at it and I appreciate the review.

Sebastian


\
 
 \ /
  Last update: 2015-04-30 21:21    [W:0.067 / U:0.368 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site