mfd: Support multiple active WM831x AUXADC conversions
authorMark Brown <broonie@opensource.wolfsonmicro.com>
Tue, 7 Jun 2011 10:47:28 +0000 (11:47 +0100)
committerSamuel Ortiz <sameo@linux.intel.com>
Sun, 31 Jul 2011 21:28:20 +0000 (23:28 +0200)
commit78bb3688ea1830672b8095fb6388593f582cd591
tree06e10d5acd11ae3a2235d05fdf82880b0b40371a
parenta2495bc727e2dd8421fb85c80e38f9a4a4c1e58e
mfd: Support multiple active WM831x AUXADC conversions

The WM831x AUXADC hardware can schedule multiple conversions at once,
allowing higher performance when more than one source is in use as we
can have the hardware start new conversions without having to wait for
a register write.

Take advantage of this in the interrupt driven case, maintaining a list of
callers that are waiting for AUXADC conversions and completing them all
simultaneously. The external interface of the AUXADC is not changed so
there will be limited use of the feature immediately.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
drivers/mfd/wm831x-auxadc.c
include/linux/mfd/wm831x/core.h