1. 04 11月, 2014 1 次提交
    • T
      ALSA: pcm: Replace PCM hwptr tracking with tracepoints · f5914908
      Takashi Iwai 提交于
      ALSA PCM core has a mechanism tracking the PCM hwptr updates for
      analyzing XRUNs.  But its log is limited (up to 10) and its log output
      is a kernel message, which is hard to handle.
      
      In this patch, the hwptr logging is moved to the tracing
      infrastructure instead of its own.  Not only the hwptr updates but
      also XRUN and hwptr errors are recorded on the trace log, so that user
      can see such events at the exact timing.
      
      The new "snd_pcm" entry will appear in the tracing events:
        # ls -F /sys/kernel/debug/tracing/events/snd_pcm
        enable  filter  hw_ptr_error/  hwptr/  xrun/
      
      The hwptr is for the regular hwptr update events.  An event trace
      looks like:
      
        aplay-26187 [004] d..3  4012.834761: hwptr: pcmC0D0p/sub0: POS: pos=488, old=0, base=0, period=1024, buf=16384
      
      "POS" shows the hwptr update by the explicit position update call and
      "IRQ" means the hwptr update by the interrupt,
      i.e. snd_pcm_period_elapsed() call.  The "pos" is the passed
      ring-buffer offset by the caller, "old" is the previous hwptr, "base"
      is the hwptr base position, "period" and "buf" are period- and
      buffer-size of the target PCM substream.
      (Note that the hwptr position displayed here isn't the ring-buffer
       offset.  It increments up to the PCM position boundary.)
      
      The XRUN event appears similarly, but without "pos" field.
      The hwptr error events appear with the PCM identifier and its reason
      string, such as "Lost interrupt?".
      
      The XRUN and hwptr error reports on kernel message are still left, can
      be turned on/off via xrun_debug proc like before.  But the bit 3, 4, 5
      and 6 bits of xrun_debug proc are dropped by this patch.  Also, along
      with the change, the message strings have been reformatted to be a bit
      more consistent.
      
      Last but not least, the hwptr reporting is enabled only when
      CONFIG_SND_PCM_XRUN_DEBUG is set.
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      f5914908
  2. 20 10月, 2014 1 次提交
  3. 04 8月, 2014 1 次提交
  4. 15 7月, 2014 1 次提交
  5. 25 6月, 2014 1 次提交
    • T
      ALSA: hda - Adjust speaker HPF and add LED support for HP Spectre 13 · 8b3dfdaf
      Takashi Iwai 提交于
      HP Spectre 13 has the IDT 92HD95 codec, and BIOS seems to set the
      default high-pass filter in some "safer" range, which results in the
      very soft tone from the built-in speakers in contrast to Windows.
      Also, the mute LED control is missing, since 92HD95 codec still has no
      HP-specific fixups for GPIO setups.
      
      This patch adds these missing features: the HPF is adjusted by the
      vendor-specific verb, and the LED is set up from a DMI string (but
      with the default polarity = 0 assumption due to the incomplete BIOS on
      the given machine).
      
      Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=74841
      Cc: <stable@vger.kernel.org>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      8b3dfdaf
  6. 05 5月, 2014 1 次提交
  7. 28 2月, 2014 1 次提交
  8. 08 1月, 2014 1 次提交
  9. 29 10月, 2013 1 次提交
  10. 11 10月, 2013 1 次提交
  11. 27 9月, 2013 1 次提交
  12. 23 9月, 2013 5 次提交
  13. 27 8月, 2013 1 次提交
  14. 20 8月, 2013 1 次提交
  15. 29 7月, 2013 2 次提交
    • T
      ALSA: hda - Fix invalid multi-io creation on VAIO-Z laptops · da96fb5b
      Takashi Iwai 提交于
      VAIO-Z laptops need to use the specific DAC for the speaker output
      by some unknown reason although the codec itself supports the flexible
      connection.  So we implemented a workaround by a new flag,
      no_primary_hp, for assigning the speaker pin first.
      
      This worked until 3.8 kernel, but it got broken because the driver
      learned for a better multi-io pin mapping, and not it can assign two
      mic pins for multi-io.  Since the multi-io requires to be the primary
      output, the hp and two mic pins are assigned in prior to the speaker
      in the end.
      
      Although the machine has two mic pins, one of them is used as a noise-
      canceling headphone, thus it's no real retaskable mic jack.  Thus, at
      best, we can disable the multi-io assignment and make the parser
      behavior back to the state before the multi-io.
      
      This patch adds again a new flag, no_multi_io, to indicate that the
      device has no multi-io capability, and set it in the fixup for
      VAIO-Z.  The no_multi_io flag itself can be used generically, added
      via a helper line, too.
      Reported-by: NTormen <my.nl.abos@gmail.com>
      Reported-by: NAdam Williamson <awilliam@redhat.com>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      da96fb5b
    • T
      ALSA: hda - Remove analog mic pin override from STAC9228 dell-bios quirk · eefb8be4
      Takashi Iwai 提交于
      The current fixup for dell-bios model with STAC9228 codec contains the
      override of pin 0x0c for analog mic.  But this is actually just adding
      a bogus pin and confuses the parser.  Better to remove it for the
      auto-mic switching.
      
      Meanwhile, for a possible regression, keep the old configuration as
      model=dell-bios-amic, so that people can test it again quickly.
      
      Tested on Dell 1420n laptop.
      Reported-and-tested-by: NEric Shattow <lucent@gmail.com>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      eefb8be4
  16. 25 7月, 2013 1 次提交
  17. 17 6月, 2013 2 次提交
  18. 04 4月, 2013 1 次提交
    • T
      Revert "ALSA: hda - Allow power_save_controller option override DCAPS" · 8fc24426
      Takashi Iwai 提交于
      This reverts commit 6ab31741.
      
      The commit [6ab31741: ALSA: hda - Allow power_save_controller option
      override DCAPS] changed the behavior of power_save_controller so that
      it can override the driver capability.  This assumed that this option
      is rarely changed dynamically unlike power_save option.  Too naive.
      
      It turned out that the user-space power-management tool tries to set
      power_save_controller option to 1 together with power_save option
      without knowing what's actually doing.  This enabled forcibly the
      runtime PM of the controller,  which is known to be broken om many
      chips thus disabled as default.
      
      So, the only sane fix is to revert this commit again.  It was intended
      to ease debugging/testing for runtime PM enablement, but obviously we
      need another way for it.
      
      Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=56171Reported-and-tested-by: NNikita Tsukanov <keks9n@gmail.com>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      8fc24426
  19. 17 3月, 2013 1 次提交
  20. 08 3月, 2013 2 次提交
  21. 14 2月, 2013 1 次提交
  22. 12 2月, 2013 1 次提交
  23. 29 1月, 2013 1 次提交
  24. 09 1月, 2013 1 次提交
  25. 21 11月, 2012 1 次提交
  26. 13 9月, 2012 2 次提交
    • T
      ALSA: hda - Allow to pass position_fix=0 explicitly · 1dac6695
      Takashi Iwai 提交于
      Set the default value of position_fix -1, and allow user passing
      position_fix=0 explicitly to set the "auto" position-fix mode.
      Otherwise the auto mode may be switched to others like COMBO of
      VIACOMBO when the controller prefers it, thus user can't set the auto
      mode any longer.
      
      Also updated the documentation appropriately, too.
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      1dac6695
    • T
      ALSA: Define more channel map positions · 7b31d009
      Takashi Iwai 提交于
      For following the standard, define more channel map positions and
      shuffle the items a bit:
      
      - As both PulseAudio and gstreamer define MONO channel position
        explicitly, we should follow that, too.  The mono streams point to
        this channel position unless they are explicitly assigned to certain
        channel positions.
      
      - Top-front-* and Top-rear-* positions are added, carried from
        PulseAudio's definitions.
      
      - Move NA and MONO definitions at the top of table right after
        UNKNOWN, since these are more abstract in comparison with other
        practical positions.
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      7b31d009
  27. 07 9月, 2012 2 次提交
  28. 15 8月, 2012 1 次提交
    • T
      ALSA: hda - Add 3stack-automute model to AD1882 codec · 1c868452
      Takashi Iwai 提交于
      Added a simple support of automute for the front HP jack to AD1882
      stack model.  Such an addition is basically an exception -- we really
      want to avoid the static quirk codes, but AD1882 parser isn't still
      ready for moving to the BIOS auto-parser yet.  So, as a quick fix, I
      merged it for now.
      
      In near future, we really need the big clean up of patch_analog.c to
      move on to the auto-parser...
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      1c868452
  29. 31 7月, 2012 2 次提交
  30. 29 7月, 2012 1 次提交
    • T
      ALSA: hda - Workaround for silent output on VAIO Z with ALC889 · e427c237
      Takashi Iwai 提交于
      On recent kernels, Realtek codec parser tries to optimize the routing
      aggressively and take the headphone output as primary at first.  This
      caused a regression on VAIO Z with ALC889, the silent output from the
      speaker.
      
      The problem seems that the speaker pin must be connected to the first
      DAC (0x02) on this machine by some reason although the codec itself
      advertises the flexible routing with any DACs.
      
      This patch adds a fix-up for choosing the speaker pin as the primary
      so that the right DAC is assigned on this device.
      Reported-and-tested-by: NAdam Williamson <awilliam@redhat.com>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      e427c237