From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-pd0-x236.google.com (mail-pd0-x236.google.com [IPv6:2607:f8b0:400e:c02::236]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by lists.ozlabs.org (Postfix) with ESMTPS id D86581A0044 for ; Wed, 10 Sep 2014 05:59:44 +1000 (EST) Received: by mail-pd0-f182.google.com with SMTP id w10so4692494pde.27 for ; Tue, 09 Sep 2014 12:59:42 -0700 (PDT) Date: Tue, 9 Sep 2014 12:59:29 -0700 From: Nicolin Chen To: Timur Tabi Subject: Re: [PATCH V1] ASoC: fsl_ssi: refine ipg clock usage in this module Message-ID: <20140909195928.GA5224@Asurada> References: <20140909183804.GA6944@Asurada> <540F5706.1050303@tabi.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii In-Reply-To: <540F5706.1050303@tabi.org> Cc: Shengjiu Wang , alsa-devel@alsa-project.org, tiwai@suse.de, linux-kernel@vger.kernel.org, broonie@kernel.org, lgirdwood@gmail.com, perex@perex.cz, Li.Xiubo@freescale.com, mpa@pengutronix.de, linuxppc-dev@lists.ozlabs.org List-Id: Linux on PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , On Tue, Sep 09, 2014 at 02:37:42PM -0500, Timur Tabi wrote: > On 09/09/2014 01:38 PM, Nicolin Chen wrote: > >make sure to have the call for imx only because it seems that > >the other platforms do not depend on the clock. > > Although I doubt anyone will every add support for clocks to PowerPC "side" > of this driver, I would prefer to avoid IMX-specific changes. Instead, the > code should check if a clock is available. That's why I suggested this > change: > > - if (ssi_private->soc->imx) > + if (!IS_ERR(ssi_private->clk)) Hmm.... I think the following change may be better? probe() { .... + /* + * Initially mark the clock to NULL for all platforms so that later + * clk_prepare_enable() will ignore and return 0 for non-clock cases. + */ + ssi_private->clk = NULL; ..... fsl_ssi_imx_probe(); } In this way, all platforms, not confined to imx any more, will be able to call clk_prepare_enable(). Then we don't need an extra platform check before calling it.