Skip to content
  1. Jul 07, 2019
    • Takashi Sakamoto's avatar
      ALSA: firewire-digi00x: fix wrong reference count for stream functionality at... · 64582c56
      Takashi Sakamoto authored
      ALSA: firewire-digi00x: fix wrong reference count for stream functionality at error path of rawmidi interface
      
      In IEC 61883-6, several types of sampling data can be multiplexed into
      payload of common isochronous packet (CIP). For typical audio and music
      units, PCM samples and MIDI messages are multiplexed into one packet
      streaming.
      
      ALSA firewire-digi00x driver allows applications of rawmidi interface to
      start packet streaming for transmission of MIDI messages. However at
      error path, the reference count of stream functionality is not operated
      correctly. This can brings a bug that packet streaming is not stopped
      when all referrers release the count.
      
      This commit fixes the bug.
      
      Fixes: ae8ffbb2
      
       ("ALSA: firewire-digi00x: reserve/release isochronous resources in pcm.hw_params/hw_free callbacks")
      Signed-off-by: default avatarTakashi Sakamoto <o-takashi@sakamocchi.jp>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      64582c56
    • Takashi Sakamoto's avatar
      ALSA: dice: fix wrong reference count for stream functionality at error path of rawmidi interface · e79c3f0c
      Takashi Sakamoto authored
      In IEC 61883-6, several types of sampling data can be multiplexed into
      payload of common isochronous packet (CIP). For typical audio and music
      units, PCM samples and MIDI messages are multiplexed into one packet
      streaming.
      
      ALSA dice driver allows applications of rawmidi interface to start
      packet streaming for transmission of MIDI messages. However at error
      path, the reference count of stream functionality is not operated
      correctly. This can brings a bug that packet streaming is not stopped
      when all referrers release the count.
      
      This commit fixes the bug.
      
      Fixes: 3cd2c2d7
      
       ("ALSA: dice: reserve/release isochronous resources in pcm.hw_params/hw_free callbacks")
      Signed-off-by: default avatarTakashi Sakamoto <o-takashi@sakamocchi.jp>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      e79c3f0c
    • Takashi Sakamoto's avatar
      ALSA: oxfw: fix wrong reference count for stream functionality at error path of rawmidi interface · 03a954ae
      Takashi Sakamoto authored
      In IEC 61883-6, several types of sampling data can be multiplexed into
      payload of common isochronous packet (CIP). For typical audio and music
      units, PCM samples and MIDI messages are multiplexed into one packet
      streaming.
      
      ALSA oxfw driver allows applications of rawmidi interface to start
      packet streaming for transmission of MIDI messages. However at error
      path, the reference count of stream functionality is not operated
      correctly. This can brings a bug that packet streaming is not stopped
      when all referrers release the count.
      
      This commit fixes the bug.
      
      Fixes: 4f380d00
      
       ("ALSA: oxfw: configure packet format in pcm.hw_params callback")
      Signed-off-by: default avatarTakashi Sakamoto <o-takashi@sakamocchi.jp>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      03a954ae
    • Takashi Sakamoto's avatar
      ALSA: fireworks: fix wrong reference count for stream functionality at error... · 2e9f17e3
      Takashi Sakamoto authored
      ALSA: fireworks: fix wrong reference count for stream functionality at error path of rawmidi interface
      
      In IEC 61883-6, several types of sampling data can be multiplexed into
      payload of common isochronous packet (CIP). For typical audio and music
      units, PCM samples and MIDI messages are multiplexed into one packet
      streaming.
      
      ALSA fireworks driver allows applications of rawmidi interface to start
      packet streaming for transmission of MIDI messages. However at error
      path, the reference count of stream functionality is not operated
      correctly. This can brings a bug that packet streaming is not stopped
      when all referrers release the count.
      
      This commit fixes the bug.
      
      Fixes: 3d725066
      
       ("ALSA: fireworks: configure sampling transfer frequency in pcm.hw_params callback")
      Signed-off-by: default avatarTakashi Sakamoto <o-takashi@sakamocchi.jp>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      2e9f17e3
    • Takashi Sakamoto's avatar
      ALSA: bebob: fix wrong reference count for stream functionality at error path of rawmidi interface · 097f8ba3
      Takashi Sakamoto authored
      In IEC 61883-6, several types of sampling data can be multiplexed into
      payload of common isochronous packet (CIP). For typical audio and music
      units, PCM samples and MIDI messages are multiplexed into one packet
      streaming.
      
      ALSA bebob driver allows applications of rawmidi interface to start
      packet streaming for transmission of MIDI messages. However at error
      path, the reference count of stream functionality is not operated
      correctly. This can brings a bug that packet streaming is not stopped
      when all referrers release the count.
      
      This commit fixes the bug.
      
      Fixes: ac2888b9
      
       ("ALSA: bebob: configure sampling transfer frequency in pcm.hw_params callback")
      Signed-off-by: default avatarTakashi Sakamoto <o-takashi@sakamocchi.jp>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      097f8ba3
  2. Jul 05, 2019
  3. Jul 04, 2019
  4. Jul 01, 2019
    • Takashi Iwai's avatar
      Merge branch 'for-linus' into for-next · b5c21c84
      Takashi Iwai authored
      
      
      This back-merge is necessary for adjusting the latest FireWire fix
      with the recent refactoring in 5.3 development branch.
      
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      b5c21c84
    • Takashi Sakamoto's avatar
      ALSA: firewire-lib/fireworks: fix miss detection of received MIDI messages · 7fbd1753
      Takashi Sakamoto authored
      In IEC 61883-6, 8 MIDI data streams are multiplexed into single
      MIDI conformant data channel. The index of stream is calculated by
      modulo 8 of the value of data block counter.
      
      In fireworks, the value of data block counter in CIP header has a quirk
      with firmware version v5.0.0, v5.7.3 and v5.8.0. This brings ALSA
      IEC 61883-1/6 packet streaming engine to miss detection of MIDI
      messages.
      
      This commit fixes the miss detection to modify the value of data block
      counter for the modulo calculation.
      
      For maintainers, this bug exists since a commit 18f5ed36 ("ALSA:
      fireworks/firewire-lib: add support for recent firmware quirk") in Linux
      kernel v4.2. There're many changes since the commit.  This fix can be
      backported to Linux kernel v4.4 or later. I tagged a base commit to the
      backport for your convenience.
      
      Besides, my work for Linux kernel v5.3 brings heavy code refactoring and
      some structure members are renamed in 'sound/firewire/amdtp-stream.h'.
      The content of this patch brings conflict when merging -rc tree with
      this patch and the latest tree. I request maintainers to solve the
      conflict to replace 'tx_first_dbc' with 'ctx_data.tx.first_dbc'.
      
      Fixes: df075fee
      
       ("ALSA: firewire-lib: complete AM824 data block processing layer")
      Cc: <stable@vger.kernel.org> # v4.4+
      Signed-off-by: default avatarTakashi Sakamoto <o-takashi@sakamocchi.jp>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      7fbd1753
    • Rander Wang's avatar
      ALSA: hda: Fix a headphone detection issue when using SOF · 7c2b3629
      Rander Wang authored
      
      
      To save power, the hda hdmi driver in ASoC invokes snd_hdac_ext_bus_link_put
      to disable CORB/RIRB buffers DMA if there is no user of bus and invokes
      snd_hdac_ext_bus_link_get to set up CORB/RIRB buffers when it is used.
      Unsolicited responses is disabled in snd_hdac_bus_stop_cmd_io called by
      snd_hdac_ext_bus_link_put , but it is not enabled in snd_hdac_bus_init_cmd_io
      called by snd_hdac_ext_bus_link_get. So for put-get sequence, Unsolicited
      responses is disabled and headphone can't be detected by hda codecs.
      
      Now unsolicited responses is only enabled in snd_hdac_bus_reset_link
      which resets controller. The function is only called for setup of
      controller. This patch enables Unsolicited responses after RIRB is
      initialized in snd_hdac_bus_init_cmd_io which works together with
      snd_hdac_bus_reset_link to set up controller.
      
      Tested legacy hda driver and SOF driver on intel whiskeylake.
      
      Reviewed-by: default avatarTakashi Iwai <tiwai@suse.de>
      Signed-off-by: default avatarRander Wang <rander.wang@linux.intel.com>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      7c2b3629
  5. Jun 28, 2019
  6. Jun 25, 2019
    • Richard Sailer's avatar
      ALSA: hda/realtek: Add quirks for several Clevo notebook barebones · 503d90b3
      Richard Sailer authored
      This adds 4 SND_PCI_QUIRK(...) lines for several barebone models of the ODM
      Clevo. The model names are written in regex syntax to describe/match all clevo
      models that are similar enough and use the same PCI SSID that this fixup works
      for them.
      
      Additionally the lines regarding SSID 0x96e1 and 0x97e1 didn't fix audio for the
      all our Clevo notebooks using these SSIDs (models Clevo P960* and P970*) since
      ALC1220_FIXP_CLEVO_PB51ED_PINS swapped pins that are not necesarry to be
      swapped. This patch initiates ALC1220_FIXUP_CLEVO_P950 instead for these model
      and fixes the audio.
      
      Fixes: 80690a27
      
       ("ALSA: hda/realtek - Add quirk for Tuxedo XC 1509")
      Signed-off-by: default avatarRichard Sailer <rs@tuxedocomputers.com>
      Cc: <stable@vger.kernel.org>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      503d90b3
  7. Jun 24, 2019
  8. Jun 21, 2019
  9. Jun 18, 2019