[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20130715225836.GG11538@sirena.org.uk>
Date: Mon, 15 Jul 2013 23:58:36 +0100
From: Mark Brown <broonie@...nel.org>
To: Russell King - ARM Linux <linux@....linux.org.uk>
Cc: Jean-Francois Moine <moinejf@...e.fr>,
Jaroslav Kysela <perex@...ex.cz>, Takashi Iwai <tiwai@...e.de>,
alsa-devel@...a-project.org, linux-kernel@...r.kernel.org,
Liam Girdwood <lgirdwood@...il.com>
Subject: Re: [PATCH] ASoC: kirkwood-i2s: fix a compilation warning
On Mon, Jul 15, 2013 at 10:37:27PM +0100, Russell King - ARM Linux wrote:
> On Mon, Jul 15, 2013 at 09:08:51PM +0100, Mark Brown wrote:
> > There's no obvious code that handles anything differently with extclk.
> > Indeed if you think about it for a minute you'll realise there's no way
> > the driver will ever use an extclk - set_rate() is badly implemented,
> > look at how other drivers select between clocks.
Actually looking some more it's not actually a normal set_rate() call
but rather something done transparently inside the driver - given that
the automatic source selection is OK.
> I suggest you go back and re-read the driver because it most certainly
> does use extclk. What makes you think it won't?
The only thing I can see which is pushing a constraint up the stack is
KIRKWOOD_I2S_RATES in the DAIs which only allows 44.1kHz, 48kHz and
96kHz, the rates for which the internal clock is used. The driver will
happily request the external clock and hold a reference to it but if
there's code there to tell the upper layers that extra rates are
supported I'm missing it and without that any attempt to use anything
else should be rejected by the stack.
Note that regular ALSA will do some sample rate conversions in software
automatically so if you're not testing with something like "aplay
-Dhw:0,0" that bypasses those then the hardware may not be running at
the same rate as the application.
Download attachment "signature.asc" of type "application/pgp-signature" (837 bytes)
Powered by blists - more mailing lists