alsa-devel.alsa-project.org archive mirror
 help / color / mirror / Atom feed
From: Mark Brown <broonie-yzvPICuk2AATkU/dhu1WVueM+bqZidxxQQ4Iyu8u01E@public.gmane.org>
To: Stephen Warren <swarren-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
Cc: Liam Girdwood <lrg-l0cyMroinI0@public.gmane.org>,
	alsa-devel-K7yf7f+aM1XWsZ/bQMPhNw@public.gmane.org,
	linux-tegra-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: Re: [PATCH 15/17] ASoC: tegra: add tegra30-i2s driver
Date: Sun, 1 Apr 2012 11:25:39 +0100	[thread overview]
Message-ID: <20120401102538.GB3153@opensource.wolfsonmicro.com> (raw)
In-Reply-To: <4F77BAA6.7060304-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>

[-- Attachment #1: Type: text/plain, Size: 2032 bytes --]

On Sat, Mar 31, 2012 at 08:17:10PM -0600, Stephen Warren wrote:
> On 03/31/2012 03:34 PM, Mark Brown wrote:

> >> +#ifdef CONFIG_DEBUG_FS
> >> +static int tegra30_i2s_show(struct seq_file *s, void *unused)
> >> +{

> > Abstraction please - this is open coded in several of your drivers.

> There's very little code here; unifying it would require passing the
> clock enable/disable and register read functions to any common code,
> which would end up making everything rather more complex. Sometimes

If you move the clock management into runtime PM that'd provide a
convenient abstraction for keeping the clocks and whatever else is
needed on without much complexity.  There's some other (non-ASoC)
drivers that do this, it works pretty well.

> there are multiple register read functions for different chunks of the
> address space. I guess if we did have regmap for MMIO, these debugfs
> files would pretty much come for free. Is that what you're looking for here?

That's one of the ideas, yes.  It'd need some work to make it happen
(mainly due to the use of mutexes), or you could mark things that need
to be attacked from register context

> > Looking at this it seems like all that's required is to propagate stream
> > events back up the chain and do the routing, there doesn't seem to be
> > much other interaction between the AHUB and the interfaces?

> I suspect that's pretty much what representing AHUB as a CODEC would
> turn into, or very similar anyway. Is it OK to get the basic

Yes, the above question was aimed at trying to figure out which way of
representing the device would work best - looking at this code it seems
like a CODEC.

> functionality in first and then refactor this, or would you prefer going
> straight to the complete solution?

It seems best to at least hook things in so machine drivers know about
the audio hub (in their DT bindings if nothing else) even if the actual
implementation is something like you've got now.  That way any churn is
limited to the CPU drivers as much as possible.

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 836 bytes --]

  parent reply	other threads:[~2012-04-01 10:25 UTC|newest]

Thread overview: 45+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-03-30 23:07 [PATCH 00/17] ASoC: tegra: Add Tegra30 support Stephen Warren
2012-03-30 23:07 ` [PATCH 01/17] ASoC: tegra: remove open-coded clk reference counting Stephen Warren
     [not found] ` <1333148852-17806-1-git-send-email-swarren-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2012-03-30 23:07   ` [PATCH 02/17] ASoC: tegra: ensure clocks are enabled when touching registers Stephen Warren
     [not found]     ` <1333148852-17806-3-git-send-email-swarren-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2012-03-31 19:14       ` Mark Brown
2012-03-30 23:07   ` [PATCH 03/17] ASoC: tegra: remove unnecessary includes Stephen Warren
     [not found]     ` <1333148852-17806-4-git-send-email-swarren-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2012-03-31 19:44       ` Mark Brown
2012-03-30 23:07   ` [PATCH 04/17] ASoC: tegra: add description to a couple Kconfig options Stephen Warren
2012-03-31 19:48     ` Mark Brown
     [not found]       ` <20120331194848.GG5012-yzvPICuk2AATkU/dhu1WVueM+bqZidxxQQ4Iyu8u01E@public.gmane.org>
2012-04-02 16:32         ` Stephen Warren
     [not found]           ` <4F79D49F.9000000-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2012-04-02 16:37             ` Mark Brown
2012-03-30 23:07   ` [PATCH 05/17] ASoC: tegra: fix Kconfig SND_SOC_TEGRA_ALC5632 indentation Stephen Warren
2012-03-31 19:49     ` Mark Brown
2012-03-30 23:07   ` [PATCH 06/17] ASoC: tegra: fix some checkpatch warnings Stephen Warren
     [not found]     ` <1333148852-17806-7-git-send-email-swarren-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2012-03-31 19:49       ` Mark Brown
2012-03-30 23:07   ` [PATCH 07/17] ASoC: tegra: introduce separate Kconfig variable for DAS driver Stephen Warren
     [not found]     ` <1333148852-17806-8-git-send-email-swarren-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2012-03-31 19:49       ` Mark Brown
2012-03-30 23:07   ` [PATCH 08/17] ASoC: tegra: make Tegra20 drivers depend on Tegra20 support Stephen Warren
2012-03-30 23:07   ` [PATCH 09/17] ASoC: tegra: sort Makefile into common and per-SoC files Stephen Warren
     [not found]     ` <1333148852-17806-10-git-send-email-swarren-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2012-03-31 19:50       ` Mark Brown
2012-03-30 23:07   ` [PATCH 11/17] ASoC: tegra: complete Tegra->Tegra20 renaming Stephen Warren
2012-03-30 23:07   ` [PATCH 12/17] ASoC: tegra: utils: add support for Tegra30 devices Stephen Warren
     [not found]     ` <1333148852-17806-13-git-send-email-swarren-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2012-03-31 20:20       ` Mark Brown
     [not found]         ` <20120331202015.GN5012-yzvPICuk2AATkU/dhu1WVueM+bqZidxxQQ4Iyu8u01E@public.gmane.org>
2012-04-01  1:57           ` Stephen Warren
     [not found]             ` <4F77B5F8.8080205-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2012-04-01 10:28               ` Mark Brown
     [not found]                 ` <20120401102814.GC3153-yzvPICuk2AATkU/dhu1WVueM+bqZidxxQQ4Iyu8u01E@public.gmane.org>
2012-04-02 17:44                   ` Stephen Warren
     [not found]                     ` <4F79E584.7080904-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2012-04-02 21:30                       ` Mark Brown
2012-03-30 23:07   ` [PATCH 13/17] ASoC: tegra: set a sensible initial clock rate Stephen Warren
     [not found]     ` <1333148852-17806-14-git-send-email-swarren-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2012-03-31 20:17       ` Mark Brown
     [not found]         ` <20120331201754.GM5012-yzvPICuk2AATkU/dhu1WVueM+bqZidxxQQ4Iyu8u01E@public.gmane.org>
2012-04-01  2:07           ` Stephen Warren
2012-04-01 10:36             ` Mark Brown
2012-03-30 23:07   ` [PATCH 14/17] ASoC: tegra: add tegra30-ahub driver Stephen Warren
     [not found]     ` <1333148852-17806-15-git-send-email-swarren-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2012-03-31 20:14       ` Mark Brown
     [not found]         ` <20120331201433.GL5012-yzvPICuk2AATkU/dhu1WVueM+bqZidxxQQ4Iyu8u01E@public.gmane.org>
2012-04-01  2:04           ` Stephen Warren
     [not found]             ` <4F77B7CA.3020803-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2012-04-01 10:31               ` Mark Brown
     [not found]                 ` <20120401103117.GD3153-yzvPICuk2AATkU/dhu1WVueM+bqZidxxQQ4Iyu8u01E@public.gmane.org>
2012-04-02 17:27                   ` Stephen Warren
     [not found]                     ` <4F79E198.1080606-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2012-04-02 22:04                       ` Mark Brown
2012-03-30 23:07   ` [PATCH 15/17] ASoC: tegra: add tegra30-i2s driver Stephen Warren
     [not found]     ` <1333148852-17806-16-git-send-email-swarren-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2012-03-31 21:34       ` Mark Brown
2012-04-01  2:17         ` Stephen Warren
     [not found]           ` <4F77BAA6.7060304-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2012-04-01 10:25             ` Mark Brown [this message]
2012-03-30 23:07   ` [PATCH 16/17] ASoC: tegra: add Kconfig and Makefile support for Tegra30 Stephen Warren
2012-03-30 23:07   ` [PATCH 17/17] ASoC: tegra+wm8903 machine: support Tegra30 Stephen Warren
2012-03-31 19:44   ` [PATCH 00/17] ASoC: tegra: Add Tegra30 support Mark Brown
     [not found]     ` <20120331194429.GE5012-yzvPICuk2AATkU/dhu1WVueM+bqZidxxQQ4Iyu8u01E@public.gmane.org>
2012-04-02 16:03       ` Stephen Warren
     [not found]         ` <4F79CDE6.6030501-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2012-04-02 16:06           ` Mark Brown

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=20120401102538.GB3153@opensource.wolfsonmicro.com \
    --to=broonie-yzvpicuk2aatku/dhu1wvuem+bqzidxxqq4iyu8u01e@public.gmane.org \
    --cc=alsa-devel-K7yf7f+aM1XWsZ/bQMPhNw@public.gmane.org \
    --cc=linux-tegra-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=lrg-l0cyMroinI0@public.gmane.org \
    --cc=swarren-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.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).