
On Thu, 2011-08-11 at 12:11 +0200, Lars-Peter Clausen wrote:
- SOC_ENUM("Lineout1 Mono Stereo", adau1373_lineout1_mode_enum),
- SOC_ENUM("Speaker Mono Stereo", adau1373_speaker_mode_enum),
I'd expect these to be platform data/machine data rather than user control? The speaker wiring isn't going to vary dynamically...
You still might want to switch, for whatever particular reason, between mono and stereo at runtime.
Sorry, what does this actually control? I guess I've been mislead but from the name of the control I'd expect it to control if the outputs were physically connected as mono or stereo outputs.
- switch (freq / params_rate(params)) {
- case 1024: /* fs */
div = 0;
break;
- case 1536: /* 2/3 fs */
div = 1;
break;
These comments look inaccuate, fs is the sample rate so a divide of 1 would be fs.
div contains the register value representation of that particular divider.
div isn't the issue here. The comments seem to indicate that the result of the divisions are some multiple of fs but fs usually means some multiple of the sample rate. For example 2/3fs for 44.1kHz would be 29.4kHz.