On Fri, Sep 14, 2012 at 04:57:37PM +0530, Ashish Chavan wrote: This looks like a good improvement, a few issues remain though:
> + /* DAC Routing control */ > + SOC_ENUM("DAC Left Select", da9055_dac_l_select), > + SOC_ENUM("DAC Right Select", da9055_dac_r_select), DAPM. This even says its a routing control... > + /* To select if MIC Bias powers MIC 1 or MIC 2 */ > + SOC_ENUM("Mic Bias Select", da9055_mic_bias_select), This would normally be something controlled by the board... what exactly is this doing? How does the MICBIAS relate to the microphone inputs? > + case SND_SOC_BIAS_STANDBY: > + if (codec->dapm.bias_level == SND_SOC_BIAS_OFF) { > + /* Enable VMID reference & master bias */ > + snd_soc_update_bits(codec, DA9055_REFERENCES, > + DA9055_VMID_EN | DA9055_BIAS_EN, > + DA9055_VMID_EN | DA9055_BIAS_EN); > + } > + regcache_sync(da9055->regmap); Doing the sync every time is very odd, why is it only done on transitions from _OFF? Given that there's no regulator support here it's also a bit surprising that you need to do a sync outside of system suspend... > + da9055->mclk_rate = 0; /* This will be set from set_sysclk() */ > + da9055->master = 0; /* This will be set from set_fmt() */ You use kzalloc... -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/