On Thu, Aug 29, 2013 at 10:02:47AM +0200, Lars-Peter Clausen wrote:
On 08/28/2013 07:24 PM, Mark Brown wrote:
Not a requirement and perhaps it has no effect but these seem like they ought to integrate with the bias level configuration - since only the clocks seem to be managed by set_bias_level() the driver could presumably save a bit of power by dropping down to the minimal power consumption bias while the device is idle. This is what the STANDBY to ON transition is all about.
Hm, I'm not sure if it makes a difference since all the components have individual power control bits that are managed by DAPM. I would expect the bias current setting to only make a difference if the component is actually powered up. I'll check with the designers, but I think this can still be improved later on if it turns out that it saves power.
Given that the device has non-capless headphone outputs I'd expect there's something being maintained normally, though it's possible that it's still ground referenced.
+static const struct snd_kcontrol_new adau1761_jack_detect_controls[] = {
- SOC_SINGLE("Jack Detect Switch", ADAU1761_DIGMIC_JACKDETECT, 4, 1, 0),
+};
Why is this a user visible control and not using the jack detection framework support?
The CODEC unfortunately does not support reporting the jack state. All it can do is mute the speaker output in hardware if something is plugged into the headphone jack. The switch allows the users to control whether the output should be auto-muted or not.
In that case it should be called something like "Speaker Automute Switch" or similar. It's a bit unfortuante that there's not even any readback for the function.