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 | |
| 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')
| -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 */ |
