From: Mark Brown <broonie@opensource.wolfsonmicro.com>
To: Manuel Lauss <manuel.lauss@googlemail.com>
Cc: Linux-MIPS <linux-mips@linux-mips.org>,
Ralf Baechle <ralf@linux-mips.org>,
Manuel Lauss <manuel.lauss@gmail.com>,
alsa-devel@alsa-project.org
Subject: Re: [alsa-devel] [PATCH 4/7] Alchemy: DB1200 AC97+I2S audio support.
Date: Mon, 8 Jun 2009 11:20:18 +0100 [thread overview]
Message-ID: <20090608102018.GA6547@rakim.wolfsonmicro.main> (raw)
In-Reply-To: <f861ec6f0906080243g6be8e613p7ab9c2df66576be8@mail.gmail.com>
On Mon, Jun 08, 2009 at 11:43:41AM +0200, Manuel Lauss wrote:
> On Mon, Jun 8, 2009 at 11:25 AM, Mark
> Brown<broonie@opensource.wolfsonmicro.com> wrote:
> > If this is going to go in during the merge window I'm happy for it to go
> > in via the MIPS tree but otherwise I'd much rather it goes via ASoC in
> > case API changes cause merge issues. I don't know what you prefer,
> > Ralf?
> I'd rather have it all go through the MIPS tree; this is the only patch of
> 7 which touches files outside it, and it depends on another one to
> apply cleanly.
Well, like I say if it's going via MIPS I'd really prefer it to go in
this merge window. If not then I'd expect that splitting out the
architecture parts from the machine driver as I suggested ought to deal
with the merge issues.
> I'd actually love to move this file to the actual board code, however due
> to the way ASoC is organized this isn't at all possible. This is one of two
> things I don't like about ASoC: the machine registration is extremely awkward
The main problem long term with trying to move it into the architecture
code is that the drivers for anything non-trivial get large enough to
qualify as actual drivers - add a jack or two in there, or some more
fancy clocking for example. I also catch enough errors in the machine
drivers I'm reviewing that I'm a bit nervous about reducing the level of
review that they get.
At the minute the APIs are too fluid to make this realistic, anyway -
you'd just get constant merge issues.
> compared to other platform drivers. (the other being that ASoC doesn't
> support multiple machines [i.e. I could actually run both AC97 and I2S
> simultaneously one of my boards, as independent sound cards])
I've got a board sitting on my desk here which has multiple sound
systems. Unfortunately the architecture code for it is a bit of a
shambles at this point so it's more trouble to work on the platform
than it's worth at the minute.
> >> +static struct resource psc1_res[] = {
> > If you conver the I2S driver to use the standard device probing model
> > this could all me moved into the architecture code rather than placed in
> > machine drivers.
> Again, I'd love to, but can't: the AC97/I2S/DBDMA drivers extract base address
> and DMA information from the platform device resource structure; however
> I can't just copy the resource info from the this db1200_sound platform_driver
> to the soc_audio platform driver because the driver core complains about
> resource conflicts (two platform_devices sharing the same resources).
> Unless I missed a flag which needs to be passed to the resource.flags member?
If you move the selection of the switch position to the architecture
code then it can arrange to register only the device that is in use in
the current configuration. If the DMA and DAI drivers both need the
same resources they can cooperate with each other - the system will only
bring the card on-line once both the DMA and DAI driver are present.
I'd not be too concerned about having the machine driver be able to flip
between the two at run time - it's unlikely to be a realistic concern
for anything except reference boards and even with those it's relatively
unlikely that anyone will be doing that on a regular basis. The wins
for general users of the driver should cause an overall reduction in
pain.
next prev parent reply other threads:[~2009-06-08 10:20 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-06-07 18:38 [PATCH 0/7] Alchemy: core and platform updates v2 Manuel Lauss
2009-06-07 18:38 ` [PATCH 1/7] Alchemy: prioritize timer and usb irqs Manuel Lauss
2009-06-07 18:38 ` [PATCH 2/7] Alchemy: get rid of allow_au1k_wait Manuel Lauss
2009-06-07 18:39 ` [PATCH 3/7] Alchemy: extended DB1200 board support Manuel Lauss
2009-06-07 18:39 ` [PATCH 4/7] Alchemy: DB1200 AC97+I2S audio support Manuel Lauss
2009-06-07 18:39 ` [PATCH 5/7] Alchemy: new PCMCIA socket driver for devboards Manuel Lauss
2009-06-07 18:39 ` [PATCH 6/7] Alchemy: convert to physmap flash Manuel Lauss
2009-06-07 18:39 ` [PATCH 7/7] Alchemy: db1200 defconfig update Manuel Lauss
2009-06-08 9:25 ` [alsa-devel] [PATCH 4/7] Alchemy: DB1200 AC97+I2S audio support Mark Brown
2009-06-08 9:43 ` Manuel Lauss
2009-06-08 10:20 ` Mark Brown [this message]
2009-06-08 11:25 ` Manuel Lauss
2009-06-08 11:53 ` Mark Brown
2009-06-08 12:21 ` Manuel Lauss
2009-06-08 12:44 ` Mark Brown
2009-06-08 13:11 ` Manuel Lauss
2009-06-08 13:45 ` 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=20090608102018.GA6547@rakim.wolfsonmicro.main \
--to=broonie@opensource.wolfsonmicro.com \
--cc=alsa-devel@alsa-project.org \
--cc=linux-mips@linux-mips.org \
--cc=manuel.lauss@gmail.com \
--cc=manuel.lauss@googlemail.com \
--cc=ralf@linux-mips.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).