From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752782AbbD3SoM (ORCPT ); Thu, 30 Apr 2015 14:44:12 -0400 Received: from mail-wg0-f46.google.com ([74.125.82.46]:35219 "EHLO mail-wg0-f46.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752095AbbD3SoI (ORCPT ); Thu, 30 Apr 2015 14:44:08 -0400 Message-ID: <554277F3.7060500@gmail.com> Date: Thu, 30 Apr 2015 20:44:03 +0200 From: Sebastian Hesselbarth User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.6.0 To: Michael Welling , Fabio Estevam CC: Jean-Francois Moine , Mike Turquette , Stephen Boyd , linux-kernel , Russell King , linux-clk@vger.kernel.org, "linux-arm-kernel@lists.infradead.org" Subject: Re: [PATCH 3/4] clk: si5351: Do not pass struct clk in platform_data References: <1430415954-29517-1-git-send-email-sebastian.hesselbarth@gmail.com> <1430415954-29517-4-git-send-email-sebastian.hesselbarth@gmail.com> <20150430183043.GA21890@deathray> In-Reply-To: <20150430183043.GA21890@deathray> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 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 >> 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