[alsa-devel] soft vol
Michel Benoit
murpme at gmail.com
Mon May 14 22:17:03 CEST 2007
> >
> > >From a printk in the soc driver:
> >
> > SNDRV_CTL_IOCTL_ELEM_READ is 0xc2c85512
> >
> > Is that correct?
>
> Right, it means that the struct is aligned differently on between
> user- and kernel-spaces.
>
> Could check the offset of each field, such as
>
> printk("id = %d\n", offsetof(struct snd_ctl_elem_value, id));
> printk("value = %d\n", offsetof(struct snd_ctl_elem_value, value));
> printk("tstamp = %d\n", offsetof(struct snd_ctl_elem_value, tstamp));
> printk("reserved = %d\n", offsetof(struct snd_ctl_elem_value, reserved));
>
> for both kernel and user-spaces? I guess either it's a difference of
> pointer alignment or time_spec definition.
>
>
The output from
printk("0x%x\n", SNDRV_CTL_IOCTL_ELEM_READ);
printk("id = %d\n", offsetof(struct snd_ctl_elem_value, id));
printk("value = %d\n", offsetof(struct snd_ctl_elem_value, value));
printk("tstamp = %d\n", offsetof(struct snd_ctl_elem_value, tstamp));
printk("reserved = %d\n", offsetof(struct snd_ctl_elem_value, reserved));
in the kernel driver is
0xc2c85512
id = 0
value = 72
tstamp = 584
reserved = 592
and in the pcm test program the ouput of
printk("0x%x\n", SNDRV_CTL_IOCTL_ELEM_READ);
is
0xc2c45512
What is the difference? Which version of alsa is used/expected in the kernel?
More information about the Alsa-devel
mailing list