From: Ashish Chavan <ashish.chavan@kpitcummins.com>
To: Mark Brown <broonie@opensource.wolfsonmicro.com>
Cc: "alsa-devel@alsa-project.org" <alsa-devel@alsa-project.org>
Subject: Re: What is correct way to put conditional stuff in ASoC codec driver?
Date: Fri, 1 Jul 2011 14:03:25 +0530 [thread overview]
Message-ID: <1309509205.15931.89.camel@matrix> (raw)
In-Reply-To: <20110630163706.GA18120@sirena.org.uk>
On Thu, 2011-06-30 at 22:07 +0530, Mark Brown wrote:
> On Thu, Jun 30, 2011 at 06:16:30PM +0530, Ashish Chavan wrote:
>
> Please fix your mailer to word wrap at less than 80 columns so your mail
> is legible.
Oops! I thought I already have it set in my evolution. Thanks for
pointing it out.
>
> > Our final goal is to pull in all missing features from this custom
> > driver in to existing mainline driver. I have already created few
> > patches for basic functions but I am bit confused at one point. Some
> > of the features supported by this codec have inter dependency, e.g.
> > ALC can be used only if NOISE SUPRESSION is disabled. So ideally, all
> > controls related to ALC should be either disabled or not added at all,
> > if NOISE SUPRESSION to be used. There are few other features having
> > similar kind of dependency.
>
> You'd need to implement custom controls for the relevant enables which
> check to see what is currently enabled and prevents enables if there
> are conflicts. You should do this dynamically and I'd expect that only
> the enables actually need to check anything, adjusting parameters for
> things that aren't active is usually no problem.
I see. That means it's ok to allow setting up values of five band
equalizers even when overall equalizer functionality is disabled.
Can you point me to any existing code that has such custom control(s)
which need to check for similar conditions? I am sure that many existing
codecs would have this kind of inter dependent functions.
> > I just want to know what is the correct way to handle this in ASoC
> > codec driver? Looking at the existing codec drivers, it seems that
> > having conditional defines is not common here. As We just want to
> > support static configuration of such features, is it a good idea to
> > add sub menu options in driver's Kconfig to enable/disable such
> > features and use them within code?
>
> Compile time selection is completely uinacceptable for Linux in general,
> please see the coding style and development model stuff in Documentation
> for discussion of the motivations for this.
Yes, guessed this. In fact that's why I posted the query here :-)
next prev parent reply other threads:[~2011-07-01 8:26 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-06-30 12:46 What is correct way to put conditional stuff in ASoC codec driver? Ashish Chavan
2011-06-30 16:37 ` Mark Brown
2011-07-01 8:33 ` Ashish Chavan [this message]
2011-07-01 16:17 ` Mark Brown
2011-07-04 6:56 ` Ashish Chavan
2011-07-04 22:34 ` Mark Brown
2011-07-05 14:25 ` Ashish Chavan
2011-07-05 19:37 ` Mark Brown
2011-07-07 11:50 ` Ashish Chavan
2011-07-07 15:49 ` Mark Brown
2011-07-11 14:16 ` Ashish Chavan
2011-07-11 14:17 ` 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=1309509205.15931.89.camel@matrix \
--to=ashish.chavan@kpitcummins.com \
--cc=alsa-devel@alsa-project.org \
--cc=broonie@opensource.wolfsonmicro.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.