All of lore.kernel.org
 help / color / mirror / Atom feed
From: Liam Girdwood <lrg@slimlogic.co.uk>
To: balbi@ti.com
Cc: "Lambert, David" <dlambert@ti.com>,
	alsa-devel@alsa-project.org, linux-omap@vger.kernel.org,
	Mark Brown <broonie@opensource.wolfsonmicro.com>,
	Tony Lindgren <tony@atomide.com>, Paul Walmsley <paul@pwsan.com>
Subject: Re: [PATCH 1/5] ASoC: DMIC: Adding the OMAP DMIC driver
Date: Wed, 29 Dec 2010 13:00:00 +0000	[thread overview]
Message-ID: <1293627600.3451.93.camel@odin> (raw)
In-Reply-To: <20101229120443.GB2222@legolas.emea.dhcp.ti.com>

On Wed, 2010-12-29 at 14:04 +0200, Felipe Balbi wrote:
> Hi,
> 
> On Wed, Dec 29, 2010 at 11:52:51AM +0000, Liam Girdwood wrote:
> >I agree that drivers should be arch independent when possible, but in
> >this case the OMAP DMIC DAI driver is coupled to the OMAP platform only.
> >i.e. it performs IO directly on the OMAP DMIC IP. This IP is only found
> >on OMAP silicon.
> 
> Let's imagine this IP is sourced from someone else and not created by
> TI, what prevents company XYZ from sourcing the same IP and end up
> re-using the driver ?

That's fine, but this is not the case atm for this particular DMIC IP
and we can only justify effort for OMAP atm.

> 
> >I also agree it would be nice if it builds for PXA, MIPS, SuperH etc but
> >what happens when the driver builds fine for OMAP but breaks the PXA,
> >MIPS, SuperH build ? Who will spend time to fix and test it ?
> 
> You forgetting about other ARMs. This won't compile on DaVinci either.
> 
> >My main problem here is cost benefit. No one benefits directly by having
> >this driver available for the above platforms but it costs me time
> >fixing it when it breaks.
> 
> Of course there's people benefitting: OMAP audio driver writers would
> know their driver is well written and doesn't break build for anybody.
> 
> Ok, let me put it this way:
> 
> What happens when you want have one kernel image for OMAP and DaVinci ?
> Granted, that's not possible today anyway but e.g. Linaro is pushing for
> it and IMO should be the way to go for us to be able to have a
> distro-like kernel for ARM-based systems too.
> 

Ok, I now think you meant other "ARM architectures" here than other
Linux architectures in general. It does make a more sense for ARM
distribution deployment, but I still think guaranteeing successful build
for this driver on all non ARM architectures atm just to give us
satisfaction that the driver is "well written" is unnecessary effort.

> >> >It also seems inconsistent with the other OMAP system headers in
> >> >plat-omap too.
> >>
> >> Other than a few drivers which still need converting (and are on their
> >> way) I can only see really arch-specific bits and pieces under plat/.
> >>
> >> Not sure what's your point here.
> >>
> >
> >The point is that David had split the DMIC headers into two files, one
> >for plat specific registers and bit definitions and the other for audio
> >definitions (for the machine drivers) and is/was consistent with the
> >current OMAP platform headers.
> 
> You forgot to mention that plat/ headers are supposed to be used by
> plat-* and mach-* code only to setup the correct state for the driver.
> Just recently one of the musb glue layers got broken because it was
> mistakenly using <plat/control.h> and that got moved.
> 
> That's actually my point and why I think drivers should not touch plat/*
> and mach/* headers.
> 

In a lot of cases drivers under drivers/* and sound/* must touch plat/*
and mach/* headers for runtime access to hardware IP. I've just grepped
and the list is quite long for drivers/*

Liam



  reply	other threads:[~2010-12-29 13:00 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-12-28  4:17 [PATCH 0/5] Adding OMAP DMIC driver to kernel David Lambert
2010-12-28  4:17 ` [PATCH 1/5] ASoC: DMIC: Adding the OMAP DMIC driver David Lambert
2010-12-28 11:14   ` Felipe Balbi
2010-12-29  1:13     ` Lambert, David
2010-12-29  9:47       ` Felipe Balbi
2010-12-29 10:35         ` Liam Girdwood
2010-12-29 10:44           ` Felipe Balbi
2010-12-29 11:52             ` Liam Girdwood
2010-12-29 11:56               ` Mark Brown
2010-12-29 11:59                 ` Felipe Balbi
2010-12-29 12:11                   ` Mark Brown
2010-12-29 12:04               ` Felipe Balbi
2010-12-29 13:00                 ` Liam Girdwood [this message]
2010-12-29 13:07                   ` Felipe Balbi
2010-12-28 14:18   ` Mark Brown
2011-01-05 13:56     ` Lambert, David
2011-01-05 14:03       ` Mark Brown
2010-12-28  4:17 ` [PATCH 2/5] ASoC: DMIC codec: Adding a generic DMIC codec David Lambert
2010-12-28 14:29   ` Mark Brown
2010-12-28  4:17 ` [PATCH 3/5] ASoC: DMIC: Adding OMAP DMIC driver to build David Lambert
2010-12-28 11:40   ` Mark Brown
2010-12-29  2:21     ` Lambert, David
2010-12-28  4:17 ` [PATCH 4/5] OMAP4: hwmod: add entries for DMIC driver David Lambert
2010-12-28  4:17 ` [PATCH 5/5] MAP4: DMIC: Add DMIC codec platform devices David Lambert
2010-12-28 11:23   ` Felipe Balbi

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=1293627600.3451.93.camel@odin \
    --to=lrg@slimlogic.co.uk \
    --cc=alsa-devel@alsa-project.org \
    --cc=balbi@ti.com \
    --cc=broonie@opensource.wolfsonmicro.com \
    --cc=dlambert@ti.com \
    --cc=linux-omap@vger.kernel.org \
    --cc=paul@pwsan.com \
    --cc=tony@atomide.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.