]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/blob - releases/2.6.36.2/asoc-remove-volatility-from-wm8900-power1-register.patch
Fixes for 5.10
[thirdparty/kernel/stable-queue.git] / releases / 2.6.36.2 / asoc-remove-volatility-from-wm8900-power1-register.patch
1 From 6d212d8e86fb4221bd91b9266b7567ee2b83bd01 Mon Sep 17 00:00:00 2001
2 From: Mark Brown <broonie@opensource.wolfsonmicro.com>
3 Date: Fri, 29 Oct 2010 15:41:17 -0700
4 Subject: ASoC: Remove volatility from WM8900 POWER1 register
5
6 From: Mark Brown <broonie@opensource.wolfsonmicro.com>
7
8 commit 6d212d8e86fb4221bd91b9266b7567ee2b83bd01 upstream.
9
10 Not all bits can be read back from POWER1 so avoid corruption when using
11 a read/modify/write cycle by marking it non-volatile - the only thing we
12 read back from it is the chip revision which has diagnostic value only.
13 We can re-add later but that's a more invasive change than is suitable
14 for a bugfix.
15
16 Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
17 Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
18 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
19
20 ---
21 sound/soc/codecs/wm8900.c | 6 ------
22 1 file changed, 6 deletions(-)
23
24 --- a/sound/soc/codecs/wm8900.c
25 +++ b/sound/soc/codecs/wm8900.c
26 @@ -188,7 +188,6 @@ static int wm8900_volatile_register(unsi
27 {
28 switch (reg) {
29 case WM8900_REG_ID:
30 - case WM8900_REG_POWER1:
31 return 1;
32 default:
33 return 0;
34 @@ -1236,11 +1235,6 @@ static __devinit int wm8900_i2c_probe(st
35 goto err;
36 }
37
38 - /* Read back from the chip */
39 - reg = snd_soc_read(codec, WM8900_REG_POWER1);
40 - reg = (reg >> 12) & 0xf;
41 - dev_info(&i2c->dev, "WM8900 revision %d\n", reg);
42 -
43 wm8900_reset(codec);
44
45 /* Turn the chip on */