alsa-devel.alsa-project.org archive mirror
 help / color / mirror / Atom feed
From: Ondrej Zary <linux@rainbow-software.org>
To: Mark Brown <broonie@opensource.wolfsonmicro.com>
Cc: alsa-devel@alsa-project.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH 2/4] Add Wolfson Microelectronics WM8766 codec ALSA driver
Date: Tue, 17 Apr 2012 18:35:32 +0200	[thread overview]
Message-ID: <201204171835.38252.linux@rainbow-software.org> (raw)
In-Reply-To: <20120417145929.GA22575@sirena.org.uk>

On Tuesday 17 April 2012 16:59:29 Mark Brown wrote:
> On Mon, Apr 16, 2012 at 11:18:36PM +0200, Ondrej Zary wrote:
> > Needed by Philips PSC724 subdriver. The code does not contain any
> > card-specific bits so it can be used by any other ALSA driver.
> >
> > Signed-off-by: Ondrej Zary <linux@rainbow-software.org>
>
> Please CC me (and ideally all of patches@opensource.wolfsonmicro.com)
> on any drivers for Wolfson devices.  It's not like we're secretive!
>
> > ---
> >  include/sound/wm8766.h   |  160 ++++++++++++++++++++
> >  sound/i2c/other/Makefile |    3 +-
> >  sound/i2c/other/wm8766.c |  374
> > ++++++++++++++++++++++++++++++++++++++++++++++
>
> No, this should be supported in ASoC - anything adding new code in
> sound/i2c is *deeply* suspicious.

I agree that sound/i2c is wrong. I worked on tea575x-tuner before which lives 
in this directory too - but it's neither an I2C device nor a sound chip...
There should probably be something like sound/codecs instead that could be 
used by any sound card drivers.

> > +struct snd_wm8766_ops {
> > +	void (*write)(struct snd_wm8766 *wm, u16 addr, u16 data);
> > +};
>
> You should in general use regmap rather than open coding register I/O
> for I2C devices.

regmap seems like an overkill here. It requires the i2c bus to be registered 
in the kernel i2c subsystem (which is not in the case of ice1712).

> > +void snd_wm8766_init(struct snd_wm8766 *wm);
> > +void snd_wm8766_set_if(struct snd_wm8766 *wm, u16 dac);
> > +void snd_wm8766_set_master_mode(struct snd_wm8766 *wm, u16 mode);
> > +void snd_wm8766_set_power(struct snd_wm8766 *wm, u16 power);
> > +void snd_wm8766_volume_restore(struct snd_wm8766 *wm);
> > +int snd_wm8766_build_controls(struct snd_wm8766 *wm);
>
> I've not yet looked at the rest of the code but this looks awfully like
> you've just invented a minimal version of the ASoC interfaces...

The _set functions are just simple register writes - the caller needs to know 
what to write there (only _set_if is used by psc724).

-- 
Ondrej Zary

  reply	other threads:[~2012-04-17 16:36 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-04-16 21:18 [RFC PATCH 0/4] snd-ice1712: Add Philips PSC724 Ultimate Edge Ondrej Zary
2012-04-16 21:18 ` [PATCH 1/4] snd-ice1712: add chip_exit callback Ondrej Zary
2012-04-16 21:18 ` [PATCH 2/4] Add Wolfson Microelectronics WM8766 codec ALSA driver Ondrej Zary
2012-04-17 14:59   ` Mark Brown
2012-04-17 16:35     ` Ondrej Zary [this message]
2012-04-17 16:54       ` Mark Brown
2012-04-16 21:18 ` [PATCH 3/4] Add Wolfson Microelectronics WM8776 " Ondrej Zary
2012-04-17 15:02   ` Mark Brown
2012-04-17 16:13     ` Ondrej Zary
2012-04-17 16:18       ` Mark Brown
2012-04-17 16:32         ` Takashi Iwai
2012-04-17 16:50           ` [alsa-devel] " Mark Brown
2012-04-17 16:52             ` Takashi Iwai
2012-04-17 17:04               ` [alsa-devel] " Mark Brown
2012-04-17 18:06                 ` Takashi Iwai
2012-04-17 18:15                   ` Ondrej Zary
2012-04-17 18:22                     ` Mark Brown
2012-04-17 19:14                       ` [alsa-devel] " Takashi Iwai
2012-04-17 19:43                         ` Mark Brown
2012-04-17 20:16                           ` Pavel Hofman
2012-04-17 21:29                             ` Mark Brown
2012-04-18  9:06                               ` Mark Brown
2012-04-18  9:27                                 ` Pavel Hofman
2012-04-18 10:34                                   ` Mark Brown
2012-04-17 19:12                     ` [alsa-devel] " Takashi Iwai
2012-04-17 21:07                       ` Ondrej Zary
2012-04-18  5:54                         ` Takashi Iwai
2012-04-18  6:52                           ` Clemens Ladisch
2012-04-16 21:18 ` [PATCH 4/4] snd-ice1712: Add Philips PSC724 Ultimate Edge Ondrej Zary

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=201204171835.38252.linux@rainbow-software.org \
    --to=linux@rainbow-software.org \
    --cc=alsa-devel@alsa-project.org \
    --cc=broonie@opensource.wolfsonmicro.com \
    --cc=linux-kernel@vger.kernel.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).