diff options
author | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2013-01-10 18:55:36 -0500 |
---|---|---|
committer | Chanwoo Choi <cw00.choi@samsung.com> | 2013-01-15 01:42:17 -0500 |
commit | dab63eb25ced7539a51b8f4218f7b6b56d34df22 (patch) | |
tree | 1f97a0380d70d4207b57a2d2987f3ce18ebc9586 /include/linux/mfd | |
parent | b17e54625cff1b06aec9df505b46c9bcdcd4823d (diff) |
extcon: arizona: Use microphone clamp function if available
Newer Arizona devices include a microphone clamp function which is tied to
jack detect. Activate this feature when present in order to ensure best
performance of the subsystem.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
Signed-off-by: Myungjoo Ham <myungjoo.ham@samsung.com>
Diffstat (limited to 'include/linux/mfd')
-rw-r--r-- | include/linux/mfd/arizona/core.h | 4 | ||||
-rw-r--r-- | include/linux/mfd/arizona/registers.h | 28 |
2 files changed, 31 insertions, 1 deletions
diff --git a/include/linux/mfd/arizona/core.h b/include/linux/mfd/arizona/core.h index a580363a7d29..a710255528d7 100644 --- a/include/linux/mfd/arizona/core.h +++ b/include/linux/mfd/arizona/core.h | |||
@@ -75,8 +75,10 @@ enum arizona_type { | |||
75 | #define ARIZONA_IRQ_DCS_HP_DONE 47 | 75 | #define ARIZONA_IRQ_DCS_HP_DONE 47 |
76 | #define ARIZONA_IRQ_FLL2_CLOCK_OK 48 | 76 | #define ARIZONA_IRQ_FLL2_CLOCK_OK 48 |
77 | #define ARIZONA_IRQ_FLL1_CLOCK_OK 49 | 77 | #define ARIZONA_IRQ_FLL1_CLOCK_OK 49 |
78 | #define ARIZONA_IRQ_MICD_CLAMP_RISE 50 | ||
79 | #define ARIZONA_IRQ_MICD_CLAMP_FALL 51 | ||
78 | 80 | ||
79 | #define ARIZONA_NUM_IRQ 50 | 81 | #define ARIZONA_NUM_IRQ 52 |
80 | 82 | ||
81 | struct snd_soc_dapm_context; | 83 | struct snd_soc_dapm_context; |
82 | 84 | ||
diff --git a/include/linux/mfd/arizona/registers.h b/include/linux/mfd/arizona/registers.h index 1f6fe31a4d5c..f3211f06cec6 100644 --- a/include/linux/mfd/arizona/registers.h +++ b/include/linux/mfd/arizona/registers.h | |||
@@ -119,6 +119,7 @@ | |||
119 | #define ARIZONA_ACCESSORY_DETECT_MODE_1 0x293 | 119 | #define ARIZONA_ACCESSORY_DETECT_MODE_1 0x293 |
120 | #define ARIZONA_HEADPHONE_DETECT_1 0x29B | 120 | #define ARIZONA_HEADPHONE_DETECT_1 0x29B |
121 | #define ARIZONA_HEADPHONE_DETECT_2 0x29C | 121 | #define ARIZONA_HEADPHONE_DETECT_2 0x29C |
122 | #define ARIZONA_MICD_CLAMP_CONTROL 0x2A2 | ||
122 | #define ARIZONA_MIC_DETECT_1 0x2A3 | 123 | #define ARIZONA_MIC_DETECT_1 0x2A3 |
123 | #define ARIZONA_MIC_DETECT_2 0x2A4 | 124 | #define ARIZONA_MIC_DETECT_2 0x2A4 |
124 | #define ARIZONA_MIC_DETECT_3 0x2A5 | 125 | #define ARIZONA_MIC_DETECT_3 0x2A5 |
@@ -2070,6 +2071,13 @@ | |||
2070 | #define ARIZONA_HP_LVL_WIDTH 7 /* HP_LVL - [6:0] */ | 2071 | #define ARIZONA_HP_LVL_WIDTH 7 /* HP_LVL - [6:0] */ |
2071 | 2072 | ||
2072 | /* | 2073 | /* |
2074 | * R674 (0x2A2) - MICD clamp control | ||
2075 | */ | ||
2076 | #define ARIZONA_MICD_CLAMP_MODE_MASK 0x000F /* MICD_CLAMP_MODE - [3:0] */ | ||
2077 | #define ARIZONA_MICD_CLAMP_MODE_SHIFT 0 /* MICD_CLAMP_MODE - [3:0] */ | ||
2078 | #define ARIZONA_MICD_CLAMP_MODE_WIDTH 4 /* MICD_CLAMP_MODE - [3:0] */ | ||
2079 | |||
2080 | /* | ||
2073 | * R675 (0x2A3) - Mic Detect 1 | 2081 | * R675 (0x2A3) - Mic Detect 1 |
2074 | */ | 2082 | */ |
2075 | #define ARIZONA_MICD_BIAS_STARTTIME_MASK 0xF000 /* MICD_BIAS_STARTTIME - [15:12] */ | 2083 | #define ARIZONA_MICD_BIAS_STARTTIME_MASK 0xF000 /* MICD_BIAS_STARTTIME - [15:12] */ |
@@ -5267,6 +5275,12 @@ | |||
5267 | /* | 5275 | /* |
5268 | * R3409 (0xD51) - AOD IRQ1 | 5276 | * R3409 (0xD51) - AOD IRQ1 |
5269 | */ | 5277 | */ |
5278 | #define ARIZONA_MICD_CLAMP_FALL_EINT1 0x0080 /* MICD_CLAMP_FALL_EINT1 */ | ||
5279 | #define ARIZONA_MICD_CLAMP_FALL_EINT1_MASK 0x0080 /* MICD_CLAMP_FALL_EINT1 */ | ||
5280 | #define ARIZONA_MICD_CLAMP_FALL_EINT1_SHIFT 7 /* MICD_CLAMP_FALL_EINT1 */ | ||
5281 | #define ARIZONA_MICD_CLAMP_RISE_EINT1 0x0040 /* MICD_CLAMP_RISE_EINT1 */ | ||
5282 | #define ARIZONA_MICD_CLAMP_RISE_EINT1_MASK 0x0040 /* MICD_CLAMP_RISE_EINT1 */ | ||
5283 | #define ARIZONA_MICD_CLAMP_RISE_EINT1_SHIFT 6 /* MICD_CLAMP_RISE_EINT1 */ | ||
5270 | #define ARIZONA_GP5_FALL_EINT1 0x0020 /* GP5_FALL_EINT1 */ | 5284 | #define ARIZONA_GP5_FALL_EINT1 0x0020 /* GP5_FALL_EINT1 */ |
5271 | #define ARIZONA_GP5_FALL_EINT1_MASK 0x0020 /* GP5_FALL_EINT1 */ | 5285 | #define ARIZONA_GP5_FALL_EINT1_MASK 0x0020 /* GP5_FALL_EINT1 */ |
5272 | #define ARIZONA_GP5_FALL_EINT1_SHIFT 5 /* GP5_FALL_EINT1 */ | 5286 | #define ARIZONA_GP5_FALL_EINT1_SHIFT 5 /* GP5_FALL_EINT1 */ |
@@ -5295,6 +5309,12 @@ | |||
5295 | /* | 5309 | /* |
5296 | * R3410 (0xD52) - AOD IRQ2 | 5310 | * R3410 (0xD52) - AOD IRQ2 |
5297 | */ | 5311 | */ |
5312 | #define ARIZONA_MICD_CLAMP_FALL_EINT2 0x0080 /* MICD_CLAMP_FALL_EINT2 */ | ||
5313 | #define ARIZONA_MICD_CLAMP_FALL_EINT2_MASK 0x0080 /* MICD_CLAMP_FALL_EINT2 */ | ||
5314 | #define ARIZONA_MICD_CLAMP_FALL_EINT2_SHIFT 7 /* MICD_CLAMP_FALL_EINT2 */ | ||
5315 | #define ARIZONA_MICD_CLAMP_RISE_EINT2 0x0040 /* MICD_CLAMP_RISE_EINT2 */ | ||
5316 | #define ARIZONA_MICD_CLAMP_RISE_EINT2_MASK 0x0040 /* MICD_CLAMP_RISE_EINT2 */ | ||
5317 | #define ARIZONA_MICD_CLAMP_RISE_EINT2_SHIFT 6 /* MICD_CLAMP_RISE_EINT2 */ | ||
5298 | #define ARIZONA_GP5_FALL_EINT2 0x0020 /* GP5_FALL_EINT2 */ | 5318 | #define ARIZONA_GP5_FALL_EINT2 0x0020 /* GP5_FALL_EINT2 */ |
5299 | #define ARIZONA_GP5_FALL_EINT2_MASK 0x0020 /* GP5_FALL_EINT2 */ | 5319 | #define ARIZONA_GP5_FALL_EINT2_MASK 0x0020 /* GP5_FALL_EINT2 */ |
5300 | #define ARIZONA_GP5_FALL_EINT2_SHIFT 5 /* GP5_FALL_EINT2 */ | 5320 | #define ARIZONA_GP5_FALL_EINT2_SHIFT 5 /* GP5_FALL_EINT2 */ |
@@ -5379,6 +5399,10 @@ | |||
5379 | /* | 5399 | /* |
5380 | * R3413 (0xD55) - AOD IRQ Raw Status | 5400 | * R3413 (0xD55) - AOD IRQ Raw Status |
5381 | */ | 5401 | */ |
5402 | #define ARIZONA_MICD_CLAMP_STS 0x0008 /* MICD_CLAMP_STS */ | ||
5403 | #define ARIZONA_MICD_CLAMP_STS_MASK 0x0008 /* MICD_CLAMP_STS */ | ||
5404 | #define ARIZONA_MICD_CLAMP_STS_SHIFT 3 /* MICD_CLAMP_STS */ | ||
5405 | #define ARIZONA_MICD_CLAMP_STS_WIDTH 1 /* MICD_CLAMP_STS */ | ||
5382 | #define ARIZONA_GP5_STS 0x0004 /* GP5_STS */ | 5406 | #define ARIZONA_GP5_STS 0x0004 /* GP5_STS */ |
5383 | #define ARIZONA_GP5_STS_MASK 0x0004 /* GP5_STS */ | 5407 | #define ARIZONA_GP5_STS_MASK 0x0004 /* GP5_STS */ |
5384 | #define ARIZONA_GP5_STS_SHIFT 2 /* GP5_STS */ | 5408 | #define ARIZONA_GP5_STS_SHIFT 2 /* GP5_STS */ |
@@ -5395,6 +5419,10 @@ | |||
5395 | /* | 5419 | /* |
5396 | * R3414 (0xD56) - Jack detect debounce | 5420 | * R3414 (0xD56) - Jack detect debounce |
5397 | */ | 5421 | */ |
5422 | #define ARIZONA_MICD_CLAMP_DB 0x0008 /* MICD_CLAMP_DB */ | ||
5423 | #define ARIZONA_MICD_CLAMP_DB_MASK 0x0008 /* MICD_CLAMP_DB */ | ||
5424 | #define ARIZONA_MICD_CLAMP_DB_SHIFT 3 /* MICD_CLAMP_DB */ | ||
5425 | #define ARIZONA_MICD_CLAMP_DB_WIDTH 1 /* MICD_CLAMP_DB */ | ||
5398 | #define ARIZONA_JD2_DB 0x0002 /* JD2_DB */ | 5426 | #define ARIZONA_JD2_DB 0x0002 /* JD2_DB */ |
5399 | #define ARIZONA_JD2_DB_MASK 0x0002 /* JD2_DB */ | 5427 | #define ARIZONA_JD2_DB_MASK 0x0002 /* JD2_DB */ |
5400 | #define ARIZONA_JD2_DB_SHIFT 1 /* JD2_DB */ | 5428 | #define ARIZONA_JD2_DB_SHIFT 1 /* JD2_DB */ |