lkml.org 
[lkml]   [2011]   [Oct]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Subject[RFC][PATCH] ASoC: Avoid writing to WM8971_RESET in wm8971_resume
    From
    Date
    Writing to WM8971_RESET resets all registers to the default state.
    Thus we should avoid writing to WM8971_RESET on resume.

    Signed-off-by: Axel Lin <axel.lin@gmail.com>
    ---
    Hi,
    While reading the code, I don't understand why we need to do (in wm8971_resume):

    for (i = 0; i < ARRAY_SIZE(wm8971_reg); i++) {
    if (i + 1 == WM8971_RESET)
    continue;

    My understanding is that we want to avoid writing to WM8971_RESET on resume.
    Thus I send this patch for review.
    I don't have the hardware for testing, I'd appreciate if someone can test this patch.

    Thanks,
    Axel

    sound/soc/codecs/wm8971.c | 2 +-
    1 files changed, 1 insertions(+), 1 deletions(-)

    diff --git a/sound/soc/codecs/wm8971.c b/sound/soc/codecs/wm8971.c
    index 572bb80..7ec4165 100644
    --- a/sound/soc/codecs/wm8971.c
    +++ b/sound/soc/codecs/wm8971.c
    @@ -612,7 +612,7 @@ static int wm8971_resume(struct snd_soc_codec *codec)

    /* Sync reg_cache with the hardware */
    for (i = 0; i < ARRAY_SIZE(wm8971_reg); i++) {
    - if (i + 1 == WM8971_RESET)
    + if (i == WM8971_RESET)
    continue;
    data[0] = (i << 1) | ((cache[i] >> 8) & 0x0001);
    data[1] = cache[i] & 0x00ff;
    --
    1.7.4.1




    \
     
     \ /
      Last update: 2011-10-04 01:47    [W:0.023 / U:274.616 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site