[alsa-devel] [PATCH 09/11] ARM: imx6q: add ssi1 clk_lookup
richard.zhao at linaro.org
Mon Apr 30 04:01:46 CEST 2012
On Fri, Apr 27, 2012 at 11:25:29AM +0200, Sascha Hauer wrote:
> On Fri, Apr 27, 2012 at 05:10:56PM +0800, Richard Zhao wrote:
> > On Fri, Apr 27, 2012 at 10:04:12AM +0200, Sascha Hauer wrote:
> > > On Fri, Apr 27, 2012 at 03:03:03PM +0800, Richard Zhao wrote:
> > > > It's used by audio drivers.
> > > >
> > > > Signed-off-by: Richard Zhao <richard.zhao at freescale.com>
> > > > ---
> > > > arch/arm/mach-imx/clk-imx6q.c | 1 +
> > > > 1 files changed, 1 insertions(+), 0 deletions(-)
> > > >
> > > > diff --git a/arch/arm/mach-imx/clk-imx6q.c b/arch/arm/mach-imx/clk-imx6q.c
> > > > index f40a35d..9a03dcc 100644
> > > > --- a/arch/arm/mach-imx/clk-imx6q.c
> > > > +++ b/arch/arm/mach-imx/clk-imx6q.c
> > > > @@ -418,6 +418,7 @@ int __init mx6q_clocks_init(void)
> > > > clk_register_clkdev(clk[sdma], NULL, "20ec000.sdma");
> > > > clk_register_clkdev(clk[dummy], NULL, "20bc000.wdog");
> > > > clk_register_clkdev(clk[dummy], NULL, "20c0000.wdog");
> > > > + clk_register_clkdev(clk[ssi1], NULL, "2028000.ssi");
> > >
> > > The ssi clock needs a general cleanup on all i.MX just like I cleaned up
> > > the other units. The SSI unit has at least a register clock and a baud
> > > clock. What the driver requests and enables is the register clock.
> > >
> > > The baud clock is currently unused and is needed only for master mode
> > > (which is not implemented in the ssi driver)
> > Are you sure for that? If I don't enable clk[ssi1], the ssi will not
> > work.
> > >
> > > So where we want to come to is:
> > >
> > > clk_register_clkdev(clk[ipg], "ipg", "2028000.ssi");
> > ssi don't have ipg gate. We can let it always on for imx6q.
> Can you please ask your IC guys for clarification?
> For example on i.MX5 we have a ssi ipg clock and a ssi serial clock.
> Both can be gated with two individual gate bits.
> The i.MX6 datasheet (and also several other i.MX datasheets) is quite
> nebulous. The i.MX6 has only one gate bit for each SSI unit, but
> it's not clear if this bit actually gates both the ipg and serial
> clock or only one of them.
You're right. ipg and serial clocks share the same gate. How do we
handle it? I think it's not the only one and won't be last one.
> My general idea is that each unit in the SoC has different input clocks.
> In the driver we need to clk_get() the input clocks. If a given SoC has
> no software control over some of the devices input clocks, then we need
> to provide a dummy for this, because other SoCs have control over the
> Pengutronix e.K. | |
> Industrial Linux Solutions | http://www.pengutronix.de/ |
> Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
> Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
> linux-arm-kernel mailing list
> linux-arm-kernel at lists.infradead.org
More information about the Alsa-devel