Alsa-Devel Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Carlos Munoz <carlos@kenati.com>
To: Takashi Iwai <tiwai@suse.de>
Cc: Lee Revell <rlrevell@joe-job.com>,
	alsa-devel <alsa-devel@lists.sourceforge.net>
Subject: Re: snd_pcm_hw_params_get_period_size() returning 0
Date: Mon, 03 Apr 2006 10:46:34 -0700	[thread overview]
Message-ID: <44315F7A.7060208@kenati.com> (raw)
In-Reply-To: <s5hwte7arhb.wl%tiwai@suse.de>

Takashi Iwai wrote:

>At Fri, 31 Mar 2006 18:20:42 -0800,
>Carlos Munoz wrote:
>  
>
>>Lee Revell wrote:
>>
>>    
>>
>>>On Fri, 2006-03-31 at 17:00 -0800, Carlos Munoz wrote:
>>> 
>>>
>>>      
>>>
>>>>Does 
>>>>any one know why
>>>>snd_pcm_hw_params_get_period_size() would be returning 0 ? Is it 
>>>>something the driver did/didn't do ?
>>>>
>>>>   
>>>>
>>>>        
>>>>
>>>Argh, please disregard last message, that's not how the hw_params
>>>callback works :-(
>>>
>>>Lee
>>>
>>> 
>>>
>>>      
>>>
>>Hi Lee,
>>
>>I digged further and this is what I found.
>>
>>snd_pcm_hw_params_get_period_size(...., int *val) does retrieve the 
>>correct period size and updates val with it. However, val does not match 
>>the address passed to it. I mean the caller of 
>>snd_pcm_hw_params_get_period_size(.... 0x41becc) passes the address of 
>>where the period size is to be stored as 0x41becc but 
>>snd_pcm_hw_params_get_period_size() gets 0x7b83c0d8 and that's where it 
>>puts the period size.
>>
>>This is on the Renesas SH7343 processor. alsa-lib is a dynamic library. 
>>Should I expect the variable address be the same ?
>>    
>>
>
>No.  They must be different.  The value is stored to the original
>address only when no error returns.  Unless that, a temporary variable
>is used.  That's why you see two distinct addresses.
>
>
>Takashi
>
>
>  
>
Hi Takashi,

I understand what you are saying. However, this is not the case here. 
The original address is wrong. I print the value of val (not _val) 
passed to snd_pcm_hw_params_get_period_size() and it is wrong. See the code:

#ifndef DOXYGEN
int INTERNAL(snd_pcm_hw_params_get_period_size)(const 
snd_pcm_hw_params_t *params, snd_pcm_uframes_t *val, int *dir)
#else
int snd_pcm_hw_params_get_period_size(const snd_pcm_hw_params_t *params, 
snd_pcm_uframes_t *val, int *dir)
#endif
{
    unsigned int _val;
    printf("alsa-lib:snd_pcm_hw_params_get_period_size() - params=%p 
val=%p dir=%p\n",
           params, val, dir);
    int err = snd_pcm_hw_param_get(params, SND_PCM_HW_PARAM_PERIOD_SIZE, 
&_val, dir);
    if (err >= 0)
        *val = _val;

    return err;
}


This printf shows val has an incorrect value (dir is also incorrect). I 
don't think it's related to the alsa-lib but maybe a problem with our 
build tool chain.

Thanks,


Carlos Munoz


-------------------------------------------------------
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642

  reply	other threads:[~2006-04-03 17:46 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-04-01  1:00 snd_pcm_hw_params_get_period_size() returning 0 Carlos Munoz
2006-04-01  1:57 ` Lee Revell
2006-04-01  1:59 ` Lee Revell
2006-04-01  2:20   ` Carlos Munoz
2006-04-03 10:22     ` Takashi Iwai
2006-04-03 17:46       ` Carlos Munoz [this message]
2006-04-03 18:33         ` Takashi Iwai
2006-04-03 18:38           ` Jaroslav Kysela
2006-04-03 19:37             ` Carlos Munoz
2006-04-05 17:53               ` Carlos Munoz

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=44315F7A.7060208@kenati.com \
    --to=carlos@kenati.com \
    --cc=alsa-devel@lists.sourceforge.net \
    --cc=rlrevell@joe-job.com \
    --cc=tiwai@suse.de \
    /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