All of lore.kernel.org
 help / color / mirror / Atom feed
From: Timur Tabi <timur@freescale.com>
To: Jon Smirl <jonsmirl@gmail.com>
Cc: PowerPC dev list <Linuxppc-dev@ozlabs.org>
Subject: Re: Audio codec device tree entries
Date: Wed, 24 Oct 2007 09:13:01 -0500	[thread overview]
Message-ID: <471F52ED.10007@freescale.com> (raw)
In-Reply-To: <9e4733910710231529h1089eacdy888306f20af92555@mail.gmail.com>

Jon Smirl wrote:
> Is this consensus on how the tree should look?
> 
> There is no attempt to describe the codec connections inside the
> device tree. 

I don't think I agree with that.  The device tree should indicate which codec is 
connected to which I2S/AC97 device.

I see that you do that for the AC97 node, but not the I2S node.  Why?

> I'm still not clear on how to trigger the load of the fabric driver.
> Right now I have a single kernel that works on Efika and my target
> hardware.  This gets sorted out by define_machine(xxxx). I'll write
> some code tonight to figure out how to load drivers and match on
> codec0, codec1, etc. But how do I probe for the fabric driver I need
> to figure out whether to load the Efika one or my target one.

I've been struggling with that one, too.  To keep it simple, I have the fabric 
driver just search for all the I2S nodes in my tree, and create ASoC objects for 
each one it finds.  There's some hackery there, but I don't think we need to 
solve all the problems at once.  The only thing that *has* to be right the first 
time is the device tree.

> i2s@2200 {           // PSC2
>       compatible = "fsl,mpc5200b-psc-i2s","fsl,mpc5200-psc-i2s";
>       cell-index = <1>;
>       reg = <2200 100>;
>       interrupts = <2 2 0>;
>       interrupt-parent = <&mpc5200_pic>;
> };
> 
> i2c@3d00 {
>       compatible = "fsl,mpc5200b-i2c", "fsl,mpc5200-i2c", "fsl-i2c";
>       #address-cells = <1>;
>       #size-cells = <0>;
>       cell-index = <0>;
>       reg = <3d00 40>;
>       interrupts = <2 f 0>;
>       interrupt-parent = <&mpc5200_pic>;
>       fsl5200-clocking;
> 
>       codec0: i2s-codec@0 {
>             compatible = "ti,tas5508";
>             reg = <0>;
>             i2s-handle = <&i2s@2000>;
>       };

I'd do this the other way around -- that is:

i2s@2200 {           // PSC2
       	compatible = "fsl,mpc5200b-psc-i2s","fsl,mpc5200-psc-i2s";
	...
	i2c-handle = <&codec0>;	 /* Or something like that */
};

The reason is because I think the I2S driver will be instantiated *first* as an 
I2S driver and then it will create the I2C instantiation.

  reply	other threads:[~2007-10-24 14:13 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-10-23  1:59 Audio codec device tree entries Jon Smirl
2007-10-23  2:57 ` David Gibson
2007-10-23  3:57 ` Grant Likely
2007-10-23  8:06   ` Segher Boessenkool
2007-10-23 15:27 ` Timur Tabi
2007-10-23 16:56   ` Segher Boessenkool
2007-10-23 22:29     ` Jon Smirl
2007-10-24 14:13       ` Timur Tabi [this message]
2007-10-24 15:00         ` Jon Smirl
2007-10-24 15:07           ` Timur Tabi
2007-10-24 15:28             ` Grant Likely
2007-10-24 23:52               ` David Gibson
2007-10-24 15:16           ` Grant Likely
2007-10-24 15:20             ` Grant Likely
2007-10-24 15:28               ` Jon Smirl
2007-10-24 15:43                 ` Grant Likely
2007-10-24 15:54                   ` Jon Smirl
2007-10-24 16:01                     ` Timur Tabi
2007-10-24 16:39                       ` Grant Likely
2007-10-24 16:41                         ` Timur Tabi
2007-10-24 16:47                           ` Grant Likely
2007-10-24 16:38                     ` Grant Likely
2007-10-24 16:41                       ` Timur Tabi
2007-10-24 16:52                         ` Grant Likely
2007-10-24 17:01                       ` Jon Smirl
2007-10-24 17:13                         ` Grant Likely
2007-10-24 17:13                         ` Timur Tabi
2007-10-24 19:31                           ` Jon Smirl
2007-10-24 19:41                             ` Timur Tabi
2007-10-24 19:56                               ` Jon Smirl
2007-10-25  0:04                       ` David Gibson
2007-10-25  0:17                         ` Jon Smirl
2007-10-25  0:38                           ` David Gibson
2007-10-25  3:11                             ` Jon Smirl
2007-10-25 16:14                               ` Timur Tabi
2007-10-24 23:55                     ` David Gibson
2007-10-24 15:23             ` Jon Smirl
2007-10-24 15:40               ` Timur Tabi
2007-10-24 15:54                 ` Grant Likely
2007-10-24 15:08         ` Grant Likely
2007-10-24 15:19           ` Jon Smirl
2007-10-25  0:01             ` David Gibson

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=471F52ED.10007@freescale.com \
    --to=timur@freescale.com \
    --cc=Linuxppc-dev@ozlabs.org \
    --cc=jonsmirl@gmail.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.