[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1616bb3e-ba20-46df-7818-c11c382a0d86@loongson.cn>
Date: Thu, 16 Jul 2020 18:01:18 +0800
From: zhangqing <zhangqing@...ngson.cn>
To: Mark Brown <broonie@...nel.org>
Cc: linux-spi@...r.kernel.org, linux-kernel@...r.kernel.org,
Geert Uytterhoeven <geert@...ux-m68k.org>
Subject: Re: [PATCH v2 2/2] spi: coldfire-qspi: Use clk_prepare_enable and
clk_disable_unprepare
On 07/15/2020 05:49 PM, Mark Brown wrote:
> On Wed, Jul 15, 2020 at 01:26:47PM +0800, Qing Zhang wrote:
>> Convert clk_enable() to clk_prepare_enable() and clk_disable() to
>> clk_disable_unprepare() respectively in the spi-coldfire-qspi.c.
> Like I said on the previous version are you sure that ColdFire uses the
> common clock framework and has the prepare calls?
Hi Mark,
Thanks for your reminder again.
I see the following comment and code in arch/m68k/coldfire/clk.c:
For more advanced ColdFire parts that have clocks that can be enabled
we supply enable/disable functions. These must properly define their
clocks in their platform specific code.
int clk_enable(struct clk *clk)
{
unsigned long flags;
spin_lock_irqsave(&clk_lock, flags);
if ((clk->enabled++ == 0) && clk->clk_ops)
clk->clk_ops->enable(clk);
spin_unlock_irqrestore(&clk_lock, flags);
return 0;
}
EXPORT_SYMBOL(clk_enable);
void clk_disable(struct clk *clk)
{
unsigned long flags;
if (!clk)
return;
spin_lock_irqsave(&clk_lock, flags);
if ((--clk->enabled == 0) && clk->clk_ops)
clk->clk_ops->disable(clk);
spin_unlock_irqrestore(&clk_lock, flags);
}
EXPORT_SYMBOL(clk_disable);
Thanks,
Qing
Powered by blists - more mailing lists