diff options
Diffstat (limited to 'sound/soc/codecs/wm2000.c')
-rw-r--r-- | sound/soc/codecs/wm2000.c | 32 |
1 files changed, 31 insertions, 1 deletions
diff --git a/sound/soc/codecs/wm2000.c b/sound/soc/codecs/wm2000.c index 0418fa11e6bd..3fd5b29dc933 100644 --- a/sound/soc/codecs/wm2000.c +++ b/sound/soc/codecs/wm2000.c | |||
@@ -1,7 +1,7 @@ | |||
1 | /* | 1 | /* |
2 | * wm2000.c -- WM2000 ALSA Soc Audio driver | 2 | * wm2000.c -- WM2000 ALSA Soc Audio driver |
3 | * | 3 | * |
4 | * Copyright 2008-2010 Wolfson Microelectronics PLC. | 4 | * Copyright 2008-2011 Wolfson Microelectronics PLC. |
5 | * | 5 | * |
6 | * Author: Mark Brown <broonie@opensource.wolfsonmicro.com> | 6 | * Author: Mark Brown <broonie@opensource.wolfsonmicro.com> |
7 | * | 7 | * |
@@ -674,9 +674,39 @@ static int wm2000_resume(struct snd_soc_codec *codec) | |||
674 | #define wm2000_resume NULL | 674 | #define wm2000_resume NULL |
675 | #endif | 675 | #endif |
676 | 676 | ||
677 | static bool wm2000_readable_reg(struct device *dev, unsigned int reg) | ||
678 | { | ||
679 | switch (reg) { | ||
680 | case WM2000_REG_SYS_START: | ||
681 | case WM2000_REG_SPEECH_CLARITY: | ||
682 | case WM2000_REG_SYS_WATCHDOG: | ||
683 | case WM2000_REG_ANA_VMID_PD_TIME: | ||
684 | case WM2000_REG_ANA_VMID_PU_TIME: | ||
685 | case WM2000_REG_CAT_FLTR_INDX: | ||
686 | case WM2000_REG_CAT_GAIN_0: | ||
687 | case WM2000_REG_SYS_STATUS: | ||
688 | case WM2000_REG_SYS_MODE_CNTRL: | ||
689 | case WM2000_REG_SYS_START0: | ||
690 | case WM2000_REG_SYS_START1: | ||
691 | case WM2000_REG_ID1: | ||
692 | case WM2000_REG_ID2: | ||
693 | case WM2000_REG_REVISON: | ||
694 | case WM2000_REG_SYS_CTL1: | ||
695 | case WM2000_REG_SYS_CTL2: | ||
696 | case WM2000_REG_ANC_STAT: | ||
697 | case WM2000_REG_IF_CTL: | ||
698 | return true; | ||
699 | default: | ||
700 | return false; | ||
701 | } | ||
702 | } | ||
703 | |||
677 | static const struct regmap_config wm2000_regmap = { | 704 | static const struct regmap_config wm2000_regmap = { |
678 | .reg_bits = 8, | 705 | .reg_bits = 8, |
679 | .val_bits = 8, | 706 | .val_bits = 8, |
707 | |||
708 | .max_register = WM2000_REG_IF_CTL, | ||
709 | .readable_reg = wm2000_readable_reg, | ||
680 | }; | 710 | }; |
681 | 711 | ||
682 | static int wm2000_probe(struct snd_soc_codec *codec) | 712 | static int wm2000_probe(struct snd_soc_codec *codec) |