dae188c6092a3f085bf7fc335b6c0e0420d3dd8f |
|
06-Sep-2013 |
Mark Brown <broonie@linaro.org> |
mfd: wm8994: Remove unused irq_lock Since the conversion to regmap-irq irq_lock has been unused. Signed-off-by: Mark Brown <broonie@linaro.org> Signed-off-by: Lee Jones <lee.jones@linaro.org>
|
b5f90240e1ef0568a8c666da3c3be4c6a682c5a6 |
|
06-Sep-2013 |
Mark Brown <broonie@linaro.org> |
mfd: wm8994: Inline register I/O functions Since the register I/O functions are all simple wrappers for the regmap equivalents inline them to provide a small code size saving and an example of good practice. Signed-off-by: Mark Brown <broonie@linaro.org> Signed-off-by: Lee Jones <lee.jones@linaro.org>
|
7c8844481a1c16c10fa9be4ce95be5725aed6ce3 |
|
06-May-2013 |
Mark Brown <broonie@opensource.wolfsonmicro.com> |
mfd: wm8994: Emulate level triggered interrupts if required The interrupt controller on the wm8994 series of devices requires a level triggered parent. If one is not available but a GPIO is available for the interrupt then emulate. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
|
a8a8fc287dd7497b3adb2f2952513849ab6506eb |
|
08-Oct-2012 |
Mark Brown <broonie@opensource.wolfsonmicro.com> |
mfd: wm8994: Store platform data in device This is better style as platform data is supposed to be discardable after init (though hotplug usually prevents this) and will ease implementation of device tree property bindings. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Samuel Ortiz <sameo@linux.intel.com>
|
6550334f96ab02e540572a142d0851c7f3120585 |
|
13-May-2012 |
Mark Brown <broonie@opensource.wolfsonmicro.com> |
mfd: wm8994: Update to fully use irq_domain Take advantage of the new regmap irq_domain support to dynamically allocate interrupts, using regmap_irq_get_virq() rather than irq_base to look up the interrupts. This means that most users should not need to specify an irq_base at all. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Samuel Ortiz <sameo@linux.intel.com>
|
cc7a727941193e3e59be2e9f6522eb78bc7ee909 |
|
07-May-2012 |
Mark Brown <broonie@opensource.wolfsonmicro.com> |
mfd: Read CUST_ID from the wm8994 device Read CUST_ID from the device and log it for diagnostics. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
|
83051b7287e43241ccb6adaaa92615a87274898b |
|
01-Dec-2011 |
Mark Brown <broonie@opensource.wolfsonmicro.com> |
mfd: Add missing mutex.h inclusion to WM8994 core.h struct wm8994 includes a mutex so we need to include mutex.h before we declare it. All current users rely on this being done implicitly. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
|
8ab30691826fc05efa47c4ffba19b80496bb3a2c |
|
25-Oct-2011 |
Mark Brown <broonie@opensource.wolfsonmicro.com> |
mfd: Convert wm8994 to use generic regmap irq_chip Factor out the irq_chip implementation, substantially reducing the code size for the driver. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Samuel Ortiz <sameo@linux.intel.com>
|
7ed5849c2861faf9c13f027868f635bd782a50e5 |
|
01-Dec-2011 |
Mark Brown <broonie@opensource.wolfsonmicro.com> |
mfd: Mark WM1811 GPIO6 register volatile for later revisions For later chip revisions the WM1811 GPIO6 register is always volatile so store the device revision when initialising the driver and then check at runtime if we're running on a newer device. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Samuel Ortiz <sameo@linux.intel.com>
|
19f9557174d61fcfe132a6846a83c36437ff014e |
|
01-Dec-2011 |
Mark Brown <broonie@opensource.wolfsonmicro.com> |
mfd: Add missing mutex.h inclusion to WM8994 core.h struct wm8994 includes a mutex so we need to include mutex.h before we declare it. All current users rely on this being done implicitly. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Samuel Ortiz <sameo@linux.intel.com>
|
c3f1386171a100d27d9fb978f474a6a330888af5 |
|
25-Oct-2011 |
Mark Brown <broonie@opensource.wolfsonmicro.com> |
mfd: Enable register cache for wm8994 devices As part of this we provide information about the registers that exist in the device to the regmap core, drop the small amount of cache that the core had been using and let regmap do the sync. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Samuel Ortiz <sameo@linux.intel.com>
|
881de67046f424fc3a6e05b1c681c12afd94e802 |
|
22-Aug-2011 |
Mark Brown <broonie@opensource.wolfsonmicro.com> |
mfd: Allow WM8994 LDO enable pulls to be disabled In systems where the LDO enables are always driven (for example, being connected to an always on supply rail or a GPIO which is driven by the CPU even in suspend) then we can disable the pull downs on the LDO for a small power savings. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
|
b1f43bf3a52b085b786adf0b719712df574955f9 |
|
24-May-2011 |
Mark Brown <broonie@opensource.wolfsonmicro.com> |
mfd: Add WM1811 support The WM1811 is mostly register compatible with the WM8994 and WM8958, providing a high performance audio hub CODEC in a small form factor suitable for ultra compact system designs. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Samuel Ortiz <sameo@linux.intel.com>
|
d6c645fc00777a6f8a7df1f580065ec30c71be7b |
|
17-Jun-2011 |
Mark Brown <broonie@opensource.wolfsonmicro.com> |
mfd: Convert WM8994 to use new register map API Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Samuel Ortiz <sameo@linux.intel.com>
|
07e73fbb2d52434e6b61019326f35040357e8efb |
|
17-Mar-2011 |
Mark Brown <broonie@opensource.wolfsonmicro.com> |
mfd: Constify WM8994 write path Allow const buffers to be passed in without type safety issues. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
|
e93c53870c6d77c40de8981da238af947d6aa084 |
|
10-Mar-2011 |
Mark Brown <broonie@opensource.wolfsonmicro.com> |
mfd: Add WM8994 bulk register write operation Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
|
77bd70e9009eab6dbdef3ee08afe87ab26df8dac |
|
04-Feb-2011 |
Mark Brown <broonie@opensource.wolfsonmicro.com> |
mfd: Don't suspend WM8994 if the CODEC is not suspended ASoC supports keeping the audio subsysetm active over suspend in order to support use cases such as audio passthrough from a cellular modem with the main CPU suspended. Ensure that we don't power down the CODEC when this is happening by checking to see if VMID is up and skipping suspend and resume when it is. If the CODEC has suspended then it'll turn VMID off before the core suspend() gets called. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
|
559e0df6b3ffbc218a11bb9dada5320a217cb7a6 |
|
31-Aug-2010 |
Mark Brown <broonie@opensource.wolfsonmicro.com> |
mfd: Add initial WM8958 support The WM8958 is a derivative of the WM8994 which is register compatible with the addition of some extra features, mostly in the CODEC side. The major change visible at the MFD level is that rather than a single DBVDD supply we now have three separate DBVDDs so we must request and enable a different set of supplies. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Samuel Ortiz <sameo@linux.intel.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
|
c9fbf7e070bbf9cc7adc1420df87706c62cb04ed |
|
26-Mar-2010 |
Mark Brown <broonie@opensource.wolfsonmicro.com> |
mfd: Add WM8994 interrupt controller support The WM8994 has an interrupt controller which supports interrupts for both CODEC and GPIO portions of the chip. Support this using genirq, while allowing for systems that do not have an interrupt hooked up. Wrapper functions are provided for the IRQ request and free to simplify the code in consumer drivers when handling cases where IRQs are not set up. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Samuel Ortiz <sameo@linux.intel.com>
|
9e50108668a70a9927257298bd4e679300124420 |
|
29-Jan-2010 |
Mark Brown <broonie@opensource.wolfsonmicro.com> |
mfd: Add initial WM8994 support The WM8994 is a highly integrated ultra low power audio hub CODEC. Since it includes on-board regulators and GPIOs it is represented as a multi-function device, though the overwhelming majority of the functionality is provided by the ASoC CODEC driver. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
|