1. Aug 12, 2021
  2. Aug 10, 2021
  3. Aug 09, 2021
  4. Aug 07, 2021
  5. Aug 06, 2021
  6. Aug 04, 2021
  7. Aug 03, 2021
  8. Aug 02, 2021
  9. Jul 31, 2021
  10. Jul 30, 2021
  11. Jul 29, 2021
  12. Jul 28, 2021
  13. Jul 27, 2021
  14. Jul 26, 2021
    • Mark Brown's avatar
      ASoC: tlv320aic31xx: Fix jack detection after suspend · 2c39ca68
      Mark Brown authored
      
      
      The tlv320aic31xx driver relies on regcache_sync() to restore the register
      contents after going to _BIAS_OFF, for example during system suspend. This
      does not work for the jack detection configuration since that is configured
      via the same register that status is read back from so the register is
      volatile and not cached. This can also cause issues during init if the jack
      detection ends up getting set up before the CODEC is initially brought out
      of _BIAS_OFF, we will reset the CODEC and resync the cache as part of that
      process.
      
      Fix this by explicitly reapplying the jack detection configuration after
      resyncing the register cache during power on.
      
      This issue was found by an engineer working off-list on a product
      kernel, I just wrote up the upstream fix.
      
      Signed-off-by: default avatarMark Brown <broonie@kernel.org>
      Link: https://lore.kernel.org/r/20210723180200.25105-1-broonie@kernel.org
      Cc: stable@vger.kernel.org
      2c39ca68
  15. Jul 24, 2021
    • chihhao.chen's avatar
      ALSA: usb-audio: fix incorrect clock source setting · 4511781f
      chihhao.chen authored
      The following scenario describes an echo test for
      Samsung USBC Headset (AKG) with VID/PID (0x04e8/0xa051).
      
      We first start a capture stream(USB IN transfer) in 96Khz/24bit/1ch mode.
      In clock find source function, we get value 0x2 for clock selector
      and 0x1 for clock source.
      
      Kernel-4.14 behavior
      Since clock source is valid so clock selector was not set again.
      We pass through this function and start a playback stream(USB OUT transfer)
      in 48Khz/32bit/2ch mode. This time we get value 0x1 for clock selector
      and 0x1 for clock source. Finally clock id with this setting is 0x9.
      
      Kernel-5.10 behavior
      Clock selector was always set one more time even it is valid.
      When we start a playback stream, we will get 0x2 for clock selector
      and 0x1 for clock source. In this case clock id becomes 0xA.
      This is an incorrect clock source setting and results in severe noises.
      We see wrong data rate in USB IN transfer.
      (From 288 bytes/ms becomes 144 bytes/ms) It should keep in 288 bytes/ms.
      
      This earphone works fine on older kernel version load because
      this is a newly-added behavior.
      
      Fixes: d2e8f641
      
       ("ALSA: usb-audio: Explicitly set up the clock selector")
      Signed-off-by: default avatarchihhao.chen <chihhao.chen@mediatek.com>
      Link: https://lore.kernel.org/r/1627100621-19225-1-git-send-email-chihhao.chen@mediatek.com
      
      
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      4511781f
    • Geoffrey D. Bennett's avatar
      ALSA: scarlett2: Fix line out/speaker switching notifications · 2b8b12be
      Geoffrey D. Bennett authored
      
      
      The values of the line output controls can change when the SW/HW
      switches are set to HW, and also when speaker switching is enabled.
      These notifications were sent with a mask of only
      SNDRV_CTL_EVENT_MASK_INFO. Change the notifications to set the
      SNDRV_CTL_EVENT_MASK_VALUE mask bit as well.
      
      When the mute control is updated, the notification was sent with a
      mask of SNDRV_CTL_EVENT_MASK_INFO. Change the mask to the correct
      value of SNDRV_CTL_EVENT_MASK_VALUE.
      
      Signed-off-by: default avatarGeoffrey D. Bennett <g@b4.vu>
      Link: https://lore.kernel.org/r/8192e15ba62fa4bc90425c005f265c0de530be20.1626959758.git.g@b4.vu
      
      
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      2b8b12be