summaryrefslogtreecommitdiff
path: root/drivers/extcon
AgeCommit message (Collapse)Author
2014-06-23Revert "extcon: palmas: make aca detection platform dependent"Laxman Dewangan
This reverts commit aa55d35202b5895068bdf8eace842102bf134dab. Revert the change becasue it breaks the VUS and ID detection. With this change on some platforms, the VBUS and ID both are detected even only connnect the VBUS cable. This causes misbehaving of the drivers. bug 200013069 Change-Id: I8b10c9a7c1b0520c83118245a5e85c61e9777c81 Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com> Reviewed-on: http://git-master/r/424815 (cherry picked from commit 992d7b8c03b4787c4fa37a90804008eff4ce48b4) Reviewed-on: http://git-master/r/427032 GVS: Gerrit_Virtual_Submit
2014-06-04extcon: palmas: make aca detection platform dependentRakesh Bodla
Make ACA detection platform dependent. Also unset the mutually explosive property. Bug 200004368 Change-Id: I2bdd1008dc96debb29542cef0f6b7d4b801c6cd4 Signed-off-by: Rakesh Bodla <rbodla@nvidia.com> Reviewed-on: http://git-master/r/415127 (cherry picked from commit aa55d35202b5895068bdf8eace842102bf134dab) Reviewed-on: http://git-master/r/417467 Reviewed-by: Venkat Moganty <vmoganty@nvidia.com>
2013-10-15extcon: palmas: don't check line stateMallikarjun Kasoju
No need to check line state for getting cable state. Bug 1360804 Change-Id: Id1b591939f5aa931281cbb32336d3234d0b23c4a Signed-off-by: Mallikarjun Kasoju <mkasoju@nvidia.com> Reviewed-on: http://git-master/r/299294 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Venu Byravarasu <vbyravarasu@nvidia.com>
2013-10-03extcon: palmas: fix spelling/grammarEdgardo Handal
Change-Id: I4e1299142c4a7110869820096d10231f359ace90 Signed-off-by: Edgardo Handal <ehandal@nvidia.com> Reviewed-on: http://git-master/r/280787 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com> (cherry picked from commit 7f1eecb65a1ec15a48a2ab50b27d78ae5df5d740) Signed-off-by: Ajay Nandakumar <anandakumarm@nvidia.com>
2013-10-03extcon: palmas: add extcon connection name property for DTLaxman Dewangan
Add property to set the extcon connection name so that the name can be configure from DT. Change-Id: Ifdee07cb60d2e29a764eea31989954ca5f4e2300 Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com> Reviewed-on: http://git-master/r/279285 (cherry picked from commit ed979fecab6c4edfe2d3eb8452aee029f6c3e580) Signed-off-by: Ajay Nandakumar <anandakumarm@nvidia.com>
2013-09-26extcon: palmas: fix compile warning on constPhilip Rakity
Change-Id: Ifa94530982b6817f761ec991de87b43c1634b954 Signed-off-by: Philip Rakity <prakity@nvidia.com> Reviewed-on: http://git-master/r/272032 Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com> Tested-by: Laxman Dewangan <ldewangan@nvidia.com>
2013-09-16extcon: palmas: confirm cable state with line stateLaxman Dewangan
It is observed that USB sub module of the Palmas device does not show the correct cable state of USB-ID and but line state of the ID line shows correct state. Hence before updating the cable state, reconfirm it based on line state register. bug 1367328 bug 1367205 Change-Id: I16975eaf76038c3a2b9f378b0e1e1081f01eb229 Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com> Reviewed-on: http://git-master/r/273836 GVS: Gerrit_Virtual_Submit
2013-09-14extcon: palmas: add support for ACA detectionLaxman Dewangan
To support the ACA detection as per BC1.1, add cable detection for ID-Ra, ID-Rb and ID-Rc. The normal host and device cable detection is still supported. bug 1188954 Change-Id: If7b220f40faf601e2863e0623832612453d36374 Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com> Reviewed-on: http://git-master/r/268972
2013-09-14extcon: palmas: add DT support for plamas-extcon driverLaxman Dewangan
Add DT support for palmas extcon driver by integrating the mainline driver. Change-Id: Ie25dcac0426eb39a71f5f922a7831b9b2fd443fe Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com> Reviewed-on: http://git-master/r/268024
2013-09-14palmas: obtain IRQ from palmas_irq_get_virqAjay Nandakumar
obtain interrupts through palmas_irq_get_virq instead of platform_get_irq for MFD palmas drivers. Change-Id: I66791b6adcb2c7f365d5b90d7b76c6d3ad66c8c6 Signed-off-by: Ajay Nandakumar <anandakumarm@nvidia.com> Reviewed-on: http://git-master/r/267068 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com> Reviewed-by: Dan Willemsen <dwillemsen@nvidia.com>
2013-09-14extcon: palmas: remove duplicate ID state update codeYunfan Zhang
Remove the duplicate and incorrect code in vbus cable update Change-Id: I59b7b742681b276ace4f902a3b7360f092be5d5c Signed-off-by: Yunfan Zhang <yunfanz@nvidia.com> Reviewed-on: http://git-master/r/247020 (cherry picked from commit 7f1cf8a10713b42cf2725b8b6d733c83d3c60401) Reviewed-on: http://git-master/r/247732 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
2013-09-14extcon: max77665: remove deprecated macrosShridhar Rasal
__devinit, __devexit are deprecared from K3.4 and above. Remove usage from driver. bug 1351841 Change-Id: Ib0227a07c12c6c24c42400e7c23d0d39a543cdbd Signed-off-by: Shridhar Rasal <srasal@nvidia.com> Reviewed-on: http://git-master/r/264277 Reviewed-by: Automatic_Commit_Validation_User
2013-09-14fixup: remove __dev*Dan Willemsen
2013-09-14extcon: max77665: add wakeup supportLaxman Dewangan
Add wakeup capability on the USB plugin/plugout. The wakeup functionality can be choose through sysfs interface. bug 1272636 Change-Id: I04c6114ad36ac64e6d64aa86163cb809e1422eea Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com> Reviewed-on: http://git-master/r/221070 (Cherrypicked commit from 82f215ae1f99a14cd879769946778a9fca807fef) Reviewed-on: http://git-master/r/226740
2013-09-14extcon:max77765 Make resume faster - do debug messagesPhilip Rakity
do not print out debug messages. use dev_dbg rather then dev_info Change-Id: I041a74fa6306eb7c72e65525c88c474d5d08c61d Signed-off-by: Philip Rakity <prakity@nvidia.com> (cherry picked from commit bcafc0db8eae7758429cb38c3f536b716ab8c671) Reviewed-on: http://git-master/r/224270 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com> Tested-by: Laxman Dewangan <ldewangan@nvidia.com>
2013-09-14extcon: max77665: Update cable status in resumeMallikarjun Kasoju
Update cable status in resume bug 1266947 Change-Id: Iea0ee17091beb24143cfaba67cb4ea9f3e9f2937 Signed-off-by: Mallikarjun Kasoju <mkasoju@nvidia.com> Reviewed-on: http://git-master/r/218254 (cherry picked from commit 8056cf8be7552cfc5ca087b076b887f0dfe7dd76) Reviewed-on: http://git-master/r/222401 Reviewed-by: Automatic_Commit_Validation_User GVS: Gerrit_Virtual_Submit Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
2013-09-14extcon: max77665: fix supported cable nameMallikarjun Kasoju
Supported cable name array index was wrong. Corrected it. bug 1227226 Change-Id: Ie03a3af220535323d2f76d895f1bd7faba418d0c Signed-off-by: Mallikarjun Kasoju <mkasoju@nvidia.com> Reviewed-on: http://git-master/r/216103 (cherry picked from commit b637e338a70a06a98b47bae1b122dff23fec646b) Reviewed-on: http://git-master/r/222400 Reviewed-by: Automatic_Commit_Validation_User GVS: Gerrit_Virtual_Submit Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
2013-09-14extcon: max77665: fix the USB host detection interrupt issueLaxman Dewangan
Following are changes: - Enable host cable interrupt detection. - interrupt number through platform resource. - ext connection name through platform data. - remove unused code for simiplicity. bug 1227226 Change-Id: I85791f8091e524d8de1f8848b5f3bfa933720eae Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com> Reviewed-on: http://git-master/r/215059 Reviewed-by: Diwakar Tundlam <dtundlam@nvidia.com> (cherry picked from commit a62e5096b6a53f0dade01981afad45e630ebd4a7) Signed-off-by: Mallikarjun Kasoju <mkasoju@nvidia.com> Change-Id: I0bbea8ffceec8585472b47974c41889c8a442785 Reviewed-on: http://git-master/r/222398 GVS: Gerrit_Virtual_Submit Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
2013-09-14extcon: palmas: Remove duplicate interrupt requestSumit Sharma
Remove duplicate irq request in extcon driver Bug 1267769 Change-Id: I47e0e22bd1f222e5f5e4cedc64751fa880089fd9 Signed-off-by: Sumit Sharma <sumsharma@nvidia.com> Reviewed-on: http://git-master/r/217284 Reviewed-by: Bitan Biswas <bbiswas@nvidia.com> Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com> Reviewed-by: Sachin Nikam <snikam@nvidia.com> GVS: Gerrit_Virtual_Submit
2013-09-14extcon: palmas: make vbus/ID cable detection to platform choiceLaxman Dewangan
Enable vbus/id pin detection only if it is enabled through platform data. Also provide the connection name through platform data. bug 1242273 Bug 1249130 Bug 1249783 Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com> Reviewed-on: http://git-master/r/212609 (Cherry picked from commit de31f6b38ea1a96fb99c8f72db7029f23d693fb2) Change-Id: I06dbedb0462e77ef05a42b164b9d457254ed47e7 Signed-off-by: Sumit Sharma <sumsharma@nvidia.com> Reviewed-on: http://git-master/r/214920 Reviewed-by: Bitan Biswas <bbiswas@nvidia.com>
2013-09-14extcon: palmas: add support for ID pin detectionLaxman Dewangan
Add support for the ID pin detection through interrupt and notification through extcon framework. bug 1242273 Bug 1249783 Bug 1249130 Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com> Reviewed-on: http://git-master/r/204502 (cherry picked from commit e833ce3a44d057638d157103b6bf76b13558033d) Change-Id: Ied2f57119483c134beee102368476cd4350da077 Signed-off-by: Sumit Sharma <sumsharma@nvidia.com> Reviewed-on: http://git-master/r/214919 Reviewed-by: Bitan Biswas <bbiswas@nvidia.com>
2013-09-14extcon: palma: add vbus detection through extcon notificationLaxman Dewangan
Add VBUS detection on palmas and notify the state through extcon framework. Bug 1238096 Change-Id: Ic5bb577aa66330e93b909df7dfc297aaf55fa0e6 Signed-off-by: Mallikarjun Kasoju <mkasoju@nvidia.com> Reviewed-on: http://git-master/r/203655 (cherry picked from commit b5e45af19fd91e8c54c17c1f21deee0afb8d6fd4) Reviewed-on: http://git-master/r/204692 (cherry picked from commit 222d6e830ab6bb3253d18066ba5dc6f820d7a040) Reviewed-on: http://git-master/r/206549 Reviewed-by: Automatic_Commit_Validation_User Tested-by: Seema Khowala <seemaj@nvidia.com> Reviewed-by: Bitan Biswas <bbiswas@nvidia.com>
2013-09-14extcon: rename switch class to "switch_extcon"Laxman Dewangan
Rename switch class to "switch_extcon" as it conflicts with already created name. Change-Id: I5c6387fa9176ed1152034fd0ce8450787a0b882a Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com> Reviewed-on: http://git-master/r/194457 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Bitan Biswas <bbiswas@nvidia.com> GVS: Gerrit_Virtual_Submit
2013-09-14driver: max77665: fix multiple issues in charger driverSyed Rafiuddin
- fix probe issue. - differentiate between E1236 and E1587 - use late_initcall - init charger values correctly Change-Id: Iab11261dab084bd707dcd9d24d236d3c1b438b0e Signed-off-by: Syed Rafiuddin <srafiuddin@nvidia.com> Reviewed-on: http://git-master/r/135174 (cherry picked from commit 7360d8753133ef15cd59264fd02613c42cacbd93) Signed-off-by: Gaurav Batra <gbatra@nvidia.com> Reviewed-on: http://git-master/r/146695 Reviewed-by: Simone Willett <swillett@nvidia.com> Tested-by: Simone Willett <swillett@nvidia.com> Rebase-Id: Rb164179f576d0100652db9ef1c2c9ae8adb0dca7
2013-09-14drivers: extcon: add max77665 muic driverSyed Rafiuddin
MAX77665 support muic feature. Addition of driver to support this feature. Change-Id: Ifd0c934d2ab457e511c0a2cd1d312dba6afe8a89 Signed-off-by: Syed Rafiuddin <srafiuddin@nvidia.com> Reviewed-on: http://git-master/r/130618 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com> Rebase-Id: Re591631e06e8381db0f310b26653254a083b2b65
2013-05-09Merge tag 'gpio-for-linus' of git://git.secretlab.ca/git/linuxLinus Torvalds
Pull removal of GENERIC_GPIO from Grant Likely: "GENERIC_GPIO now synonymous with GPIOLIB. There are no longer any valid cases for enableing GENERIC_GPIO without GPIOLIB, even though it is possible to do so which has been causing confusion and breakage. This branch does the work to completely eliminate GENERIC_GPIO." * tag 'gpio-for-linus' of git://git.secretlab.ca/git/linux: gpio: update gpio Chinese documentation Remove GENERIC_GPIO config option Convert selectors of GENERIC_GPIO to GPIOLIB blackfin: force use of gpiolib m68k: coldfire: use gpiolib mips: pnx833x: remove requirement for GENERIC_GPIO openrisc: default GENERIC_GPIO to false avr32: default GENERIC_GPIO to false xtensa: remove explicit selection of GENERIC_GPIO sh: replace CONFIG_GENERIC_GPIO by CONFIG_GPIOLIB powerpc: remove redundant GENERIC_GPIO selection unicore32: default GENERIC_GPIO to false unicore32: remove unneeded select GENERIC_GPIO arm: plat-orion: use GPIO driver on CONFIG_GPIOLIB arm: remove redundant GENERIC_GPIO selection mips: alchemy: require gpiolib mips: txx9: change GENERIC_GPIO to GPIOLIB mips: loongson: use GPIO driver on CONFIG_GPIOLIB mips: remove redundant GENERIC_GPIO select
2013-04-16Convert selectors of GENERIC_GPIO to GPIOLIBAlexandre Courbot
GENERIC_GPIO is now equivalent to GPIOLIB and features that depended on GENERIC_GPIO can now depend on GPIOLIB to allow removal of this option. Signed-off-by: Alexandre Courbot <acourbot@nvidia.com> Acked-by: Linus Walleij <linus.walleij@linaro.org> Acked-by: Grant Likely <grant.likely@secretlab.ca>
2013-04-08Merge tag 'extcon-for-3.10' of ↵Greg Kroah-Hartman
git://git.kernel.org/pub/scm/linux/kernel/git/chanwoo/extcon into char-misc-next Chanwoo writes: This is small fixes for extcon driver. MAX77693 extcon driver - Add 'static' keryword to internal data structure - Fix return value using 'ret' instead of hardcoding MAX8997 extcon driver - Use dev_err() instead of pr_err() - Fix return value using 'ret' instead of hardcoding
2013-04-09extcon: max8997: Fix return valueSachin Kamat
Return the value obtained from the function instead of hardcoding. Fixes the following warnings: drivers/extcon/extcon-max8997.c:235 max8997_muic_set_path() info: why not propagate 'ret' from max8997_update_reg() instead of (-11)? drivers/extcon/extcon-max8997.c:248 max8997_muic_set_path() info: why not propagate 'ret' from max8997_update_reg() instead of (-11)? Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org> Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com> Signed-off-by: Myungjoo Ham <myungjoo.ham@samsung.com>
2013-04-09extcon: max77693: Fix return valueSachin Kamat
Return the value obtained from the function instead of hardcoding. Silences the following warnings: drivers/extcon/extcon-max77693.c:297 max77693_muic_set_path() info: why not propagate 'ret' from max77693_update_reg() instead of (-11)? drivers/extcon/extcon-max77693.c:310 max77693_muic_set_path() info: why not propagate 'ret' from max77693_update_reg() instead of (-11)? Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org> Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com> Signed-off-by: Myungjoo Ham <myungjoo.ham@samsung.com>
2013-04-09extcon: max8997: use dev_err() instead of pr_err()Jingoo Han
dev_err() is more preferred than pr_err(). Signed-off-by: Jingoo Han <jg1.han@samsung.com> Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com> Signed-off-by: Myungjoo Ham <myungjoo.ham@samsung.com>
2013-04-09extcon: max77693: Staticize default_init_dataSachin Kamat
Commit 0ec83bd246 ("extcon: max77693: Initialize register of MUIC device to bring up it without platform data") added this structure but forgot to make it static. Without this patch we get the following warning: drivers/extcon/extcon-max77693.c:41:26: warning: symbol 'default_init_data' was not declared. Should it be static? Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org> Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com> Signed-off-by: Myungjoo Ham <myungjoo.ham@samsung.com>
2013-04-03Merge tag 'extcon-arizona-v3.10' of ↵Greg Kroah-Hartman
git://git.kernel.org/pub/scm/linux/kernel/git/broonie/misc into char-misc-next Mark writes: extcon: arizona: Updates for v3.10 There's a bunch of different things in this series, I can split them out if need be: - Support for configuring the button detection circuit to reflect the accessories supplied with the system. - Improvements in the HPDET based detection scheme. - Additional robustness against more pathological use cases. - A few small standalone fixes.
2013-04-02extcon: arizona: Make mic detection timeout configurableMark Brown
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2013-04-02extcon: arizona: Allow additional debounce during microphone detectionMark Brown
Help mitigate against mechanical bounce during the initial detection by allowing the configuration of an additional debounce on top of that the hardware does during the initial phase of microphone detection operation. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2013-04-02extcon: arizona: Clear existing button reports before reporting new oneMark Brown
If the user moves directly from one button to another then we won't get a no buttons pressed event and will therefore end up reporting that two buttons are simultaneously pressed which isn't supported by the hardware. Make sure we clear any existing button reports before reporting any new ones. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2013-04-02extcon: arizona: Time out if MICDET fails to reportMark Brown
In pathological cases the microphone detection may fail to report, for example due to a failure to get a stable measurement. Provide a timeout to cover such cases. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2013-04-02extcon: arizona: Simplify HPDET based identificationMark Brown
Rather than measuring both HP channels we can simply directly measure the microphone impedance and then rely on MICDET for final confirmation of the presence of a suitable microphone. This improves the overall performance of the identification process. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2013-04-02extcon: arizona: Don't ground flip when using HPDET identificationMark Brown
This extra check makes the procedure take longer and is of marginal use in identification so do not execute it. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2013-04-02extcon: arizona: Retry HPDET identification for high impedanceMark Brown
Sometimes we can trigger measurements early if contacts are shorted during a slow insertion. As well as debouncing add further robustness by retrying if we get a high impedance measurement for headphones as this can indicate that the headphones were not yet connected. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2013-04-02extcon: arizona: Tune up HPDET debounceMark Brown
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2013-04-02extcon: arizona: Check we report a valid impedanceCharles Keepax
Occasionally we can trigger an interrupt before we have completed impedance measurement, although the valid bit will still be set. This patch spins reading the impedance value until a valid value is seen. Signed-off-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2013-04-02extcon: arizona: Suppress duplicate JACKDET reportsMark Brown
In cases where we see a brief (dis)connection of the jack detection signals we may see a noop jack insertion or removal where the jack has returned to the original state by the time the interrupt is serviced. Suppress these events in order to save work and avoid confusing the rest of the code. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2013-04-02extcon: arizona: Raise minimum microphone impedance for HPDET methodMark Brown
Ensure greater reliability by increasing the minimum threashold for identifying a microphone. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2013-04-02extcon: arizona: Allow pull to be disabled on GPIO5 when used for JACKETMark Brown
In some designs an external pull won't be needed. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2013-04-02extcon: arizona: Don't pulse MICBIAS for HPDET identificationMark Brown
There is no need to do this as HPDET identification will cause MICBIAS to be powered down again. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2013-04-02extcon: arizona: Allow configuration of button detectionMark Brown
The Arizona button detection circuit is configurable, allowing the system integrator to program a range of thresholds for the buttons supported on the accessory but currently the driver uses the default button ranges and does not provide any flexibility in how this is exposed to the application layer. Provide platform data allowing the user to control this and to map the buttons to keys in the input subsystem. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2013-04-01extcon: arizona: Attempt more microphone measurementsMark Brown
In some pathological use cases users may insert an accessory very slowly causing multiple indeterminate measurements. Handle this by retrying many measurements before we give up and declare a headphone. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2013-03-26Merge branch 'char-misc-linus' into char-misc-nextGreg Kroah-Hartman
This picks up the MEI fixes that we need in this branch now. Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2013-03-26extcon: arizona: Fix interaction between headphone outputs and identificationMark Brown
Running HPDET while the headphone outputs are enabled can disrupt the operation of HPDET. In order to avoid this HPDET needs to disable the headphone outputs and ASoC needs to not enable them while HPDET is running. For extcon instead of checking if the headphone output is enabled when doing magic application unconditionally disable the output and restore the state which ASoC wants set when undoing the magic. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>