All of lore.kernel.org
 help / color / mirror / Atom feed
From: Rajeev kumar <rajeev-dlh.kumar@st.com>
To: Peter Ujfalusi <peter.ujfalusi@ti.com>
Cc: "alsa-devel@alsa-project.org" <alsa-devel@alsa-project.org>,
	Mark Brown <broonie@opensource.wolfsonmicro.com>
Subject: Re: Audio codec volume control
Date: Thu, 20 Sep 2012 16:09:53 +0530	[thread overview]
Message-ID: <505AF279.9050906@st.com> (raw)
In-Reply-To: <505AED95.20400@ti.com>

Hello Peter,

On 9/20/2012 3:49 PM, Peter Ujfalusi wrote:
> On 09/20/2012 01:08 PM, Rajeev kumar wrote:
>>> case 3:
>>> 1. Provide master volume control
>>> 2. stereo volume control for the left/right channel
>>>
>>
>> You mean to say
>> Left and Right should be a single stereo control which can be provided with
>> SOC_DOUBLE. Actually case 2 corresponds to the same setting which you are
>> suggesting.
>>
>> But why this is better option?
>
> You have less controls for the codec ->  easier for users.
> Users still can adjust the left/right differently if they want.
>
>> In case user wants a separate left/right volume control then how this setting
>> is going to help.
>
> In most cases you change both left/right channel:
> amixer sset 'PCM' 8 # left/right volume is 8
>
> but users can set different volume per channel:
> amixer sset 'PCM' 8,1 # left volume is 8, right is 1
>
> it is better than:
> amixer sset 'PCM Left' 8 # left volume is 8
> amixer sset 'PCM Right' 8 # left volume is 8
>
> or
> amixer sset 'PCM Left' 8 # left volume is 8
> amixer sset 'PCM Right' 1 # left volume is 1
>

Thanks for the info.

Please find below the controls I have provided

static const char *pwm_mode_text[] = { "Binary", "Headphone", "Ternary",
         "Phase-shift"};

static const DECLARE_TLV_DB_SCALE(out_gain_tlv, -9150, 50, 0);
static const DECLARE_TLV_DB_SCALE(master_vol_tlv, -12750, 50, 0);
static const SOC_ENUM_SINGLE_DECL(pwm_src, STA529_FFXCFG1, 4, 
pwm_mode_text);

static const struct snd_kcontrol_new sta529_snd_controls[] = {
         SOC_DOUBLE_R_TLV("Digital Playback Volume", STA529_LVOL, 
STA529_RVOL, 0,
                         127, 0, out_gain_tlv),
         SOC_SINGLE_TLV("Master Playback Volume", STA529_MVOL, 0, 127, 1,
                         master_vol_tlv),
         SOC_ENUM("PWM Select", pwm_src),
};

So in our amixer output I am not getting any separate numid for 
left/right volume, so that user can control it.

Is there something I am missing in my code.


Best Regards
Rajeev

  reply	other threads:[~2012-09-20 10:40 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-09-20  7:56 Audio codec volume control Rajeev kumar
2012-09-20  9:58 ` Peter Ujfalusi
2012-09-20 10:08   ` Rajeev kumar
2012-09-20 10:19     ` Peter Ujfalusi
2012-09-20 10:39       ` Rajeev kumar [this message]
2012-09-20 10:46         ` Peter Ujfalusi

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=505AF279.9050906@st.com \
    --to=rajeev-dlh.kumar@st.com \
    --cc=alsa-devel@alsa-project.org \
    --cc=broonie@opensource.wolfsonmicro.com \
    --cc=peter.ujfalusi@ti.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.