diff options
author | Charles Keepax <ckeepax@opensource.wolfsonmicro.com> | 2013-12-19 04:11:01 -0500 |
---|---|---|
committer | Mark Brown <broonie@linaro.org> | 2013-12-19 05:17:38 -0500 |
commit | 792b62e705048f4da9a6f570c15093ab669839b6 (patch) | |
tree | 64aafe689f3963a9b0d8102eaeabb6f3df2c9691 | |
parent | 1f4fe272f068813377845a959cab5ce786a155bf (diff) |
mfd: wm5110: Expose DRE control registers
Certain use-cases require the DRE to be disabled so expose registers
necessary to control the DRE enables.
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>
-rw-r--r-- | drivers/mfd/wm5110-tables.c | 2 | ||||
-rw-r--r-- | include/linux/mfd/arizona/registers.h | 4 |
2 files changed, 6 insertions, 0 deletions
diff --git a/drivers/mfd/wm5110-tables.c b/drivers/mfd/wm5110-tables.c index 338cfbe6727b..abd6713de7b0 100644 --- a/drivers/mfd/wm5110-tables.c +++ b/drivers/mfd/wm5110-tables.c | |||
@@ -601,6 +601,7 @@ static const struct reg_default wm5110_reg_default[] = { | |||
601 | { 0x0000043D, 0x0180 }, /* R1085 - DAC Digital Volume 6R */ | 601 | { 0x0000043D, 0x0180 }, /* R1085 - DAC Digital Volume 6R */ |
602 | { 0x0000043E, 0x0080 }, /* R1086 - DAC Volume Limit 6R */ | 602 | { 0x0000043E, 0x0080 }, /* R1086 - DAC Volume Limit 6R */ |
603 | { 0x0000043F, 0x0800 }, /* R1087 - Noise Gate Select 6R */ | 603 | { 0x0000043F, 0x0800 }, /* R1087 - Noise Gate Select 6R */ |
604 | { 0x00000440, 0x8FFF }, /* R1088 - DRE Enable */ | ||
604 | { 0x00000450, 0x0000 }, /* R1104 - DAC AEC Control 1 */ | 605 | { 0x00000450, 0x0000 }, /* R1104 - DAC AEC Control 1 */ |
605 | { 0x00000458, 0x0000 }, /* R1112 - Noise Gate Control */ | 606 | { 0x00000458, 0x0000 }, /* R1112 - Noise Gate Control */ |
606 | { 0x00000480, 0x0040 }, /* R1152 - Class W ANC Threshold 1 */ | 607 | { 0x00000480, 0x0040 }, /* R1152 - Class W ANC Threshold 1 */ |
@@ -1631,6 +1632,7 @@ static bool wm5110_readable_register(struct device *dev, unsigned int reg) | |||
1631 | case ARIZONA_DAC_DIGITAL_VOLUME_6R: | 1632 | case ARIZONA_DAC_DIGITAL_VOLUME_6R: |
1632 | case ARIZONA_DAC_VOLUME_LIMIT_6R: | 1633 | case ARIZONA_DAC_VOLUME_LIMIT_6R: |
1633 | case ARIZONA_NOISE_GATE_SELECT_6R: | 1634 | case ARIZONA_NOISE_GATE_SELECT_6R: |
1635 | case ARIZONA_DRE_ENABLE: | ||
1634 | case ARIZONA_DAC_AEC_CONTROL_1: | 1636 | case ARIZONA_DAC_AEC_CONTROL_1: |
1635 | case ARIZONA_NOISE_GATE_CONTROL: | 1637 | case ARIZONA_NOISE_GATE_CONTROL: |
1636 | case ARIZONA_PDM_SPK1_CTRL_1: | 1638 | case ARIZONA_PDM_SPK1_CTRL_1: |
diff --git a/include/linux/mfd/arizona/registers.h b/include/linux/mfd/arizona/registers.h index 89878149a43f..22916c0f1ca4 100644 --- a/include/linux/mfd/arizona/registers.h +++ b/include/linux/mfd/arizona/registers.h | |||
@@ -3207,6 +3207,10 @@ | |||
3207 | /* | 3207 | /* |
3208 | * R1088 (0x440) - DRE Enable | 3208 | * R1088 (0x440) - DRE Enable |
3209 | */ | 3209 | */ |
3210 | #define ARIZONA_DRE3R_ENA 0x0020 /* DRE3R_ENA */ | ||
3211 | #define ARIZONA_DRE3R_ENA_MASK 0x0020 /* DRE3R_ENA */ | ||
3212 | #define ARIZONA_DRE3R_ENA_SHIFT 5 /* DRE3R_ENA */ | ||
3213 | #define ARIZONA_DRE3R_ENA_WIDTH 1 /* DRE3R_ENA */ | ||
3210 | #define ARIZONA_DRE3L_ENA 0x0010 /* DRE3L_ENA */ | 3214 | #define ARIZONA_DRE3L_ENA 0x0010 /* DRE3L_ENA */ |
3211 | #define ARIZONA_DRE3L_ENA_MASK 0x0010 /* DRE3L_ENA */ | 3215 | #define ARIZONA_DRE3L_ENA_MASK 0x0010 /* DRE3L_ENA */ |
3212 | #define ARIZONA_DRE3L_ENA_SHIFT 4 /* DRE3L_ENA */ | 3216 | #define ARIZONA_DRE3L_ENA_SHIFT 4 /* DRE3L_ENA */ |