diff options
author | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2010-11-05 09:16:07 -0400 |
---|---|---|
committer | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2010-11-05 09:16:07 -0400 |
commit | a8ea54da5e47bde9ba19230bb3609b0502a288c3 (patch) | |
tree | 6b7bb369d86ab185e4a30a0d58ce485f9a00e7e8 /sound/soc/codecs/tpa6130a2.c | |
parent | 11e16eb365f4f6979cfcb2a2d379338b383590d9 (diff) | |
parent | 6424dca23e6b5a2f7a19a69cf7c0990b11717b00 (diff) |
Merge branch 'for-2.6.37' into HEAD
Diffstat (limited to 'sound/soc/codecs/tpa6130a2.c')
-rw-r--r-- | sound/soc/codecs/tpa6130a2.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/sound/soc/codecs/tpa6130a2.c b/sound/soc/codecs/tpa6130a2.c index 329acc1a207..ee4fb201de6 100644 --- a/sound/soc/codecs/tpa6130a2.c +++ b/sound/soc/codecs/tpa6130a2.c @@ -119,13 +119,13 @@ static int tpa6130a2_power(int power) { struct tpa6130a2_data *data; u8 val; - int ret; + int ret = 0; BUG_ON(tpa6130a2_client == NULL); data = i2c_get_clientdata(tpa6130a2_client); mutex_lock(&data->mutex); - if (power) { + if (power && !data->power_state) { /* Power on */ if (data->power_gpio >= 0) gpio_set_value(data->power_gpio, 1); @@ -153,7 +153,7 @@ static int tpa6130a2_power(int power) val = tpa6130a2_read(TPA6130A2_REG_CONTROL); val &= ~TPA6130A2_SWS; tpa6130a2_i2c_write(TPA6130A2_REG_CONTROL, val); - } else { + } else if (!power && data->power_state) { /* set SWS */ val = tpa6130a2_read(TPA6130A2_REG_CONTROL); val |= TPA6130A2_SWS; |