Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

mfd: wm5110: Add registers for headphone short circuit control

Add the registers necessary to enable/disable the headphone short
circuit protection.

Signed-off-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com>
Acked-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Mark Brown <broonie@linaro.org>

authored by

Charles Keepax and committed by
Mark Brown
08e2d592 fce6bd84

+33
+6
drivers/mfd/wm5110-tables.c
··· 610 610 { 0x00000491, 0x0000 }, /* R1169 - PDM SPK1 CTRL 2 */ 611 611 { 0x00000492, 0x0069 }, /* R1170 - PDM SPK2 CTRL 1 */ 612 612 { 0x00000493, 0x0000 }, /* R1171 - PDM SPK2 CTRL 2 */ 613 + { 0x000004A0, 0x3480 }, /* R1184 - HP1 Short Circuit Ctrl */ 614 + { 0x000004A1, 0x3480 }, /* R1185 - HP2 Short Circuit Ctrl */ 615 + { 0x000004A2, 0x3480 }, /* R1186 - HP3 Short Circuit Ctrl */ 613 616 { 0x00000500, 0x000C }, /* R1280 - AIF1 BCLK Ctrl */ 614 617 { 0x00000501, 0x0008 }, /* R1281 - AIF1 Tx Pin Ctrl */ 615 618 { 0x00000502, 0x0000 }, /* R1282 - AIF1 Rx Pin Ctrl */ ··· 1642 1639 case ARIZONA_PDM_SPK1_CTRL_2: 1643 1640 case ARIZONA_PDM_SPK2_CTRL_1: 1644 1641 case ARIZONA_PDM_SPK2_CTRL_2: 1642 + case ARIZONA_HP1_SHORT_CIRCUIT_CTRL: 1643 + case ARIZONA_HP2_SHORT_CIRCUIT_CTRL: 1644 + case ARIZONA_HP3_SHORT_CIRCUIT_CTRL: 1645 1645 case ARIZONA_AIF1_BCLK_CTRL: 1646 1646 case ARIZONA_AIF1_TX_PIN_CTRL: 1647 1647 case ARIZONA_AIF1_RX_PIN_CTRL:
+27
include/linux/mfd/arizona/registers.h
··· 226 226 #define ARIZONA_PDM_SPK1_CTRL_2 0x491 227 227 #define ARIZONA_PDM_SPK2_CTRL_1 0x492 228 228 #define ARIZONA_PDM_SPK2_CTRL_2 0x493 229 + #define ARIZONA_HP1_SHORT_CIRCUIT_CTRL 0x4A0 230 + #define ARIZONA_HP2_SHORT_CIRCUIT_CTRL 0x4A1 231 + #define ARIZONA_HP3_SHORT_CIRCUIT_CTRL 0x4A2 229 232 #define ARIZONA_SPK_CTRL_2 0x4B5 230 233 #define ARIZONA_SPK_CTRL_3 0x4B6 231 234 #define ARIZONA_DAC_COMP_1 0x4DC ··· 3334 3331 #define ARIZONA_SPK2_FMT_MASK 0x0001 /* SPK2_FMT */ 3335 3332 #define ARIZONA_SPK2_FMT_SHIFT 0 /* SPK2_FMT */ 3336 3333 #define ARIZONA_SPK2_FMT_WIDTH 1 /* SPK2_FMT */ 3334 + 3335 + /* 3336 + * R1184 (0x4A0) - HP1 Short Circuit Ctrl 3337 + */ 3338 + #define ARIZONA_HP1_SC_ENA 0x1000 /* HP1_SC_ENA */ 3339 + #define ARIZONA_HP1_SC_ENA_MASK 0x1000 /* HP1_SC_ENA */ 3340 + #define ARIZONA_HP1_SC_ENA_SHIFT 12 /* HP1_SC_ENA */ 3341 + #define ARIZONA_HP1_SC_ENA_WIDTH 1 /* HP1_SC_ENA */ 3342 + 3343 + /* 3344 + * R1185 (0x4A1) - HP2 Short Circuit Ctrl 3345 + */ 3346 + #define ARIZONA_HP2_SC_ENA 0x1000 /* HP2_SC_ENA */ 3347 + #define ARIZONA_HP2_SC_ENA_MASK 0x1000 /* HP2_SC_ENA */ 3348 + #define ARIZONA_HP2_SC_ENA_SHIFT 12 /* HP2_SC_ENA */ 3349 + #define ARIZONA_HP2_SC_ENA_WIDTH 1 /* HP2_SC_ENA */ 3350 + 3351 + /* 3352 + * R1186 (0x4A2) - HP3 Short Circuit Ctrl 3353 + */ 3354 + #define ARIZONA_HP3_SC_ENA 0x1000 /* HP3_SC_ENA */ 3355 + #define ARIZONA_HP3_SC_ENA_MASK 0x1000 /* HP3_SC_ENA */ 3356 + #define ARIZONA_HP3_SC_ENA_SHIFT 12 /* HP3_SC_ENA */ 3357 + #define ARIZONA_HP3_SC_ENA_WIDTH 1 /* HP3_SC_ENA */ 3337 3358 3338 3359 /* 3339 3360 * R1244 (0x4DC) - DAC comp 1