[alsa-devel] [PATCH] ASoC: core: Pass kcontrol pointer to bytes tlv callbacks

Mark Brown broonie at kernel.org
Fri Jun 12 13:22:07 CEST 2015


On Wed, Jun 03, 2015 at 02:10:28PM -0700, Ben Zhang wrote:
> On Wed, Jun 3, 2015 at 4:59 AM, Mark Brown <broonie at kernel.org> wrote:
> > On Tue, Jun 02, 2015 at 03:24:03PM -0700, Ben Zhang wrote:

> >> -     int (*get)(unsigned int __user *bytes, unsigned int size);
> >> -     int (*put)(const unsigned int __user *bytes, unsigned int size);
> >> +     int (*get)(struct snd_kcontrol *kcontrol,
> >> +                unsigned int __user *bytes, unsigned int size);
> >> +     int (*put)(struct snd_kcontrol *kcontrol,
> >> +                const unsigned int __user *bytes, unsigned int size);

> > This doesn't update any users and we do have some like the Haswell PCM
> > driver.

> I couldn't find any existing users of the callbacks. It looks like the
> modified callbacks are used by SND_SOC_BYTES_TLV only, and there is no
> reference to SND_SOC_BYTES_TLV in the kernel.

> The Haswell PCM driver uses SND_SOC_BYTES_EXT which doesn't use the
> callbacks in struct soc_bytes_ext. The xhandler_get/put are assigned
> to snd_kcontrol_new.get/put instead.

This then begs the question why the fix isn't for the TLV version to use
the same callbacks we're currently using?  It's not obvious looking at
the definitions of the controls why we would want them to be using
separate ones and TLV would normally not affect the I/O.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 473 bytes
Desc: Digital signature
URL: <http://mailman.alsa-project.org/pipermail/alsa-devel/attachments/20150612/176f2d7a/attachment.sig>


More information about the Alsa-devel mailing list