Skip to content
  1. May 02, 2018
  2. Apr 28, 2018
  3. Apr 25, 2018
  4. Apr 24, 2018
    • Takashi Iwai's avatar
      ALSA: hda - Sanity check of access to SPDIF controls array · 08605068
      Takashi Iwai authored
      
      
      Put WARN_ON() and bail out if the given index is over the allocated
      array of the given SPDIF controls.  It's merely a sanity check to
      catch any potential issues (if any).
      
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      08605068
    • Takashi Sakamoto's avatar
      ALSA: dice: improve support for ancient firmware for DICE · c1a36101
      Takashi Sakamoto authored
      
      
      In early stage of firmware SDK, DICE seems to lose its backward
      compatibility due to some registers on global address section. I found
      this with Alesis Multimix 12 FireWire with ancient firmware (approx.
      shipped version).
      
      According to retrieved log from the unit, global section has 96 byte
      space. On the other hand, current version of ALSA dice driver assumes
      that all of supported unit has at least 100 byte space.
      
      $ ./firewire-request /dev/fw1 read 0xffffe0000000 28
      result: 000: 00 00 00 0a 00 00 00 18 00 00 00 22 00 00 00 8a
      result: 010: 00 00 00 ac 00 00 01 12 00 00 00 00 00 00 00 00
      result: 020: 00 00 00 00 00 00 00 00
      
      This commit adds support for the ancient firmware. Check of global section
      is loosened to accept the smaller space. The lack of information is
      already compensated by hard-coded parameters.
      
      I experienced that the latest version of Windows driver for this model
      can't handle this unit, too. This means that TCAT releases firmware SDK
      without backward compatibility for the ancient firmware.
      
      Below list is a early history of driver/firmware package released by
      Alesis. I investigated on wayback machine on Internet Archive:
       * Unknown: PAL v1.0.41.2, firmware v1.0.3
       * Mar 2006: PAL v1.54.0, firmware v1.0.4
       * Dec 2006: PAL v2.0.0.2, firmware v2.0
       * Jun 2007: PAL v3.0.41.5, firmware v2.0
       * Jul 2007: PAL v3.0.56.2. firmware v2.0
       * Jan 2008: PAL v3.0.81.1080, firmware v2.0
      
      If I can assume that firmware version is the same as DICE version, DICE
      version for the issued firmware may be v1.0.3. According to code base of
      userspace driver project (FFADO), I can read DICE v1.0.4 supports global
      space larger than 100 byte. I guess the smaller space of global section is
      a feature of DICE v1.0.3.
      
      Signed-off-by: default avatarTakashi Sakamoto <o-takashi@sakamocchi.jp>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      c1a36101
    • Takashi Sakamoto's avatar
      ALSA: dice: fix OUI for TC group · 10412c42
      Takashi Sakamoto authored
      OUI for TC Electronic is 0x000166, for TC GROUP A/S. 0x001486 is for Echo
      Digital Audio Corporation.
      
      Fixes: 7cafc65b ('ALSA: dice: force to add two pcm devices for listed models')
      Cc: <stable@vger.kernel.org> # v4.6+
      Reference: http://standards-oui.ieee.org/oui/oui.txt
      
      
      Signed-off-by: default avatarTakashi Sakamoto <o-takashi@sakamocchi.jp>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      10412c42
    • Takashi Iwai's avatar
      ALSA: hda - Use a macro for snd_array iteration loops · a9c2dfc8
      Takashi Iwai authored
      
      
      Introduce a new helper macro, snd_array_for_each(), to iterate for
      each snd_array element.  It slightly improves the readability than
      lengthy open codes at each place.
      
      Along with it, add const prefix to some obvious places.
      
      There should be no functional changes by this.
      
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      a9c2dfc8
    • Takashi Iwai's avatar
      ALSA: usb-audio: Skip broken EU on Dell dock USB-audio · 1d8d6428
      Takashi Iwai authored
      The Dell Dock USB-audio device with 0bda:4014 is behaving notoriously
      bad, and we have already applied some workaround to avoid the firmware
      hiccup.  Yet we still need to skip one thing, the Extension Unit at ID
      4, which doesn't react correctly to the mixer ctl access.
      
      Bugzilla: https://bugzilla.suse.com/show_bug.cgi?id=1090658
      
      
      Cc: <stable@vger.kernel.org>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      1d8d6428
    • Takashi Iwai's avatar
      ALSA: usb-audio: Fix missing endian conversion · 2b54f785
      Takashi Iwai authored
      The UAC2 jack detection support introduced the bmControls checks in a
      couple of places, but they forgot the endian conversion; the
      bmControls of UAC2 terminal descriptor is __le16, not a byte like in
      UAC1.
      
      Fixes: 5a222e84
      
       ("ALSA: usb-audio: UAC2 jack detection")
      Tested-by: default avatarAndrew Chant <achant@google.com>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      2b54f785
  5. Apr 23, 2018