1. 04 9月, 2017 1 次提交
  2. 03 9月, 2017 1 次提交
    • W
      ALSA: hda: Fix regression of hdmi eld control created based on invalid pcm · 1f7f51a6
      Wang YanQing 提交于
      Commit fb087eaa ("ALSA: hda - hdmi eld control created based on pcm")
      forget to filter out invalid pcm numbers, if there is only one invalid pcm
      number, then this issue causes we create eld control for invalid pcm silently,
      but when there are more than one invalid pcm numbers, then this issue bring
      probe error looks like below dmesg:
      "
      kernel: [    1.647283] snd_hda_intel 0000:00:03.0: bound 0000:00:02.0 (ops 0xc2967540)
      kernel: [    1.651192] snd_hda_intel 0000:00:03.0: Too many HDMI devices
      kernel: [    1.651195] snd_hda_intel 0000:00:03.0: Consider building the kernel with CONFIG_SND_DYNAMIC_MINORS=y
      kernel: [    1.651197] snd_hda_intel 0000:00:03.0: Too many HDMI devices
      kernel: [    1.651199] snd_hda_intel 0000:00:03.0: Consider building the kernel with CONFIG_SND_DYNAMIC_MINORS=y
      kernel: [    1.651201] snd_hda_intel 0000:00:03.0: Too many HDMI devices
      kernel: [    1.651203] snd_hda_intel 0000:00:03.0: Consider building the kernel with CONFIG_SND_DYNAMIC_MINORS=y
      kernel: [    1.651676] snd_hda_intel 0000:00:03.0: control 3:0:0:ELD:0 is already present
      kernel: [    1.651787] snd_hda_codec_hdmi: probe of hdaudioC0D0 failed with error -16
      "
      
      This patch add invalid pcm number filter before calling hdmi_create_eld_ctl.
      
      Fixes: fb087eaa ("ALSA: hda - hdmi eld control created based on pcm")
      Signed-off-by: NWang YanQing <udknight@gmail.com>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      1f7f51a6
  3. 23 8月, 2017 2 次提交
    • T
      ALSA: hda - Add stereo mic quirk for Lenovo G50-70 (17aa:3978) · bbba6f9d
      Takashi Iwai 提交于
      Lenovo G50-70 (17aa:3978) with Conexant codec chip requires the
      similar workaround for the inverted stereo dmic like other Lenovo
      models.
      
      Bugzilla: https://bugzilla.suse.com/show_bug.cgi?id=1020657
      Cc: <stable@vger.kernel.org>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      bbba6f9d
    • T
      ALSA: hda - Implement mic-mute LED mode enum · 62a93947
      Takashi Iwai 提交于
      Dell laptops have another LED for mic-mute in addition to the master
      mute.  The former is tied with the capture switch (in a reverse way)
      while the latter is tied with the master playback switch.  We already
      have an enum control to change the behavior for the master mute LED in
      different ways, e.g. keeping always off or turning off at mute.  But,
      the mic-mute LED has no such management but its behavior is
      hard-coded.
      
      This patch implements an enum control to change the mic-mute LED
      behavior like what we have for the master mute LED.  The ctl provides
      four modes: keep-on, keep-off, follow-capture and follow-mute.  The
      default mode is the last one, follow-mute, which follows the capture
      mute, i.e. LED turning on when the capture is off, and turning off
      when the capture is active.
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      62a93947
  4. 16 8月, 2017 1 次提交
  5. 14 8月, 2017 1 次提交
    • S
      ALSA: hda/realtek - Fix pincfg for Dell XPS 13 9370 · 8df4b003
      Shih-Yuan Lee (FourDollars) 提交于
      The initial pin configs for Dell headset mode of ALC3271 has changed.
      
      /sys/class/sound/hwC0D0/init_pin_configs: (BIOS 0.1.4)
      0x12 0xb7a60130
      0x13 0xb8a61140
      0x14 0x40000000
      0x16 0x411111f0
      0x17 0x90170110
      0x18 0x411111f0
      0x19 0x411111f0
      0x1a 0x411111f0
      0x1b 0x411111f0
      0x1d 0x4087992d
      0x1e 0x411111f0
      0x21 0x04211020
      
      has changed to ...
      
      /sys/class/sound/hwC0D0/init_pin_configs: (BIOS 0.2.0)
      0x12 0xb7a60130
      0x13 0x40000000
      0x14 0x411111f0
      0x16 0x411111f0
      0x17 0x90170110
      0x18 0x411111f0
      0x19 0x411111f0
      0x1a 0x411111f0
      0x1b 0x411111f0
      0x1d 0x4067992d
      0x1e 0x411111f0
      0x21 0x04211020
      
      Fixes: b4576de8 ("ALSA: hda/realtek - Fix typo of pincfg for Dell quirk")
      Signed-off-by: NShih-Yuan Lee (FourDollars) <sylee@canonical.com>
      Cc: <stable@vger.kernel.org>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      8df4b003
  6. 07 8月, 2017 1 次提交
  7. 02 8月, 2017 1 次提交
  8. 26 7月, 2017 1 次提交
  9. 21 7月, 2017 2 次提交
  10. 17 7月, 2017 1 次提交
  11. 15 7月, 2017 1 次提交
  12. 13 7月, 2017 1 次提交
  13. 11 7月, 2017 1 次提交
  14. 07 7月, 2017 1 次提交
  15. 04 7月, 2017 1 次提交
  16. 03 7月, 2017 2 次提交
  17. 30 6月, 2017 4 次提交
  18. 29 6月, 2017 1 次提交
  19. 28 6月, 2017 5 次提交
    • T
      ALSA: hda - Minor code refactoring for Intel HDMI codec parsers · 43f6c8d9
      Takashi Iwai 提交于
      No functional change, just a slight reduction of lines.
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      43f6c8d9
    • T
      ALSA: hda - Bind with i915 component before codec binding · fcc88d91
      Takashi Iwai 提交于
      We used a on-demand i915 component binding for IvyBridge and
      SandyBridge HDMI codecs, but it has a potential problem of the nested
      module loading.  For avoiding that situation, assure the i915 binding
      happening at the controller driver level for PCH controller devices,
      where the initialization is performed in a detached work, instead of
      calling from the codec driver probe.
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      fcc88d91
    • T
      ALSA: hda - Skip card registration when no codec is found · 17890880
      Takashi Iwai 提交于
      It's nonsense to register a card object when no codec is bound on it,
      as we don't support the deferred codec binding.  Instead of
      registering an empty card object, just skip the registration by
      returning an error from azx_codec_configure().
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      17890880
    • T
      ALSA: hda - Fix endless loop of codec configure · d94815f9
      Takashi Iwai 提交于
      azx_codec_configure() loops over the codecs found on the given
      controller via a linked list.  The code used to work in the past, but
      in the current version, this may lead to an endless loop when a codec
      binding returns an error.
      
      The culprit is that the snd_hda_codec_configure() unregisters the
      device upon error, and this eventually deletes the given codec object
      from the bus.  Since the list is initialized via list_del_init(), the
      next object points to the same device itself.  This behavior change
      was introduced at splitting the HD-audio code code, and forgotten to
      adapt it here.
      
      For fixing this bug, just use a *_safe() version of list iteration.
      
      Fixes: d068ebc2 ("ALSA: hda - Move some codes up to hdac_bus struct")
      Reported-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      Cc: <stable@vger.kernel.org>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      d94815f9
    • H
      ALSA: hda - set input_path bitmap to zero after moving it to new place · a8f20fd2
      Hui Wang 提交于
      Recently we met a problem, the codec has valid adcs and input pins,
      and they can form valid input paths, but the driver does not build
      valid controls for them like "Mic boost", "Capture Volume" and
      "Capture Switch".
      
      Through debugging, I found the driver needs to shrink the invalid
      adcs and input paths for this machine, so it will move the whole
      column bitmap value to the previous column, after moving it, the
      driver forgets to set the original column bitmap value to zero, as a
      result, the driver will invalidate the path whose index value is the
      original colume bitmap value. After executing this function, all
      valid input paths are invalidated by a mistake, there are no any
      valid input paths, so the driver won't build controls for them.
      
      Fixes: 3a65bcdc ("ALSA: hda - Fix inconsistent input_paths after ADC reduction")
      Cc: <stable@vger.kernel.org>
      Signed-off-by: NHui Wang <hui.wang@canonical.com>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      a8f20fd2
  20. 26 6月, 2017 1 次提交
    • H
      ALSA: hda/realtek - There is no loopback mixer in the ALC234/274/294 · 532a7784
      Hui Wang 提交于
      We have a Lenovo machine with the codec ALC294 on it, without the
      patch, the Node 0x0b is regarded as the loopback mixer, but the Node
      0x0b in this codec is "Vendor Defined Widget" instead of the audio
      mixer, please see the log below:
      
      Node 0x0b [Vendor Defined Widget] wcaps 0xf00000: Mono
        Control: name="Beep Playback Volume", index=0, device=0
          ControlAmp: chs=3, dir=In, idx=4, ofs=0
        Control: name="Beep Playback Switch", index=0, device=0
          ControlAmp: chs=3, dir=In, idx=4, ofs=0
      
      And I have consulted with Realtek, so far the ALC234/274/294 all don't
      have loopback mixer.
      
      Cc: Kailang Yang <kailang@realtek.com>
      Signed-off-by: NHui Wang <hui.wang@canonical.com>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      532a7784
  21. 21 6月, 2017 1 次提交
  22. 20 6月, 2017 3 次提交
  23. 16 6月, 2017 1 次提交
  24. 14 6月, 2017 1 次提交
  25. 09 6月, 2017 1 次提交
  26. 06 6月, 2017 2 次提交
  27. 01 6月, 2017 1 次提交
    • T
      ALSA: hda - Fix applying MSI dual-codec mobo quirk · d2c3b14e
      Takashi Iwai 提交于
      The previous commit [63691587: ALSA: hda - Apply dual-codec quirk
      for MSI Z270-Gaming mobo] attempted to apply the existing dual-codec
      quirk for a MSI mobo.  But it turned out that this isn't applied
      properly due to the MSI-vendor quirk before this entry.  I overlooked
      such two MSI entries just because they were put in the wrong position,
      although we have a list ordered by PCI SSID numbers.
      
      This patch fixes it by rearranging the unordered entries.
      
      Fixes: 63691587 ("ALSA: hda - Apply dual-codec quirk for MSI Z270-Gaming mobo")
      Reported-by: NRudolf Schmidt <info@rudolfschmidt.com>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      d2c3b14e