1. 16 2月, 2010 7 次提交
  2. 15 2月, 2010 4 次提交
    • G
      ALSA: Echoaudio - Add suspend support #2 · 47b5d028
      Giuliano Pochini 提交于
      This patch adds rearranges parts of the initialization code and adds
      suspend and resume callbacks.
      
      This patch adds suspend and resume callbacks.
      It also rearranges parts of the initialization code so it can be
      used in both the first initialization (when the module is loaded we
      also have to load default settings) and the resume callback (where
      we have to restore the previous settings).
      Signed-off-by: NGiuliano Pochini <pochini@shiny.it>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      47b5d028
    • G
      ALSA: Echoaudio - Add suspend support #1 · ad3499f4
      Giuliano Pochini 提交于
      Move the controls init code outside the init_hw() function because is must
      not be called during resume.
      
      This patch moves the code that initializes the card's controls with
      default valued from the init_hw() function into a separated
      set_mixer_defaults() function (one for each of the 16 supported
      cards). This change is necessary because during resume we must
      resurrect the hardware without losing the previous
      settings. set_mixer_defaults() must be called only once when the
      module is loaded.
      Signed-off-by: NGiuliano Pochini <pochini@shiny.it>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      ad3499f4
    • G
      ALSA: Echoaudio - Add firmware cache #2 · 4f8ada44
      Giuliano Pochini 提交于
      This patch implements a simple cache for the firmware files when CONFIG_PM is defined.
      
      This patch changes get_firmware(), free_firmware() and adds
      free_firmware_cache(). The first two functions implement a very
      simple cache and the latter is used to actually release all the stored
      firmwares when the module is unloaded. 
      When CONFIG_PM is not enabled those functions act as before, that is
      free_firmware() releases the firmware immediately and
      free_firmware_cache() does nothing.
      Signed-off-by: NGiuliano Pochini <pochini@shiny.it>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      4f8ada44
    • G
      ALSA: Echoaudio - Add firmware cache #1 · 19b50063
      Giuliano Pochini 提交于
      Changes the way the firmware is passed through functions.
      
      When CONFIG_PM is enabled the firmware cannot be released because the
      driver will need it again to resume the card. 
      With this patch the firmware is passed as an index of the struct
      firmware card_fw[] in place of a pointer. That same index is then used
      to locate the firmware in the firmware cache.
      Signed-off-by: NGiuliano Pochini <pochini@shiny.it>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      19b50063
  3. 12 2月, 2010 2 次提交
  4. 09 2月, 2010 1 次提交
  5. 05 2月, 2010 3 次提交
  6. 03 2月, 2010 1 次提交
  7. 02 2月, 2010 1 次提交
  8. 01 2月, 2010 3 次提交
  9. 28 1月, 2010 1 次提交
    • J
      ALSA: pcm_native - fix runtime->boundary calculation · 7910b4a1
      Jaroslav Kysela 提交于
      The code in pcm_lib updating runtime->hw_ptr_interrupt expects
      that runtime->boundary is divisible with runtime->period_size.
      Thanks are going to Clemens Ladisch for the notice.
      
      Fix the runtime->boundary calculation using buffer_size * period_size
      as base and find a least common multiple for 32bit platforms when
      the expression might overflow.
      Signed-off-by: NJaroslav Kysela <perex@perex.cz>
      7910b4a1
  10. 27 1月, 2010 2 次提交
    • T
      Merge remote branch 'alsa/devel' into topic/misc · d0d2c38e
      Takashi Iwai 提交于
      d0d2c38e
    • J
      ALSA: pcm_lib - return back hw_ptr_interrupt · e7636925
      Jaroslav Kysela 提交于
      Clemens Ladisch noted for hw_ptr_removal in "cleanup & merge hw_ptr
      update functions" commit:
      
      "It is possible for the status/delay ioctls to be called when the sound
      card's pointer register alreay shows a position at the beginning of the
      new period, but immediately before the interrupt is actually executed.
      (This happens regularly on a SMP machine with mplayer.)  When that
      happens, the code thinks that the position must be at least one period
      ahead of the current position and drops an entire buffer of data."
      
      Return back the hw_ptr_interrupt variable. The last interrupt pointer
      is always computed from the latest hw_ptr instead of tracking it
      separately (in this case all hw_ptr checks and modifications might
      influence also hw_ptr_interrupt and it is difficult to keep it
      consistent).
      Signed-off-by: NJaroslav Kysela <perex@perex.cz>
      e7636925
  11. 26 1月, 2010 1 次提交
  12. 21 1月, 2010 4 次提交
  13. 19 1月, 2010 1 次提交
  14. 18 1月, 2010 4 次提交
  15. 14 1月, 2010 2 次提交
  16. 13 1月, 2010 2 次提交
  17. 12 1月, 2010 1 次提交