1. 13 9月, 2012 1 次提交
  2. 11 9月, 2012 7 次提交
  3. 10 9月, 2012 1 次提交
    • T
      ALSA: hda - Fix Oops at codec reset/reconfig · 07dc59f0
      Takashi Iwai 提交于
      snd_hda_codec_reset() calls restore_pincfgs() where the codec is
      powered up again, which eventually tries to resume and initialize via
      the callbacks of the codec.  However, it's the place just after codec
      free callback, thus no codec callbacks should be called after that.
      On a codec like CS4206, it results in Oops due to the access in init
      callback.
      
      This patch fixes the issue by clearing the codec callbacks properly
      after freeing codec.
      Reported-by: NDaniel J Blueman <daniel@quora.org>
      Cc: <stable@vger.kernel.org>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      07dc59f0
  4. 07 9月, 2012 2 次提交
  5. 06 9月, 2012 7 次提交
  6. 05 9月, 2012 3 次提交
  7. 04 9月, 2012 2 次提交
    • J
      ALSA: remove the main version information · 42662748
      Jaroslav Kysela 提交于
      Remove the main ALSA version number from the kernel ALSA driver.
      The ALSA driver package release diverges from the upstream. This may
      confuse users to see the same ALSA version for many kernel releases
      and this version lost it's original purpose and connection.
      
      The "ioctl" APIs have own version numbers, so the user space may check
      for specific API changes only.
      Signed-off-by: NJaroslav Kysela <perex@perex.cz>
      42662748
    • D
      ALSA: snd-usb: Add quirks for Playback Designs devices · 2b58fd5b
      Daniel Mack 提交于
      Playback Designs' USB devices have some hardware limitations on their
      USB interface. In particular:
      
       - They need a 20ms delay after each class compliant request as the
         hardware ACKs the USB packets before the device is actually ready
         for the next command. Sending data immediately will result in buffer
         overflows in the hardware.
       - The devices send bogus feedback data at the start of each stream
         which confuse the feedback format auto-detection.
      
      This patch introduces a new quirks hook that is called after each
      control packet and which adds a delay for all devices that match
      Playback Designs' USB VID for now.
      
      In addition, it adds a counter to snd_usb_endpoint to drop received
      packets on the floor. Another new quirks function that is called once
      an endpoint is started initializes that counter for these devices on
      their sync endpoint.
      Signed-off-by: NDaniel Mack <zonque@gmail.com>
      Reported-and-tested-by: NAndreas Koch <andreas@akdesigninc.com>
      Supported-by: NDemian Martin <demianm_1@yahoo.com>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      2b58fd5b
  8. 03 9月, 2012 3 次提交
  9. 01 9月, 2012 4 次提交
    • D
      ALSA: snd-usb: fix cross-interface streaming devices · 2e4a263c
      Daniel Mack 提交于
      Commit 68e67f40 ("ALSA: snd-usb: move calls to usb_set_interface")
      saved us some unnecessary calls to snd_usb_set_interface() but ignored
      the fact that there is at least one device out there which operates on
      two endpoint in different interfaces simultaniously.
      
      Take care for this by catching the case where data and sync endpoints
      are located on different interfaces and calling snd_usb_set_interface()
      between the start of the two endpoints.
      Signed-off-by: NDaniel Mack <zonque@gmail.com>
      Reported-by: NRobert M. Albrecht <linux@romal.de>
      Cc: stable@kernel.org [v3.5+]
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      2e4a263c
    • D
      ALSA: snd-usb: fix calls to next_packet_size · 245baf98
      Daniel Mack 提交于
      In order to support devices with implicit feedback streaming models,
      packet sizes are now stored with each individual urb, and the PCM
      handling code which fills the buffers purely relies on the size fields
      now.
      
      However, calling snd_usb_audio_next_packet_size() for all possible
      packets in an URB at once, prior to letting the PCM code do its job
      does in fact not lead to the same behaviour than what the old code did:
      The PCM code will break its loop once a period boundary is reached,
      consequently using up less packets that it really could.
      
      As snd_usb_audio_next_packet_size() implements a feedback mechanism to
      the endpoints phase accumulator, the number of calls to that function
      matters, and when called too often, the data rate runs out of bounds.
      
      Fix this by making the next_packet function public, and call it from the
      PCM code as before if the packet data sizes are not defined.
      Signed-off-by: NDaniel Mack <zonque@gmail.com>
      Cc: stable@kernel.org [v3.5+]
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      245baf98
    • D
      ALSA: snd-usb: restore delay information · fbcfbf5f
      Daniel Mack 提交于
      Parts of commit 294c4fb8 ("ALSA: usb: refine delay information with USB
      frame counter") were unfortunately lost during the refactoring of the
      snd-usb driver in 3.5.
      
      This patch adds them back, restoring the correct delay information
      behaviour.
      Signed-off-by: NDaniel Mack <zonque@gmail.com>
      Cc: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
      Cc: stable@kernel.org [3.5+]
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      fbcfbf5f
    • P
      ALSA: snd-usb: use list_for_each_safe for endpoint resources · 03d2f44e
      Pavel Roskin 提交于
      snd_usb_endpoint_free() frees the structure that contains its argument.
      Signed-off-by: NPavel Roskin <proski@gnu.org>
      Cc: stable@vger.kernel.org
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      03d2f44e
  10. 31 8月, 2012 3 次提交
  11. 30 8月, 2012 7 次提交
    • T
      ALSA: korg1212: Fix reverted min/max ADC sense range · fbaf6a5a
      Takashi Iwai 提交于
      k1212MinADCSens and k1212MaxADCSens are defined wrongly.
      The max must be greater than the min by obvious reason.
      
      Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=46561Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      fbaf6a5a
    • T
      ALSA: hda - Optimize bitfield usage in struct hda_codec · 4b927345
      Takashi Iwai 提交于
      Move up a few bitfields to be packed into a single int.
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      4b927345
    • T
      ALSA: hda - Clean up CONFIG_SND_HDA_POWER_SAVE · 83012a7c
      Takashi Iwai 提交于
      CONFIG_SND_HDA_POWER_SAVE is no longer an experimental feature and its
      behavior can be well controlled via the default value and module
      parameter.  Let's just replace it with the standard CONFIG_PM.
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      83012a7c
    • 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
    • D
      ALSA: snd-usb: Fix URB cancellation at stream start · 015618b9
      Daniel Mack 提交于
      Commit e9ba389c ("ALSA: usb-audio: Fix scheduling-while-atomic bug in
      PCM capture stream") fixed a scheduling-while-atomic bug that happened
      when snd_usb_endpoint_start was called from the trigger callback, which
      is an atmic context. However, the patch breaks the idea of the endpoints
      reference counting, which is the reason why the driver has been
      refactored lately.
      
      Revert that commit and let snd_usb_endpoint_start() take care of the URB
      cancellation again. As this function is called from both atomic and
      non-atomic context, add a flag to denote whether the function may sleep.
      Signed-off-by: NDaniel Mack <zonque@gmail.com>
      Cc: stable@kernel.org [3.5+]
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      015618b9
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs · 318e1510
      Linus Torvalds 提交于
      Pull btrfs fixes from Chris Mason:
       "I've split out the big send/receive update from my last pull request
        and now have just the fixes in my for-linus branch.  The send/recv
        branch will wander over to linux-next shortly though.
      
        The largest patches in this pull are Josef's patches to fix DIO
        locking problems and his patch to fix a crash during balance.  They
        are both well tested.
      
        The rest are smaller fixes that we've had queued.  The last rc came
        out while I was hacking new and exciting ways to recover from a
        misplaced rm -rf on my dev box, so these missed rc3."
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs: (25 commits)
        Btrfs: fix that repair code is spuriously executed for transid failures
        Btrfs: fix ordered extent leak when failing to start a transaction
        Btrfs: fix a dio write regression
        Btrfs: fix deadlock with freeze and sync V2
        Btrfs: revert checksum error statistic which can cause a BUG()
        Btrfs: remove superblock writing after fatal error
        Btrfs: allow delayed refs to be merged
        Btrfs: fix enospc problems when deleting a subvol
        Btrfs: fix wrong mtime and ctime when creating snapshots
        Btrfs: fix race in run_clustered_refs
        Btrfs: don't run __tree_mod_log_free_eb on leaves
        Btrfs: increase the size of the free space cache
        Btrfs: barrier before waitqueue_active
        Btrfs: fix deadlock in wait_for_more_refs
        btrfs: fix second lock in btrfs_delete_delayed_items()
        Btrfs: don't allocate a seperate csums array for direct reads
        Btrfs: do not strdup non existent strings
        Btrfs: do not use missing devices when showing devname
        Btrfs: fix that error value is changed by mistake
        Btrfs: lock extents as we map them in DIO
        ...
      318e1510