From: Tomasz Figa <tomasz.figa@gmail.com>
To: Sascha Hauer <s.hauer@pengutronix.de>
Cc: mark.rutland@arm.com, devicetree@vger.kernel.org,
alsa-devel@alsa-project.org, lars@metafoo.de,
ian.campbell@citrix.com, pawel.moll@arm.com,
swarren@wwwdotorg.org, festevam@gmail.com,
Nicolin Chen <b42378@freescale.com>,
timur@tabi.org, rob.herring@calxeda.com, broonie@kernel.org,
p.zabel@pengutronix.de, galak@codeaurora.org,
shawn.guo@linaro.org, linuxppc-dev@lists.ozlabs.org
Subject: Re: [PATCH v5 1/2] ASoC: fsl: Add S/PDIF CPU DAI driver
Date: Sat, 17 Aug 2013 17:38:13 +0200 [thread overview]
Message-ID: <4160853.4nuiPWXiMi@flatron> (raw)
In-Reply-To: <20130817151409.GW26614@pengutronix.de>
On Saturday 17 of August 2013 17:14:09 Sascha Hauer wrote:
> On Sat, Aug 17, 2013 at 02:56:11PM +0200, Tomasz Figa wrote:
> > Hi Nicolin,
> >
> > > First, you are right that all the properties you just commented are
> > > software configurations. And I got the point that device tree now
> > > can't allow any software configuration even if the actual hardware
> > > connection will depend on it.
> > >
> > > If so, I would like to remove those abused clocks and also drop the
> > > unused clocks in src<0-7>, then just remain those needed clocks src.
> > > I think that can be plausible because there'll be no more clock
> > > abuse
> > > and the driver will be able to get the source index from the name
> > > 'src<num>'.
> >
> > OK.
> >
> > > And you are right about the 9 clock inputs, just there're not only 9
> > > inputs but also an extra external clock from S/PDIF transmitter via
> > > coaxial cable or optical fiber -- RxCLK. Please check the following
> > > list:
> > >
> > > 0000 if (DPLL Locked) SPDIF_RxClk else extal
> > > 0001 if (DPLL Locked) SPDIF_RxClk else spdif_clk
> > > 0010 if (DPLL Locked) SPDIF_RxClk else asrc_clk
> > > 0011 if (DPLL Locked) SPDIF_RxClk else spdif_extclk
> > > 0100 if (DPLL Locked) SPDIF_Rxclk else esai_hckt
> > > 0101 extal_clk
> > > 0110 spdif_clk
> > > 0111 asrc_clk
> > > 1000 spdif_extclk
> > > 1001 esai_hckt
> > > 1010 if (DPLL Locked) SPDIF_RxClk else mlb_clk
> > > 1011 if (DPLL Locked) SPDIF_RxClk else mlb_phy_clk
> > > 1100 mkb_clk
> > > 1101 mlb_phy_clk
> >
> > Could you explain what the above values are? If they are values
> > written to a 4-bit mux that selects RX clock source, then all the 16
> > clocks should be specified from device tree, even if they are
> > duplicated.
>
> The S/PDIF core can recover the clock for the tx signal from the rx
> signal. So if you have an S/PDIF input signal, then the DPLL will be
> locked and the SPDIF_RxClk can be used for tx. So the above are really 8
> clocks and one "If DPLL locked, use it" bit.
Yes, I'm aware of this and the solution you proposed is fully acceptable,
but it complicates the driver a bit.
If you look at the mux inputs above, you can see that there is no single
bit that specifies "if DPLL locked, use it" mode. Instead the conditional
clock sources are mixed with fixed clock sources, without a linear
translation to 0-7 range, which would have to be hardcoded in the driver.
I guess it's a matter of preference, but if the IP has a RX clock
selection mux that has 16 inputs, the natural representation in device
tree that comes to my mind is 16 clocks - one for each input of the mux.
One might choose to abstract this as 8 clocks, though, since each clock is
duplicated.
In this particular case, the driver would have to know which mux inputs
can use DPLL anyway, so some hardcoding in the driver is still going to
take place, so I guess both solutions are equally right.
Best regards,
Tomasz
next prev parent reply other threads:[~2013-08-17 15:38 UTC|newest]
Thread overview: 37+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-08-15 11:26 [PATCH v5 0/2] Add freescale S/PDIF CPU DAI and machine drivers Nicolin Chen
2013-08-15 11:26 ` [PATCH v5 1/2] ASoC: fsl: Add S/PDIF CPU DAI driver Nicolin Chen
2013-08-15 12:18 ` Tomasz Figa
2013-08-16 4:43 ` Nicolin Chen
2013-08-16 7:08 ` Sascha Hauer
2013-08-16 8:01 ` Nicolin Chen
2013-08-16 8:56 ` Sascha Hauer
2013-08-16 9:53 ` Nicolin Chen
2013-08-16 10:11 ` Sascha Hauer
2013-08-16 10:16 ` Nicolin Chen
2013-08-17 12:28 ` Tomasz Figa
2013-08-17 14:53 ` Sascha Hauer
2013-08-17 15:17 ` Tomasz Figa
2013-08-19 9:35 ` Mark Rutland
2013-08-20 0:06 ` Mike Turquette
2013-08-21 8:50 ` Mark Rutland
2013-08-21 21:34 ` Tomasz Figa
2013-08-22 7:19 ` Mike Turquette
2013-08-22 12:09 ` Mark Rutland
2013-08-22 21:00 ` Sascha Hauer
2013-08-22 22:43 ` Mike Turquette
2013-08-22 22:49 ` Tomasz Figa
2013-08-23 6:34 ` Sascha Hauer
2013-08-23 12:58 ` Mark Rutland
2013-08-23 14:01 ` [alsa-devel] " Sascha Hauer
2013-08-23 14:57 ` Mark Rutland
2013-08-23 21:41 ` Mike Turquette
2013-08-24 0:20 ` Mark Brown
2013-08-23 12:44 ` Mark Rutland
2013-08-17 12:26 ` Tomasz Figa
2013-08-17 15:00 ` Sascha Hauer
2013-08-17 15:13 ` Tomasz Figa
2013-08-17 15:14 ` Sascha Hauer
2013-08-17 12:56 ` Tomasz Figa
2013-08-17 15:14 ` Sascha Hauer
2013-08-17 15:38 ` Tomasz Figa [this message]
2013-08-15 11:26 ` [PATCH v5 2/2] ASoC: fsl: Add S/PDIF machine driver Nicolin Chen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4160853.4nuiPWXiMi@flatron \
--to=tomasz.figa@gmail.com \
--cc=alsa-devel@alsa-project.org \
--cc=b42378@freescale.com \
--cc=broonie@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=festevam@gmail.com \
--cc=galak@codeaurora.org \
--cc=ian.campbell@citrix.com \
--cc=lars@metafoo.de \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=mark.rutland@arm.com \
--cc=p.zabel@pengutronix.de \
--cc=pawel.moll@arm.com \
--cc=rob.herring@calxeda.com \
--cc=s.hauer@pengutronix.de \
--cc=shawn.guo@linaro.org \
--cc=swarren@wwwdotorg.org \
--cc=timur@tabi.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).