1. 30 8月, 2012 2 次提交
    • T
      ALSA: hda - Fix D3 clock stop check for codecs with own set_power_state op · 432c641e
      Takashi Iwai 提交于
      When a codec provides its own set_power_state op, the D3-clock-stop
      isn't checked correctly.  And the recent changes for repeating the
      state-setting operation isn't applied to such a codec, too.
      
      This patch fixes these issues by moving the call of codec's own op to
      the place where the generic power-set operation is done, and move the
      power-state synchronization code out of
      snd_hda_set_power_state_to_all() so that it can be called always at
      the end of power-up/down sequence, and updates the D3 clock-stop flag
      properly.
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      432c641e
    • T
      ALSA: hda - Fix runtime PM leftover refcounts · 68467f51
      Takashi Iwai 提交于
      When the HD-audio is removed, it leaves the refcounts when codecs are
      powered up (usually yes) in the destructor.  For fixing the unbalance,
      and cleaning up the code mess, this patch changes the following:
      - change pm_notify callback to take the explicit power on/off state,
      - check of D3 stop-clock and keep_link_on flags is moved to the caller
        side,
      - call pm_notify callback in snd_hda_codec_new() and snd_hda_codec_free()
        so that the refcounts are proprely updated.
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      68467f51
  2. 29 8月, 2012 6 次提交
  3. 27 8月, 2012 1 次提交
  4. 24 8月, 2012 2 次提交
  5. 23 8月, 2012 1 次提交
    • M
      ALSA: hda - add runtime PM support · b8dfc462
      Mengdong Lin 提交于
      Runtime PM can bring more power saving:
      - When the controller is suspended, its parent device will also have a chance
        to suspend.
      - PCI subsystem can choose the lowest power state the controller can signal
        wake up from. This state can be D3cold on platforms with ACPI PM support.
      And runtime PM can provide a gerneral sysfs interface for a system policy
      manager.
      
      Runtime PM support is based on current HDA power saving implementation. The user
      can enable runtime PM on platfroms that provide acceptable latency on transition
      from D3 to D0.
      
      Details:
      - When both power saving and runtime PM are enabled:
        -- If a codec supports 'stop-clock' in D3, it will request suspending the
           controller after it enters D3 and request resuming the controller before
           back to D0. Thus the controller will be suspended only when all codecs are
           suspended and support stop-clock in D3.
        -- User IO operations and HW wakeup signal can resume the controller back to
           D0.
      - If runtime PM is disabled, power saving just works as before.
      - If power saving is disabled, the controller won't be suspended because the
        power usage counter can never be 0.
      
      More about 'stop-clock' feature:
      If a codec can support targeted pass-through operations in D3 state when there
      is no BCLK present on the link, it will set CLKSTOP flag in the supported power
      states and report PS-ClkStopOk when entering D3 state. Please refer to HDA spec
      section 7.3.3.10 Power state and 7.3.4.12 Supported Power State.
      
      [Fixed CONFIG_PM_RUNTIME dependency in hda_intel.c by tiwai]
      Signed-off-by: NMengdong Lin <mengdong.lin@intel.com>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      b8dfc462
  6. 22 8月, 2012 2 次提交
  7. 21 8月, 2012 6 次提交
  8. 20 8月, 2012 16 次提交
  9. 18 8月, 2012 3 次提交
  10. 16 8月, 2012 1 次提交