summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorMark Brown <broonie@opensource.wolfsonmicro.com>2013-02-22 18:36:53 +0000
committerMark Brown <broonie@opensource.wolfsonmicro.com>2013-03-26 15:45:25 +0000
commitf607e31ce3963327f749b56c65dfec2642aa623c (patch)
tree162bbbdde8a4b108dd9399f244da51c207bdebd6 /include
parent03409071ce2751ca124f35edebe4bcad52de22c2 (diff)
downloadlinux-f607e31ce3963327f749b56c65dfec2642aa623c.tar.gz
linux-f607e31ce3963327f749b56c65dfec2642aa623c.tar.bz2
linux-f607e31ce3963327f749b56c65dfec2642aa623c.zip
ASoC: arizona: Fix interaction between headphone outputs and identification
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. Do the ASoC side of this by storing the enable state in the core driver structure and only writing to the device if a flag indicating that the accessory detection side is in a state where it can have the headphone output stage enabled. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Diffstat (limited to 'include')
-rw-r--r--include/linux/mfd/arizona/core.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/include/linux/mfd/arizona/core.h b/include/linux/mfd/arizona/core.h
index a710255528d7..cc281368dc55 100644
--- a/include/linux/mfd/arizona/core.h
+++ b/include/linux/mfd/arizona/core.h
@@ -100,6 +100,9 @@ struct arizona {
struct regmap_irq_chip_data *aod_irq_chip;
struct regmap_irq_chip_data *irq_chip;
+ bool hpdet_magic;
+ unsigned int hp_ena;
+
struct mutex clk_lock;
int clk32k_ref;