All of lore.kernel.org
 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: 37+ 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         ` [alsa-devel] " Takashi Iwai
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 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:15                     ` Ondrej Zary
2012-04-17 18:22                     ` [alsa-devel] " Mark Brown
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 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-17 21:07                         ` Ondrej Zary
2012-04-18  5:54                         ` [alsa-devel] " Takashi Iwai
2012-04-18  5:54                           ` Takashi Iwai
2012-04-18  6:52                           ` [alsa-devel] " Clemens Ladisch
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 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.