From: Mark Brown <broonie@opensource.wolfsonmicro.com>
To: Grant Likely <grant.likely@secretlab.ca>
Cc: alsa-devel@alsa-project.org, kumar.gala@freescale.com,
linuxppc-dev@ozlabs.org, Timur Tabi <timur@freescale.com>,
Liam Girdwood <lrg@slimlogic.co.uk>
Subject: Re: [alsa-devel] [PATCH 1/2] powerpc: add platform registration for ALSA SoC drivers
Date: Tue, 27 Apr 2010 23:29:14 +0100 [thread overview]
Message-ID: <20100427222913.GE15083@opensource.wolfsonmicro.com> (raw)
In-Reply-To: <g2mfa686aa41004271324g8ff0d67fi3df4336cb25e9acc@mail.gmail.com>
On Tue, Apr 27, 2010 at 02:24:34PM -0600, Grant Likely wrote:
> However, as you and Mark rightly point out, it completely fails to
> represent complex sound devices with weird clocking and strange
> routes. Something like this is probably more appropriate:
>
> [...]
> codec1 :codec@4f {
> compatible = "cirrus,cs4270";
> reg = <0x4f>;
> /* MCLK source is a stand-alone oscillator */
> clock-frequency = <12288000>;
> };
You also want to be representing unused pins here.
> [...]
> ssi1: ssi@16000 {
> compatible = "fsl,mpc8610-ssi";
> [...]
> fsl,mode = "i2s-slave";
I'd not include the master/slave decision; it's either implied by the
fact that the CODEC has a standalone clock, a property of the link/card,
or a policy decision that the running software can change on a whim.
> sound {
> compatible = "fsl,mpc8610-hpcd-sound";
> /* maybe something like (totally off the top of my head) */
> dai-links = <&ssi1 0 &codec 0
> &ssi1 1 &codec 1>;
I'm having a hard time loving this. I'd be looking for a lot more
semantics on the links (things like information about separate clocks
for the two directions, for example) which makes me think that that
simple list format is far too simple and you want a list of more complex
objects.
There's also analogue interconnects to deal with, and jacks (including
detection and accessories). Jacks can be particularly entertaining
here.
> Or, in other words, the device tree should *not* be used to describe
> every possible detail and permutation. It is best used to describe
> the permutations that are common so that they don't need to be hard
> coded for each and every board.
I think the ideal is something that's purely descriptive of the hardware
and doesn't include any policy decisions. Policy decisions covers an
awful lot of the interesting issues, though - but they're the sort of
things that can easily be changed with a new software load and therefore
don't belong in the device tree.
On the other hand from a pragmatic point of view it's just much less
hassle to just only provide the mechanism for instantiating a machine
with custom code and use that for everything.
next prev parent reply other threads:[~2010-04-27 22:29 UTC|newest]
Thread overview: 55+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-04-26 20:49 [PATCH 1/2] powerpc: add platform registration for ALSA SoC drivers Timur Tabi
2010-04-27 6:36 ` Benjamin Herrenschmidt
2010-04-27 8:07 ` [alsa-devel] " Liam Girdwood
2010-04-27 14:52 ` Timur Tabi
2010-04-27 15:20 ` Liam Girdwood
2010-04-27 15:28 ` Timur Tabi
2010-04-27 15:56 ` Timur Tabi
2010-04-27 16:41 ` Liam Girdwood
2010-04-27 18:32 ` Timur Tabi
2010-04-27 19:15 ` Grant Likely
2010-04-27 20:04 ` Timur Tabi
2010-04-27 20:38 ` Mark Brown
2010-04-28 4:19 ` Benjamin Herrenschmidt
2010-04-28 4:18 ` Benjamin Herrenschmidt
2010-04-30 21:46 ` Timur Tabi
2010-04-30 22:04 ` Timur Tabi
2010-04-27 20:24 ` Grant Likely
2010-04-27 20:46 ` Timur Tabi
2010-04-27 20:59 ` Mark Brown
2010-04-27 21:03 ` Timur Tabi
2010-04-27 21:11 ` Mark Brown
2010-04-28 4:25 ` Benjamin Herrenschmidt
2010-04-28 13:00 ` Mark Brown
2010-04-29 0:42 ` Benjamin Herrenschmidt
2010-04-28 5:37 ` Grant Likely
2010-04-28 13:35 ` Timur Tabi
2010-04-28 13:57 ` Grant Likely
2010-04-28 16:20 ` Timur Tabi
2010-04-28 16:47 ` Grant Likely
2010-04-28 17:27 ` Timur Tabi
2010-04-27 22:29 ` Mark Brown [this message]
2010-04-28 2:31 ` Grant Likely
2010-04-28 9:16 ` Mark Brown
2010-04-28 4:10 ` Benjamin Herrenschmidt
2010-04-28 12:07 ` Mark Brown
2010-04-29 0:36 ` Benjamin Herrenschmidt
2010-04-29 3:43 ` Grant Likely
2010-04-28 13:19 ` Timur Tabi
2010-04-28 13:39 ` Mark Brown
2010-04-27 9:54 ` Mark Brown
2010-04-27 10:09 ` Benjamin Herrenschmidt
2010-04-27 10:41 ` Mark Brown
2010-04-27 20:27 ` Grant Likely
2010-04-27 20:50 ` Mark Brown
2010-04-27 20:53 ` Timur Tabi
2010-04-28 12:49 ` [alsa-devel] " Liam Girdwood
2010-04-28 20:35 ` Timur Tabi
2010-04-28 21:58 ` Grant Likely
2010-04-28 22:13 ` Timur Tabi
2010-04-28 22:23 ` Grant Likely
2010-04-29 0:52 ` Benjamin Herrenschmidt
2010-04-29 3:44 ` Grant Likely
2010-04-29 0:50 ` Benjamin Herrenschmidt
2010-04-27 19:21 ` Grant Likely
2010-04-27 20:05 ` Timur Tabi
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=20100427222913.GE15083@opensource.wolfsonmicro.com \
--to=broonie@opensource.wolfsonmicro.com \
--cc=alsa-devel@alsa-project.org \
--cc=grant.likely@secretlab.ca \
--cc=kumar.gala@freescale.com \
--cc=linuxppc-dev@ozlabs.org \
--cc=lrg@slimlogic.co.uk \
--cc=timur@freescale.com \
/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).