[alsa-devel] RFC: reworking ASOC for large registers

Jon Smirl jonsmirl at gmail.com
Mon Jul 21 17:35:41 CEST 2008


These signatures need to change a lot:

/* codec register bit access */
int snd_soc_update_bits(struct snd_soc_codec *codec, unsigned short reg,
				unsigned short mask, unsigned short value);
int snd_soc_test_bits(struct snd_soc_codec *codec, unsigned short reg,
				unsigned short mask, unsigned short value);


Something like:
int snd_soc_update_bits(struct snd_soc_codec *codec, uint reg,
				uint mask, uint shift, u64 value);

shift is needed to shift the mask around for huge registers like 256
bits. For existing hardware it will always be zero. value has to go to
u64.

-- 
Jon Smirl
jonsmirl at gmail.com


More information about the Alsa-devel mailing list