[alsa-devel] [PATCH] Revert "ASoC: core: Try to use regmap if the driver doesn't set up any I/O"

Takashi Iwai tiwai at suse.de
Wed Aug 1 18:13:28 CEST 2012

At Wed, 1 Aug 2012 16:22:48 +0100,
Mark Brown wrote:
> On Wed, Aug 01, 2012 at 04:50:22PM +0300, Peter Ujfalusi wrote:
> > Some codec driver can not have regmap implementation so core should not
> > assume that codecs without control_data have implemented regmap of it's
> > own.
> > 
> > This reverts commit 38cbf9598feba97de9f9b43efa9153fd7c1a2ec9.
> No, this isn't constructive - it just shoves things onto the drivers
> that are relying on the implicit functionality.  Why not just change the
> criteria we use to check, for example looking for the ops instead?

Well, the NULL check of dev_get_regmap() looks necessary, but I find
it was done in a wrong place in Peter's first patch, too.
It could be rather in the caller side, e.g.

	/* If the driver didn't set I/O up try regmap */
	if (!codec->control_data) {
		codec->control_data = dev_get_regmap(codec->dev, NULL);
		if (codec->control_data)
			snd_soc_codec_set_cache_io(codec, 0, 0, SND_SOC_REGMAP);


More information about the Alsa-devel mailing list