diff options
author | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2013-01-10 18:55:43 -0500 |
---|---|---|
committer | Chanwoo Choi <cw00.choi@samsung.com> | 2013-01-15 01:42:17 -0500 |
commit | 4f340333822de79b3439bddccdbf3846f9794e42 (patch) | |
tree | 03ef9d0ad533f531dce5ba38e79d3cb8ecb936b2 /include/linux/mfd | |
parent | 92a49871b378b1e523a95da569cd38efdd06eee5 (diff) |
extcon: arizona: Enable basic headphone identification
Use the headphone detection to identify if the accessory is a headphone or
line load. There are two different revisions of the IP with different
register layouts, support both.
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/registers.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/include/linux/mfd/arizona/registers.h b/include/linux/mfd/arizona/registers.h index f3211f06cec6..e9150533e701 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_HP_DACVAL 0x29F | ||
122 | #define ARIZONA_MICD_CLAMP_CONTROL 0x2A2 | 123 | #define ARIZONA_MICD_CLAMP_CONTROL 0x2A2 |
123 | #define ARIZONA_MIC_DETECT_1 0x2A3 | 124 | #define ARIZONA_MIC_DETECT_1 0x2A3 |
124 | #define ARIZONA_MIC_DETECT_2 0x2A4 | 125 | #define ARIZONA_MIC_DETECT_2 0x2A4 |
@@ -2036,6 +2037,9 @@ | |||
2036 | /* | 2037 | /* |
2037 | * R667 (0x29B) - Headphone Detect 1 | 2038 | * R667 (0x29B) - Headphone Detect 1 |
2038 | */ | 2039 | */ |
2040 | #define ARIZONA_HP_IMPEDANCE_RANGE_MASK 0x0600 /* HP_IMPEDANCE_RANGE - [10:9] */ | ||
2041 | #define ARIZONA_HP_IMPEDANCE_RANGE_SHIFT 9 /* HP_IMPEDANCE_RANGE - [10:9] */ | ||
2042 | #define ARIZONA_HP_IMPEDANCE_RANGE_WIDTH 2 /* HP_IMPEDANCE_RANGE - [10:9] */ | ||
2039 | #define ARIZONA_HP_STEP_SIZE 0x0100 /* HP_STEP_SIZE */ | 2043 | #define ARIZONA_HP_STEP_SIZE 0x0100 /* HP_STEP_SIZE */ |
2040 | #define ARIZONA_HP_STEP_SIZE_MASK 0x0100 /* HP_STEP_SIZE */ | 2044 | #define ARIZONA_HP_STEP_SIZE_MASK 0x0100 /* HP_STEP_SIZE */ |
2041 | #define ARIZONA_HP_STEP_SIZE_SHIFT 8 /* HP_STEP_SIZE */ | 2045 | #define ARIZONA_HP_STEP_SIZE_SHIFT 8 /* HP_STEP_SIZE */ |
@@ -2070,6 +2074,14 @@ | |||
2070 | #define ARIZONA_HP_LVL_SHIFT 0 /* HP_LVL - [6:0] */ | 2074 | #define ARIZONA_HP_LVL_SHIFT 0 /* HP_LVL - [6:0] */ |
2071 | #define ARIZONA_HP_LVL_WIDTH 7 /* HP_LVL - [6:0] */ | 2075 | #define ARIZONA_HP_LVL_WIDTH 7 /* HP_LVL - [6:0] */ |
2072 | 2076 | ||
2077 | #define ARIZONA_HP_DONE_B 0x8000 /* HP_DONE */ | ||
2078 | #define ARIZONA_HP_DONE_B_MASK 0x8000 /* HP_DONE */ | ||
2079 | #define ARIZONA_HP_DONE_B_SHIFT 15 /* HP_DONE */ | ||
2080 | #define ARIZONA_HP_DONE_B_WIDTH 1 /* HP_DONE */ | ||
2081 | #define ARIZONA_HP_LVL_B_MASK 0x7FFF /* HP_LVL - [14:0] */ | ||
2082 | #define ARIZONA_HP_LVL_B_SHIFT 0 /* HP_LVL - [14:0] */ | ||
2083 | #define ARIZONA_HP_LVL_B_WIDTH 15 /* HP_LVL - [14:0] */ | ||
2084 | |||
2073 | /* | 2085 | /* |
2074 | * R674 (0x2A2) - MICD clamp control | 2086 | * R674 (0x2A2) - MICD clamp control |
2075 | */ | 2087 | */ |