Thread (15 messages) 15 messages, 4 authors, 2012-08-21

[PATCH 2/3] ARM: OMAP: hwmod: revise deassert sequence

From: Omar Ramirez Luna <hidden>
Date: 2012-08-02 22:20:32
Also in: linux-omap, lkml

Hi.

On 2 August 2012 02:52, Paul Walmsley [off-list ref] wrote:
On Mon, 16 Jul 2012, Omar Ramirez Luna wrote:
quoted
For a reset sequence to complete cleanly, a module needs its
associated clocks to be enabled, otherwise the timeout check
in prcm code can print a false failure (failed to hardreset)
that occurs because the clocks aren't powered ON and the status
bit checked can't transition without them.

Signed-off-by: Omar Ramirez Luna <redacted>
Is enabling the clocks sufficient?
During my testing it seemed enough, besides it looks clk framework is
doing the same as _omap4_enable_module.
Or do we also need to enable the
IP block, e.g. by calling

        if (soc_ops.enable_module)
                soc_ops.enable_module(oh);

as we do on OMAP4+ in _enable() ?
Basically this is a call to _omap4_enable_module, and the latter will
"Enable the modulemode inside CLKCTRL".

However, _enable_clocks path which ends calling omap2_dflt_clk_enable
does the same thing with its clk->enable_reg field.

So in _enable:

        _enable_clocks(oh);
        if (soc_ops.enable_module)
                soc_ops.enable_module(oh);

The enable_module part seems redundant to me, since the module should
be already enabled by the first call to _enable_clocks.

Regards,

Omar
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help