26 Jul
2012
26 Jul
'12
1:38 p.m.
On 26/07/12 12:32, Mark Brown wrote:
On Thu, Jul 26, 2012 at 11:28:40AM +0100, Lee Jones wrote:
@@ -52,10 +52,13 @@ static unsigned int hw_read(struct snd_soc_codec *codec, unsigned int reg) if (codec->cache_only) return -1;
ret = regmap_read(codec->control_data, reg, &val);
if (ret == 0)
return val;
else
if (codec->using_regmap) {
ret = regmap_read(codec->control_data, reg, &val);
if (ret == 0)
return val;
else
return -1;
} else
No, this makes no sense. There is no non-regmap I/O support in soc-io, anything using the soc-io hw_read() function must be using regmap.
case SND_SOC_REGMAP: /* Device has made its own regmap arrangements */
codec->using_regmap = true;
Again, this makes no sense. If we're explicitly being asked to use regmap then we should be using regmap or just failing to set up I/O (which is obviously a catastrophic failure).
How much work is there involved in regmap:ing a device, so that dev_get_regmap() doesn't fail?
--
Lee Jones
Linaro ST-Ericsson Landing Team Lead
Linaro.org │ Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog